Scope
- Nagios is an Open Source System Monitor that is available at http://www.nagios.org. An ecosystem of more or less compatible System Monitors has evolved, e.g. op5, that makes use of a similar design and configuration.
- You can monitor JobScheduler by use of Plugins that check the availability of the daemon/service.
Active Checks and Passive Checks
- Active Checks are initiated from the System Monitor server and are performed on a regular basis, e.g. every 5 minutes.
- The only purpose of Active Checks is to verify the availability of the JobScheduler application.
- This type of check does not provide information about the execution status of individual jobs.
- The System Monitor Plugins explained in this article are intended for Active Checks only.
- Passive Checks are initiated from JobScheduler and report individual execution results to a System Monitor.
- The JobScheduler Monitoring Interface is a complete solution for the management of complex Passive Checks.
Download and Installation of the Plugins
Download
Two Plugins are available for download:
- JobScheduler Master: https://download.sos-berlin.com/SystemMonitor/check_jobscheduler.pl
- JobScheduler Universal Agent: https://download.sos-berlin.com/SystemMonitor/check_jobscheduler_agent.pl
Installation
Copy the files to the plugin directory of your System Monitor installation.
Configuration of the Plugins
The configuration for the JobScheduler Master and Agent Plugins includes to define
- a System Monitor Command that specifies the parameterization of the Plugin and
- a System Monitor Service which is the visible point of control in the System Monitor console.
JobScheduler Master Plugin
# 'check_jobscheduler' command definition define command\{ command_name check_jobscheduler command_line /opt/plugins/check_jobscheduler.pl -i $ARG1$ -H $HOSTADDRESS$ -p $ARG2$ -m $ARG3$ -j $ARG4$ -c $ARG5$ \}
define service\{ use generic-service host_name localhost service_description JobScheduler is_volatile 0 check_period 24x7 max_check_attempts 1 normal_check_interval 1 retry_check_interval 1 contact_groups admins notification_options w,u,c,r notification_interval 960 notification_period 24x7 check_command check_jobscheduler!homer.sos!4444!0!! active_checks_enabled 1 passive_checks_enabled 0
Parameterization
Parameter |
| Default | Description |
---|---|---|---|
-H, | --hostname | — | Name or IP address of the host ( |
-p | --port | — | Port that JobScheduler listens to ( |
-t | --timeout | 30s | timeout for establishing the connection |
Prerequisites
Perl > 5.8 is required and the Perl package NET::HTTP. You can download and install Perl packages from e.g. http://www.cpan.
Notes
x
JobScheduler Agent Plugin
A service Command has to be declared before configuring the System Monitor Service that makes use of this Command.
# 'check_jobscheduler_agent' command definition define command\{ command_name check_jobscheduler_agent command_line /opt/plugins/check_jobscheduler_agent.pl -u $ARG1$ -a $ARG2$ -o $ARG3$ -t $ARG4$ \}
When configuring the System Monitor Service then Command parameters have to be specified that are separated by exclamation marks, e.g.
http://galadriel.sos:4445/jobscheduler/agent/overview!'{totalProcessCount},{currentProcessCount}'!'{startedAt},{totalProcessCount},{currentProcessCount},{isTerminating}'!20
Explanations
Parameter |
| Default | Description |
---|---|---|---|
-u, | --url | — | URL for the HTTP connection that addresses the Agent via host ( |
-a | --attributes | — | List of attributes that are used to check the Agent availability. The specified attributes are recommended to check if the Agent answer if formally correct. |
-o | --outputvars | — | List of attributes that are used for output of the script and that will be displayed in the System Monitor
|
-t | --timeout | 15s | Timeout for the connection to the Agent |
Notes
- Consider the use of the HTTPS protocol instead of the HTTP if the Agent is configured for use with Secure HTTPS communication