You need to enable JavaScript to run this app.
导航

对接 Grafana

最近更新时间2023.11.13 16:31:39

首次发布时间2023.07.20 21:12:55

日志服务提供 Grafana 插件,可以将采集到的日志数据在 Grafana 中实现可视化展示与分析。本文档演示通过日志服务 Grafana 插件将日志数据接入 Grafana 的操作步骤。

背景信息

作为开源的可视化监控平台,Grafana 提供数据指标监控、可视化分析等功能,通常用于网络架构、应用性能分析等多种场景下的大规模指标数据和时序数据的可视化展示。日志数据采集到日志服务中之后,可以通过火山引擎日志服务提供的 Grafana 插件将已采集到的日志数据对接 Grafana,并在 Grafana 中创建可视化的仪表盘与图表,实现日志数据在 Grafana 中的可视化分析。

前提条件

  • 已开通日志服务,并成功采集到日志数据。详细说明请参考快速入门
  • 已成功安装 Grafana。详细操作步骤请参考 Grafana 官方文档
    支持的 Grafana 的版本为 6.0~7.5 版本。本文档以 Grafana 6.6 版本为例演示相关的操作步骤。

操作步骤

1 下载并安装数据源插件

日志服务提供 Grafana 数据源插件以供日志数据快速对接 Grafana。下载并安装插件的操作步骤如下:

  1. 下载日志服务数据源插件包。
    本地执行以下命令下载日志服务 Grafana 数据源插件包。详细信息请参考 Github 仓库

    wget https://github.com/volcengine/tls-grafana-datasource/archive/refs/heads/main.zip
    
  2. 将日志服务插件项目压缩包解压到 Grafana 插件目录下。
    根据不同的安装方式选择对应的 Grafana 插件目录,并执行对应命令。

    Grafana 安装方式

    插件目录

    解压缩命令示例

    使用 RPM 或者 YUM 安装

    /usr/lib/grafana/plugins

    unzip tls-grafana-datasource-main.zip 
    -d /var/lib/grafana/plugins

    使用.tar.gz 文件安装

    {PATH_TO}/grafana-6.6.0/data/plugins:

    unzip tls-grafana-datasource-main.zip 
    -d {PATH_TO}/grafana-6.6.0/data/plugins
  3. 修改 Grafana 插件配置。
    在 Grafana 的配置文件中增加日志服务 Grafana 插件相关的权限配置参数,使 Grafana 允许加载此插件。

    说明

    6.x 版本的 Grafana 默认允许加载未签名的插件,无需添加此配置。

    Grafana 安装方式

    插件目录

    插件配置

    使用 RPM 或者 YUM 安装

    :/etc/grafana/grafana.ini

    allow_loading_unsigned_plugins = tls-grafana-datasource
    

    使用.tar.gz 文件安装

    :{PATH_TO}/grafana-6.6.0/conf/defaults.ini

    allow_loading_unsigned_plugins = tls-grafana-datasource
    
  4. 重启 Grafana。
    执行以下命令重启 Grafana,使插件配置生效。

    1. 终止 Grafana 进程。
      执行 kill 命令终止 Grafana 进程。

    2. 重新启动 Grafana。
      根据安装方式选择对应的命令,重启 Grafana。

      Grafana 安装方式

      重启命令

      使用 RPM 或者 YUM 安装

      systemctl restart grafana-server
      

      使用.tar.gz 文件安装

      ./bin/grafana-server web
      

2 添加数据源

在 Grafana 中添加日志服务数据源,并填写日志服务接入点等相关配置。操作步骤如下:

  1. 以管理员身份登录 Grafana。

  2. 在左侧菜单栏中选择 Configuration > Data Sources

  3. Data Sources 页签,单击 Add data source

  4. Add data source 页面,找到 LogService,并单击对应的 Select

  5. 填写数据源配置。
    必选参数如下。

    配置

    说明

    URL

    日志服务的服务地址,例如 https://tls-cn-beijing.ivolces.com。请根据地域和网络类型选择正确的服务入口,详细信息请参见服务地址

    说明

    • 服务地址必须以 https://开头。
    • 如果使用私网服务地址,应确认 Grafana 项目所在环境可通过火山引擎私网访问日志服务。

    Region

    日志服务的地域 ID,必须和 URL 配置匹配。详细信息请参见服务地址

    Topic

    日志服务数据源的日志主题 ID。

    AccessKeyId

    火山引擎账户密钥 AccessKey ID。

    说明

    建议使用 IAM 用户的密钥,且 IAM 用户应具备 Action SearchLogs 的权限。详细信息请参考可授权的操作

    AccessKeySecret

    火山引擎账户密钥 AccessKey Secret。

    图片

  6. 单击 Save & Test

3 添加仪表盘和图表

添加数据源之后,还需要在 Grafana 中创建仪表盘,并为其添加图表。添加仪表盘时还可以设置多种模板变量,在同一个图表中可以通过选择不同的变量值,来展示不同的检索分析结果。操作步骤如下。

  1. 添加仪表盘,并添加变量。

    1. 在 Grafana 左侧导航栏单击 Create > Dashboard
    2. 在页面右上角单击设置图标(Dashboard Settings)。
    3. 在 Variables 页面中单击 Add variable
    4. 填写参数配置,按需添加变量,并在左侧菜单栏,单击 Save
      本文档以添加时间区间模板变量、快速查询模板变量为例,演示模板变量的参数配置。检索时支持引用模板变量,即变量可以在检索时作为参数进行筛选,在 Query 语句生效。

    说明

    引用变量时,Interval 类型变量用 $$变量名 格式引用,其他类型通过 $变量名 方式引用。

    时间区间模板变量用于快速查看不同时间区间的检索分析结果。相关参数配置如下。

    配置参数说明

    Name

    配置模板中使用的变量名称。
    此处以 TimeInterval 为例,此时检索时的查询条件需要指定为 $$TimeInterval

    Type配置模板类型,此处应设置为 Interval
    Label变量标签,此处可设置为 Time Interval。该标签会显示在仪表盘中,以便快速识别不同的模板变量。
    Values变量值,此处可维持默认配置。
    Auto Option开启 Auto Option 开关,并维持其他默认配置。

  2. 添加可视化图表。
    仪表盘中可添加各种格式的可视化图表,用于实时展示日志数据的检索分析结果。所有图标都可通过模板变量配置进行筛选和查询,您也可以在检索分析语句中引用模板变量。添加可视化图表的操作步骤如下。

    1. 在仪表盘页面右上角单击 Add panel 图标。
    2. 选择 Add an empty panel
    3. 页面左下角 Data source 设置为步骤 2 中添加的数据源。
    4. 填写相关配置。
      根据不同的图表类型选择不同的参数配置,通常情况下需要填写 QueryX-ColumnY-Column 等参数配置。常见场景的图表配置示例请参考图表配置示例
    5. Panel 页签中的 Visualization 区域设置图表类型。

      说明

      日志服务插件支持配置的图表类型包括 GraphTable

    6. 设置图表的 TitleDescription 等属性。
    7. 在页面右上角单击 Apply 保存并应用配置。
      图片
  3. 查看展示效果。
    最终结果如下图所示。
    图片

图表配置示例

日志服务提供常见场景下的图表配置示例供您参考。

时序图(Graph)

折线图可用于展示不同时间节点的数据变化趋势,例如查看一段时间内的访问量趋势等场景。您可以参考操作步骤添加仪表盘和图表,其中折线图的配置示例如下。

配置参数

说明

Query

检索分析语句。 检索分析语句应符合火山引擎日志服务检索分析语法。详细说明请参考检索概述
示例如下:

$endpoint | select (__time__ - (__time__ % $$myinterval)) 
as time,count(*) as cnt ,1 as cnt2 group by time limit 100

说明

示例中引用了模板变量 $$myinterval,该变量会被替换为您选择的时间区间。

X-Column

X 轴的展示字段。此处可配置为 time,格式为秒级的 Unix 时间戳。

Y-Column

Y 轴的展示字段。此处可配置为 cnt,cnt2

Visualization

选择 Graph。

表格(Table)

表格可用于展示或对比统一类型字段的值,例如在访问日志中查询用户的操作时间等场景。您可以参考操作步骤添加仪表盘和图表,其中表格的配置示例如下。

配置参数

说明

Query

检索分析语句。 检索分析语句应符合火山引擎日志服务检索分析语法。详细说明请参考检索概述
示例如下:

* | SELECT user_id,action,time

X-Column

X 轴的展示字段。此处可配置为 table

Y-Column

Y 轴的展示字段。此处可配置为图表的表头字段,此处可配置为图表的表头字段,例如 user_id,action,time

Visualization

选择 Table。