Troubleshooting Zenoss
From TroubleshootingWiki
| Official Page |
| Project Documentation |
| Download |
|
Despite our best efforts, we sometimes encounter problems with the software we use. As IT professionals, we accept this fate. Let's review some basic Zenoss troubleshooting and support options to help us identify and get answers to our problems.
Contents |
[edit] Troubleshoot Zenoss
Zenoss provides several default options to help us identify and diagnose problems, including reports, log files, and Zenoss commands.
[edit] Reports
Zenoss includes several default reports that we can analyze to find potential problems with our monitoring setup. The following table lists a problem description and the report that may provide the necessary information.
| Proble | Report Name | Description |
| User is not alerted when an event occurs | Notification Schedules | Review the active notification window and filter rule for each user. |
| Device model does not update | Model Collection Age | Devices listed have not been monitored by SNMP for 48 hours. |
| SNMP monitoring problems | SNMP Status Issues | System wide view of all devices with SNMP issues by device class. Includes devices not monitored with SNMP. |
| Availability monitoring problems | Ping Status Issues | System wide view of all devices with ping issues by device class. Includes devices not monitored with ping. |
| Need to know available disk space across all devices on the network | Filesystem Utilization | All monitored file systems display in a single view. |
| Need to know the total network utilization for memory, CPU, and throughput | Aggregate Reports | All usages statistics for all monitored devices display in a single graph for each item. |
Each report tells us something about the IT assets we monitor, which makes them valuable resources when we try to track down trends or problems.
[edit] Zenoss Daemons
Until now, we have been primarily interacting with the Zenoss daemons through the web interface. Now it's time to take a look under the hood at the daemons and see how they can aid our troubleshooting.
Before we jump into the command line debugging and log files, let's get a basic understanding of what each daemon does.
| Daemon | Function |
| zenping | Monitors availability with ping. |
| zensyslog | Turns *nix based syslogs into events.
|
| zenstatus | Monitors components with status monitors. |
| zenactions | Performs commands based on events. Event commands are user defined. |
| zentrap | Monitors SNMP traps. |
| zenmodeler | Models each device according to associated plugins. |
| zenperfsnmp | Collects performance data for components via SNMP. |
| zencommand | Runs external commands, such as Nagios plugins. |
| zenprocess | Collects SNMP performance data for CPU and Memory. |
| zenwin | Monitors WMI services on Windows systems. |
| zeneventlog | Monitors Windows event logs. |
| zenwinmodeler | Models Windows systems. |
[edit] Basic Usage
All these daemons work in a consistent way in that they run in the background in daemon mode or in the foreground for debugging purposes. Consequently, we have two separate help files which we can review. We'll demonstrate using zenactions.
To see the daemon run options, use the command:
zenactions ‑‑help
The following screenshot shows the command's output:
To see the available options, run the command:
zenactions help
The following screen shot shows the options available to zenactions.
The options available to the daemon vary based on the command. For example, some daemons allow us to specify a device, while others do not. However, each daemon allows us to specify the integer value of the level of logging we want to see.
The available logging levels from the least to most verbose are:
| Log Severity | Numeric Value |
| Critical | 50 |
| Error | 40 |
| Info | 20 |
| Debug | 10 |
| Trace | 5 |
Many of the daemons are set to log everything with a severity equal to or greater than info. However, when we're troubleshooting, we most likely want the verbose output provided by debug. If we are trying to isolate a command failure, we may need to specify a logging level of trace.
As the Zenoss user, run the following commands. Compare the output of these two commands:
zenstatus run zenstatus run -v10
As we see, setting the logging level to debug creates a verbose output compared to the default level of info.
Note the syntax of our zenstatus examples. We supply zenstatus a command. In this case, we have provided run. Then we append the options we want to use. Our examples use the logseverity option. As an example, if we want to generate a sample configuration file using the default options, we supply the genconf command to the daemon, and the command looks like:
zenstatus genconf
The same rules apply to all the daemons.
[edit] Log Files
Each of the Zenoss daemons logs status messages to corresponding log files that we find in $ZENHOME/logs. We can also access the logs for each daemon by navigating to the Settings > Daemons page via the web interface.
Reviewing log files will help us confirm that Zenoss completes certain tasks. For example, if we need to troubleshoot the modeling process for a Windows server, we look through the zenwinmodeler log file to identify potential problems (see the following screen capture).
As we look through some of the log files, we may notice that the output for some of the daemons is more verbose than others. If we want to adjust the default logging level of the daemons, we can edit the configuration file and specify the logging level by specifying the parameter logseverity and the applicable value (see the following screenshot).
[edit] Summary
Zenoss is a complex software package wrapped in an accessible web interface, which enables ready access to enterprise quality network and system monitors to the masses. As we gain familiarity with Zenoss through daily usage, our knowledge will grow, and we'll find ways to make Zenoss a better tool for our environments.
Zenoss is flexible enough to accommodate all skill levels. The user who never monitored anything gains value by having an easy to use interface while advanced users can probe deeper by manipulating Zenoss at the command and code levels.
For all users, the discovery begins at port 8080 of our Zenoss servers.
[edit] Additional References
For instructions on Installing Zenoss, click here
[edit] Source
The source of this content is Chapter 11:Technical Support of Zenoss Core Network and System Monitoring by Michael Badger (Packt Publishing, 2008).

