graphite-api
graphite-api copied to clipboard
TypeError in currentAbove()
A query with target=countSeries(currentAbove(collectd.{host0,host1,host2}.our_domain.cephmetrics.gauge.ceph.osd.*.fs_percent_used,80))
is getting a 500 error in response.
The query is being issued by a Grafana singlestat panel. I have a few other clusters running the same queries - and correctly reporting that zero hosts have near-full disks - except they are talking to graphite-web
.
The traceback itself:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/flask/app.py", line 1817, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3/dist-packages/flask/app.py", line 1477, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3/dist-packages/flask/app.py", line 1381, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3/dist-packages/flask/_compat.py", line 33, in reraise
raise value
File "/usr/lib/python3/dist-packages/flask/app.py", line 1475, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3/dist-packages/flask/app.py", line 1461, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 401, in render
series_list = evaluateTarget(context, target, data_store)
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 496, in evaluateTarget
result = evaluateTokens(requestContext, tokens, data_store)
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 506, in evaluateTokens
return evaluateTokens(requestContext, tokens.expression, data_store)
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 514, in evaluateTokens
arg, data_store) for arg in tokens.call.args]
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 514, in
arg, data_store) for arg in tokens.call.args]
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 506, in evaluateTokens
return evaluateTokens(requestContext, tokens.expression, data_store)
File "/usr/lib/python3/dist-packages/graphite_api/app.py", line 520, in evaluateTokens
ret = func(requestContext, *args, **kwargs)
File "/usr/lib/python3/dist-packages/graphite_api/functions.py", line 1608, in currentAbove
return [series for series in seriesList if safeLast(series) >= n]
File "/usr/lib/python3/dist-packages/graphite_api/functions.py", line 1608, in
return [series for series in seriesList if safeLast(series) >= n]
TypeError: unorderable types: NoneType() >= int()
Traceback is saying there are no metrics for the collectd.{host0,host1,host2}.our_domain.cephmetrics.gauge.ceph.osd.*.fs_percent_used
target.
Does a metric path query for the above work?