X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=doc%2Frrdtool.pod;h=40f2ea6b6f7e3cd701026439ea7c020278864a35;hb=bf7d0302ab2ff46038f7002a9eab76f4105c3cee;hp=e4878636383492937e653fb79e19f7d4cf2ee067;hpb=5837606887a6d81e8b1f7588525cb1c8783fb62b;p=rrdtool.git diff --git a/doc/rrdtool.pod b/doc/rrdtool.pod index e487863..40f2ea6 100644 --- a/doc/rrdtool.pod +++ b/doc/rrdtool.pod @@ -6,7 +6,7 @@ rrdtool - round robin database tool =head1 SYNOPSIS -B B<-> | I +B B<-> [workdir]| I =head1 DESCRIPTION @@ -50,6 +50,10 @@ Set up a new Round Robin Database (RRD). Check L. Store new data values into an RRD. Check L. +=item B + +Operation equivalent to B except for output. Check L. + =item B Create a graph from data stored in one or several RRD. Apart from @@ -78,10 +82,18 @@ Alter setup of an RRD. Check L. Find last update time of an RRD. Check L. +=item B + +Get information about an RRD. Check L. + =item B Change the size of individual RRAs ... Dangerous! Check L. +=item B + +Export data retrieved from one or several RRD. Check L + =item B This is a standalone tool for producing rrd graphs on the fly. Check @@ -170,6 +182,63 @@ Bs. The graphing feature is fully configurable. Size, color and contents of the graph can be defined freely. Check L for more information on this. +=item Aberrant Behavior Detection + +by Jake Brutlag Ejakeb@corp.webtv.netE + +The B also provides the building blocks for near real-time +aberrant behavior detection. These components include: + +=over 12 + +=item * + +An algorithm for predicting the values time series one time step into the future. + +=item * + +A measure of deviation between the predicted values and the observed values. + +=item * + +A mechanism to decide if and when an observed value +or sequence of observed values is I from the predicted value(s). + +=back + +Each of these components is briefly described: + +Holt-Winters Time Series Forecasting Algorithm is an online, or incremental, +algorithm that adaptively predicts future observations in a time series. It's +forecast is the sum of three components: a baseline (or intercept), a linear +trend over time (or slope), and a seasonal coefficient (a periodic effect, +such as a daily cycle). There is one seasonal coefficient for each time point +in the period (cycle). After a value is observed, each of these components is +updated via exponential smoothing. So the algorithm learns from past values +and uses them to predict the future. The rate of adaptation is governed by +3 parameters, alpha (intercept), beta (slope), and gamma (seasonal). The prediction +can also be viewed as a smoothed value for the time series. + +The measure of deviation is a seasonal weighted absolute deviation. The term +I means deviation is measured separately for each time point in the +seasonal cycle. As with Holt-Winters Forecasting, deviation is predicted using +the measure computed from past values (but only at that point in the seasonal cycle). +After the value is observed, the algorithm learns from the observed value via +exponential smoothing. Confidence bands for the observed time series are generated +by scaling the sequence of predicted deviation values (we usually think of the sequence +as a continuous line rather than a set of discrete points). + +Aberrant behavior (a potential failure) is reported whenever the number of +times the observed value violates the confidence bands meets or exceeds a +specified threshold within a specified temporal window (i.e. 5 violations +during the past 45 minutes with a value observed every 5 mintues). + +This functionality is embedded in a set of related B. In particular, a FAILURES +B logs potential failures. Presumably a front-end application to B can +utilize this B to initiate real-time alerts if that is desired. + +You can find a detailed description of how to set this up in L. + =back =head2 REMOTE CONTROL @@ -178,17 +247,47 @@ When you start B with the command line option 'B<->', it waits for input via standard in. With this feature you can improve performance by attaching B to another process (mrtg is one example) through a set of pipes. Over the pipes B accepts the -same arguments as on the command line. When a command is completed, -rrdtool will print the string 'C', followed by timing information of -the form BI BI both values are running -totals of seconds since rrdtool was started. If an error occurs, a line -of the form 'C I' will be printed. B +same arguments as on the command line and some spezial commands like +B and B. For detail helps about the server commands +type : + + rrdtool help cd|mkdir|ls|quit + +When a command is completed, rrdtool will print the string 'C', +followed by timing information of the form BI +BI both values are running totals of seconds +since rrdtool was started. If an error occurs, a line of the +form 'C I' will be printed. B will not abort if possible, but follow the ERROR line with an OK line. +If a B is spezified and the UID is 0, rrdtool will do a +chroot to the workdir. If the UID is not 0, rrdtool only changes the +current directory to B. + +=head2 RRD Server + +If you want to create a RRD-Server, you must choose a TCP/IP Service +number and add them to I like this: + + rrdsrv 13900/tcp # rrd server + +Attention: the tcp port 13900 isn't official registered for rrdsrv. You +can use any unused port in your services, but the server an the client +system must use the same port of curse. +After this you can add the rrdtool as meta-server to I +for example: + + rrdsrv stream tcp nowait root /opt/rrd/bin/rrdtool rrdtool - /var/rrd + +Don't forget to create the database directory /var/rrd and reinitialize +your inetd. +If all was correct, you can access the server with perl sockets, tools +like netcat or a quickhack test 'telnet localhost rrdsrv'. + =head1 SEE ALSO -rrdcreate, rrdupdate, rrdgraph, rrddump, rrdfetch, rrdtune, rrdlast +rrdcreate, rrdupdate, rrdgraph, rrddump, rrdfetch, rrdtune, rrdlast, rrdxport =head1 BUGS