本文以查询和分析JSON类型的网站日志为例,帮助您快速上手JSON日志的查询和分析操作。
前提条件
已采集JSON日志。具体操作,请参见使用极简模式采集日志。注意事项
在查询和分析JSON日志中的字段时,需注意以下事项:
- 查询和分析语句格式为
查询语句|分析语句
。在分析语句中,您必须使用双引号("")包裹字段名称,使用单引号('')包裹字符串。 - 您需为目标字段加上所有的父路径,格式为KEY1.KEY2.KEY3。例如content.request.request_length。
- 日志服务支持查询和分析JSON对象中的叶子节点,但不支持查询和分析包含叶子节点的子节点。
- 日志服务不支持查询和分析值为JSON数组的字段,也不支持查询和分析JSON数组中的字段。
步骤一:创建索引
步骤二:查询日志
您可以在Logstore的查询和分析页面,输入查询语句,选择时间范围,进行日志查询操作。
- 查询请求状态为200的日志。
content.status:200
- 查询请求长度大于70的日志。
content.request.request_length > 70
- 查询GET请求的日志。
content.request.request_method:GET
步骤三:分析日志
您可以在Logstore的查询和分析页面,输入查询和分析语句,选择时间范围,进行日志分析操作。
- 统计不同请求状态对应的日志数量。
* | SELECT "content.status", COUNT(*) AS PV GROUP BY "content.status"
- 计算不同请求时长对应的请求数量,并按照请求时长进行升序排序。
* | SELECT "content.time.request_time", COUNT(*) AS count GROUP BY "content.time.request_time" ORDER BY "content.time.request_time"
- 计算不同请求方法对应的平均请求时长。
* | SELECT avg("content.time.request_time") AS avg_time,"content.request.request_method" GROUP BY "content.request.request_method"
参考信息:日志样例
JSON日志样例如下所示:
