2
0
Fork 0
mirror of https://github.com/munin-monitoring/contrib.git synced 2018-11-08 00:59:34 +01:00
contrib-munin/plugins/passenger/passenger_processes
dipohl 63351ab535 Reduce number of categories
riak -> other (riak)
smf -> forum (smf)
reddit -> other (reddit)
sge -> htc (sge)
netscaler -> loadbalancer (netscaler)
nutcracker -> other (twemproxy)
requesttracker -> other (requesttracker)
passenger -> webserver (passenger)
gearman -> other (gearman)
2017-02-23 23:12:19 +01:00

42 lines
1 KiB
Ruby
Executable file

#!/usr/bin/env ruby
#
# [passenger_processes]
# user root
# env.process_stats_command /opt/ruby-enterprise-1.8.6-20080810/bin/passenger-status
#
process_stats_command = ENV['process_stats_command'] || '/opt/ruby-enterprise-1.8.6-20080810/bin/passenger-status'
if ARGV.length > 0 && ARGV[0] == 'config'
puts "graph_title Passenger Processes"
puts "graph_category webserver"
puts "graph_vlabel processes"
puts "max.label Max processes"
puts "count.label Total processes"
puts "active.label Active processes"
puts "queued.label Queued requests"
exit(0)
end
max = nil
count = nil
active = nil
queued = nil
`#{process_stats_command}`.each_line do |line|
if /max\s+=\s+(\d+)/.match(line)
max = $~[1]
elsif /count\s+=\s+(\d+)/.match(line)
count = $~[1]
elsif /^active\s+=\s+(\d+)/.match(line)
active = $~[1]
elsif /Waiting on global queue\s+=\s+(\d+)/.match(line)
queued = $~[1]
end
end
puts "max.value #{max}"
puts "count.value #{count}"
puts "active.value #{active}"
puts "queued.value #{queued.to_i}"