tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

日志转指标

PDF
聚焦模式
字号
最后更新时间: 2026-02-12 15:13:28
存储在日志主题中的原始日志可通过 SQL 进行统计,获取其中的指标。例如通过以下 SQL 获取错误请求数,错误请求数 errorRequestCount 即为一个指标:
status:>=400 | select count(*) as errorRequestCount
这种获取指标的方式非常灵活,可通过调整检索条件和 SQL 语句随时获取新的指标或更改指标计算规则,但其依赖原始日志完整存储于日志主题 标准存储 中,如果需要查询最近60天的指标变化趋势,则原始日志至少需存储60天,带来较大的数据存储成本。
当指标比较固定时,可将原始日志转换为指标进行存储,降低原始日志存储天数(也可以使用 日志沉降投递到 COS 来低成本保存历史日志),进而降低整体成本。除此之外,由于转换后指标的数据条数一般远小于原始日志条数,指标主题也针对时序类型的数据查询进行了专门的优化,对转换后的指标进行查询时性能往往更好,可以更快的查询指标、绘制仪表盘。

转换逻辑

日志服务通过 定时 SQL 分析 将原始日志转换为指标,例如某一分钟有10条日志,通过 定时 SQL 分析 将这10条日志转换为指标。
原始日志:
{"requestTime":"2020/12/30 15:35:46","method":"POST","handler":"/messages","timeCost":"45","status":"200"}
{"requestTime":"2020/12/30 15:35:46","method":"POST","handler":"/users","timeCost":"23","status":"200"}
{"requestTime":"2020/12/30 15:35:47","method":"POST","handler":"/messages","timeCost":"57","status":"200"}
{"requestTime":"2020/12/30 15:35:47","method":"POST","handler":"/users","timeCost":"25","status":"200"}
{"requestTime":"2020/12/30 15:35:47","method":"POST","handler":"/users","timeCost":"689","status":"200"}
{"requestTime":"2020/12/30 15:35:48","method":"POST","handler":"/users","timeCost":"87","status":"200"}
{"requestTime":"2020/12/30 15:35:48","method":"POST","handler":"/users","timeCost":"34","status":"200"}
{"requestTime":"2020/12/30 15:35:48","method":"POST","handler":"/users","timeCost":"698","status":"200"}
{"requestTime":"2020/12/30 15:35:48","method":"POST","handler":"/messages","timeCost":"25","status":"200"}
{"requestTime":"2020/12/30 15:35:48","method":"POST","handler":"/messages","timeCost":"78","status":"200"}
定时SQL:
* | select count(*) as requests_total,method,handler group by method,handler order by requests_total desc limit 10000
转换为如下指标:
requests_total{method="POST", handler="/messages"} 4
requests_total{method="POST", handler="/users"} 6
定时 SQL 任务可周期性执行,例如每分钟执行一次,每次对最近一分钟的原始日志进行转换,即可自动的将原始日志转换为分钟粒度的指标。

前提条件

已上报日志至日志主题,且采用标准存储,低频存储因为不支持 SQL 所以无法转换为指标。
该日志主题已 配置索引

操作步骤

步骤1:添加定时 SQL 分析

2. 在左侧导航栏中,选择定时 SQL 分析,单击新建,新建任务。
3. 基本配置中填写如下信息:
配置项
说明
源日志主题
定时 SQL 任务的输入,即需要转换为指标的原始日志所在的日志主题。
写入目标
定时 SQL 任务的输出,选择指标主题,将转换后的指标存储在指定的指标主题中。如当前没有指标主题,可 创建指标主题
执行语句
使用 SQL 语句 对原始日志进行统计以获取指标,例如:
* | select count(*) as requests_total,method,handler group by method,handler order by requests_total desc limit 10000
指标名称
从 SQL 语句结果中选择需要作为指标名称的字段,例如上面的例中requests_total为指标名称,其值为指标值。
指标维度
从 SQL 语句结果中选择需要作为指标维度的字段,例如上面的例中methodhandler为指标维度。
4. 单击下一步,在调度配置中填写如下信息:
配置项
说明
调度范围
查询日志的时间范围,例如需要查询2023年1月1日 00:00:00-2023年3月31日00:00:00的日志数据,结束时间为空意为任务将持续运行。
推荐使用将结束时间设为空,持续将新采集的日志转换为指标。
调度周期
周期性查询,取值范围1-1440分钟,意为每 X 分钟会查询一次日志。
推荐每1分钟执行一次,更加及时的将日志转化为指标。
查询时间窗口
指定查询语句的时间窗口。
推荐使用@m-1m ~ @m,即最近1分钟,结合调度周期的1分钟,相当于每分钟将这一分钟的日志转化为指标。
延迟执行 SQL
查询延迟的时间,在高级设置中,默认60秒。日志生成索引一般会有延迟,在索引生成之前不可查询,因此建议设置60秒延迟查询,此时索引已生成(99.9%的索引数据将在5秒内生成)。
5. 单击确定,保存配置。

步骤2:查询生成的指标

1. 在左侧导航栏中,选择检索分析,在顶部选择指标主题所在的地域,主题类型选择“指标主题”,然后选择需要的指标主题。
2. 在输入框中输入指标名称查询指标。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈