HotSaNIC
HTML overview to System and Network Information Center
by Bernd Pissny ( hotsanic@bernisys.prima.de / http://www.bernisys.prima.de )


HotSaNIC version history

0.5.0 - (pre-released)
new features:
solaris support
more *BSD support
bugfixes
better HTML output
better logging output

pre6

available via CVS and as snapshot on the project's homepage
new changelog order since pre6: recent changes first!
  • logging completely rewritten. Verbosity now much better configurable. (2004/07)
  • TRAFFIC module now handles "/" characters in devicenames correctly (i.e. to monitor Cisco routers' interfaces)
  • sampling will be throttled when last sample took too long. This avoids possible high load when consuming shell-commands are needed for sampling (for example the "mailq" command)
  • samples will not be taken if last sampling was <10s ago
  • new module option "nodaemon" starts module in foreground for testing and debugging purposes
  • HTML frames support: makeindex.pl generates additional page "frame.html" which embeds "index.html" and "menu.html" to improve navigation.
  • better timestamped logging output you may select: no, classic (seconds) and human readbale timestamps
  • basically configurable main page style (background/text/link colors and background-image)
  • new module for NTP servers
  • SNMP libraries will be imported directly by HotSaNICmod.pm instead of the module-script
  • BIND module corrected! Now shows TRUE values which are NOT multiplied by 10
  • database type for BIND module changed from GAUGE to COUNTER (please call update script!)
  • supports userdefined global HRULE definitions for each module.
  • module-howto added (short docu that might help you building own modules)
  • generate valid HTML 3.2 files
  • more complex HTML headers
  • makeindex scripts use new library for HTML output: HotSaNIChtml.pm
  • fixed SNMP routines in system module
  • internal handling of settings changed. (settings are now stored in a single hash of vars and arrays)
  • added script to easily extend DBs with new datarows
  • tools/checkdbs.sh now has some consistency checks and path evaluations, same goes for checkversions.sh
  • some bugfixes in MAILQ, SYSTEM (cpu)
  • some logging cosmetics to improve readability
  • updated documentation
  • if AUTOINDEX=yes is configured, makeindex will be called directly after module initialization (switched off by default)
  • data-smpling will be triggered directly after startup to initialize all DBs properly, diagrams will be built 30sec after start, thumbnails will follow 60sec after start
  • "LAST" values will be shown as well in most hourly graphs now
  • added fallback to "ps" in HotSaNICparser::get_pid function in case /proc is not available
  • diagram scripts improved: colors configurable, better initial scaling, alternative fixed scaling, alternative logarithmic scaling possible for modules that don't show negative values, commandline options available (call with option "h" for help), better unit handling for bytes/bits, several SI units etc.
  • new funtions in HotSaNICdiagram.pm and HotSaNICparser.pm for comfortable configuration parsing and graph initialisation
  • DISKIO supports /proc/partitions and /proc/diskstats as well (support for kernel 2.4 and later)
  • consistency check tool "checklibs.sh" added
  • checkversions.sh does some path checks
  • checkdbs.sh tool may now be called without parameters from any module directory
  • WORMS module uses HotSaNIClogparse.pm functions to analyze apache logfiles
  • fixed some links pointing to proc.html in SYSTEM makeindex script
  • nonexisting SYSTEM-uptime graph removed from "hourly" index
  • SENSORS graphs sorted by name instead of DB name
  • SENSORS graph scaling changed (now scaled to configured min/max value initially)
  • setup bug fixed - now text is displayed BEFORE waiting for the answer (autoflush wasn't set)
  • common graph-options in diagrams scripts are stored in an arry now for better maintainance
  • all setup scripts converted to PERL
  • RRDs::update functions moved to central HotSaNICmod.pm library - improves debugging
  • improved log-parsing functions
  • added version reports in debug mode
  • all diagrams.pl scripts use an @OPTIONS array for common diagram options
  • some corrections for SYSTEM's HTML-index files

pre5

  • added MAILQ module to show stats for the Postfix mailserver's queue items
  • added a library to handle user interactions
  • started to convert setup scripts to perl
  • added NETSTAT module to show stats for open TCP sockets
  • fixed bugs causing "not a simple integer" errors with rrdtool 1.0.46
  • MD5 checksums for tarballs
  • new BIND module for BIND nameserver stats
  • PING module support for solaris
  • SENSOR module supports FreeBSD
  • SENSOR module autodetects sensors on setup
  • APCUSV module supports "ONBATT" and "REPLACEBATT" status
  • SHOUTCAST module supports LWP:: library
  • more centralized functions in libraries
  • most backtick calls converted to "open" calls
  • replaced "pwd" and "find" by PERL's Cwd:: and File::Find
  • HotSaNICshellio.pm now handles user-interaction for most modules
  • image creation date format corrected
  • improved log-format for modules
  • improved module version report functions
  • all scripts use /usr/bin/env as shell-magic-cookie
  • all diagram scripts converted to PERL
  • some diagram cosmetics
  • tools/warnings.pl has mail capabilities
  • debug-info-tool tools/checkversions.sh added

pre4

  • completely new concept! The directory structure has been changed a lot, all modules are kept in a subdirectory now. The modules now run as single daemons, the main script uses signalling techniques to control the modules. This saves a lot of compilation time on every SAMPLE call. To avoid too many modules running parallel, a random scheduler has been added.
  • modules now have a ".description" file which will be printed when doing the main setup.
  • all perl scripts now end with ".pl"
  • the SYSTEM module is now configurable to enable or disable some of its specific targets. New targets "interrupts" and "uptime" have been added. Basic OS X support (testing). MultiCPU systems fully supported. swap stats are now stored in mem.rrd, loadavg.rrd has been renamed to load.rrd. New method gathering mem and swap info on NetBSD. Comments have been added for later addition of kernel >2.4 support.
  • the protocol used by the PING module is now configurable. You can also configure it to use the ping shellcommand instead of Net::Ping. The minimum number of pings to be sent is 5 now. Timing will be done by Time::HiRes (if available) and does a fallback to the previous sysdcall. If no HiRes timers are available, you will get an error message.
    For better comparison of diagrams, the initial upper border can be configured. The lower border has been adapted for logarithmic scale.
    Data will be stored in seconds now instead of milliseconds.
    The module should generate no more zombies now.
  • SENSORS now has FreeBSD support
  • TRAFFIC module now with OS X support. Devices are no longer configured multiple times. Taken down BSD interfaces handled correctly. Don't use DNS lookups anymore when using netstat. BSD setup patched.
  • APPS now handles applications with "." in filename correctly
  • DISKIO now with basic kernel 2.4 device autodetection. Some excludes applied in devicelist (fd* md*). Module seems to worn on FreeBSD now. Some comments have been added for later implementation of new Kernel 2.4 "/proc/partitions" support.
  • PART module device detection corrected. Automatic excludes list enhanced. Table sorted by devicename.
  • Within each module each Operating system will be handled by an own library in the "./modules/<modname>/platform/" directory. There's also a lib "common.pm" that handles all common functions and a fallback library "default.pm"
  • HotSaNIC.pm is obsolete now, but is still there to support modules written on older versions. To adapt older modules to new concept, there's a wrapper script available under "./tools/"
  • all global libraries from HotSaNIC.pm were split into different files, these are kept in the "./lib/" directory
  • all global functions in the read-data.pl scripts have benn moved into the new HotSaNICmod.pm library. read-data.pl just initializes the module - the main loops, help texts etc are in the library.
  • all read-data.pl scripts support cmdline parameters similar to sysV-style (start/stop/status ...)
  • modules' configuration can be reloaded while running
  • SOLARIS is now supported by some Modules: apcusv, apps, ping, system (processes, CPU, load, users, swap, mem).
  • all diagram scripts are converted to PERL now
  • main index now has multi-row support (mainly used for MultiCPU machines and SNMP targets)
  • instead of using the shell-magic cookie (#! ...) directly, we use "#!/usr/bin/env ..." to avoid conflicts on some systems. This makes the Automake system obsolete (saves us work...).
  • a lot more SNMP support had been addeed - all SNMP related core-functions are in the "./lib/HotSaNICsnmp.pm" file. These should be quite compatible with quite many SNMP daemons. If Net::SNMP isn't found, the system does a fallback to the shell binaries. (snmpget, snmpwalk, snmpbulkget, snmpbulkwalk).
  • fixed bug which produces GIFs instead of PNGs regardless of settings
  • all logfiles moved to the new "./var/log/" directory, PID files went in "./var/run/", all settings are linked in "./var/settings/" by the main setup script. Modules store their temp. data in "./var/modules/<modname>/"
  • main setup.pl script shows usage info when called with parameter "?"
  • setup will initially guess CONVERTMETHOD now
  • some diagram-titles look a bit nicer now
  • some files were moved and renamed, so when upgrading it may be necessary to re-run the main "setup.pl -g" to re-generate the rrdgraph script.
  • some vital paths will be created automatically now
  • all "use diagnostics" and "use warnings" were moved to the libraries, since once loaded they act globally in PERL.
  • for better readability in system tools like "ps" or "top", the module name will be passed as cmdline parameter.
  • new PID handling functions implemented
  • some shell-calls have been converted to PERL syntax to avoid backticks.
  • the main diagrams script has been converted to PERL. It now generates some console-output when running( some people were confused by the previous behaviour of it running silently in the background). The logfile will now be handled by rrdtimer.
  • modules are automatically restarted every STIME if not running
  • rrdtimer.pl uses an anlternate daemonizing method to avoid shells hanging while logging out (mostly works!)
    sending a HUP to rrdtimer, the modules will also be terminated, sending USR2 only the modules will be terminated (and will be restarted after STIME)
  • main loop now sleeps more efficiently using less CPU time
  • added more debugging verbosity to scheduler

pre3

  • directory structure cleaned up by creating subdirs "modules" "lib" "var"
  • modules now run as daemons (saves compilation/configuration time)
  • OS-dependent libraries for all modules, fall-back function included
  • HotSaNIC.pm split into functional parts
  • libraries for much, much more SNMP support than 0.4.0 had
  • wrapper script exists to support old modules
  • sampling via signal handlers
  • many diagrams scripts converted to PERL for speed
Version 0.5.0-pre3 and later available as .tgz package
Other versions are only available via anonymous CVS.



0.4.1 - (unreleased)
new features
bugfixes
  • data-diskio generates more associative filenames (Thanx Michael Renner for the valuable hints!)
  • data-diskio now supports *BSD
  • data-networks now has totals for input/output and a summary over the graph's time
  • data-traffic now has a summary over the graph's time
  • HotSaNIC.pm fixed, the module name was not detected correctly if HotSaNIC resided in subdirs containing "-" chars!
    There are also some comments added to (briefly) explain each function's usage.
  • data-traffic trouble with alias interfaces like eth0:0 fixed
  • data-ping now has a configurable maximum of parallel processes (settings: PARALLEL="4")
  • data-shoutcast is a new module to monitor user activities on shoutcast servers
  • data-diskio diagrams script converted to PERL
  • rrdtimer now logs errors to the main logfile (makes debugging a bit easier)
  • data-part samples configured drives only (more convenient on systems using autofs)
    It also checks if NFS partitions are configured and scans them on demand. This reduces deadlocks.
  • data-worms now skips .gz and .bz2 files while scanning logs
  • data-traffic has been adapted to fix the "ghost graphs" issue when graphing SNMP sources (hope it works now)
  • data-traffic graphs interfaces which are "down" as "unknown" instead of a zero line.

All modules now contain dupe-control to check if a process is already running or hangs. (processes running >1h will be killed)

IMPORTANT NOTICE FOR UPGRADERS:
The database in the diskio module has changed!
- You will need to run the update script in the module's subdir in order to adapt the databases and the webpage. Otherwhise you will get some missing images, dead links and strangely high I/O-values or maybe in some cases a zero-line.
This version is only available via anonymous CVS.



0.4.0 - 20020108
new features
extensions
bugfixes
All features of the work version 0.3.6 are included in 0.4.0 plus:
  • data-traffic has been sped-up a bit
  • dupe-control checks for PIDs now
  • project's contact address has changed to: hotsanic@bernisys.prima.de
IMPORTANT NOTICE FOR UPGRADERS:
The database in the traffic module has changed!
- You will need to run the update script in the module's subdir in order to adapt the databases. Otherwhise you will get strangely high traffic values or maybe in some cases a zero-line.



0.3.6 - 20011217
new features
extensions
bugfixes
  • The main settings now contain a switch to select the format of the generated images (.gif or .png). If you already have built own modules, please take care that they use the new feature ;)
  • All graphs now have create-timestamps in their titles
  • Bugfix in dnet module: OGR stats will no longer accident'ly be logged as DES.
  • Bugfix in ping module: makeindex.pl does no longer generate dead links.
  • The ping module now does a statistic analysis of its results to suppress annoying peaks.
  • New module: data-networks which uses iptables-accounting to let you know where your traffic goes to/comes from
  • data-traffic now supports Open/Free BSD ( Thanks to Matt Burke! )
  • data-traffic now supports SNMP (both GetBulk and SNMPwalk method)
  • data-traffic's initial scales are set down to 1000 bytes/s for any kind of device (better readable graph at low traffic)
  • data-traffic's diagram script has been upgraded to evaluate settings instead of executimg the settings-file
  • data-traffic now can show a bits/s legend instead of bytes/s only
  • data-network now can show a bits/s legend instead of bytes/s only
  • data-part now supports Open/Free BSD ( Thanks to Matt Burke! ) - the resolution is now 1024 bytes.
  • data-dnet now supports configurable logfile names ;)
  • HotSaNIC.pm (a perl library containing common functions) now exists to eliminate multiple definitions and redundant functions in different modules
  • all initializing stuff has been moved from "rrdgraph" to "rrdtimer"
  • rrdtimer now has a signal-handler for the TERM signal to properly shut down the daemon
  • the whole tool now should be CVS-proof ;)
  • some "setup" scripts now exist to create initial configurations easier. They are called automatically by the main "setup.pl" script.
  • "compile" now supports option "r" for recompiling (might be necessary after upgrading)
  • a new module "data-diskio" exisits which reports I/O stats of the pyhsically installed harddrives
  • data-worms has been rewritten completely because it wasn't sampling correctly at all. Should be ok by now.
  • data-system now has BSD-support ( Thanks to Matt Burke! )
  • data-system now supports sampling CPU stats for multi-CPU machines (images are being generated, but the index.html will not yet be created - But i'm working on it...) - Thanks Aide Florent for the ideas and some support!
  • data-system main CPU stats may be generated in percentage instead of absolute values
  • all modules can generate a browser auto-refresh tag now.
  • all thumbnail images are moved to the corrosponding subdirs on the webpage to re-gain more overview.
  • HotSaNIC.pm now contains a parser function for the settings. All modules have been adapted to use this function instead of parsing the lines on their own (read-data.pl and makeindex.pl are affected).
  • added a directory "tools" where a few helpers could be located.
  • tools: makeperlheaders (call if ping module complains about missing syscall.ph)
  • stop function in "rrdgraph" script is now BSD-proof :) ( Thanx to Peter Reich! )
  • tools: warnings.pl generates warnings if a defined threshold matches (for example 20KB/s on eth0 over the last 5 minutes)
  • data-traffic: diagram script converted to perl now
  • data-system: shows user-stats now
  • all modules: main options are being transfered to the read-data scripts by rrdtimer as commandline-arguments (saves parsing of mein settings over and over for some scripts)
  • setup.pl: option "y" tells the script that it shall use all available modules, settings are being backed-up instead of creating a settings.new file and leaving the original untouched
  • rrdtimer: debugging mode also available in daemon-mode (configured in main settings)
  • all modules: dupe control added. If a module is already running, don't start it again until the old instance exits (control-file: "running.dat").
  • data-system: now with NetBSD support
  • data-system: showing processes on FreeBSD
plus: many many little bugfixes i forgot to mention here ;)



0.3.5 - 20010923
bugfixes
new module
Bugfixes:
  • Missing directories in the module-subdirs are now being created as they should be. Sorry for the inconvenience!
  • I corrected some misbehavior with directories containing spaces. (correction may not affect every module yet - remember that the project is still in ALPHA state)
enhanced logging - timestamps are now present in some modules and logfiles get rotated when they reach the configured size. (at the moment only one backup is kept - cyclic backups will be implemented soon.)
A new module "data-worms"exists which counts the accesses caused by worm-activities in your apache-logfile.



0.3.4 - 20010918
rrdtimer
I have extended "rrdtimer" a lot!
  • The script now has many sub-routines which will make debugging much easier - well, at least i hope so ;).
  • The main "makeindex.pl" now has been integrated into "rrdtimer" to get the whole thing more compact. To generate the html index-files just type "rrdtimer i" - that's all. I left the "makeindex.pl" in this directory for compatibility, but this is just a shellscript that calls "rrdtimer i". ;)
  • The way you call "rrdtimer" has changed a bit - just type "rrdtimer" on the console to get some help.
Soon "rrdtimer" will be extended to replace "diagrams" and "convert.sh" as well.



0.3.3 - 20010916
bugfixes:
rrdtimer
I found a proper name for my tool: From now on it shall be called "HotSaNIC" which stands for "HTML overview to System and Network Information Center".
On execution "rrdtimer" checked for existing daemons using the wrong program-name (rrdgraph instead of rrdtimer).
"rrdtimer" doesn't any longer just execute "read-data", but also checks for uncompiled "read-data.pl" scripts, too - while "read-data" has the highest priority.



0.3.2 - 20010915
bugfixes:
rrdtimer
sensors:makeindex
I accidently left a debug-line "rrdtimer" script which produces unnecessary output to logfiles.
The "makeindex.pl" in the sensors-module had to be fixed to generate html indexes for each sensor as well.
I checked every script for mix-ups of integer and string comparison. There shouldn't be any errors by now.



0.3.1 - 20010911
bugfixes:
rrdtimer
ping:makeindex
ATTENTION!
There is a rather serious BUG in versions < 0.3.1 !
Please upgrade to version 0.3.1.

Symptom: If you restart the daemon it may happen that no modules are queried and thus your databases will not be updated.
Cause: This is because i mistakenly used "le" to compare two integer values instead of using "<=" under PERL. Sinc e i initially compare "120" with a timer-value which begins with "1000", PERL states that "120" is GREATER than "1000.*" - which is absolutely correct in a string context. Thanks to Bodo, Peter and Robert for the hint that made up my mind. :)
Cure: You may prevent this "overflow" by editing the "rrdtimer" script and simply exchanging all occurences of " le " by " <= ".
Fix: I have fixed this in version 0.3.1 and to be on the safe side i initialise "$last" with "$now-100" and "$lastscan" with "$now-1000" instead of zero. That should do it for a really really long time now ;).

The "makeindex.pl" in the ping-module had to be fixed a bit. Now it generates index-files properly again. Some bugs may occure since i will change the script's syntaxes and variables a bit to make it possible in future to create a library with global functions which are commonly used in the modules' scripts.



0.3.0 - 20010909
almost all ;)
Added a module that pings a list of hosts, stores the results in databases and creates nice graphs out of it ;)
The sensors module has been (almost ...) completely rewritten to give you full support to all sensor-types. BUT! You have to know how these sensors are represented in the /proc filesystem and how they have to be treated properly. The module just helps to gather the data. WHICH it shall gather ... well, that's about up to you. But if you have some idea what /proc is and where sensors are located it should be no trouble at all to configure the module. Hint: some sensors need proper scaling! This is (poorly) described in the settings file. You should read the lm_sensors howto to get the idea of what's happening and put the correct scaling-values in the settigs. Remember: Just use plain floating point numbers, not fractions like in lm_sensors!
The partition-plugin has been altered to support NFS volumes (and other) as well. To achieve this the "settings" file had to be adapted and the names of the databases have changed. Simply rename the old databases to keep your old recordings.
I also changed the whole behaviour a bit:
ALL CONFIGURATION OPTIONS for MODULES have been moved into the module-directories !!!
This makes it a bit easier to install or remove modules without fiddling with the main config, WHICH STILL RESIDES IN THE MAIN DIRECTORY!
The main "makeindex" script has been converted to perl to let it run faster (and it sure is MUCH faster now!)
The "compile" script now can uncompile all scripts using the "u" option
I began to convert some of the modules' "makeindex" scripts to perl to make them run faster



0.2.6 - 20010805 (obsolete!)
modules
Added a module that gives you very primitive lm_sensors support (just the gl518sm sensors for now) It will sure take some time to get these to work properly...
The swap-space readings in the system-module are extended by a "max usage" line which plots over the whole thing to give you a hint about the "real" usage. This maybe helps a bit in structuring your system.




0.2.5 - 20010710
modules
I changed the index-generation scripts so they generate valid html 3.2 ...




0.2.4 - 20010607
diagrams
clearall
The "clearall" script has now an option to remove precompiled binaries created by "compile"

"diagrams" now checks if it has been called before and if maybe it's stalled somehow and kills it's evil brother ;)




0.2.3 - 20010605
rrdtimer
modules
Previously "rrdtimer" called all existing modules parallel, but this behaviour may cause problems on some systems, so i changed the default behaviour to call all modules in a sequence. The parallel mode is still available and can be activated by calling "rrdtimer p"

An additional module called "networks" has been created. It uses ipchains to measure the traffic to dedicated networks and evaluates these traffic samples pretty much like the "traffic" module - except min/max plots which would be quite a thing to implement properly. Maybe this will come some day as an option, but i don't think so right now.
A speedup has been added:

Try to run the "compile" script to compile all modules via "perlcc". This may give you a major speedup ( about 2-3x ) because the perl modules don't have to be compiled over and over again before they are executed ( this happens each 10 seconds ) - but be aware that errors may occur if some important perl-libraries are missing! In that case you have got to live with it and reconstruct the "read-data" scripts in each module directory.

I changed the global behaviour a bit. "rrdtimer" now calls the diagram scripts itself - so cron-entries aren't needed anymore.

The modules now generate timestamps in the "rrdtimer.err" logfile.

The name of the PID-file is now free configurable in the settings file.



0.2.2 - 20010514
rrdtimer
databases
system
Debugging mode in "rrdtimer" now only shows 4 digits after decimal point for better readability.

All databases have been moved to a subdirectory "rrd/" in each module-subdirectory. So please move the .rrd files into each module's subdir to the corrosponding <module-dir>/rrd/ subdir.

Additional logging-functionality for system-module. Now the loadavg values for the 5min and 15min average are logged as well. The process-stats show an additional value "disc" representing processes being swapped to disc at this time.

IMPORTANT NOTICE FOR UPGRADERS:
Be sure to run "update.pl" after you installed the new data-system module! The system.rrd database has to be split to add the new logging-channels!
Another possibility is to just let the new scripts run and remove system.rrd, but all previously sampled data will be lost by doing so!



0.2.1 - 20010510
traffic, dnet, part
convert
settings
Some bugs were fixed in the traffic, dnet and part modules:
  • the "diagrams" script in the traffic-module produced some errors due to a wrong variable-assignment.
  • the "diagrams" script in the part module produced errors because "rrdtool" was called with some parameters mixed up.
  • the convert.sh script only converted the graphics from system and dnet. Now it handles all graphics.
I played a bit with the settings-file and some of the scripts. Now there is a configuration-entry to set where logfiles will be stored.
Then i altered the behaviour of the DNET-module. Now you can configure networks and their names to receive better readable statistics for dynamic IPs. This is done in the "data-dnet" subdir using a file called "networks.cf"
Some speed-ups were achieved by using hashes to store multiline values and by changing file-access behaviours a bit. Saved about 10% execution-time :)




0.2.0 - 20010509
rrdtimer
dnet
Well, this is something revolutionary ;)
I had the time to read the PERL-FAQs and found some interesting aspects like daemonizing (i.e. fork into background) and other stuff. So I decided to completely rewrite the main script. This is no longer bash, but plain PERL! Included are some features like a debug-mode with different debug-levels to get your modules straight. Just experiment with it if you like. :)
Some changes were made to the dnet module as well. I've rewritten the routines into PERL now and i hope they will do what they are supposed to. I don't quite know, so please inform me if anything goes wrong there.



0.1.9 - 20010506
dnet
I had some spare-time to spend, so while I was chatting on ICQ, I decided to give myself a little push and have almost completely re-written the core of the DNET module in PERL. Speed-up seems to be a factor of about 10, though this was not really needed since the module gets called only once a day anyway. But major speed-up has been achieved in building the initial databases which will reach back a couple of months ... these are about 400 (for each host !) database updates sequentially and this took quite a while back in BASH ;)
I also discovered and removed a little bug in this module. When a host has not sent any block the last day, then the database would have taken the values of the day before. This looks rather impressive in the statistics, but is of course dramatically wrong :)
Ok, these stats are just looking fine right now.



0.1.8 - 20010421
diagrams
traffic
some changes were made in the "diagrams" scripts. Now the diagrams are created in "interlace" gif mode, which will improve the load-behaviour of the webpage.
I also tuned in some additional "rrdtool"-features - now the byte-oriented graphs have a legend on the Y-axis and 1K is calculated by 1024 and not 1000 as before.
The traffic module now can cope with asymmetric interfaces as well, the MAX option in the settings-file has a new syntax to set in and out speed independant (of course as before in bits/s)



0.1.7 - 20010408
traffic
further little speed-up was archieved by not using so many temp-files in the traffic-plugin.



0.1.6 - 20010405
read-data
settings
A little speed-up was archieved by doing some changes in the "read-data" scripts for the system and the partition plug-in. Some awful shell-calls were replaced by PERL calls which do not write in sample-files any more, but directly into the PERL-array :).
Also some new setting-file entries exist now to tell the program which interfaces/devices are to sample and which stat-graphs are to be bulit.
However, this applies only for the sample-part of the traffic and the partition section for now... but i'm working on it ... ;)



0.1.5 - 20001219
makeindex
Corrected a little bug in the "makeindex" files. Weekly stats indexpage will now be built correctly.
The "makeindex" script now removes all temporary files it creates. It also doesn't nag about existing directories, it just silently creates them if needed.



0.1.4 - 20001215
makerrd
Corrected a missing settings-call in the "makerrd" scripts which caused the tool to create no databases at all.
Thanks to Markus Bajohr!



0.1.3 - 20001209
part
I just corrected a bug in the part-plugin which caused the script to create numerous databases with no further use, but a lot of load while building the graphs ...
Thanks to Michael Neumann!



pre 0.1.3 I report changes and bugs since version 0.1.2 - all earlier versions were just like the beginning of all life ;)

o.K. let's see. What can "rrdgraph" do right now ?

The system-plugin ( This was my first plugin. Actually it hasn't been a plugin up to 0.0.1 ) will collect data about:
  • processes (sleeping, running, stopped, zombie)
  • CPU time (idle, nice, user, system)
  • loadaverage
  • memory (free, buffered, shared, cached)
  • swapfile (free, used)
The traffic-plugin will collect data about all your local network interfaces except loopback.

The partitions-plugin collects data about your partition-usage.
Some bugs have to be fixed here!
For example network-mounted directories will be saved under just a part of their name. This may cause serious problems if there are two similar paths... I haven't checked yet, but I guess it will.
For now I will override this bug by filtering out all network-mounted filesystems. Later i'll try to convert the "/" in the device-pathnames to "_" and hopefully all will be fine in future...