users plugin: Add support for the statgrab library.
authorOleg King <king2@kaluga.ru>
Mon, 5 May 2008 12:21:37 +0000 (14:21 +0200)
committerFlorian Forster <octo@noris.net>
Mon, 5 May 2008 12:21:37 +0000 (14:21 +0200)
configure.in
src/Makefile.am
src/users.c

index e95f99d..7477f41 100644 (file)
@@ -2337,6 +2337,7 @@ then
        plugin_load="yes"
        plugin_memory="yes"
        plugin_swap="yes"
+       plugin_users="yes"
 fi
 
 if test "x$with_libcurl" = "xyes" && test "x$with_libxml2" = "xyes"
index 88041b9..2618ba9 100644 (file)
@@ -642,6 +642,10 @@ if BUILD_PLUGIN_USERS
 pkglib_LTLIBRARIES += users.la
 users_la_SOURCES = users.c
 users_la_LDFLAGS = -module -avoid-version
+if BUILD_WITH_LIBSTATGRAB
+users_la_CFLAGS = $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
+users_la_LIBADD = $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
+endif
 collectd_LDADD += "-dlopen" users.la
 collectd_DEPENDENCIES += users.la
 endif
index afe26e1..4686443 100644 (file)
 #include "common.h"
 #include "plugin.h"
 
+#if HAVE_STATGRAB_H
+# include <statgrab.h>
+#endif /* HAVE_STATGRAB_H */
+
 #if HAVE_UTMPX_H
 # include <utmpx.h>
 /* #endif HAVE_UTMPX_H */
@@ -89,6 +93,16 @@ static int users_read (void)
        users_submit (users);
 /* #endif HAVE_GETUTENT */
 
+#elif HAVE_LIBSTATGRAB
+       sg_user_stats *us;
+
+       us = sg_get_user_stats ();
+       if (us == NULL)
+               return (-1);   
+
+       users_submit ((gauge_t) us->num_entries);
+/* #endif HAVE_LIBSTATGRAB */
+
 #else
 # error "No applicable input method."
 #endif