Cricket is designed to be flexible enough to be able to monitor more than just router interfaces. The sample config tree that comes with it will help you learn about its capabilities, but to monitor other things, you'll need to write your own branches of the config tree.
Read this document to learn how to get the most from Cricket, by teaching it to gather data from all kinds of sources.
Cricket gives you complete control over the contents and layout of your RRD files. This means that if you are going to be doing any serious target-type hacking, you need to understand the following concepts:
This is where data is stored in an RRD. There is one RRA for each scale of data, for example 5 minute samples, 30 minute samples, and 2 hour samples. The same data is in each RRA, except it is sampled at a different rate. If an RRA can hold 12 samples and it is updated every 5 minutes, then it holds data spanning back one hour. The 13th sample will overwrite the 1st sample. Detailed information about RRD is available from the RRD Tool documentation and from the RRD Tool tutorials.
A data source is one line on a graph, or one column of data if you think of the RRD as a tabular listing of data. One RRD can have many datasources in it. All up them must be updated with new data at once. Not all of them need to be graphed at once (see the information about datasource "views" below).
A device that we are keeping stats on is a target. There one RRD file on disk for every target. You can think of each target as a leaf on the config tree.
The type of the target determines what kinds of data sources and RRA's makes up the target. When Cricket goes to update a target, it uses the target type to figure out what data to fetch about the target, and how to fetch it.
This is the rather unfortunate name for the attribute of a data source that tells Cricket precisely where to fetch the data from, and which data to fetch. Encoded in the ds-source is the retrieval method and a description of the data we want.
Now, with all those terms under your belt, you'll understand this statement: Using the datasource, RRA, and targetType dictionaries, you can completely control the kind, source, and quantity of data you store. The RRA's in the sample-config reproduce MRTG 2.x's data format precisely, and that configuration has proven to work well for most needs. If you are going to be using Cricket for the jobs it comes ready to do, you'll simply need to copy the sample-config tree and make minor changes to the targets it specifies.
If you need to customize Cricket to talk to other things, then you'll be following the following general steps:
If you come up with an interesting configuration, please share it with the Cricket community by submitting it to the Cricket contrib site hosted by the nice folks at GNAC.
If you need to add a new kind of data gathering subroutine, you'll want to read the code to snmp.pm very carefully and make a module like it to collect your data. It's not too hard, but it might not be worth the effort -- consider using a simple Perl script to let you fetch the data via the exec method. See the http-performance sub-tree for an example of how to do this.
Cricket version 1.0.5, released 2004-03-28.
Copyright (C) 1998-2000 Jeff Allen. Cricket is released under the GNU General Public License.