diff options
| author | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2001-04-10 16:54:06 +0000 |
|---|---|---|
| committer | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2001-04-10 16:54:06 +0000 |
| commit | 45f8bc270bd1358df622978d30b6023baab46a7a (patch) | |
| tree | 9fc1d575c35342b811738192b7150cb5e5379380 /src | |
| parent | cacb88ba547ff4cedd094097e9849f26c27fa2fa (diff) | |
| download | zabbix-45f8bc270bd1358df622978d30b6023baab46a7a.tar.gz zabbix-45f8bc270bd1358df622978d30b6023baab46a7a.tar.xz zabbix-45f8bc270bd1358df622978d30b6023baab46a7a.zip | |
Added platform OpenBSD. Support for processor load (zabbix_agent) for BSD systems.
git-svn-id: svn://svn.zabbix.com/trunk@34 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'src')
| -rw-r--r-- | src/zabbix_agent/configure.in | 1 | ||||
| -rw-r--r-- | src/zabbix_agent/sysinfo.c | 40 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/zabbix_agent/configure.in b/src/zabbix_agent/configure.in index 276046a8..972c17ae 100644 --- a/src/zabbix_agent/configure.in +++ b/src/zabbix_agent/configure.in @@ -20,6 +20,7 @@ AC_TYPE_PID_T dnl Checks for library functions. AC_TYPE_SIGNAL +AC_FUNC_GETLOADAVG AC_CHECK_FUNCS(socket strtod) AC_CONFIG_HEADER(config.h) diff --git a/src/zabbix_agent/sysinfo.c b/src/zabbix_agent/sysinfo.c index 6729ff03..d0ebba54 100644 --- a/src/zabbix_agent/sysinfo.c +++ b/src/zabbix_agent/sysinfo.c @@ -1,6 +1,7 @@ #include "config.h" #include <stdio.h> +#include <stdlib.h> /* #include <mntent.h> */ #include <sys/stat.h> /* Linux */ @@ -160,17 +161,56 @@ float PING(void) float PROCLOAD(void) { +#ifdef HAVE_GETLOADAVG + double load[3]; + + if(getloadavg(load, 3)) + { + return load[0]; + } + else + { + return FAIL; + } +#else return getPROC("/proc/loadavg",1,1); +#endif } float PROCLOAD5(void) { +#ifdef HAVE_GETLOADAVG + double load[3]; + + if(getloadavg(load, 3)) + { + return load[1]; + } + else + { + return FAIL; + } +#else return getPROC("/proc/loadavg",1,2); +#endif } float PROCLOAD15(void) { +#ifdef HAVE_GETLOADAVG + double load[3]; + + if(getloadavg(load, 3)) + { + return load[2]; + } + else + { + return FAIL; + } +#else return getPROC("/proc/loadavg",1,3); +#endif } float SWAPFREE(void) |
