other versions
- wheezy 4.3.0~beta2.dfsg-9.1
HOBBITD_RRD(8) | System Manager's Manual | HOBBITD_RRD(8) |
NAME¶
hobbitd_rrd - hobbitd worker module for updating Xymon RRD filesSYNOPSIS¶
hobbitd_channel --channel=status hobbitd_rrd [options]DESCRIPTION¶
hobbitd_rrd is a worker module for hobbitd, and as such it is normally run via the hobbitd_channel(8) program. It receives "status" and "data" messages from hobbitd via stdin, and updates the RRD databases used to generate trend-graphs.OPTIONS¶
- --debug
- Enable debugging output.
- --rrddir=DIRECTORY
- Defines the directory where the RRD-files are stored.
hobbitd_rrd will use the location pointed to by the BBRRDS environment if
this option is not present.
- --extra-script=FILENAME
- Defines the script that is run to get the RRD data for
tests that are not built into hobbitd_rrd. You must also specify which
tests are handled by the external script in the --extra-tests
option. This option can only be given once, so the script must handle all
of the external test-data. See the CUSTOM RRD DATA section below. Note
that this is NOT needed if your custom graphs are generated by the NCV
(Name Colon Value) module described below, it is only required for data
where you have a custom script to parse the status message and extract the
data that is put into the graph.
- --extra-tests=TEST[,TEST]
- List of testnames that are handled by the external script.
See the CUSTOM RRD DATA section below. Note that NCV graphs should NOT be
listed here, but in the TEST2RRD environment variable - see below.
ENVIRONMENT¶
- TEST2RRD
- Defines the mapping between a status-log columnname and the
corresponding RRD database format. This is normally defined in the
hobbitserver.cfg(5) file.
- BBRRDS
- Default directory where RRD files are stored.
- NCV_testname
- Defines the types of data collected by the "ncv"
module in hobbitd_rrd. See below for more information.
- SPLITNCV_testname
- The same as NCV_testname, but keeps the data into separate
files. That is, it creates one rrd file per "NAME : value" line
found in the status message. It is useful when the list of NCV lines is
varying.
- TRACKMAX
- Comma-separated list of columnname for which you want to
keep the maximum values along with the default average values. This only
works
for the NCV backend.
COLLECTED DATA¶
The following RRD-file datasets are generated by hobbitd_rrd:- la
- Records the CPU load average. Data is collected from the
"cpu" status report. Requires that a Xymon client is running on
the monitored server.
- disk
- Records the disk utilization. Data is collected from the
"disk" status report. Requires that a Xymon-compatible client is
running on the monitored server.
- memory
- Records memory- and swap-utilization. Data is collected
from the "memory" status report. If no "memory" status
is reported, it will use the data from the Win32 client "cpu"
status report to generate this dataset. Requires that a Xymon-compatible
client is running on the monitored server.
- netstat
- Records TCP and UDP statistics. Data is collected from the
"netstat" status report; however, this data is often sent via
the Xymon "data" protocol, so there need not be a
"netstat" column visible on the Xymon display. To get these
data, the LARRD netstat bottom-feeder script must be running on the
monitored server.
- vmstat
- Records system performance metrics from the
"vmstat" command. Data is collected from the "vmstat"
status report; however, this data is often sent via the Xymon
"data" protocol, so there need not be a "vmstat"
column visible on the Xymon display. To get these data, the LARRD vmstat
bottom-feeder script must be running on the monitored server.
- tcp
- Response-time metrics from all of the Xymon network tests
are recorded in the "tcp" RRD.
- apache
- Apache server performance metrics, taken from the
"apache" data report. See the description of the apache
keyword in bb-hosts(5) for details.
- sendmail
- Sendmail server performance metrics, taken from the
"mailstats" output. To get these data, the LARRD sendmail
bottom-feeder script must be running on the monitored server.
- mailq
- Mail queue size. To get these data, the LARRD nmailq
bottom-feeder script must be running on the monitored server.
- bea
- BEA Weblogic performance data. This is an experimental set
of data collected from BEA Weblogic servers via SNMP, by the
"beastats" tool included with Xymon.
- iishealth
- IIS webserver performance data, collected by the
"iishealth" script. This script is a client-side add-on
available from the www.deadcat.net archive.
- temperature
- Temperature data, collected with the temperature script
from www.deadcat.net. To get these data, the temperature script must be
running on the monitored server.
- ntpstat
- Tracks the deviation between the local system time and an
NTP server, using the output from the "ntpq -c rv" command. A
simple script to collect these data is included in the Xymon contrib/
directory.
- citrix
- Tracks the number of active sessions on a Citrix server
using the "query session" command. An extension for the BBNT
client that generates data for this graph is in the Xymon contrib/
directory.
CUSTOM RRD DATA IN NAME-COLON-VALUE (NCV) FORMAT¶
Many data-collection scripts report data in the form "NAME : value" or "NAME = value". So a generic module in hobbitd_rrd allows for easy tracking of this type of data.NCV_mysql="Queriespersecondavg:GAUGE"
NCV_mysql="Uptime:NONE,Queriespersecondavg:GAUGE"
NCV_weather="Rain:DERIVE,*:GAUGE"
CUSTOM RRD DATA VIA SCRIPTS¶
hobbitd_rrd provides a simple mechanism for adding custom graphs to the set of data collected on your Xymon server. By adding the "--extra-script" and "--extra-tests" options, data reported to Xymon from selected tests are passed to an external script, which can define the RRD data-sets to store in an RRD file.- Hostname
- The name of the host reporting the data.
- Testname
- The name of the test being reported.
- Filename
- File containing the data that was reported. This file is
generated for you by hobbitd_rrd, and is also deleted automatically after
your script is finished with it.
- RRD data-set definitions
- For each dataset that the RRD file holds, a line beginning
with "DS:" must be output. If multiple data-sets are used, print
one line for each dataset.
- RRD filename
- The name of the RRD file where the data is stored. Note that Xymon stores all RRD files in host-specific directories, so unlike LARRD you should not include the hostname in the name of the RRD file.
- RRD values
- One line, with all of the data values collected by the
script. Data-items are colon-delimited and must appear in the same
sequence as your data-set definitions, e.g. if your RRD has two datasets
with the values "5" and "0.4" respectively, then the
script must output "5:0.4" as the RRD values.
-
green Weather in Copenhagen is FAIR Temperature: 21 degrees Celsius Wind: 4 m/s Humidity: 72 % Rainfall: 5 mm since 6:00 AM
-
#!/bin/sh # Input parameters: Hostname, testname (column), and messagefile HOSTNAME="$1" TESTNAME="$2" FNAME="$3" if [ "$TESTNAME" = "weather" ] then # Analyze the message we got TEMP=`grep "^Temperature:" $FNAME | awk '{print $2}'` WIND=`grep "^Wind:" $FNAME | awk '{print $2}'` HMTY=`grep "^Humidity:" $FNAME | awk '{print $2}'` RAIN=`grep "^Rainfall:" $FNAME | awk '{print $2}'` # The RRD dataset definitions echo "DS:temperature:GAUGE:600:-30:50" echo "DS:wind:GAUGE:600:0:U" echo "DS:humidity:GAUGE:600:0:100" echo "DS:rainfall:DERIVE:600:0:100" # The filename echo "weather.rrd" # The data echo "$TEMP:$WIND:$HMTY:$RAIN" fi exit 0
COMPATIBILITY¶
Some of the RRD files generated by hobbitd_rrd are incompatible with the files generated by the Big Brother LARRD add-on:- vmstat
- The vmstat files with data from Linux based systems are
incompatible due to the addition of a number of new data-items that LARRD
0.43 do not collect, but hobbitd_rrd does. This is due to changes in the
output from the Linux vmstat command, and changes in the way e.g. system
load metrics are reported.
- netstat
- All netstat files from LARRD 0.43 are incompatible with
hobbitd_rrd. The netstat data collected by LARRD is quite confusing: For
some types of systems LARRD collects packet-counts, for others it collects
byte- counts. hobbitd_rrd uses a different RRD file-format with separate
counters for packets and bytes and tracks whatever data the system is
reporting.
SEE ALSO¶
hobbitd_channel(8), hobbitd(8), hobbitserver.cfg(5), xymon(7)Version 4.2.3: 4 Feb 2009 | Xymon |