列出数据流
--type 列出其他类型的数据流:metrics、traces、profiles 或 extend。--names 只输出名称,--json 每行输出一个数据流的 JSON。
输出最新的日志
level、severity、severity_text 等字段,服务取自 service 或 service.name,消息取自 message、msg、body 或 log。没有消息字段的日志以 名称=值 列出其他字段。输出到终端时带颜色;NO_COLOR 关闭颜色,FORCE_COLOR 在管道中也保留颜色。
筛选日志
-q 接受字段查询,也就是 日志 页面的查询语言:level = 'error' 这样的比较、contains、MATCH 和 MATCH_TEXT,用 AND 和 OR 连接,用括号分组。不带字段的文本在 message 中搜索:
--where 接受针对数据流字段的 SQL 条件,与查询中 WHERE 子句的写法相同:
跟随新日志
- 每 2 秒读取一次;
--interval可以修改。 - 每次读取从上一次读取结束前 10 秒开始,晚几秒到达 MoleSignal 的日志也会出现,并且只出现一次。
- 一次读不完的突发日志会立即接着读,不再等待。
- 连接断开时会重试,等待时间逐次加长,最长 30 秒。断开与恢复会输出到标准错误。
--to 不能与 -f 一起使用。
查看某一时刻前后的日志
--around 输出某一时刻之前和之后紧挨着的日志,中间用一行标出这个时刻。-B 和 -A 设置条数,默认各 10 条,最多 250 条。-q 和 --where 可以缩小范围:
molesignal logs 的输出中复制的时间,可以直接作为 --around 的时刻。
对数据流执行 SQL
molesignal query 执行一条只读 SQL 语句,可以使用表达式、join 和聚合,并以表格输出结果:
FROM 后的第一个;--stream 可以指定另一个。时间窗默认是最近一小时,--since、--from 和 --to 可以修改。-n 设置最多输出的行数,默认 1000,最多 5000。--csv 输出带表头的 CSV,--json 每行输出一行 JSON,--web 在 日志 页面打开这条语句。
查看数据流的字段
--match 只保留包含某段文本的值,-n 设置条数,默认 20。--type 读取其他类型的数据流。
在管道中使用
--json 输出每条日志的全部字段:
head),命令也会安静地结束。
访问权限
命令行用 MoleSignal 的list_streams、query_logs、get_stream_schema、search_field_values 和 search_around 工具读取,使用登录用户或 API Token 所属者的权限。用户需要 streams.query,且组织的 Tool Policy 没有关闭这些工具。