Module: ZabbixRubyClient::Plugins::Apache

Extended by:
Apache
Included in:
Apache
Defined in:
lib/zabbix-ruby-client/plugins/apache.rb

Instance Method Summary collapse

Instance Method Details

#collect(*args) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/zabbix-ruby-client/plugins/apache.rb', line 8

def collect(*args)
  host = args[0]
  ret = get_status
  ret['Score'] = get_scores(ret["Scoreboard"])
  ret.delete "Scoreboard"

  time = Time.now.to_i
  back = []
  back << "#{host} apache[TotalAccesses] #{time} #{ret["Total Accesses"]}"
  back << "#{host} apache[TotalKBytes] #{time} #{ret["Total kBytes"]}"
  back << "#{host} apache[CPULoad] #{time} #{ret["CPULoad"].to_f}"
  back << "#{host} apache[Uptime] #{time} #{ret["Uptime"]}"
  back << "#{host} apache[ReqPerSec] #{time} #{ret["ReqPerSec"].to_f}"
  back << "#{host} apache[BytesPerSec] #{time} #{ret["BytesPerSec"]}"
  back << "#{host} apache[BytesPerReq] #{time} #{ret["BytesPerReq"]}"
  back << "#{host} apache[BusyWorkers] #{time} #{ret["BusyWorkers"]}"
  back << "#{host} apache[IdleWorkers] #{time} #{ret["IdleWorkers"]}"
  back << "#{host} apache[c_idle] #{time} #{ret["Score"]["."]}"
  back << "#{host} apache[c_waiting] #{time} #{ret["Score"]["_"]}"
  back << "#{host} apache[c_closing] #{time} #{ret["Score"]["C"]}"
  back << "#{host} apache[c_dns] #{time} #{ret["Score"]["D"]}"
  back << "#{host} apache[c_finish] #{time} #{ret["Score"]["G"]}"
  back << "#{host} apache[c_cleanup] #{time} #{ret["Score"]["I"]}"
  back << "#{host} apache[c_keep] #{time} #{ret["Score"]["K"]}"
  back << "#{host} apache[c_log] #{time} #{ret["Score"]["L"]}"
  back << "#{host} apache[c_read] #{time} #{ret["Score"]["R"]}"
  back << "#{host} apache[c_send] #{time} #{ret["Score"]["W"]}"
  back << "#{host} apache[c_start] #{time}#{ret["Score"]["S"]}"
  return back
end