grafana-pandas-datasource 0.3.0

Creator: bigcodingguy24

Last updated:

Add to Cart

Description:

grafanapandasdatasource 0.3.0

Grafana pandas datasource

About
A HTTP API based on Flask for serving pandas data frames to Grafana,
generated by NumPy. The Grafana Simple JSON Datasource is used to interface
Grafana with the HTTP API.
This way, a pure Python application can be used to directly supply data to
Grafana, both easily and powerfully.
The framework supports feeding both timeseries data as well as annotations
through corresponding /query and /annotations endpoints and also
provides /search and /panels endpoints.


Screenshots



Image: Sinewave data and midnights annotations, both generated using NumPy,
see Sinewave/Midnights example.




Setup
Grafana pandas datasource setup outlines how to install all software
prerequisites needed to run this project. Please read this section carefully.
pip install grafana-pandas-datasource


Synopsis
Test drive:
# Run Grafana pandas datasource demo.
python examples/sinewave-midnights/demo.py

# Submit a timeseries data request.
echo '{"targets": [{"target": "sine_wave:24"}], "range": {"from": "2022-02-22T15", "to": "2022-02-22T20"}}' | http http://127.0.0.1:3003/query

# Submit an annotation data request.
echo '{"annotation": {"query": "midnights:xx"}, "range": {"from": "2022-02-20", "to": "2022-02-22"}}' | http http://127.0.0.1:3003/annotations
When the environment has been properly configured, both requests above will
yield appropriate responses.
Then, configure the Grafana entities. You will need a datasource object and a
dashboard object.


Examples
There are different demo programs accompanied with Grafana datasource and
dashboard definition files.
After confirming the sandbox environment has been installed successfully,
please head over to the Sinewave/Midnights example page in order to learn
how to provision Grafana with corresponding resources.


Custom implementations
In order to conceive your own pandas-based data source, please use the
Sinewave/Midnights demo.py as a blueprint. If you think it would be a
valuable contribution to the community, we will be happy to add it to the
repository.


Credits
Kudos to Linar, who conceived the initial version of this software the other
day at https://gist.github.com/linar-jether/95ff412f9d19fdf5e51293eb0c09b850.


Other projects
Oz Tiram conceived a similar piece of software with Python. He uses the Bottle
web framework.

https://gitlab.com/oz123/grafana-python-datasource
https://oz123.github.io/writings/2019-06-16-Visualize-almost-anything-with-Grafana-and-Python/index.html

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.