i-scream libstatgrab homepage

News

To get notifications of new libstatgrab releases why not subscribe to our project over on freshmeat?

Thursday 20 May 2004

Version 0.10 of libstatgrab has been released.
Download it here.

This release concentrates heavily on standardising the names of functions and structures throughout libstatgrab. Although this will mean changes for existing programs, in the long run we hope it'll make things both clearer and easier. However, for those who still need the old functions we have provided compatibility wrappers. See the NEWS file for details.

The other main change in this release is a new function to provide full details on currently running processes. See the documentation for sg_get_process_stats for details. Along with this there are compare functions for use with qsort for sorting process, network, and disk io statistics. We've also introduced error reporting functions that allow calling applications to see why libstatgrab has returned a failure. See sg_get_error.

Finally, we've added support for NetBSD 2.0 and tidied up lots of areas of the code. This release does not include the python bindings - they're now available as their own project called pystatgrab.

Sunday 21 March 2004

pystatgrab, a new package containing a set of Python bindings, has been released. Check out it's project page.

Wednesday 10 March 2004

Version 0.9 of libstatgrab has been released.
Download it here.

This release brings new features and new platforms. We've added information about network interfaces (duplex, speed, etc) along with further statistics such as i/o packets, i/o errors, and collisions. Support has also been added for OpenBSD and DragonFly BSD. Finally some work has been done to reduce the platforms on which libstatgrab needs elevated privileges. See the NEWS file for more information.

Wednesday 11 February 2004

Version 0.8.2 of libstatgrab has been released.
Download it here.

The main focus of this release is adding support for Solaris 6. We've also added Python bindings so you can use libstatgrab directly from Python (see the extras directory). Finally, we've tidied up a few bits of the code.

Wednesday 21 January 2004

Version 0.8.1 of libstatgrab has been released.
Download it here.

This release primarily fixes bugs. On Linux a file descriptor leak was fixed. On Solaris some significant speed increases were made to the disk mapping code, along with some bug fixes for Solaris 7 platforms. Also, the library part of libstatgrab (but not the tools) is now released under the LGPL instead of the GPL.

Tuesday 6 January 2004

Version 0.8 of libstatgrab has been released.
Download it here.

This release brings support for Linux 2.6 and partial support for Cygwin. On Solaris libstatgrab now returns disk names using cNtNdNsN names rather than the older sdN names. There are also a bunch of fixes and optimisations in various places. Finally, a new function has been added to make it quicker to drop any elevated privileges libstatgrab may require on some operating systems.

Wednesday 22 October 2003

Version 0.7 of libstatgrab has been released.
Download it here.

The most significant change in this release is support for NetBSD 1.6.x. Parts of the FreeBSD code have been optimised, and an initialise function has been added to allow programs to drop any extra privileges libstatgrab needs. The list of known file systems has been increased, and libstatgrab has been tested on even more platforms. Finally, saidar has been tweaked to work even if it can't get all the statistics.

Saturday 18 October 2003

Version 0.6.1 of libstatgrab has been released.
Download it here.

This release brings support for FreeBSD 5 on sparc 64, and some bugfixes in FreeBSD memory statistics. Also, some fixes to saidar, and statgrab.

Friday 10 October 2003

Version 0.6 of libstatgrab has been released.
You can download it from our mirror site here.

This release includes some exciting new tools, support for FreeBSD 5.1, and documentation in manpages. Plus some major bugfixes and packaging enhancements.

Tuesday 09 September 2003

We're pleased to announce a new release of libstatgrab.
You can download version 0.5.1 from here.

Monday 25 August 2003

We're pleased to announce a new release of libstatgrab.
You can download version 0.5 from here.

This release provides both documentation and examples, which we hope will make the package more useable. Stay tuned for the next release with some useful tools.

What is libstatgrab?

libstatgrab is a library that provides cross platform access to statistics about the system on which it's run. It's written in C and presents a selection of useful interfaces which can be used to access key system statistics. The current list of statistics includes CPU usage, memory utilisation, disk usage, process counts, network traffic, disk I/O, and more.

The current list of platforms is Solaris 2.x, Linux 2.2/2.4/2.6, FreeBSD 4.x/5.x, NetBSD 1.6.x, OpenBSD 3.x, DragonFly BSD 1.0, and Cygwin. The aim is to extend this to include as many operating systems as possible.

The package also includes a couple of useful tools. The first, saidar, provides a curses-based interface to viewing the current state of the system. The second, statgrab, gives a sysctl-style interface to the statistics gathered by libstatgrab. This extends the use of libstatgrab to people writing scripts or anything else that can't easily make C function calls. Included with statgrab is a script to generate an MRTG configuration file to use statgrab.

Downloading

The latest version of libstatgrab can be downloaded from our primary download mirror. All downloads are pgp signed using our PGP Key.

For installation instructions see the README and INSTALL files contained within the archive. If you're using FreeBSD you can make use of the devel/libstatgrab port to install libstatgrab for you.

Language Bindings

Here are links to bindings for higher level languages that provide access to libstatgrab. If you've written a binding for another language, please get in touch so we can add a link here.

Development

We develop libstatgrab using the CVS revision control system. Using this link you can see what changes we've made this week. For more information on our CVS setup see our CVS page.

Documentation

The only online documentation we have at the moment is the manual pages converted in to HTML format. It's probably best to start with the overview manual page:

Then we have the manual pages for each function:

Screenshot

Here's what saidar looks like when it's running:

saidar screenshot