class MetricsMachine::Mysql

Attributes

base[R]
options[R]

Public Class Methods

new(base, *args) click to toggle source
# File lib/metrics_machine/mysql.rb, line 6
def initialize base, *args
  @options = args.extract_options!
  @base = base
end

Public Instance Methods

interval() click to toggle source
# File lib/metrics_machine/mysql.rb, line 11
def interval
  15
end
statistics() click to toggle source
# File lib/metrics_machine/mysql.rb, line 15
def statistics
  status = fetch_status

  status.each do |k,v|
    status[k] = case v
    when "OFF", "NULL", "NONE"
      0
    when "ON", "TRUE"
      1
    else
      v.to_i    
    end
  end
end

Private Instance Methods

fetch_status() click to toggle source
# File lib/metrics_machine/mysql.rb, line 32
def fetch_status
  Hash[*base.connection.execute("SHOW GLOBAL STATUS").map.to_a.flatten]
end
fetch_variables() click to toggle source
# File lib/metrics_machine/mysql.rb, line 36
def fetch_variables
  Hash[*base.connection.execute("SHOW GLOBAL VARIABLES").map.to_a.flatten]
end