class Bipbip::Plugin::CommandStatus
Public Instance Methods
metrics_schema()
click to toggle source
# File lib/bipbip/plugin/command_status.rb, line 5 def metrics_schema [ { name: 'status', type: 'gauge', unit: '' } ] end
monitor()
click to toggle source
# File lib/bipbip/plugin/command_status.rb, line 11 def monitor command = config['command'].to_s output_stdout = output_stderr = exit_code = nil Open3.popen3(command) do |_stdin, stdout, stderr, wait_thr| output_stdout = stdout.read.chomp output_stderr = stderr.read.chomp exit_code = wait_thr.value end log(Logger::INFO, output_stdout) unless output_stdout.empty? log(Logger::ERROR, output_stderr) unless output_stderr.empty? { status: exit_code.exitstatus } end