d28600cf7a4dd7f32cf4d79435c70cdfd5153ecf
[rrdtool.git] / README
1 Round Robin Database Tools
2 ==========================
3
4 It is pretty easy to gather status information from all sorts of things,
5 ranging from the temperature in your office to the number of octets which
6 have passed through the FDDI interface of your router. But it is not so
7 trivial to store this data in a efficient and systematic manner. This is
8 where RRDtool kicks in. It lets you log and analyze the data you gather from
9 all kinds of data-sources (DS). The data analysis part of RRDtool is based
10 on the ability to quickly generate graphical representations of the data
11 values collected over a definable time period.
12
13
14 To compile:
15 -----------
16
17 you need the following libraries installed on your system.
18
19    cgilib-0.5.tar.gz
20    freetype-2.1.5.tar.gz
21    libart_lgpl-2.3.16.tar.gz
22    libpng-1.2.5.tar.gz
23    zlib-1.2.1.tar.gz
24
25 you can either get these libraries directly from their original sites
26 or you can get copies from 
27
28    http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/libs
29
30 the configure program will try to use the libraries with out adding any extra
31 flags apart from the ones defined in CPPFLAGS and LDFLAGS. If this does not
32 work it will try to get information from pkgconfig.
33
34 If your libraries are not installed in standard places and you do not have
35 pkgconfig support, then you may want to set CPPFLAGS and LDFLAGS to help
36 configure while it tries to find the libraries.
37
38   env CPPFLAGS="-I/scratch/oetiker/cgilib-0.5 \
39                 -I/scratch/oetiker/libs/include/libart-2.0 \
40                 -I/scratch/oetiker/libs/include \
41                 -I/scratch/oetiker/libs/include/freetype2" \
42        LDFLAGS="-L/scratch/oetiker/libs/lib -R/scratch/oetiker/libs/lib \
43                 -L/scratch/oetiker/cgilib-0.5" ./configure 
44
45   make             <------ GNU make
46
47   make install     <------ GNU make
48
49 This will configure, compile and install RRDtool in
50 /usr/local/rrdtool-VERSION. If you prefer to install RRDtool in some other
51 place, use
52
53   ./configure --prefix=/some/other/RRDtool-dir
54
55 The configure script will try to find your perl installation (5.008
56 preferred). If it does not find it, you can still build RRDtool but no perl
57 modules will be generated.
58
59 By default the perl modules will be installed under the RRDtool install
60 directory. This will require you to use a 'use lib' statement in your
61 RRDtool perl programs. If you do not care what happens to your site-perl
62 directory, you can also use
63
64    --enable-perl-site-install 
65
66 when running configure to have the RRD perl modules installed  wherever you
67 keep your local perl modules. Doing this reliefs you from using 'use lib' in
68 your scripts.
69
70 Configure will also look for an TCL installation on your system. If it finds
71 one it will build a TCL interface for RRDtool. If you keep tcl in a non
72 standard location you can use
73
74   sh configure --with-tcllib=/sw/tcl-8.3/lib
75
76 to indicte the right version (note, this must point to the directory where
77 tclConfig.sh is located). Note that install will integrate the tcl bindings
78 into your tcl installation. It will use a separate directory for each
79 version though, so this is not much of a problem. Nevertheless the Tcl
80 module will not get intalled by default as Tcl wants its module in the base
81 tcl installation where you might not be able to write to. So if you want the
82 tcl stuff installed, type
83
84   make site-tcl-install
85
86
87 Getting Started:
88 ----------------
89
90 Either after compiling or after installing you can try the example
91 RRDtool applications in the examples directory.
92
93 To learn:
94 ---------
95
96 Read the documentation in the doc directory. Start of with
97 RRDtool. All documents are available as html and as ASCII text.  
98
99 If you are looking for a more slow paced introduction, make sure to read
100 Alex van den Bogaerdt's rrdtutorial which is also available from the doc
101 directory. Also read his cdeftutorial and Steve Rader's rpntutorial.
102  
103 If you want to know about the format of the log files check
104 src/rrd_format.h there are a lot of comments in there ...
105
106 How to make Tobi happy:
107 -----------------------
108
109 If you want to show your appreciation for RRDtool you could make me happy
110 by going to ee-staff.ethz.ch/~oetiker/wish and ordering a CD from
111 my CD wish list ... 
112
113
114 How to keep in touch:
115 ---------------------
116
117 There are 3 Mailing lists for RRDtool:
118
119 rrd-announce    LOW volume RRDtool Announcements List (Only Stable Releases)
120 rrd-users       For discussion amongst people who use RRDtool in their applications
121 rrd-developers  For people who actually HACK RRDtool code
122
123 To subscribe to <MAILGLIST> send a message with the subject 'subscribe'
124 to <MAILGLIST>-request@list.ee.ethz.ch.
125
126 Note, that postings to rrd-announce will always be cross-posted 
127 to rrd-users and rrd-developers as well.
128
129 To Contribute:
130 --------------
131
132 Contributed feature and bug patches are most welcome. But please
133 send complete patches. A complete patch patches the CODE as well
134 as the CHANGES, CONTRIBUTORS and the POD files.
135
136 Use GNU   diff --unified --recursive olddir newdir   to build your patches.
137
138 The latest Version:
139 -------------------
140 Is available from http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/
141
142
143 Tobias Oetiker <oetiker@ee.ethz.ch>