7.6. Troubleshooting

Though all Monitoring-related activities are conducted through the RHN website, Red Hat provides access to some command line diagnostic tools that may help you determine the cause of errors. To use these tools, you must be able to become the nocpulse user on the RHN Server conducting the monitoring.

First log into the RHN Server as root. Then switch to the nocpulse user with the following command:

su - nocpulse

You may now use the diagnostic tools described within the rest of this section.

7.6.1. Examining Probes with rhn-catalog

To thoroughly troubleshoot a probe, you must first obtain its probe ID. You may obtain this information by running rhn-catalog on the RHN Server as the nocpulse user. The output will resemble:

2 ServiceProbe on example1.redhat.com (199.168.36.245): test 2
3 ServiceProbe on example2.redhat.com (199.168.36.173): rhel2.1 test
4 ServiceProbe on example3.redhat.com (199.168.36.174): SSH
5 ServiceProbe on example4.redhat.com (199.168.36.175): HTTP

The probe ID is the first number, while the probe name (as entered in the RHN website) is the final entry on the line. In the above example, the 5 probe ID corresponds to the probe named HTTP.

Further, you may pass the --commandline (-c) and --dump (-d) options along with a probe ID to rhn-catalog to obtain additional details about the probe, like so:

rhn-catalog --commandline --dump 5

The --commandline option yields the command parameters set for the probe, while --dump retrieves everything else, including alert thresholds and notification intervals and methods.

The command above will result in output similar to:

5 ServiceProbe on example4.redhat.com (199.168.36.175  ):
linux:cpu usage
      Run as: Unix::CPU.pm --critical=90 --sshhost=199.168.36.175  
--warn=70 --timeout=15 --sshuser=nocpulse
--shell=SSHRemoteCommandShell --sshport=4545

Now that you have the ID, you use it with rhn-rhnprobe to examine the probe's output. Refer to Section 7.6.2 Viewing the output of rhn-runprobe for instructions.

7.6.2. Viewing the output of rhn-runprobe

Now that you have obtained the probe ID with rhn-catalog, use it in conjunction with rhn-runprobe to examine the complete output of the probe. Note that by default, rhn-runprobe works in test mode, meaning no results are entered in the database. Here are its options:

OptionDescription
--helpList the available options and exit.
--probe=PROBE_IDRun the probe with this ID.
--prob_arg=PARAMETEROverride any probe parameters from the database.
--module=PERL_MODULEPackage name of alternate code to run.
--log=all=LEVELSet log level for a package or package prefix.
--debug=LEVELSet numeric debugging level.
--liveExecute the probe, enqueue data and send out notifications (if needed).

Table 7-1. rhn-runprobe Options

At a minimum, you should include the --probe option, the --log option, and values for each. The --probe option takes the probeID as its value and the --log option takes the value "all" (for all run levels) and a numeric verbosity level as its values. Here is an example:

rhn-runprobe --probe=5 --log=all=4

The above command requests the probe output for probeID 5, for all run levels, with a high level of verbosity.

More specifically, you may provide the command parameters derived from rhn-catalog, like so:

rhn-runprobe 5 --log=all=4 --sshuser=nocpulse --sshport=4545

This yields verbose output depicting the probe's attempted execution. Errors are clearly identified.