History: The new plugin contains a built in InfluxDB and Grafana server. The plugin runs and manages both of these servers. The goal is to remove all external dependencies and reduce technical complexity to get up and running with Grafana and Indigo as a data source. If you previously used Influx or Grafana outside of Indigo and wish to migrate, the plugin provides instructions on how to migrate from a prior Influx and Grafana installation on the Wiki. Many thanks to smurfless1, who wrote the original Influx client plugin for Indigo, and who still has code that I've used the new plugin.
While the plugin reduces the technical complexity of the pre-requisite items to get up and running with a Grafana Home Dashboard, it still requires learning a bit about Influx queries and Grafana in order to get up and running. I hope the community will provide support and examples to get people going quickly.
Releases: https://github.com/mlamoure/indigo-grafana-dashboard/releases
Installation instructions: https://github.com/mlamoure/indigo-grafana-dashboard/wiki
Forum link to dashboard examples: http://forums.indigodomo.com/viewtopic.php?f=279&t=20472
Learn to use Grafana and write Influx metrics/queries: http://forums.indigodomo.com/viewtopic.php?f=279&t=20541 and https://github.com/mlamoure/indigo-grafana-dashboard/wiki/Building-a-Indigo-dashboard-in-Grafana
Major new features:
- Built-in InfluxDB and Grafana servers
- Latest Influx client libraries
- Granular control of inclusion and exclusion criteria to control which devices, and what states, are sent to InfluxDB and Grafana (dependency on Global Property Manager from previous versions is removed)
- Filtering - advanced configuration allows the creation of filters to prevent values outside of ranges, or sudden changes, from being sent to Influx and messing up your pretty graphs.
- Utility functions to output the JSON of any device, or to investigate which devices are publishing any particular property. Takes the guessing work out of your Grafana queries.
- Impoved error handling, logging
Known open items:
- Grafana doesn't come pre-configured to use the included InfluxDB as a data source. This must be set up manually.
For those that will use the included Influx and Grafana servers and wish to migrate:
- BACKUP. This plugin is beta and I do not want to be responsible for losing your historical data or dashboard.
- Read the wiki on how to migrate your historical data and dashboards: https://github.com/mlamoure/indigo-grafana-dashboard/wiki
For those that will use the plugin to connect to an external InfluxDB, I think you'll still find the update to be valuable to you as there is improved logging, error handling, performance, filtering, and exploring of your devices and states. The plugin size is large due to the server binaries, but they are not used if you tell the plugin not to run the internal servers.
Also, for those that have followed the beta development, there is a feature that never made it out of Beta. Here is the note I posted about that feature:
- Additionally, though I say this with reservations, this release "fixes" the functionality that Grafana has always promoted but has recently stopped working of rendering PNG images of individual panels. I say this with reservations because I've personally found that this functionality does not work reliably and is very slow, and I do not wish to support it as an official feature. In theory, this feature will allow a URL to be referencing a image for any panel into your Indigo control panel.
You can read more about this Grafana feature here, but use it at your own risk: http://docs.grafana.org/reference/sharing/#direct-link-rendered-image
For this to work, you must enable "Allow anonymous access to Grafana", which is a new option in the plugin Server configuration. Be aware that when you do this, your Grafana server is no longer protected with a user and password. Anonymous browsers can view your dashboard but not edit it. However, they would need to have access to your network to do this. Unelss you are port forwarding and exposing your Mac to the internet, this should not be a major concern for most. However, I thought it was important to be transparent and make it a optional feature.
Grafana is moving away from the current implemntation using a plugin called PhantomJS, in favor of a new one that will come online in a future release of Grafana. I'll monitor how this progress goes, and once it's more stable, we'll list the rendered images with Control Page integration as a official feature.