检索分析日志

最近更新时间:2025-05-29 01:17:22

我的收藏

1. 接口描述

接口请求域名: cfw.tencentcloudapi.com 。

本接口用于检索分析日志,使用该接口时请注意如下事项:

  1. 该接口除受默认接口请求频率限制外,针对单个日志主题,查询并发数不能超过15。
  2. 检索语法建议使用日志服务专用检索语法CQL,请使用SyntaxRule参数,将值设置为1,控制台默认也使用该语法规则。
  3. API返回数据包最大49MB,建议启用 gzip 压缩(HTTP Request Header Accept-Encoding:gzip)。

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:SearchLog。
Version String 公共参数,本接口取值:2019-09-04。
Region String 公共参数,本接口不需要传递此参数。
From Integer 要检索分析的日志的起始时间,Unix时间戳(毫秒)
示例值:1608794854000
To Integer 要检索分析的日志的结束时间,Unix时间戳(毫秒)
示例值:1608794855000
Query String 检索分析语句,最大长度为12KB
语句由 [检索条件] | [SQL语句]构成,无需对日志进行统计分析时,可省略其中的管道符 | 及SQL语句
使用*或空字符串可查询所有日志
示例值:protocol:HTTP
SyntaxRule Integer 检索语法规则,默认值为0,推荐使用1 。

- 0:Lucene语法
- 1:CQL语法(日志服务专用检索语法,控制台默认也使用该语法规则)。

详细说明参见检索条件语法规则
示例值:1
TopicId String - 要检索分析的日志主题ID,仅能指定一个日志主题。
- 如需同时检索多个日志主题,请使用Topics参数。
- TopicId 和 Topics 不能同时使用,在一次请求中有且只能选择一个。
各日志主题ID如下
访问控制-互联网边界 cfw_rule_acl
访问控制-NAT边界 cfw_rule_nat_acl
访问控制-VPC边界 cfw_rule_vpc_acl
访问控制-DNS开关 cfw_rule_dns_acl
入侵防御 cfw_rule_threatinfo
全流量检测与响应日志-流量分析 cfw_netflow_nta
全流量检测与响应日志-流量告警 cfw_rule_ndr_threatinfo
零信任运维-数据库登录 cfw_operate_db
零信任运维-服务器访问 operate_remote_om
零信任运维-Web服务访问 operate_web_access
零信任运维-行为审计 remoteom_commands
流量日志-互联网边界 cfw_netflow_border
流量日志-NAT边界 cfw_netflow_nat
流量日志-VPC边界 cfw_netflow_vpc
流量日志-DNS开关 cfw_netflow_dns
流量日志-内网流量 cfw_netflow_fl
操作日志 operate_log_all
示例值:cfw_netflow_border
Topics.N Array of MultiTopicSearchInformation - 要检索分析的日志主题列表,最大支持50个日志主题。
- 检索单个日志主题时请使用TopicId。
- TopicId 和 Topics 不能同时使用,在一次请求中有且只能选择一个。
Sort String 原始日志是否按时间排序返回;可选值:asc(升序)、desc(降序),默认为 desc
注意:
* 仅当检索分析语句(Query)不包含SQL时有效
* SQL结果排序方式参考SQL ORDER BY语法
示例值:asc
Limit Integer 表示单次查询返回的原始日志条数,默认为100,最大值为1000。
注意:
* 仅当检索分析语句(Query)不包含SQL时有效
* SQL结果条数指定方式参考SQL LIMIT语法

可通过两种方式获取后续更多日志:
* Context:透传上次接口返回的Context值,获取后续更多日志,总计最多可获取1万条原始日志
* Offset:偏移量,表示从第几行开始返回原始日志,无日志条数限制
示例值:100
Offset Integer 查询原始日志的偏移量,表示从第几行开始返回原始日志,默认为0。
注意:
* 仅当检索分析语句(Query)不包含SQL时有效
* 不能与Context参数同时使用
* 仅适用于单日志主题检索
示例值:0
Context String 透传上次接口返回的Context值,可获取后续更多日志,总计最多可获取1万条原始日志,过期时间1小时。
注意:
* 透传该参数时,请勿修改除该参数外的其它参数
* 仅适用于单日志主题检索,检索多个日志主题时,请使用Topics中的Context
* 仅当检索分析语句(Query)不包含SQL时有效,SQL获取后续结果参考SQL LIMIT语法
示例值:Y29udGV4dC04MjMzNWRkMi01YmMxLTQ4NGYtYjQ4MS04MDg0NzAwYjQ1NDUxNjcy
SamplingRate Float 执行统计分析(Query中包含SQL)时,是否对原始日志先进行采样,再进行统计分析。
0:自动采样;
0~1:按指定采样率采样,例如0.02;
1:不采样,即精确分析
默认值为1
示例值:0.1
UseNewAnalysis Boolean 为true代表使用新的检索结果返回方式,输出参数AnalysisRecords和Columns有效
为false时代表使用老的检索结果返回方式, 输出AnalysisResults和ColNames有效
两种返回方式在编码格式上有少量区别,建议使用true
示例值:false

3. 输出参数

参数名称 类型 描述
Context String 透传本次接口返回的Context值,可获取后续更多日志,过期时间1小时。
注意:
* 仅适用于单日志主题检索,检索多个日志主题时,请使用Topics中的Context
示例值:Y29udGV4dC04MjMzNWRkMi01YmMxLTQ4NGYtYjQ4MS04MDg0NzAwYjQ1NDUxNjcy
ListOver Boolean 符合检索条件的日志是否已全部返回,如未全部返回可使用Context参数获取后续更多日志
注意:仅当检索分析语句(Query)不包含SQL时有效
示例值:false
Analysis Boolean 返回的是否为统计分析(即SQL)结果
示例值:false
Results Array of LogInfo 匹配检索条件的原始日志
注意:此字段可能返回 null,表示取不到有效值。
ColNames Array of String 日志统计分析结果的列名
当UseNewAnalysis为false时生效
注意:此字段可能返回 null,表示取不到有效值。
示例值:["action"]
AnalysisResults Array of LogItems 日志统计分析结果
当UseNewAnalysis为false时生效
注意:此字段可能返回 null,表示取不到有效值。
AnalysisRecords Array of String 日志统计分析结果
当UseNewAnalysis为true时生效
注意:此字段可能返回 null,表示取不到有效值。
示例值:["xxx","yy"]
Columns Array of Column 日志统计分析结果的列属性
当UseNewAnalysis为true时生效
注意:此字段可能返回 null,表示取不到有效值。
SamplingRate Float 本次统计分析使用的采样率
注意:此字段可能返回 null,表示取不到有效值。
示例值:0.1
Topics SearchLogTopics 使用多日志主题检索时,各个日志主题的基本信息,例如报错信息。
注意:此字段可能返回 null,表示取不到有效值。
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 查询日志

查询http响应状态码(http_code)为200的日志

输入示例

POST / HTTP/1.1
Host: cls.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: SearchLog
<公共请求参数>

{
    "TopicId": "601c2a87-ca8e-49c9-xxxx-27286a970db5",
    "From": 1679901909686,
    "To": 1679902809686,
    "Query": "http_code:\"200\"",
    "Limit": 1,
    "Sort": "desc",
    "UseNewAnalysis": true,
    "SyntaxRule": 1
}

输出示例

{
    "Response": {
        "Context": "Y29udGV4dC0zZDVmZGI2NC1jNDZkLTQ2NzktYWM2OC1jYzg2NjUxYmVlMWExNjc5OTAyODEwNDM0",
        "ListOver": false,
        "Analysis": false,
        "ColNames": [],
        "Columns": [],
        "Results": [
            {
                "Time": 1679902806070,
                "TopicId": "601c2a87-ca8e-49c9-xxxx-27286a970db5",
                "TopicName": "CDN Demo访问日志日志主题_10000100xxxx",
                "Source": "",
                "FileName": "",
                "HostName": "",
                "PkgId": "",
                "PkgLogId": "",
                "LogJson": "{\"referer\":\"http://qwunsag.2022.qq.com/prizes?activity_code=AVGCHaQFX02Eb\",\"method\":\"GET\",\"isp\":\"中国联通\",\"remote_port\":\"45088\",\"ua\":\"Mozilla/5.0 (Linux; Android 9; INE-AL00 Build/HUAWEIINE-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/86.0.4240.99 XWEB/3211 MMWEBSDK/20210601 Mobile Safari/537.36 MMWEBID/6389 MicroMessenger/8.0.11.1980(0x28000B5B) Process/toolsmp WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64\",\"uuid\":\"acf1010c853f4a24bb3e92cc34e283e2\",\"version\":\"1\",\"file_size\":\"186358\",\"url\":\"/loxtxt/979884858.png\",\"request_range\":\"-\",\"rsp_size\":\"186830\",\"hit\":\"hit\",\"request_time\":\"2808\",\"http_code\":\"200\",\"param\":\"-\",\"sys_address\":\"9.130.154.208\",\"proto\":\"HTTPS\",\"host\":\"test.2022.cls.cn\",\"sys_datasource\":\"cq.3.4.v1.2.17\",\"client_ip\":\"116.116.247.167\",\"time\":\"1679902806070\",\"app_id\":\"1302700768\",\"prov\":\"内蒙古自治区\",\"timestamp\":\"2023-03-27T15:40:06+08:00\"}",
                "RawLog": "",
                "IndexStatus": ""
            }
        ],
        "AnalysisResults": [],
        "AnalysisRecords": [],
        "RequestId": "79f593e5-1374-4463-xxxx-c49d0b3c5290",
        "SamplingRate": 0
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation 操作失败。
FailedOperation.InvalidContext FailedOperation.InvalidContext
FailedOperation.QueryError FailedOperation.QueryError
FailedOperation.SearchTimeout FailedOperation.SearchTimeout
FailedOperation.SyntaxError FailedOperation.SyntaxError
FailedOperation.Timeout FailedOperation.Timeout
FailedOperation.TopicIsolated FailedOperation.TopicIsolated
InternalError 内部错误。
InternalError.SearchError InternalError.SearchError
InternalError.SearchFailed InternalError.SearchFailed
InternalError.ServerBusy InternalError.ServerBusy
InvalidParameter 参数错误。
LimitExceeded.LogSearch LimitExceeded.LogSearch
LimitExceeded.SearchResources LimitExceeded.SearchResources
LimitExceeded.SearchResultTooLarge LimitExceeded.SearchResultTooLarge
MissingParameter 缺少参数错误。
OperationDenied 操作被拒绝。
OperationDenied.AccountDestroy OperationDenied.AccountDestroy
OperationDenied.AccountIsolate OperationDenied.AccountIsolate
OperationDenied.AccountNotExists OperationDenied.AccountNotExists
OperationDenied.NewSyntaxNotSupported OperationDenied.NewSyntaxNotSupported
OperationDenied.OperationNotSupportInSearchLow OperationDenied.OperationNotSupportInSearchLow
ResourceNotFound.TopicNotExist ResourceNotFound.TopicNotExist