Carbonapi - graphite compatible datasource without datasource plugin

We are running carbonapi as graphite compatible back-end for grafana.
It more or less compatible with graphite 0.9.12, but it slowly evolving and more functions being added.
Here is the current compatibility and we would like to maintain it in grafana to make use of graphite functions helper. At the same time we do not want to define it as a separate datasource in order to benefit from alerting for instance.

Idea which come to mind is defining it as a separate graphite version
graphiteVersions = [
{ name: ‘0.9.12-carbonapi’, value: ‘0.9-carbonapi’ },
in public/app/plugins/datasource/graphite/config_ctrl.ts

and maintaining list of functions in public/app/plugins/datasource/graphite/gfunc.ts

but might be somebody have a better idea?


Graphite supports function plugins since 1.1 release, please see documentation.

Using Graphite 1.1 in Grafana will actually make a request to receive supported functions. Maybe this is something that you should consider.

In any way you’ll need to create a feature request issue for your suggested solution to the problem so that we can review it and decide if this is something we want in the core grafana code base. We’re having plans on supporting writing backend plugins that probably will be interesting for you when released.


Thanks for suggestion.
We make a function api handle, so grafana can query carbonapi and we are exposing available functions like graphite does.
Basically there is no need to change anything now, as our target was to make carbonapi compatible with graphite.
Grafana 5 with 0.10.0 works like a charm.
Thank you for your help.