OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  clscli:查询并分析腾讯云 CLS 日志

clscli:查询并分析腾讯云 CLS 日志

 
  dock ·  2026-02-08 07:17:04 · 3 次点击  · 0 条评论  

名称: clscli
描述: 查询与分析腾讯云 CLS 日志
主页: https://github.com/
元数据:
{"requires": {"bin": ["clscli"], "env": ["TENCENTCLOUD_SECRET_ID", "TENCENTCLOUD_SECRET_KEY"]}}


CLS 技能

查询与分析腾讯云 CLS 日志。

安装与配置

  1. 安装 clscli (使用 Homebrew):
    bash brew tap dbwang0130/clscli brew install dbwang0130/clscli/clscli
  2. 获取访问密钥和地域列表:https://cloud.tencent.com/document/api/614/56474
  3. 设置环境变量(与腾讯云 API 通用参数相同):
    bash export TENCENTCLOUD_SECRET_ID="your-secret-id" export TENCENTCLOUD_SECRET_KEY="your-secret-key"
  4. 通过 --region 参数指定地域(例如:ap-guangzhou)。

使用方法

!重要提示:如果不确定日志主题,请先列出所有主题。

列出日志主题

列出指定地域的日志主题,以确定查询或上下文操作应使用的 --region 和主题 ID。

clscli topics --region <region> [--topic-name name] [--logset-name name] [--logset-id id] [--limit 20] [--offset 0]

示例:--output=json, --output=csv, -o topics.csv

选项 必填 描述
--region CLS 地域,例如 ap-guangzhou
--topic-name 按主题名称过滤(模糊匹配)
--logset-name 按日志集名称过滤(模糊匹配)
--logset-id 按日志集 ID 过滤
--limit 每页大小,默认 20,最大 100
--offset 分页偏移量,默认 0
--output, -o 输出格式:json、csv 或文件路径

输出列:Region, TopicId, TopicName, LogsetId, CreateTime, StorageType。

通过查询获取日志

clscli query -q "[查询条件] | [SQL语句]" --region <region> -t <TopicId> --last 1h

示例:
- 时间范围:--last 1h, --last 30m;或使用 --from/--to(Unix 毫秒时间戳)
- 多个主题:--topics <id1>,<id2> 或多个 -t <id>
- 自动分页和上限:--max 5000(分页直到获取 5000 条日志或 ListOver)
- 输出:--output=json, --output=csv, -o result.json(写入文件)

选项 必填 描述
--region CLS 地域,例如 ap-guangzhou
-q, --query 查询条件或 SQL,例如 level:ERROR* \| select count(*) as cnt
-t, --topic -t/--topics 二选一 单个日志主题 ID
--topics -t/--topics 二选一 逗号分隔的主题 ID,最多 50 个
--last --last/--from/--to 三选一 时间范围,例如 1h, 30m, 24h
--from, --to --last/--from/--to 三选一 开始/结束时间(Unix 毫秒时间戳)
--limit 每次请求的日志条数,默认 100,最大 1000
--max 日志总数上限;非零时,自动分页直到达到上限或 ListOver
--output, -o 输出格式:json、csv 或文件路径
--sort 排序:asc 或 desc,默认 desc

查询条件语法

支持两种语法:
- CQL (CLS Query Language):CLS 专用的日志查询语法,易于使用,推荐。
- Lucene:开源 Lucene 语法;非为日志搜索设计,对特殊字符、大小写、通配符有更多限制;不推荐。

CQL 语法
语法 描述
key:value 键值搜索;字段(key)包含指定值的日志,例如 level:ERROR
value 全文搜索;包含指定值的日志,例如 ERROR
AND 逻辑与,不区分大小写,例如 level:ERROR AND pid:1234
OR 逻辑或,不区分大小写,例如 level:ERROR OR level:WARNING, level:(ERROR OR WARNING)
NOT 逻辑非,不区分大小写,例如 level:ERROR NOT pid:1234, level:ERROR AND NOT pid:1234
() 分组以控制优先级,例如 level:(ERROR OR WARNING) AND pid:1234注意:无括号时,AND 优先级高于 OR。
" " 短语搜索;双引号内的字符串,单词和顺序必须完全匹配,例如 name:"john Smith"。短语内不能使用逻辑运算符。
' ' 短语搜索;单引号,与 "" 相同;当短语包含双引号时使用,例如 body:'user_name:"bob"'
* 通配符;匹配零个或多个字符,例如 host:www.test*.com。不支持前缀通配符。
>, >=, <, <=, = 数值范围运算符,例如 status>400, status:>=400
\ 转义符;转义后的字符视为字面量。需转义值中的空格、:()>=<"'*
key:* 文本类型:字段存在(任意值)。长整型/双精度型:字段存在且为数值,例如 response_time:*
key:"" 文本类型:字段存在且为空。长整型/双精度型:值非数值或字段缺失,例如 response_time:""

SQL 语句语法

语法 描述
SELECT 从表中选择;数据来自当前日志主题中匹配查询条件的日志
AS 为列(KEY)设置别名
GROUP BY 与聚合函数配合使用,按一列或多列(KEY)分组
ORDER BY 按 KEY 对结果集排序
LIMIT 限制返回行数,默认 100,最大 100 万
WHERE 过滤原始数据
HAVING 在 GROUP BY 之后、ORDER BY 之前过滤;WHERE 过滤原始数据
嵌套子查询 一个 SELECT 语句嵌套在另一个中,用于多步骤分析
SQL 函数 丰富的分析功能:IP 地理位置、时间格式化、字符串分割/连接、JSON 提取、数学运算、去重计数等

获取日志上下文

检索指定日志前后的上下文信息。

clscli context <PkgId> <PkgLogId> --region <region> -t <TopicId>

示例:--output=json, --output=csv, -o context.json(写入文件)

选项 必填 类型 描述 示例
--region String CLS 地域 ap-guangzhou
-t, --topic String 日志主题 ID -
PkgId String 日志包 ID,即 SearchLog Results[].PkgId 528C1318606EFEB8-1A7
PkgLogId Integer 包内索引,即 SearchLog Results[].PkgLogId 65536
--output, -o - 输出格式:json、csv 或文件路径 -
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor