Grafana——openGemini的数据源插件

原创
2023/11/28 17:30
阅读数 29

Grafana-openGemini 介绍

Grafana 是一款流行的开源数据可视化和监控分析平台,可以通过灵活的配置查询采集到的数据并进行可视化展示。它可以快速灵活的创建客户端图表,官方库中具有丰富的仪表盘插件,比如热图、折线图、图表等多种展示方式。支持 InfluxDB,OpenTSDB,Prometheus,ElasticSerach,MySQL 等数据源,还可以创建自定义告警规则并通知到其他消息处理服务或组件中。

openGemini 由于兼容 InfluxDB 接口,自开源以来一直推荐使用 InfluxDB 数据源连接 openGemini,直到今天,社区终于开发了自己的数据源插件,填补了空白。本文主要介绍该插件的功能和使用方法。

插件已在社区开源,若有功能不满足需求,可进行二次开发。

https://github.com/openGemini/grafana-opengemini-datasource

插件功能特性

  • 支持将源数据格式化为 time series,table,log 三种类型的数据。
  • 支持日志数据的展示。结合 openGemini 数据库自身的日志检索相关语法和 openGemini 数据源插件的关键词高亮功能,实现对日志的查询,展示及检索等操作。
  • 别名支持。别名模式支持对表名、列名或 tag 名称进行名称替换,用于区分复杂数据。
  • 插件支持$timeFilter, $__interval 等变量出现在查询语句中,查询过程中会将变量替换为对应值。

插件安装

你可以选择如下任何一种方式使用 Grafana-openGemini 插件

源码编译

编译环境信息

  • Node.js: version v16+

  • yarn,可通过如下命令安装

    > npm install yarn
    

下载源码

> git clone https://github.com/openGemini/grafana-opengemini-datasource.git

进入主目录

> cd grafana-opengemini-datasource

编译

> yarn install
> yarn run build

编译好的插件存放在 dist 文件夹下

下载 release 版本

下载源码

> git clone https://github.com/openGemini/grafana-opengemini-datasource.git

openGemini 插件正在官方注册中,暂时还需要用到源码才能加载成功,官方注册成功后则不需要这一步。

下载最新版本 release ,解压后文件夹重命名为 dist(当做是编译出来的),再拷贝到源码主目录下。下载链接:

https://github.com/openGemini/grafana-opengemini-datasource/releases/download/v0.0.1/opengemini-opengemini-datasource-0.0.1.zip

配置 Grafana

修改 Grafana 配置文件custom.ini

[paths]
...
//配置下载的源码路径
plugins = /path/to/grafana-opengemini-datasource
...
[plugins]
...
//配置插件名称为opengemini-opengemini-datasource (不可修改)
allow_loading_unsigned_plugins = opengemini-opengemini-datasource

如果没有 custom.ini 文件,可以拷贝 sample.ini 文件,并重命名为 custom.ini

配置修改成功后,重新启动 grafana-server

插件使用

  1. 点击左侧菜单Connections

  2. 选择 openGemini

  3. 点击Add new data source

数据源配置

  1. 配置链接 openGemini 的各项参数,比如 HTTP URL,用户名密码,数据库等相关信息

  2. 配置项说明

    • Name,设置该数据源的名称
    • Default,打开默认可以在新 panel 中默认选择该数据源
    • URL,openGemini 服务的地址,openGemini 服务默认端口号为 8086
    • Allowed cookies ,默认情况下 grafana 代理会删除转发的 cookie。该项按照名称指定应转发到数据源的 cookie
    • Timeout,设置请求的超时时间
    • Database,设置 openGemini 的默认 database
    • HTTP Method,设置 openGemini 的默认 database
    • Min time interval,设置自动分组的最小时间间隔

查询

查询语法: 详见 openGemini 文档

Format as:选择将数据格式化为 time series,table,log 等类型

Alias by: 支持对表名、列名或 tag 名称进行名称替换

  • $measurement 替换 measurement 名称
  • $col 替换列名
  • $tag_exampletag 替换 exampletag tag 的值

举个例子,查询每个节点的 CPU 利用率,查询语句

SELECT mean("CpuUsage") FROM $database.."system" WHERE $timeFilter GROUP BY time($__interval), "host" fill(null)

Alias by 中填入$tag_host,表示使用 host 值替换默认表名的展示

分别使用 time series 和 table 格式展示效果如下图所示:

再举个例子,查询日志,查询语句如下:

select * from mst181998 limit 100

效果如下图所示:

总结

openGemini再添一员“猛将“,有了专属自己的数据源插件—openGemini-Grafana!本文从安装—使用—数据源配置三个步骤细致地描述了如何在openGemini轻松接入Grafana,欢迎大家下载安装体验。


openGemini官网:http://www.openGemini.org

openGemini开源地址:https://github.com/openGemini

openGemini公众号:

欢迎关注~ 诚邀你加入 openGemini 社区,共建、共治、共享未来!

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部