class LogStash::Inputs::Attunity_Metrics
Generate a repeating message.
This plugin is intented only as an example.
Public Instance Methods
register()
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 26 def register @header = { :content_type => "application/json", :user => @username, :password => @password } @client = resource = RestClient::Resource.new( @url, :verify_ssl => OpenSSL::SSL::VERIFY_NONE ) @logger.info("Registering attunity_metrics", :url => @url, :user => @username, :password => @password, :verify_ssl => @verify_ssl) end
run(queue)
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 42 def run(queue) # we can abort the loop if stop? becomes true # while !stop? # event = LogStash::Event.new("message" => @message, "host" => @host) # decorate(event) # queue << event # # because the sleep interval can be big, when shutdown happens # # we want to be able to abort the sleep # # Stud.stoppable_sleep will frequently evaluate the given block # # and abort the sleep(@interval) if the return value is true # Stud.stoppable_sleep(@interval) { stop? } # end # loop login() servers = get_servers() servers.each do |server| server_details = get_server_details(server.name) tasks = get_tasks(server.name) tasks.each do |task| task_detail = get_task_details(server.name, task.name) event = LogStash::Event.new("message" => @message, "host" => @host) decorate(event) queue << event end end logout() end
stop()
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 75 def stop # nothing to do in this case so it is not necessary to define stop # examples of common "stop" tasks: # * close sockets (unblocking blocking reads/accepts) # * cleanup temporary files # * terminate spawned threads end
Private Instance Methods
get_server_details(server)
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 110 def get_server_details(server) response = @client["api/v1/servers/#{server}"].get( :header => @header ) return response.body.server_details end
get_servers()
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 102 def get_servers() response = @client["api/v1/servers"].get( :header => @header ) return response.body.serverList end
get_task_details(server, task)
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 126 def get_task_details(server, task) response = @client["api/v1/servers/#{server}/tasks/#{task}"].get( :header => @header ) return response.body end
get_tasks(server)
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 118 def get_tasks(server) response = @client["api/v1/servers/#{server}/tasks"].get( :header => @header ) return response.body.taskList end
login()
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 84 def login() response = @client["api/v1/login"].get( :header => @header ) @header[:'EnterpriseManager.APISessionID'] = response.header[:'EnterpriseManager.APISessionID'] end
logout()
click to toggle source
# File lib/logstash/inputs/attunity_metrics.rb, line 93 def logout() response = @client["api/v1/logout"].get( :header => @header ) @header[:'EnterpriseManager.APISessionID'] = "" end