有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

1. 接口描述

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

通过本接口创建实时日志投递任务。本接口有如下限制:
同一个实体(七层域名或者四层代理实例)在同种数据投递类型(LogType)和数据投递区域(Area)的组合下,只能被添加到一个实时日志投递任务中。建议先通过 DescribeRealtimeLogDeliveryTasks 接口根据实体查询实时日志投递任务列表,检查实体是否已经被添加到另一实时日志投递任务中。

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

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

2. 输入参数

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

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateRealtimeLogDeliveryTask。
Version String 公共参数,本接口取值:2022-09-01。
Region String 公共参数,此参数为可选参数。
ZoneId String 站点 ID。
TaskName String 实时日志投递任务的名称,格式为数字、英文、-和_组合,最多 200 个字符。
TaskType String 实时日志投递任务类型,取值有:
  • cls: 推送到腾讯云 CLS;
  • custom_endpoint:推送到自定义 HTTP(S) 地址;
  • s3:推送到 AWS S3 兼容存储桶地址。
  • EntityList.N Array of String 实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下:
  • 七层域名:domain.example.com;
  • 四层代理实例:sid-2s69eb5wcms7。

  • 取值可参考:
    查询应用代理列表(旧)
    查询加速域名列表
    LogType String 数据投递类型,取值有:
  • domain:站点加速日志;
  • application:四层代理日志;
  • web-rateLiming:速率限制和 CC 攻击防护日志;
  • web-attack:托管规则日志;
  • web-rule:自定义规则日志;
  • web-bot:Bot管理日志。
  • Area String 数据投递区域,取值有:
  • mainland:中国大陆境内;
  • overseas:全球(不含中国大陆)。
  • Fields.N Array of String 投递的预设字段列表。
    CustomFields.N Array of CustomField 投递的自定义字段列表,支持在 HTTP 请求头、响应头、Cookie 中提取指定字段值。自定义字段名称不能重复,且最多不能超过 200 个字段。
    DeliveryConditions.N Array of DeliveryCondition 日志投递的过滤条件,不填表示投递全量日志。
    Sample Integer 采样比例,采用千分制,取值范围为1-1000,例如:填写 605 表示采样比例为 60.5%。不填表示采样比例为 100%。
    LogFormat LogFormat 日志投递的输出格式。不填表示为默认格式,默认格式逻辑如下:
  • 当 TaskType 取值为 custom_endpoint 时,默认格式为多个 JSON 对象组成的数组,每个 JSON 对象为一条日志;
  • 当 TaskType 取值为 s3 时,默认格式为 JSON Lines;
  • 特别地,当 TaskType 取值为 cls 时,LogFormat.FormatType 的值只能为 json,且 LogFormat 中其他参数将被忽略,建议不传 LogFormat。
    CLS CLSTopic CLS 的配置信息。当 TaskType 取值为 cls 时,该参数必填。
    CustomEndpoint CustomEndpoint 自定义 HTTP 服务的配置信息。当 TaskType 取值为 custom_endpoint 时,该参数必填。
    S3 S3 AWS S3 兼容存储桶的配置信息。当 TaskType 取值为 s3 时,该参数必填。

    3. 输出参数

    参数名称 类型 描述
    TaskId String 创建成功的任务ID。
    RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

    4. 示例

    示例1 创建目的地为腾讯云 CLS 的日志投递任务

    创建目的地为腾讯云 CLS 的日志投递任务,投递数据范围为 domain.example.com 在中国大陆境内产生的站点加速日志,包含字段有 RequestID、ClientIP、RequestTime 以及从 Accept-Language 请求头中提取的字段值,配置采样比例为 60.5%。

    输入示例

    POST / HTTP/1.1
    Host: teo.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateRealtimeLogDeliveryTask
    <公共请求参数>
    
    {
        "ZoneId": "zone-xxxxx",
        "TaskName": "test_log_task",
        "TaskType": "cls",
        "EntityList": [
            "domain.example.com"
        ],
        "LogType": "domain",
        "Area": "mainland",
        "Fields": [
            "RequestID",
            "ClientIP",
            "RequestTime"
        ],
        "CustomFields": [
            {
                "Name": "ReqHeader",
                "Value": "Accept-Language",
                "Enabled": true
            }
        ],
        "Sample": 605,
        "CLS": {
            "LogSetId": "1a6efff1-0e40-4d37-a4ed-02c92513406b",
            "TopicId": "0b3a07c0-5cf6-4017-8a75-cd4459aea588",
            "LogSetRegion": "ap-guangzhou"
        }
    }

    输出示例

    {
        "Response": {
            "TaskId": "26580056-1187-43ed-b2c7-ecdb5bae0b46",
            "RequestId": "5e0a2b4e-df6d-4d2a-ac39-1706cbf8a703"
        }
    }

    示例2 创建目的地为自定义 HTTP 服务的日志投递任务

    创建目的地为自定义 HTTP 服务的日志投递任务,投递数据范围为 domain.example.com 在中国大陆境内产生的、请求最终安全处置方式为拦截或挑战的站点加速日志,包含字段有 RequestID、ClientIP、RequestTime,不开启日志采样,开启日志投递压缩,并且在投递日志时携带自定义请求头 Vendor,值固定为 EdgeOne。

    输入示例

    POST / HTTP/1.1
    Host: teo.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateRealtimeLogDeliveryTask
    <公共请求参数>
    
    {
        "ZoneId": "zone-xxxxx",
        "TaskName": "test_log_task",
        "TaskType": "custom_endpoint",
        "EntityList": [
            "domain.example.com"
        ],
        "LogType": "domain",
        "Area": "mainland",
        "Fields": [
            "RequestID",
            "ClientIP",
            "RequestTime"
        ],
        "Sample": 1000,
        "DeliveryConditions": [
            {
                "Conditions": [
                    {
                        "Key": "SecurityAction",
                        "Operator": "equal",
                        "Value": [
                            "Deny",
                            "JSChallenge",
                            "ManagedChallenge"
                        ]
                    }
                ]
            }
        ],
        "CustomEndpoint": {
            "Url": "http://custom_endpoint/access_log/post",
            "CompressType": "gzip",
            "Headers": [
                {
                    "Name": "Vendor",
                    "Value": "EdgeOne"
                }
            ]
        }
    }

    输出示例

    {
        "Response": {
            "TaskId": "26580056-1187-43ed-b2c7-ecdb5bae0b46",
            "RequestId": "5e0a2b4e-df6d-4d2a-ac39-1706cbf8a703"
        }
    }

    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.CreateClsLogSetFailed 创建日志集失败,请检查日志集名是否已存在。
    FailedOperation.CreateClsLogTopicTaskFailed 创建日志主题任务失败,请检查日志主题名或任务名是否已存在。
    FailedOperation.CreateLogTopicTaskAuthFailure 创建自定义推送任务认证失败, 请检查推送地址是否正确。
    FailedOperation.RealtimeLogAuthFailure 实时日志认证失败
    FailedOperation.RealtimeLogNotFound 实时日志推送任务不存在
    InvalidParameter 参数错误。
    InvalidParameter.InvalidLogFormatFieldDelimiter 日志输出格式的字段分隔符不正确
    InvalidParameter.InvalidLogFormatFormatType 日志输出格式类型不正确
    InvalidParameter.InvalidLogFormatRecordDelimiter 日志输出格式的日志记录分隔符不正确
    InvalidParameter.RealtimeLogEntityAlreadyCreated 推送实例已经创建
    InvalidParameter.RealtimeLogInvalidDeliveryArea 日志推送地域不合法
    InvalidParameter.RealtimeLogInvalidLogType 日志推送类型不合法
    InvalidParameter.RealtimeLogInvalidTaskType 实时日志数据投递类型不合法
    InvalidParameter.RealtimeLogNumsExceedLimit 实时日志推送任务数据超过了限制
    InvalidParameterValue 参数取值错误。
    LimitExceeded 超过配额限制。
    OperationDenied 操作被拒绝。
    ResourceNotFound 资源不存在。
    ResourceUnavailable 资源不可用。
    UnauthorizedOperation.NoPermission 子账户没有操作权限,请添加权限后继续操作。