go-graphite / carbonapi

Implementation of graphite API (graphite-web) in golang
Other
308 stars 140 forks source link

no format=pickle support for metrics/find/ #190

Closed mrozentsvayg closed 7 years ago

mrozentsvayg commented 7 years ago

While pickle format works fine within the render api, it's not supported for finding metrics. https://github.com/dgryski/carbonapi/blob/master/main.go#L450 This is not an issue itself, but is limiting the carbonapi usage as a drop-in with graphite-web CLUSTER_SERVERS

This is because graphite-web does only support pickle format as a protocol to find metrics: https://github.com/graphite-project/graphite-web/blob/master/webapp/graphite/remote_storage.py#L69

So you cannot browse metrics using the graphite-web metrics browser or grafana with the datasource set to graphite-web node. (You can switch the datasource to direct carbonapi url, configure the dashboard, flip datasource back to the graphite-web and it will continue to work though)

It looks like it's very easy to implement the format=pickle support in findHandler() Both carbonzipper and go-carbon carbonserver do support it by the way

Civil commented 7 years ago

What's the use case for pickle support in carbonapi for you?

Actually because Carbonzipper and go-carbon supports pickle you can always point graphite-web to one of those.

Civil commented 7 years ago

We'll add this support back before next release.