跳转到主要内容

通过pandas数据帧将NumPy数据服务到Grafana

项目描述

https://img.shields.io/pypi/pyversions/grafana-pandas-datasource.svg Supported Grafana versions https://img.shields.io/pypi/v/grafana-pandas-datasource.svg https://img.shields.io/pypi/l/grafana-pandas-datasource.svg https://img.shields.io/pypi/status/grafana-pandas-datasource.svg https://img.shields.io/pypi/dm/grafana-pandas-datasource.svg

Grafana pandas数据源

关于

一个基于Flask的HTTP API,用于将pandas数据框服务于Grafana,由NumPy生成。使用Grafana Simple JSON数据源将Grafana与HTTP API接口。

这样,一个纯Python应用程序可以轻松且强大地直接向Grafana提供数据。

该框架支持通过相应的/query/annotations端点提供时序数据和注释,还提供了/search/panels端点。

屏幕截图

https://user-images.githubusercontent.com/453543/103137119-78dab480-46c6-11eb-829f-6aa957239804.png

图像:使用NumPy生成的正弦波数据和午夜注释,请参阅正弦波/午夜示例

设置

Grafana pandas数据源设置概述了运行此项目所需的所有软件预置安装方法。请仔细阅读本节。

pip install grafana-pandas-datasource

概要

测试驱动

# 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

当环境已正确配置后,上述两个请求都将产生适当的响应。

然后,配置Grafana实体。您需要一个数据源对象和一个仪表板对象。

示例

不同的演示程序,包括Grafana数据源和仪表板定义文件。

在确认沙盒环境已成功安装后,请转到正弦波/午夜示例页面,了解如何为Grafana提供相应资源。

自定义实现

为了构思您自己的基于pandas的数据源,请使用正弦波/午夜demo.py作为蓝图。如果您认为这对社区是一个有价值的贡献,我们将很高兴将其添加到存储库中。

致谢

感谢Linar,他前几天在https://gist.github.com/linar-jether/95ff412f9d19fdf5e51293eb0c09b850上构思了此软件的初始版本。

其他项目

Oz Tiram构想了一款类似的软件,也使用了Python。他使用了Bottle Web框架。

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

grafana-pandas-datasource-0.3.0.tar.gz (20.6 kB 查看哈希)

上传时间

构建分布

grafana_pandas_datasource-0.3.0-py3-none-any.whl (31.7 kB 查看哈希)

上传时间 Python 3

由以下支持