We’ve been making our Grafana 3.0 plugin better so here’s a list of the new things. They work in Outlyer today and most of this work benefits the DalmatinerDB open source database. We’re aiming to polish up the Linux packages and docs for that by the end of this month.
You can use dl:tag, dl:source and dl:hostname in both the WHERE clause and the ALIAS field. This is in addition to any Prometheus dimensions in Outlyer. When you use a dimension in the ALIAS field it needs to be prefixed with a $ symbol. In the example above we have cpu usage across all servers in the Outlyer app and prod tags and have told it to alias the series legend with the Outyer agent host name.
Wildcards aren’t needed with dimensional data like Prometheus metrics. But many people still use StatsD so we’ve made that work too. Wildcards only work when you specify a bucket in DalmatinerDB which means you need to use WHERE with dl:source and specify the fingerprint under which your StatsD data lives.
When you are using tree based metrics like StatsD data you can then use $1, $2, $3 etc. to specify which part of the dotted metric path to use as the ALIAS. Here we’re using the 7th item in the metric path.
It’s pretty common to ask the question “was it like this yesterday?”. You can now use SHIFT BY on a duplicate query to plot 24 hour (or any range of time) shifted data overlayed on the same graph as current data.
DalmatinerDB now has a function table which makes it very easy to add new functions. We’ve updated the Grafana 3.0 plugin to pull the function list from a database API so that we don’t need to upgrade the plugin to add additional things.
We’re still working on our metrics backend and will continue to contribute everything back to the DalmatinerDB project. We’re going to add GROUP BY and a bunch of functions to make things even more powerful in the next couple of weeks. Everything we add to the backend gets tested and released in Grafana for the open source project and then makes its way into the Outlyer UI.
For anyone using Outlyer who wants to play with this stuff now, the instructions for setting up the plugin can be found here: