Closed kb1lqc closed 6 years ago
WHOA Found a person who uses Grafana for weather station data from CANbus sensors and an Arduino:
Uses:
@kb1lqd @el-iso
I feel like we could host a Grafana on a FaradayRF server to view data streams. This seems very scale-able to me at first sight.
There are a couple of examples of Grafana plugins that execute commands:
So it's not the common use case for Grafana but a plugin can do anything a website can.
Great Grafana Videos:
Oh... We should definitely consider opentsdb: https://serverfault.com/questions/362338/what-is-the-difference-between-opentsdb-and-graphite
Looks like some good info here on creating datasources: http://docs.grafana.org/plugins/developing/datasources/
I think my first step is the fastest to proof of concept. I would love to create an opentsdb source for Faraday, I think that my be the best intermediate goal. However, the fastest path is probably to develop an aprs.fi plugin. This is actually very useful and I bet it may be popular outside of Faraday. Basically, some fun opensource work!
While looking into this I am concerned that the startup costs with learning how a Grafana datasource plugin is constructed are relatively high. I am not an expert javascript programmer and the documentation is not terribly straightforward for the simple JSON datasource. Mostly, I am left wondering exactly what the flow of processes through the plugin are. For example it appears that the /search
url is used to return what metrics (time series) exists which Grafana receives over a JSON response and then it proceeds to query a specific time sequence with that information. There are a lot of moving pieces.
I don't want to spend much more time on this right now and would rather move this to Buoy 2. However I want one more shot at setting up an influxdb that is sent data from telemetry. Grafana natively supports this and it may just work. This is scaleable and sets us up on a clear path to providing at least our version of a central repository for telemetry (though I would like it a bit decentralized).
With aprs2influxdb it appears that we're well on our way forward with Grafana. Closing this issue because we should start tracking this on that project issue system.
Summary
Grafana is an open source and pretty well supported dashboard/UI for what appears to largely be datacenter type uses. However, it's touted as being useful for any time series data... AKA telemetry. This is tempting. I am thinking this might be worth looking into as opposed to NASA's OpenMCT. I am also not too sure if it can be used at all for commanding, however, this may not actually be a show-stopper depending on how easy it is to setup for viewing telemetry nicely.
Any thoughts @hdkmike @reillyeon @el-iso @kb1lqd ?
Problem Explanation
Grafana: https://grafana.com/grafana Grafana Demo: http://play.grafana.org/ Grafana Getting Started: http://docs.grafana.org/guides/getting_started/ Grafana Simple JSON Data Source: https://grafana.com/plugins/grafana-simple-json-datasource
Neat panels: World Map: https://grafana.com/plugins/grafana-worldmap-panel 3D Earth: https://grafana.com/plugins/satellogic-3d-globe-panel
Neat Apps: Snap Integration: https://grafana.com/plugins/raintank-snap-app
Test Data:
Environment
Software
Hardware
Supporting Information