CLS 对接 Grafana

2021-02-05 10:59:24 浏览数 (1)

一、操作场景

日志服务(Cloud Log Service,CLS)与 Grafana 打通,支持将 CLS 的原始日志数据与 SQL 聚合分析结果导出,并在 Grafana 展示。您只需安装 CLS 日志服务 Grafana 插件,并在 Grafana 填写检索分析的语句,即可在 Grafana 上展示结果。

您可以根据如下用户名和密码,前往 CLS 对接 Grafana 的体验网站 进行体验。

  • 用户名:Viewer
  • 密码:clsdemo

本文档以 CentOS 操作系统为例,指导您安装和配置 Grafana。

二、操作步骤

安装 Grafana

安装 Grafana,具体操作请参见 Grafana 官网文档。

以 CentOS 安装 grafana 7.3.6 为例:

代码语言:txt复制
sudo yum install initscripts urw-fonts wget
wget https://dl.grafana.com/oss/release/grafana-7.3.6-1.x86_64.rpm
sudo yum install grafana-7.3.6-1.x86_64.rpm
sudo systemctl daemon-reload
sudo systemctl start grafana-server
sudo systemctl status grafana-server 
sudo systemctl enable grafana-server  

如需安装更多可视化图表(例如饼图、趋势速览图等),请执行对应的命令安装 grafana panel 插件。

例如,您需要安装饼图(pie panel),可执行如下命令:

代码语言:txt复制
grafana-cli plugins install grafana-piechart-panel
service grafana-server restart

更多插件安装,请参考 Grafana plugins。

安装和配置 CLS 对接 Grafana 插件

1、在/var/lib/grafana/plugins/插件目录下安装 CLS 对接 Grafana 插件。

代码语言:txt复制
cd /var/lib/grafana/plugins/
wget https://github.com/TencentCloud/cls-grafana-datasource/releases/latest/download/cls-grafana-datasource.zip
unzip cls-grafana-datasource.zip? 

说明: 1. 如果您的云服务器非 CentOS 系统,请先确认 Grafana 的插件目录位置,再进入该插件目录进行安装。 2. 如果安装 Grafana 的版本低于7.0,则无需修改 Grafana 配置文件,请跳过以下步骤,直接 配置日志数据源。

2、在已部署 Grafana 的机器中,打开 grafana.ini 配置文件。

  • MacOS 系统的文件路径:/usr/local/etc/grafana/grafana.ini
  • Linux 系统的文件路径:/etc/grafana/grafana.ini

3、在 plugins 中设置 allow_loading_unsigned_plugins 参数。

代码语言:javascript复制
allow_loading_unsigned_plugins = tencent-cls-grafana-datasource

4、执行如下命令,重启 grafana 服务。

代码语言:javascript复制
service grafana-server restart

配置日志数据源

1、在浏览器中访问以下地址,登录 Grafana。

说明:

Grafana 的默认端口为3000端口。

代码语言:javascript复制
http://Grafana IP 地址:3000

2、在左侧菜单栏中,选择设置图标,进入Data Sources 页面。

3、在 Data Sources 页面,单击【Add data source】。

4、选中【Tencent Cloud Log Service Datasource】,并按照如下说明配置数据源。

配置数据源配置数据源

配置项

说明

Security Credentials

SecretId、SecretKey:API 请求密钥,用于身份鉴权。可前往 API 密钥管理 获取地址。

Log Service Info

region:日志服务区域简称。例如,北京区域填写ap-beijing。完整的区域列表格式请参考 地域列表。 Topic:日志主题ID 。

配置 dashboard

  1. 在左侧导航栏中,单击【Creat Dashboards】。
  2. 在 Dashboard 页面,单击【Add new panel】。
  3. 将数据源选择为您新建的日志数据源。如下图所示:
添加数据源添加数据源

4. 输入 Query 语句,并根据待展示的图表类型,选择 Format 形式。系统会自动转换数据以满足 Grafana 的展示。

Format 格式

描述

配置项

Log panel

log panel is used to shown log search result. Query syntax supports searching by keyword, fuzzy match. For more information, see Syntax and Rules. Eg. status:400

limit:用于指定返回日志检索结果条数。

Table panel

Table panle | Table panel will automatically show the results of whatever columns and rows your query returns

Graph,Pie,Gauge panel

In this pattern, there is a format transformation where data will be adapted to graph,pie,gauge panel

Metrics:待统计指标。Bucket:(选填)聚合列名称。Time : (选填)若 query 返回结果为连续时间数据,则需指定 time 字段。若无,则不填写。

操作示例

时间折线图

时间折线图(Graph) 展示 pv,uv 数据曲线。如下图所示:

时间折线图时间折线图

您可以根据如下信息进行配置:

  • 输入的 Query 语句如下所示:
代码语言:javascript复制
* | select histogram( cast(__TIMESTAMP__ as timestamp),interval 1 minute) as time, count(*) as pv,count( distinct remote_addr) as uv group by time order by time limit 1000
  • Format:选择 Graph,Pie,Gauge panel
  • Metrics:pv,uv
  • Bucket:无聚合列,不填写
  • Time : time

饼图

饼图(Pie)展示请求状态码分布。如下图所示:

饼图饼图

您可以根据如下信息进行配置:

  • 输入的 Query 语句如下所示:
代码语言:javascript复制
* | select count(*) as count, status group by status
  • Format:选择 Graph,Pie,Gauge panel
  • Metrics:count
  • Bucket:status
  • Time:不是连续时间数据,不填写

柱状图,压力图

柱状图,压力图(bar gauge)统计访问延时前10的页面。如下图所示:

柱状图、压力图柱状图、压力图

您可以根据如下信息进行配置:

  • 输入的 Query 语句如下所示:
代码语言:javascript复制
* | select http_referer,avg(request_time) as lagency group by http_referer order by lagency desc limit 10
  • Format:选择 Graph,Pie,Gauge panel
  • Metrics:lagency。
  • Bucket:http_referer。
  • Time:不是连续时间数据,不填写

表格Table

表格(Table)展示访问量前10的用户。如下图所示:

表格表格

您可以根据如下信息进行配置:

  • 输入的 Query 语句如下所示:
代码语言:javascript复制
* | select remote_addr,count(*) as count group by remote_addr order by count desc limit 10
  • Format:Table

有任何问题欢迎大家加入企业微信群咨询:【云原生日志服务CLS】技术社区群(或者联系:v_ltvli加入)

【云原生日志服务CLS】技术社区群【云原生日志服务CLS】技术社区群

0 人点赞