You need to enable JavaScript to run this app.
导航
对接 Grafana
最近更新时间:2024.10.31 11:54:33首次发布时间:2023.07.20 21:12:55

日志服务提供数据源插件以供日志数据快速对接 Grafana,便于您在 Grafana 中可视化展示与分析日志服务中的日志数据。本文档演示通过日志服务数据源插件将日志数据接入 Grafana 的操作步骤。

背景信息

作为开源的可视化监控平台,Grafana 提供数据指标监控、可视化分析等功能,通常用于网络架构、应用性能分析等多种场景下的大规模指标数据和时序数据的可视化展示。日志数据被采集到日志服务中之后,您可以通过日志服务提供的数据源插件将日志数据与 Grafana 对接,并在 Grafana 中创建可视化的仪表盘与图表,实现日志数据在 Grafana 中的可视化分析。
日志服务提供的数据源插件支持通过火山引擎访问密钥获取当前账号下所有的日志主题数据,也支持只获取某个指定的日志主题数据。两种数据源的配置方式说明如下表所示,您可以根据业务需求,选择合适的配置方式。

说明

本文中的操作步骤与配置示例,以只指定访问密钥方式的界面为例。

方式

说明

优点

缺点

只指定访问密钥方式

使用当前数据源时,可以查看当前账号下所有的日志主题数据。
如果当前账号下新增日志主题,将自动同步到对应的数据源中,实现日志主题动态扩展至 Grafana。

  • 灵活性高
  • 易于维护
  • 安全风险
  • 降低性能

指定日志主题方式

使用当前数据源时,只能查看当前指定的日志主题数据。

  • 安全性高
  • 可控性强
  • 配置工作量大
  • 维护成本低

前提条件

  • 已采集日志数据。操作步骤请参考快速入门
  • 已安装 Grafana。操作步骤请参考 Grafana 官方文档
    日志服务支持对接 Grafana 6.0~10.x 版本。本文档以 Grafana 9.5.8 版本为例演示相关的操作步骤。

操作步骤

1 下载并安装数据源插件

  1. 下载数据源插件包。详细信息请参考 Github 仓库

    • Grafana 9.0 及以上版本

      wget https://codeload.github.com/volcengine/tls-grafana-datasource/zip/refs/heads/main -O tls-grafana-datasource-main.zip
      
    • Grafana 6.x~8.x 版本

      wget https://codeload.github.com/volcengine/tls-grafana-datasource/zip/refs/tags/v1.2 -O tls-grafana-datasource-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 安装方式

    插件目录

    插件配置

    使用 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. 执行 kill 命令终止 Grafana 进程。

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

      Grafana 安装方式

      重启命令

      使用 RPM 或者 YUM 安装

      systemctl restart grafana-server
      

      使用.tar.gz 文件安装

      ./bin/grafana-server
      

2 添加数据源

说明

不同版本的 Grafana 界面可能存在差异,请以实际界面为准。

在 Grafana 中添加日志服务数据源。

  1. 以管理员身份登录 Grafana。
  2. 在左侧菜单栏中选择 Administration > Data sources
  3. Data sources 页签中,单击 Add new data source
  4. Add data source 页面中,找到并单击找到 Tls-Grafana-Datasource
  5. 填写数据源配置。
    1. 设置数据源名称。

    2. 选择配置模式。

    3. 配置数据源信息。

      • 只指定访问密钥方式
        Image

        配置

        说明

        AccessKeyId

        火山引擎账户密钥 Access Key ID。
        您可以在火山引擎控制台密钥管理页面,根据页面提示查看并复制 Access Key ID。

        说明

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

        AccessKeySecret

        火山引擎账户密钥 Secret Access Key。
        您可以在火山引擎控制台密钥管理页面,根据页面提示查看并复制 Secret Access Key。

      • 指定日志主题方式
        Image

        配置

        说明

        Endpoint

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

        说明

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

        Region

        日志服务的地域 ID,必须与 Endpoint 的地域一致。详细信息请参见服务地址

        Topic

        日志数据所在的日志服务日志主题 ID。

        AccessKeyId

        火山引擎账户密钥 Access Key ID。
        您可以在火山引擎控制台密钥管理页面,根据页面提示查看并复制 Access Key ID。

        说明

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

        AccessKeySecret

        火山引擎账户密钥 Secret Access Key。
        您可以在火山引擎控制台密钥管理页面,根据页面提示查看并复制 Secret Access Key。

    4. 单击 Save & test

3 添加仪表盘和图表

添加数据源之后,您还需要在 Grafana 中创建仪表盘,并为其添加图表。

  1. 添加仪表盘。

    1. 在左侧导航栏中,单击 Dashboards
    2. 在页面右上角,单击 New > New Dashboard
    3. New dashboard 页面中,单击 Add visualization
    4. Select data source 页面,选择您在2 添加数据源中创建的 TLS 数据源。
  2. 填写检索分析相关的配置。

    1. 选择数据源所在的地域(region)和日志主题(topic)。

      配置参数

      说明

      region

      选择 TLS 日志主题所在的地域。

      topic

      选择数据源所在的 TLS 日志主题。

    2. Query 中输入检索分析语句。
      检索分析语句应符合火山引擎日志服务检索分析语法。详细说明请参考检索概述分析概述

    3. 设置 xcolycol

      配置参数

      说明

      xcol

      设置 X 轴的展示字段。

      • 使用表格类型的图表时,xcol 需选择为 Table/Log
      • 使用柱状图类型的图表时,xcol 需选择为 bar
      • 使用时序图类型的图表时,xcol 需选择为 TimeSeries/Custom
        使用时序图时,支持将一个维度展开为多个指标,并通过多条折线图分别展示不同指标随时间的变化趋势,具体实例,请参考示例 2
      • 使用饼图类型的图表时,xcol 需选择为 pie

      ycol

      设置 Y 轴的展示字段。

    Image

  3. 配置图表。

    1. 在页面右侧,选择图表类型。
    2. 根据业务需求,配置 Panel options
  4. 在页面右上角单击 Save

  5. Save dashboard 面板中,设置仪表盘名称,然后单击 Save
    如果您要继续添加可视化图表,可在仪表盘的右上角单击 Add > Visualization。
    Image

图表配置示例

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

柱状图(Bar gauge)

柱状图常用于展示分类数据,每个分类为一个柱状图形,其高度为每一分类的数值大小。添加柱状图的操作步骤,请参考3 添加仪表盘和图表。柱状图的配置示例如下:

  • 场景
    通过柱状图展示每个请求方法对应的 PV 和 UV。

  • 参数配置
    Image

    配置参数

    说明

    region

    选择TLS 日志主题所在的地域,例如 北京

    topic

    选择数据源所在的 TLS 日志主题,例如 mytopic

    Query

    输入如下检索分析语句。

    *|select method,count(1) as PV,count(distinct account_id) as UV group by method

    xcol

    使用柱状图时,xcol 需选择为 bar。

    ycol

    设置为 method,PV,UV

  • 可视化图表
    Image

表格(Table)

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

  • 场景
    通过表格展示每 5 分钟内的 PV 和 UV。

  • 参数配置
    Image

    参数

    示例

    Data source

    选择您已添加的 TLS 数据源。

    region

    选择TLS 日志主题所在的地域,例如 北京

    topic

    选择数据源所在的 TLS 日志主题,例如 mytopic

    Query

    输入如下检索分析语句。

    * | select DATE_FORMAT(__time__ - __time__ % 300000, 'Y-M-d HH:mm') as time, count(1) as PV, count(distinct accountid) as UV group by time order by time

    xcol

    使用表格时,xcol 需选择为 Table/Log

    ycol

    无需设置。

  • 可视化图表
    Image

时序图(Time series)

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

示例 1

  • 场景
    通过时序图展示每 5 分钟内 PV 的变化趋势。

  • 参数配置
    Image

    配置参数

    示例

    Data source

    选择您已添加的 TLS 数据源。

    region

    选择TLS 日志主题所在的地域,例如 北京

    topic

    选择数据源所在的 TLS 日志主题,例如 mytopic

    Query

    * | select (__time__ - (__time__ % 30000)) as time,count(1) as PV, count(distinct account_id) as UV group by time

    xcol

    使用时序图时,xcol 需选择为 TimeSeries/Custom

    ycol

    设置为 PV,UV

  • 可视化图表
    Image

示例 2

  • 场景
    通过时序图展示各个集群的 IOPS 随时间的变化情况。

  • 参数配置
    Image

    配置参数

    示例

    Data source

    选择您已添加的 TLS 数据源。

    region

    选择TLS 日志主题所在的地域,例如 北京

    topic

    选择数据源所在的 TLS 日志主题,例如 mytopic

    Query

    Action: PutLogs AND newArch:true | select Tls2Cluster, (__time__ - (__time__ % 60000)) as time,sum(ReqSize)/60 as num group by Tls2Cluster, time order by time, num DESC limit 1000000

    xcol

    使用时序图时,xcol 需选择为 TimeSeries/Custom,具体字段为 time,Tls2Cluster

    说明

    使用时序图时,支持将一个维度展开为多个指标。将 xcol 配置为 time,查询字段,将 ycol 配置为对应的数值列(支持多个数值列),系统将新增对应的指标,指标名为查询字段值* 数值列名,每个指标会对应一条折线,折线条数小于等于 100。
    例如本案例中,xcol 配置为 time,Tls2Clusterycol 配置为 num,则根据Tls2Cluster 字段值生成指标 newarch*numtls-newarch-az-b*numtls-newarch-az-b-2*num,并分别展示这三个指标随时间的变化情况。

    ycol

    设置为 num

  • 可视化图表
    Image

单值图(Gauge)

单值图以矩形框形式突出展示检索分析结果,适用于数据信息突出展示的场景,例如某一时刻或时间段的某个关键信息。添加单值图的操作步骤,请参考3 添加仪表盘和图表。单值图的配置示例如下:

  • 场景
    通过单值图展示PV和UV。

  • 参数配置
    Image

    配置参数

    示例

    Data source

    选择您已添加的 TLS 数据源。

    region

    选择 TLS 日志主题所在的地域,例如 北京

    topic

    选择数据源所在的 TLS 日志主题,例如 mytopic

    Query

    * | select count(1) as PV, count(distinct accountid) as UV

    xcol

    使用单值图时,xcol 需选择为 stat/Gauge

    ycol

    设置为 PV,UV

  • 可视化图表
    Image

饼图(Pie chart)

饼图用于表示不同分类的占比,通过弧度来对比分类之间的占比差异、每个分类相较于总和的数值差异。添加饼图的操作步骤,请参考3 添加仪表盘和图表。饼图的配置示例如下:

  • 场景
    通过饼图展示各个请求状态对应的请求数量。

  • 参数配置
    Image

    配置参数

    说明

    Data source

    选择您已添加的 TLS 数据源。

    region

    选择 TLS 日志主题所在的地域,例如 北京

    topic

    选择数据源所在的 TLS 日志主题,例如 mytopic

    Query

    status>200 | select status,count(*) cnt group by status

    xcol

    使用饼图时,xcol 需选择为 pie

    ycol

    设置为 status,cnt

  • 可视化图表
    Image