Home Directory Plugins Software check_nginx.sh

Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Directory Tree

check_nginx.sh

Rating
0 votes
Favoured:
0
Hits
156222
Files:
FileDescription
check_nginx.shThe script (Version 1.1)
LICENSEThe appropriate license
Nagios CSP

Meet The New Nagios Core Services Platform

Built on over 25 years of monitoring experience, the Nagios Core Services Platform provides insightful monitoring dashboards, time-saving monitoring wizards, and unmatched ease of use. Use it for free indefinitely.

Monitoring Made Magically Better

  • Nagios Core on Overdrive
  • Powerful Monitoring Dashboards
  • Time-Saving Configuration Wizards
  • Open Source Powered Monitoring On Steroids
  • And So Much More!
sh-compliant script to check the nginx webserver whether its running and to get requests and connections per second
Description

check_nginx.sh is a Nagios plugin to check whether nginx is running.
It also parses the nginx's status page to get requests and
connections per second as well as requests per connection. You
may have to alter your nginx configuration so that the plugin
can access the server's status page.
The plugin is highly configurable for this reason. See below for
available options.
Version

Version 1.1, 2009, Mike Adolphs (http://www.matejunkie.com/)
/h/--help Output

check_nginx.sh -H localhost -P 80 -p /var/run -n nginx.pid
-s nginx_statut -o /tmp [-w INT] [-c INT] [-S] [-N]

Options:
-H/--hostname)
Defines the hostname. Default is: localhost
-P/--port)
Defines the port. Default is: 80
-p/--path-pid)
Path where nginx's pid file is being stored. You might need
to alter this path according to your distribution. Default
is: /var/run
-n/--name_pid)
Name of the pid file. Default is: nginx.pid
-N/--no-pid-check)
Turn this on, if you don't want to check for a pid file
whether nginx is running, e.g. when you're checking a
remote server. Default is: off
-s/--status-page)
Name of the server's status page defined in the location
directive of your nginx configuration. Default is:
nginx_status
-o/--output-directory)
Specifies where to write the tmp-file that the check creates.
Default is: /tmp
-S/--secure)
In case your server is only reachable via SSL, use this
this switch to use HTTPS instead of HTTP. Default is: off
-w/--warning)
Sets a warning level for requests per second. Default is: off
-c/--critical)
Sets a critical level for requests per second. Default is:
off

Output example

user@host: ~ $ ./check_nginx.sh -H localhost -P 80 -p /var/run -n nginx.pid -s nginx_status -o /tmp -w 15000 -c 20000
OK - nginx is running. 1 requests per second, 1 connections per second (1.00 requests per connection) | 'reqpsec'=1 'conpsec'=1 'conpreq'=1.00 ]
user@host: ~ $ ./check_nginx.sh -H localhost -P 80 -p /var/run -n nginx.pid -s nginx_status -o /tmp -w 15000 -c 20000
OK - nginx is running. 13722 requests per second, 13725 connections per second (1.00 requests per connection) | 'reqpsec'=13722 'conpsec'=13725 'conpreq'=1.00 ]
user@host: ~ $ ./check_nginx.sh -H localhost -P 80 -p /var/run -n nginx.pid -s nginx_status -o /tmp -w 10000 -c 15000
WARNING - nginx is running. 12462 requests per second, 12448 connections per second (1.00 requests per connection) | 'reqpsec'=12462 'conpsec'=12448 'conpreq'=1.00
user@host: ~ $ ./check_nginx.sh -H localhost -P 80 -p /var/run -n nginx.pid -s nginx_status -o /tmp -w 5000 -c 10000
CRITICAL - nginx is running. 14241 requests per second, 14253 connections per second (1.00 requests per connection) | 'reqpsec'=14241 'conpsec'=14253 'conpreq'=1.00
Changelog

* 2009-06-15
o nginx_status output is now stored in a variable instead of writing a file (better performance) to a temporary directory
o warning must be lower than critical rather than lower or equal than critical