LSARC,
I am sponsoring this fast track for Stephen Brown of
the JDS - Gnome team in Dublin, Ireland. I have set
the timer for Thursday, February 21st, 2008. The
case directory contains this proposal as well as various
documentation and the header file.
This project integrates the Open Source project known
as RRDTool into a Minor release of Solaris. RRDTool
lets you log and analyze the data you gather from all
kinds of data-sources and quickly generate graphical
representations of the data definable over a time
period.
Thanks,
John
-------------- next part --------------
1. Introduction
1.1. Project/Component Working Name:
RRDTool
1.2. Name of Document Author/Supplier:
Stephen Browne
1.3. Date of This Document:
02/15/08
1.3.1. Date this project was conceived:
1999 - community inception
2/2008 - Sun inception
1.4. Name of Major Document Customer(s)/Consumer(s):
1.4.1. The PAC or CPT you expect to review your project:
Solaris PAC
1.4.2. The ARC(s) you expect to review your project:
LSARC
1.4.3. The Director/VP who is "Sponsoring" this project:
robert.odea at sun.com
1.4.4. The name of your business unit:
OPG / OpenSource.
1.5. Email Aliases:
1.5.1. Responsible Manager:
leo.binchy at sun.com
1.5.2. Responsible Engineer:
stephen.browne at sun.com
1.5.3. Marketing Manager:
dan.roberts at sun.com
1.5.4. Interest List:
desktop-discuss at opensolaris.org
4. Technical Description:
4.1. Details:
It is pretty easy to gather status information from all sorts
of things, ranging from the temperature in your office to the
number of octets which have passed through the FDDI interface
of your router. But it is not so trivial to store this data in
an efficient and systematic manner. This is where RRDtool comes
in handy. It lets you log and analyze the data you gather from
all kinds of data-sources. The data analysis part of RRDtool is
based on the ability to quickly generate graphical representations
of the data values collected over a definable time period.
So RRDtool is a database but there are distinct differences
between RRDtool databases and other databases as listed below:
* RRDtool stores data; that makes it a back-end tool.
The RRDtool command set allows the creation of graphs; that
makes it a front-end tool as well. Other databases just store
data and can not create graphs.
* In case of linear databases, new data gets appended at the bottom
of the database table. Thus its size keeps on increasing, whereas
the size of an RRDtool database is determined at creation time.
Imagine an RRDtool database as the perimeter of a circle. Data is
added along the perimeter. When new data reaches the starting point,
it overwrites existing data. This way, the size of an RRDtool
database always remains constant. The name "Round Robin" stems
from this behavior.
* Other databases store the values as supplied. RRDtool can be
configured to calculate the rate of change from the previous to the
current value and store this information instead.
* Other databases get updated when values are supplied. The RRDtool
database is structured in such a way that it needs data at predefined
time intervals. If it does not get a new value during the interval,
it stores an UNKNOWN value for that interval. So, when using the
RRDtool database, it is imperative to use scripts that run at regular
intervals to ensure a constant data flow to update the RRDtool
database.
RRDtool is designed to store time series of data. With every data
update,
an associated time stamp is stored. Time is always expressed in seconds
passed since epoch (01-01-1970). It comes with a command set to carry
out various operations on RRD databases.
The version being integrated is 1.2.19
4.2. Bug/RFE Number(s):
None.
4.3. In Scope:
See above.
4.4. Out of Scope:
See above.
4.5. Interfaces:
--------------------------------------------------------------------
Exported Stability Comments
--------------------------------------------------------------------
rrdtool Uncommitted main binary
with many
create subcommand
subcommands/functions
dump subcommand documented in
rrd*.1
fetch subcommand manpages,
installed
graph subcommand in /usr/bin,
note the
info subcommand subcommands are
internal
last subcommand to rrdtool
(i.e., no
lastupdate subcommand additional bits
installed).
resize subcommand
restore subcommand
tune subcommand
xport subcommand
rrdcgi Uncommitted web cgi script
interpreter
parsing for
tags documented
in rrdcgi.1 man
page,
installed in
/usr/bin
rrdupdate Uncommitted convenience
binary for
rrdtool update,
installed
in /usr/bin
librrd.so.2.0.9 Uncommitted lib
implementation of RRD,
installed in
/usr/lib
librrd.so Uncommitted Link
target=librrd.so.2.0.9
librrd.so.2 Uncommitted Link
target=librrd.so.2.0.9
librrd_th.so.2.0.8 Uncommitted Thread safe API
for above,
installed in
/usr/lib
librrd_th.so Uncommitted Link
target=librrd_th.so.2.0.8
librrd_th.so.2 Uncommitted Link
target=librrd_th.so.2.0.8
tclrrd1.2.19.so Uncommitted TCL bindings
for RRD,
installed in
/usr/lib
rrd.h Uncommitted header file,
installed in
/usr/include
SUNWrrdtool Uncommitted SVr4 Package
--------------------------------------------------------------------
Imported Stability Comments
--------------------------------------------------------------------
/usr/lib/libpng12.so.0 Uncommitted LSARC/2003/085
/usr/lib/libz.so.1 Committed PSARC/2006/537
/usr/lib/libart_lgpl_2.so.2 Volatile LSARC/2006/202
/usr/sfw/lib/libfreetype.so.6 Volatile LSARC/2002/291
/usr/sfw/lib/libgcc_s.so.1 Volatile PSARC/2004/742
4.6. Doc Impact:
Man pages are provided that both detail the rrdtool functions and
provide
tutorials for their use.
4.7. Admin/Config Impact:
None.
4.8. HA Impact:
None.
4.9. I18N/L10N Impact:
The JDS team and the G11N are working together to evaluation
and provide I18N/L10N support
4.10. Packaging & Delivery:
Adds new package, SUNWrrdtool, approx 2.2 MB.
Package will go into SUNWCall, SUNWCXall and SUNWCprog clusters.
4.11. Security Impact:
None.
4.12. Dependencies:
None.
5. Reference Documents:
http://oss.oetiker.ch/rrdtool/