Understanding how checks work
Nagios performs checks by running an external command, and uses the return code along with output from the command as information on whether the check worked or not. It is the command's responsibility to verify if a host or service is working at the time the command is invoked.
Nagios itself handles all of the internals, such as scheduling the commands to be run, storing their results, and determining the status of each host and service.
Nagios requires that all plugins follow a specific, easy-to-follow behavior in order for them to work smoothly. These rules are common for both host checks and service checks. It requires that each command returns specific result codes, which are shown in the following table:
Exit code |
Status |
Description |
---|---|---|
|
|
Working correctly |
|
|
Working, but needs attention (for example, low resources) |
|
|
Not working correctly or requires attention |
|
|
Plugin was unable to determine the status... |