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 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 provided with explained in this article are intended for Active Checks only.
- Passive Checks are initiated from JobScheduler and report individual execution results to the a System Monitor.
Download and Installation of the Plugins
Download
Two Plugins are available for download:
Copy the files to the plugin directory of your System Monitor installation.
The configuration for the JobScheduler Master and Agent Plugins includes to define
- a System Monitor Command that defines specifies the parameterization of the Plugin and
- a System Monitor Service which is the visible point of control in the System Monitor console.
Code Block |
---|
language | bash |
---|
title | Sample JobScheduler Master Command configuration |
---|
|
# '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$
\} |
Code Block |
---|
language | bash |
---|
title | Sample JobScheduler Master Service configuration |
---|
|
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!prodschedulerhomer.sos!4444!0!blacklist,test/job3!!
active_checks_enabled 1
passive_checks_enabled 0 |
Explanations
Panel |
---|
| title Parameter |
---|
| title Parameter |
---|
1 | borderStylh1. dashed |
---|
2 | borderColor#ccc |
---|
bgColor | #fff |
---|
|
Parameter | | Default | Description |
---|
-H, | --hostname | — | Name or IP address of the host on which JobScheduler is running | -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.
...
Code Block |
---|
language | bash |
---|
title | Sample JobScheduler Agent Command parameterization |
---|
|
http://galadriel.sos:4445/jobscheduler/agent/overview!'{totalProcessCount},{currentProcessCount}'!'{startedAt},{totalProcessCount},{currentProcessCount},{isTerminating}'!20 |
Explanations
...
Panel |
---|
| title Parameter |
---|
| title Parameter |
---|
1 | borderStylh1. dashed |
---|
2 | borderColor#ccc |
---|
bgColor | #fff |
---|
|
Parameter | | Default | Description |
---|
-u, | --url | — | URL for the HTTP connection that addresses the Agent via host (galadriel.sos ) and |
|
...
...
) that the Agent is listening to followed by a fixed path (/jobscheduler/agent/overview ).
|
|
...
-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 |
|
...
startedAt : point in time when the Agent was started.totalProcessCount : total number of jobs that have been executed during the lifetime of the Agent.currentProcessCount : number of jobs that are currently executed by the Agent.isTerminating : indicates whether the Agent is currently shutting down. Depending on the shutdown command that has been used an Agent will let run currently executed jobs before terminating
|
|
...
...
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
...