class Riemann::Tools::Ntp
Public Class Methods
new()
click to toggle source
# File lib/riemann/tools/ntp.rb, line 11 def initialize @hostname = `hostname`.chomp @ostype = `uname -s`.chomp.downcase abort 'WARNING: macOS not explicitly supported. Exiting.' if @ostype == 'darwin' end
Public Instance Methods
send(type, metric)
click to toggle source
# File lib/riemann/tools/ntp.rb, line 30 def send(type, metric) report( host: @hostname, service: "ntp peer #{@ntp_host} #{type}", metric: metric.to_f, state: 'ok', description: "ntp peer #{@ntp_host} #{type}", tags: ['ntp'], ) end
tick()
click to toggle source
# File lib/riemann/tools/ntp.rb, line 17 def tick stats = `ntpq -p -n` stats.each_line do |stat| m = stat.split next if m.grep(/^===/).any? || m.grep(/^remote/).any? @ntp_host = m[0].gsub('*', '').gsub('-', '').gsub('+', '') send('delay', m[7]) send('offset', m[8]) send('jitter', m[9]) end end