i-scream libstatgrab homepage

News

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

Friday 12 November 2004

Version 0.11 of libstatgrab has been released.
Download it from one of our mirrors.

This release brings support for HP-UX (version 11.11), and also fixes a few other minor issues.

Wednesday 25 August 2004

Version 0.10.3 of libstatgrab has been released.
Download it from one of our mirrors.

This release adds a handful of new features to statgrab, and adds support for FreeBSD 6.0-CURRENT. See the NEWS file in the tarball for more details.

Tuesday 27 July 2004

Version 0.10.2 of libstatgrab has been released.
Download it from one of our mirrors.

This release fixes a problem with the shared library version number in the last release.

Monday 26 July 2004

Version 0.10.1 of libstatgrab has been released.
Download it from one of our mirrors.

This release consists almost entirely of bugfixes. We've fixed compile-time errors for recent OpenBSD and NetBSD platforms, and also a minor bug in statgrab that broke network statistics on Solaris. New variables have been added to the pkg-config file to suggest ownership and permissions of binaries, and we've added error reporting functions that store errno values. There's also other minor fixes detailed in the NEWS file.

Thursday 20 May 2004

Version 0.10 of libstatgrab has been released.
Download it from one of our mirrors.

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 from one of our mirrors.

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 from one of our mirrors.

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 from one of our mirrors.

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 from one of our mirrors.

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.

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, HP-UX, 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 mirror sites. 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