Browse Source

Handle 'Unknown' as measurement value. (#1113)

We use the output-compatible perccli and storcli.py does not handle 'Unknown' as a result:
```
sg="Error parsing \"/var/lib/node_exporter/perccli.prom\": text format parsing error in line 222: expected float as value, got \"Unknown\"" source="textfile.go:212"
```
I know, the perccli should not return 'Unknown' but this error breaks all other useful measurements because the prom file is not parsable. My if condition fixes this.

Signed-off-by: Andreas Wirooks <andreas.wirooks@1und1.de>
pull/1173/head
Andreas Wirooks 6 years ago committed by Ben Kochie
parent
commit
9c9e17aba7
  1. 5
      text_collector_examples/storcli.py

5
text_collector_examples/storcli.py

@ -198,8 +198,9 @@ def print_all_metrics(metrics):
print('# HELP {}{} MegaRAID {}'.format(metric_prefix, metric, metric.replace('_', ' '))) print('# HELP {}{} MegaRAID {}'.format(metric_prefix, metric, metric.replace('_', ' ')))
print('# TYPE {}{} gauge'.format(metric_prefix, metric)) print('# TYPE {}{} gauge'.format(metric_prefix, metric))
for measurement in measurements: for measurement in measurements:
print('{}{}{} {}'.format(metric_prefix, metric, '{' + measurement['labels'] + '}', if measurement['value'] != 'Unknown':
measurement['value'])) print('{}{}{} {}'.format(metric_prefix, metric, '{' + measurement['labels'] + '}',
measurement['value']))
def get_storcli_json(storcli_args): def get_storcli_json(storcli_args):

Loading…
Cancel
Save