[rtg] rated, new version of rtgpoll
Matt Provost
mprovost at termcap.net
Wed Mar 11 23:09:52 EDT 2009
So I've just published a new project called 'rated' which is a fork of
RTG, specifically rtgpoll.
http://github.com/mprovost/rated/tree/master
Basically I've pulled out all of the supporting scripts and graphing
code. I've made a bunch of changes that I've had in mind for years for
RTG.
Some of the improvements:
* Fixed several memory leaks.
* Fixed autotools linking so the database libraries only link against
the correct shared libraries. Before everything used a single list so
even rtgpoll was linking against the mysql and postgres libraries. This
really reduces the memory footprint of the daemon.
* General code cleanup - took out a lot of IFDEFs, spacing, etc.
* Signal handling is much cleaner.
* Database disconnection - it should now handle having the database
disconnect and reconnect when it can. For counters it also just keeps
incrementing the counter in memory, so you shouldn't lose any data (just
precision) while the db is unavailable.
* Lots of cleanup in the snmp polling loop.
* Better debug output.
It's been mostly tested against postgres but mysql should also work
fine. I haven't tested the oracle driver but that's on my list. I'm sure
there are still lots of references to rtg that I haven't cleaned up yet.
This first release hasn't changed the codebase very much. It should
still be a drop-in replacement for rtgpoll. In the future I've got some
ideas for this that will take it in other directions. I'd like to get
the targets moved into a database. I'm also interested in a compressed
backend. I've begun playing with a scheduler that can vary the polling
interval dynamically based on the rate of change of the data. I'm not
sure if everyone will like the changes which is why I decided to make a
fresh start.
I've seen RTG stagnate in the past so hopefully this will be a more
public development process. If anyone has any ideas please fork the code
on github!
Thanks,
Matt
More information about the RTG
mailing list