X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fmic.c;h=51e677598d51ab8bf174e7e9990bec99b2afffbc;hb=604607d3463fbe13eac252308f8a2497fb190167;hp=1c3ff5596bae6e93d8ad65a9fb862123cb18d06d;hpb=62ee9949b89ba410666bd41e936edfc021005570;p=collectd.git diff --git a/src/mic.c b/src/mic.c index 1c3ff559..51e67759 100644 --- a/src/mic.c +++ b/src/mic.c @@ -20,6 +20,7 @@ **/ #include "collectd.h" + #include "plugin.h" #include "common.h" #include "utils_ignorelist.h" @@ -53,8 +54,8 @@ static const char *config_keys[] = "Temperature", "IgnoreSelectedTemperature", "ShowPower", - "PowerSensor", - "IgnorePowerSelected" + "Power", + "IgnoreSelectedPower" }; static int config_keys_num = STATIC_ARRAY_SIZE (config_keys); @@ -131,11 +132,11 @@ static int mic_config (const char *key, const char *value) { invert = 0; ignorelist_set_invert(temp_ignore,invert); } - else if (strcasecmp("PowerSensor",key) == 0) + else if (strcasecmp("Power",key) == 0) { ignorelist_add(power_ignore,value); } - else if (strcasecmp("IgnorePowerSelected",key) == 0) + else if (strcasecmp("IgnoreSelectedPower",key) == 0) { int invert = 1; if (IS_TRUE(value)) @@ -149,19 +150,16 @@ static int mic_config (const char *key, const char *value) { return (0); } -static void mic_submit_memory_use(int micnumber, const char *type_instance, U32 val) +static void mic_submit_memory_use(int micnumber, const char *type_instance, U32 value) { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; /* MicAccessAPI reports KB's of memory, adjust for this */ - DEBUG("mic plugin: Memory Value Report; %u %lf",val,((gauge_t)val)*1024.0); - values[0].gauge = ((gauge_t)val)*1024.0; + DEBUG("mic plugin: Memory Value Report; %u %lf",value,((gauge_t)value)*1024.0); - vl.values=values; - vl.values_len=1; + vl.values = &(value_t) { .gauge = ((gauge_t)value) * 1024.0 }; + vl.values_len = 1; - strncpy (vl.host, hostname_g, sizeof (vl.host)); strncpy (vl.plugin, "mic", sizeof (vl.plugin)); ssnprintf (vl.plugin_instance, sizeof (vl.plugin_instance), "%i", micnumber); strncpy (vl.type, "memory", sizeof (vl.type)); @@ -189,15 +187,12 @@ static int mic_read_memory(int mic) return (0); } -static void mic_submit_temp(int micnumber, const char *type, gauge_t val) +static void mic_submit_temp(int micnumber, const char *type, gauge_t value) { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; - values[0].gauge = val; - - vl.values=values; - vl.values_len=1; + vl.values = &(value_t) { .gauge = value }; + vl.values_len = 1; strncpy (vl.host, hostname_g, sizeof (vl.host)); strncpy (vl.plugin, "mic", sizeof (vl.plugin)); @@ -213,9 +208,8 @@ static void mic_submit_temp(int micnumber, const char *type, gauge_t val) static int mic_read_temps(int mic) { size_t num_therms = STATIC_ARRAY_SIZE(therm_ids); - size_t j; - for (j = 0; j < num_therms; j++) { + for (size_t j = 0; j < num_therms; j++) { U32 status; U32 temp_buffer; U32 buffer_size = (U32)sizeof(temp_buffer); @@ -237,15 +231,12 @@ static int mic_read_temps(int mic) } static void mic_submit_cpu(int micnumber, const char *type_instance, - int core, derive_t val) + int core, derive_t value) { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; - values[0].derive = val; - - vl.values=values; - vl.values_len=1; + vl.values = &(value_t) { .derive = value }; + vl.values_len = 1; strncpy (vl.host, hostname_g, sizeof (vl.host)); strncpy (vl.plugin, "mic", sizeof (vl.plugin)); @@ -286,8 +277,7 @@ static int mic_read_cpu(int mic) } if (show_cpu_cores) { - int j; - for (j = 0; j < core_util.core; j++) { + for (int j = 0; j < core_util.core; j++) { mic_submit_cpu(mic, "user", j, core_jiffs[j].user); mic_submit_cpu(mic, "sys", j, core_jiffs[j].sys); mic_submit_cpu(mic, "nice", j, core_jiffs[j].nice); @@ -297,20 +287,17 @@ static int mic_read_cpu(int mic) return (0); } -static void mic_submit_power(int micnumber, const char *type_instance, gauge_t val) +static void mic_submit_power(int micnumber, const char *type, const char *type_instance, gauge_t value) { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; - values[0].gauge = val; - - vl.values=values; - vl.values_len=1; + vl.values = &(value_t) { .gauge = value }; + vl.values_len = 1; strncpy (vl.host, hostname_g, sizeof (vl.host)); strncpy (vl.plugin, "mic", sizeof (vl.plugin)); ssnprintf (vl.plugin_instance, sizeof (vl.plugin_instance), "%i", micnumber); - strncpy (vl.type, "power", sizeof (vl.type)); + strncpy (vl.type, type, sizeof (vl.type)); strncpy (vl.type_instance, type_instance, sizeof (vl.type_instance)); plugin_dispatch_values (&vl); @@ -329,13 +316,15 @@ static int mic_read_power(int mic) return (1); } + /* power is in uWatts, current in mA, voltage in uVolts.. convert to + * base unit */ #define SUB_POWER(name) do { if (ignorelist_match(power_ignore,#name)==0) \ - mic_submit_power(mic,#name,(gauge_t)power_use.name.prr); \ + mic_submit_power(mic,"power",#name,(gauge_t)power_use.name.prr*0.000001); \ } while(0) #define SUB_VOLTS(name) do { if (ignorelist_match(power_ignore,#name)==0) {\ - mic_submit_power(mic,#name "-pwr",(gauge_t)power_use.name.pwr); \ - mic_submit_power(mic,#name "-cur",(gauge_t)power_use.name.pwr); \ - mic_submit_power(mic,#name "-volt",(gauge_t)power_use.name.pwr); \ + mic_submit_power(mic,"power",#name,(gauge_t)(power_use.name.pwr*0.000001)); \ + mic_submit_power(mic,"current",#name,(gauge_t)(power_use.name.cur*0.001)); \ + mic_submit_power(mic,"voltage",#name,(gauge_t)(power_use.name.volt*0.000001)); \ }} while(0) SUB_POWER(total0); @@ -354,17 +343,16 @@ static int mic_read_power(int mic) static int mic_read (void) { - int i; U32 ret; int error; - error=0; - for (i=0;i