class Fluent::Plugin::OsqueryInput
Public Class Methods
new()
click to toggle source
Calls superclass method
# File lib/fluent/plugin/in_jmx.rb, line 21 def initialize super require 'net/http' require 'uri' end
Public Instance Methods
configure(conf)
click to toggle source
Calls superclass method
# File lib/fluent/plugin/in_jmx.rb, line 27 def configure(conf) super end
shutdown()
click to toggle source
Calls superclass method
# File lib/fluent/plugin/in_jmx.rb, line 36 def shutdown super end
start()
click to toggle source
Calls superclass method
# File lib/fluent/plugin/in_jmx.rb, line 31 def start super timer_execute(:in_jmx, interval, &method(:execute)) end
Private Instance Methods
_get_record()
click to toggle source
# File lib/fluent/plugin/in_jmx.rb, line 52 def _get_record record = Hash.new(0) uri = URI.parse("#{@url}/read/#{@mbean}/#{@attribute}") if @attribute && @inner_path uri = URI.parse("#{@url}/read/#{@mbean}/#{@attribute}/#{@inner_path}") end @log.debug(uri) Net::HTTP.start(uri.host, uri.port) do |http| request = Net::HTTP::Get.new(uri.request_uri) http.request(request) do |response| record = JSON.parse(response.body) rescue next record.delete("value"["Verbose"]) @log.debug(response.body) end end record end
execute()
click to toggle source
# File lib/fluent/plugin/in_jmx.rb, line 42 def execute @time = Fluent::Engine.now record = _get_record log.debug(record) router.emit(@tag, @time, record) rescue => e @log.error('faild to run', error: e.to_s, error_class: e.class.to_s) @log.error_backtrace end