Skip to content

Instantly share code, notes, and snippets.

@kmile
Forked from dan-manges/passenger_status.rb
Created November 4, 2010 10:05
Show Gist options
  • Save kmile/662298 to your computer and use it in GitHub Desktop.
Save kmile/662298 to your computer and use it in GitHub Desktop.
Munin passenger plugin with added queue support
#!/usr/bin/env ruby
def output_config
puts <<-END
graph_category App
graph_title passenger status
graph_vlabel count
sessions.label sessions
max.label max processes
running.label running processes
active.label active processes
END
exit 0
end
def output_values
status = `sudo /usr/bin/passenger-status`
unless $?.success?
$stderr.puts "failed executing passenger-status"
exit 1
end
status =~ /max\s+=\s+(\d+)/
puts "max.value #{$1}"
status =~ /count\s+=\s+(\d+)/
puts "running.value #{$1}"
status =~ /active\s+=\s+(\d+)/
puts "active.value #{$1}"
total_sessions = 0
status.scan(/Sessions: (\d+)/).flatten.each { |count| total_sessions += count.to_i }
puts "sessions.value #{total_sessions}"
status =~ /Waiting on global queue:\s+(\d+)/
puts "queue.value #{$1}"
end
if ARGV[0] == "config"
output_config
else
output_values
end
@kmile
Copy link
Author

kmile commented Nov 4, 2010

added queue support to the excellent passenger status plugin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment