X-Git-Url: https://git.octo.it/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcpu.c;h=c79c4b66bc4e01b994eb95222189592a413487d6;hb=ba758727dfd90eda6ff504e2abe9d9261d38d9e7;hp=99e7a6699a11625edf1d16891fe85a00244e61de;hpb=44e4d530c8db2e078cd73ab254d1be41a5f2812c;p=collectd.git diff --git a/src/cpu.c b/src/cpu.c index 99e7a669..c79c4b66 100644 --- a/src/cpu.c +++ b/src/cpu.c @@ -68,13 +68,10 @@ # endif #endif /* HAVE_SYSCTLBYNAME */ -#if defined(PROCESSOR_CPU_LOAD_INFO) || defined(KERNEL_LINUX) || defined(HAVE_LIBKSTAT) || defined(HAVE_SYSCTLBYNAME) -# define CPU_HAVE_READ 1 -#else -# define CPU_HAVE_READ 0 +#if !PROCESSOR_CPU_LOAD_INFO && !KERNEL_LINUX && !HAVE_LIBKSTAT && !HAVE_SYSCTLBYNAME +# error "No applicable input method." #endif -#if CPU_HAVE_READ #ifdef PROCESSOR_CPU_LOAD_INFO static mach_port_t port_host; static processor_port_array_t cpu_list; @@ -219,9 +216,9 @@ static int cpu_read (void) } submit (cpu, "user", (counter_t) cpu_info.cpu_ticks[CPU_STATE_USER]); - submit (cpu, "nice", (counter_t) cpu_info.cpu_ticks[CPU_STATE_USER]); - submit (cpu, "system", (counter_t) cpu_info.cpu_ticks[CPU_STATE_USER]); - submit (cpu, "idle", (counter_t) cpu_info.cpu_ticks[CPU_STATE_USER]); + submit (cpu, "nice", (counter_t) cpu_info.cpu_ticks[CPU_STATE_NICE]); + submit (cpu, "system", (counter_t) cpu_info.cpu_ticks[CPU_STATE_SYSTEM]); + submit (cpu, "idle", (counter_t) cpu_info.cpu_ticks[CPU_STATE_IDLE]); #endif /* PROCESSOR_CPU_LOAD_INFO */ #if PROCESSOR_TEMPERATURE /* @@ -280,20 +277,14 @@ static int cpu_read (void) char *fields[9]; int numfields; - static complain_t complain_obj; - if ((fh = fopen ("/proc/stat", "r")) == NULL) { char errbuf[1024]; - plugin_complain (LOG_ERR, &complain_obj, "cpu plugin: " - "fopen (/proc/stat) failed: %s", + ERROR ("cpu plugin: fopen (/proc/stat) failed: %s", sstrerror (errno, errbuf, sizeof (errbuf))); return (-1); } - plugin_relief (LOG_NOTICE, &complain_obj, "cpu plugin: " - "fopen (/proc/stat) succeeded."); - while (fgets (buf, 1024, fh) != NULL) { if (strncmp (buf, "cpu", 3)) @@ -340,7 +331,7 @@ static int cpu_read (void) static cpu_stat_t cs; if (kc == NULL) - return; + return (-1); for (cpu = 0; cpu < numcpu; cpu++) { @@ -363,22 +354,16 @@ static int cpu_read (void) long cpuinfo[CPUSTATES]; size_t cpuinfo_size; - static complain_t complain_obj; - cpuinfo_size = sizeof (cpuinfo); if (sysctlbyname("kern.cp_time", &cpuinfo, &cpuinfo_size, NULL, 0) < 0) { char errbuf[1024]; - plugin_complain (LOG_ERR, &complain_obj, "cpu plugin: " - "sysctlbyname failed: %s.", + ERROR ("cpu plugin: sysctlbyname failed: %s.", sstrerror (errno, errbuf, sizeof (errbuf))); return (-1); } - plugin_relief (LOG_NOTICE, &complain_obj, "cpu plugin: " - "sysctlbyname succeeded."); - cpuinfo[CP_SYS] += cpuinfo[CP_INTR]; submit (0, "user", cpuinfo[CP_USER]); @@ -389,12 +374,9 @@ static int cpu_read (void) return (0); } -#endif /* CPU_HAVE_READ */ void module_register (void) { -#if CPU_HAVE_READ plugin_register_init ("cpu", init); plugin_register_read ("cpu", cpu_read); -#endif /* CPU_HAVE_READ */ } /* void module_register */