Pascal, "#" for HTML. It is common to assume that if a number starts
with a zero, it is octal. It does not matter what is used as long as
you know what it is. I will use "0x" for hexadecimal, "%" for binary
-and "0" for octal. The following numbers are all the same, just their represenatation (base) is different: 021 0x11 17 %00010001
+and "0" for octal. The following numbers are all the same, just their
+representation (base) is different: 021 0x11 17 %00010001
To do arithmetics and conversions you need to understand one more thing.
It is something you already know but perhaps you do not "see" it yet:
(which is just plain 16) four times and write down "4" to get 0xA04?.
Subtract 64 from 69 (69 - 4*16) and the last digit is 5 --> 0xA045.
-The other method builds ub the number from the right. Let's try 41'029
+The other method builds up the number from the right. Let's try 41'029
again. Divide by 16 and do not use fractions (only whole numbers).
41'029 / 16 is 2'564 with a remainder of 5. Write down 5.
While compound expressions can look overly complex, they can be
considered elegantly simple. To quickly comprehend RPN expressions,
-you must know the the algorithm for evaluating RPN expressions:
+you must know the algorithm for evaluating RPN expressions:
iterate searches from the left to the right looking for an operator.
When it's found, apply that operator by popping the operator and some
number of values (and by definition, not operators) off the stack.
2) A,10,input,IF eval is A,10,input,IF
read "if A then 10 else input". Now replace A with it's verbose
-description againg and--voila!--you have a easily readable description
+description again and--voila!--you have a easily readable description
of the expression:
if input > 10 then 10 else input
pkg install sunstudioexpress
pkg install SUNWgnome-common-devel
-There is a problem with F<cairo.pc> on opensolaris. It suggests that
+There is a problem with F<cairo.pc> on OpenSolaris. It suggests that
xrender is required for compilation with cairo. This is not true and also
-bad since opensolaris does not include an F<xrender.pc> file. Use perl to
+bad since OpenSolaris does not include an F<xrender.pc> file. Use Perl to
fix this:
perl -i~ -p -e 's/(Requires.*?)\s*xrender.*/$1/' /usr/lib/pkgconfig/cairo.pc
export PATH=/opt/SunStudioExpress/bin
-Since there does not seem to ba a viable msgfmt tool on opensolaris (short
+Since there does not seem to be a viable msgfmt tool on OpenSolaris (short
of installing it yourself). You have to call configure with the
--disable-libintl
=head2 General build tips for AIX
-If you are working with AIX, you may find the the B<--disable-shared> option
+If you are working with AIX, you may find the B<--disable-shared> option
will cause things to break for you. In that case you may have to install the
shared libraries into the rrdtool PREFIX and work with B<--disable-static>
instead.
=back
-If you have GNUmake installed and it is not called 'make',
+If you have GNU make installed and it is not called 'make',
then do
export MAKE=gmake
$MAKE
$MAKE install
-SOLARIS HINT: if you want to build the perl module for the native perl (the
+SOLARIS HINT: if you want to build the Perl module for the native Perl (the
one shipping with Solaris) you will need the Sun Forte compiler installed on
your box or you have to hand-tune bindings/perl-shared/Makefile while
building!
=head1 EXAMPLE 3
This example shows how to handle the case where the RRD, graphs and
-cgi-bins are seperate directories
+cgi-bins are separate directories
#!/.../bin/rrdcgi
<HTML>
=item B<-v>|B<--vertical-label> I<text>
-vertical label on the left side of the graph. This is normally used to
+Vertical label on the left side of the graph. This is normally used to
specify the units used.
=item B<-w>|B<--width> I<pixels> (default 400 pixel)
By default rrdgraph calculates the width of one pixel in the time domain and
tries to get data at that resolution from the RRD. With this switch you can
-override this behaviour. If you want rrdgraph to get data at 1 hour
+override this behavior. If you want rrdgraph to get data at 1 hour
resolution from the RRD, then you can set the step to 3600 seconds. Note,
that a step smaller than 1 pixel will be silently ignored.
=item +, -, *, /, %
-pops two values from the stack applies the selected operator and pushes
+Pops two values from the stack applies the selected operator and pushes
the result back onto the stack. The % operator stands for the modulo
operation.
=item SIN, COS, LOG, EXP, FLOOR, CEIL
-pops one value from the stack, applies the selected function and pushes
+Pops one value from the stack, applies the selected function and pushes
the result back onto the stack.
=item LT, LE, GT, GE, EQ
-pops two values from the stack, compares them according to the selected
+Pops two values from the stack, compares them according to the selected
condition and pushes either 1 back onto the stack if the condition is true
and 0 if the condition was not true.
=item IF
-pops three values from the stack. If the last value is not 0, the
+Pops three values from the stack. If the last value is not 0, the
second value will be pushed back onto the stack, otherwise the
first value is pushed back.
=item MIN, MAX
-selects the lesser or larger of the two top stack values respectively
+Selects the lesser or larger of the two top stack values respectively
=item LIMIT
-replaces the value with I<*UNKNOWN*> if it is outside the limits specified
+Replaces the value with I<*UNKNOWN*> if it is outside the limits specified
by the two values above it on the stack.
CDEF:a=alpha,0,100,LIMIT
In order to avoid anti-aliasing blurring effects rrdtool snaps
points to device resolution pixels, this results in a crisper
-aperance. If this is not to your liking, you can use this switch
+appearance. If this is not to your liking, you can use this switch
to turn this behaviour off.
Gridfitting is turned off for PDF, EPS, SVG output by default.
suppress the grid and labels altogether. The default for this option is
to automatically select sensible values.
-If you have set --y-grid to 'none' not only the labels get supressed, also
+If you have set --y-grid to 'none' not only the labels get suppressed, also
the space reserved for the labels is removed. You can still add space
manually if you use the --units-length command to explicitly reserve space.
Use Times for the title: C<--font TITLE:13:Times>
-If you do not give a font string you can modify just the sice of the default font:
+If you do not give a font string you can modify just the size of the default font:
C<--font TITLE:13:>.
If you specify the size 0 then you can modify just the font without touching
-the size. This is especially usefull for altering the default font without
+the size. This is especially useful for altering the default font without
resetting the default fontsizes: C<--font DEFAULT:0:Courier>.
RRDtool comes with a preset default font. You can set the environment
Calling rrdtool with the graphv option will return information in the
rrdtool info format. On the command line this means that all output will be
-in key=value format. When used from the perl and ruby bindings a hash
+in key=value format. When used from the Perl and Ruby bindings a hash
pointer will be returned from the call.
When the filename '-' is given, the contents of the graph itself will also
Example: C<VDEF:avg=mydata,AVERAGE>
-Note that currently only agregation functions work in VDEF rpn expressions.
+Note that currently only aggregation functions work in VDEF rpn expressions.
Patches to change this are welcome.
=head1 CDEF
L<rrdgraph_rpn> describes the B<RPN> language used in the B<xDEF> statements.
L<rrdgraph_graph> page describes all the graph and print functions.
-Make sure to read L<rrdgraph_examples> for tipsE<amp>tricks.
-
=head1 AUTHOR
Program by Tobias Oetiker E<lt>tobi@oetiker.chE<gt>
=back
If you PRINT a VDEF value, you can also print the time associated with it by appending the string
-B<:strftime> to the format. Note that rrdtool uses the strftime function of your OSs clibrary. This means that
+B<:strftime> to the format. Note that rrdtool uses the strftime function of your OSs C library. This means that
the conversion specifier may vary. Check the manual page if you are uncertain. The following is a list of
conversion specifiers usually supported across the board.
Plot a tick mark (a vertical line) for each value of I<vname> that is
non-zero and not *UNKNOWN*. The I<fraction> argument specifies the length of
the tick mark as a fraction of the y-axis; the default value is 0.1 (10% of
-the axis). Note that the color specification is not optional. The TICK marks normaly
+the axis). Note that the color specification is not optional. The TICK marks normally
start at the lower edge of the graphing area. If the fraction is negative they start
at the upper border of the graphing area.
=cut
-# This section describes the curruently defunct
+# This section describes the currently defunct
# PieChart code.
#
# =item B<PART>B<:>I<vname>B<#>I<rrggbb>[I<aa>][B<:>I<legend>]
example showing how to use centered formatting.
B<\n> is a valid alias for B<\l> since incomplete parsing in earlier
-versions of rrdtool lead to this behaviour and a number of people has been using it.
+versions of rrdtool lead to this behavior and a number of people has been using it.
Normally there are two space characters inserted between every two items
printed into the graph. The space following a string can be suppressed by
=head1 EXAMPLES
-Here an example of a table in a mysql database:
+Here an example of a table in a MySQL database:
DB connect information
dbhost=127.0.0.1
=head1 NOTES
-* Naturally you can also use any other kind of driver that libdbi supports - e.g postgress,...
+* Naturally you can also use any other kind of driver that libdbi supports - e.g postgres, ...
* From the way the datasource is joined, it should also be possible to do joins over different tables
(separate tables with "," in table and add in the WHERE Clauses the table equal joins.
saves a considerable amount of startup time when you plan to make
B<RRDtool> do a lot of things quickly. Check the section on L<Remote_Control>
further down. There is also a number of language bindings
-for RRDtool which allow you to use it directly from perl, python, tcl,
-php, etc.
+for RRDtool which allow you to use it directly from Perl, python, Tcl,
+PHP, etc.
=over 8
=item B<flush>
-Flush the values for a spcific RRD file from memory. Check L<rrdflush>.
+Flush the values for a specific RRD file from memory. Check L<rrdflush>.
=item B<rrdcgi>
always be able to fetch data at exactly the time you want
to. Therefore B<RRDtool> lets you update the logfile at any time you
want. It will automatically interpolate the value of the data-source
-(B<DS>) at the latest official time-slot (intervall) and write this
+(B<DS>) at the latest official time-slot (interval) and write this
interpolated value to the log. The original value you have supplied is
stored as well and is also taken into account when interpolating the
next log entry.
B<s:>I<systemtime>. Both values are the running totals of seconds since
RRDtool was started. If an error occurs, a line of the form 'C<ERROR:>
I<Description of error>' will be printed instead. B<RRDtool> will not abort,
-unless something realy serious happens. If
+unless something really serious happens. If
a B<workdir> is specified and the UID is 0, RRDtool will do a chroot to that
workdir. If the UID is not 0, RRDtool only changes the current directory to
B<workdir>.
Don't forget to create the database directory /var/rrd and
reinitialize your inetd.
-If all was setup correctly, you can access the server with perl
+If all was setup correctly, you can access the server with Perl
sockets, tools like netcat, or in a quick interactive test by using
'telnet localhost rrdsrv'.
Make sure you understand the last few paragraphs. There is no value
in only a line and a few axis, you need to know what they mean and
-interpret the data in ana appropriate way. This is true for all data.
+interpret the data in an appropriate way. This is true for all data.
The biggest mistake you can make is to use the collected data for
something that it is not suitable for. You would be better off if
You know how to create a database and can put data in it. You can get
the numbers out again by creating an image, do math on the data from
-the database and view the resulte instead of the raw data. You know
-about the difference between averages and maxima, and when to use
+the database and view the result instead of the raw data. You know
+about the difference between averages and maximum, and when to use
which (or at least you should have an idea).
RRDtool can do more than what we have learned up to now. Before you
you to be able to work with RRDtool and to read the additional
documentation available. There is plenty more to discover about
RRDtool and you will find more and more uses for this package. You can
-easly create graphs using just the examples provided and using only
+easily create graphs using just the examples provided and using only
RRDtool. You can also use one of the front ends to RRDtool that are
available.