Domain name for API request: teo.tencentcloudapi.com.
This API is used to create a real-time log delivery task. The following limits apply:
An entity (a Layer 7 domain name or a Layer 4 proxy instance) under the combination of the same data delivery type (LogType) and data delivery area (Area) can be added to only one real-time log delivery task. It is recommended to first query the real-time log delivery task list by entity through the DescribeRealtimeLogDeliveryTasks API to check whether the entity has been added to another real-time log delivery task.
A maximum of 20 requests can be initiated per second for this API.
The following request parameter list only provides API request parameters and some common parameters. For the complete common parameter list, see Common Request Parameters.
Parameter Name | Required | Type | Description |
---|---|---|---|
Action | Yes | String | Common Params. The value used for this API: CreateRealtimeLogDeliveryTask. |
Version | Yes | String | Common Params. The value used for this API: 2022-09-01. |
Region | No | String | Common Params. This parameter is not required. |
ZoneId | Yes | String | Zone ID. |
TaskName | Yes | String | Name of a real-time log shipping task, which can contain up to 200 characters, including digits, English letters, hyphens (-) and underscores (_). |
TaskType | Yes | String | Type of a real-time log shipping task. Valid values: |
EntityList.N | Yes | Array of String | List of entities (L7 domain names or L4 proxy instances) corresponding to a real-time log shipping task. Valid value examples: Reference for values DescribeAccelerationDomains DescribeApplicationProxies |
LogType | Yes | String | Data shipping type. Valid values: |
Area | Yes | String | Data shipping area. Valid values: |
Fields.N | Yes | Array of String | List of predefined fields for shipping. |
CustomFields.N | No | Array of CustomField | List of custom fields for shipping. It supports extracting specified field values from HTTP request headers, response headers, and cookies. The name of each custom field must be unique and the maximum number of fields is 200. |
DeliveryConditions.N | No | Array of DeliveryCondition | Filter criteria of log shipping. If this parameter is not input, all logs will be shipped. |
Sample | No | Integer | Sampling ratio in permille. Value range: 1-1000. For example, 605 indicates a sampling ratio of 60.5%. If this parameter is not input, the sampling ratio is 100%. |
LogFormat | No | LogFormat | Output format for log delivery. If this field is not specified, the default format is used, which works as follows: |
CLS | No | CLSTopic | Configuration information of CLS. This parameter is required when TaskType is cls. |
CustomEndpoint | No | CustomEndpoint | Configuration information of the custom HTTP service. This parameter is required when TaskType is custom_endpoint. |
S3 | No | S3 | Configuration information of the AWS S3-compatible bucket. This parameter is required when TaskType is s3. |
Parameter Name | Type | Description |
---|---|---|
TaskId | String | ID of the successfully created task. |
RequestId | String | The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. |
This example shows you how to create a log delivery task with the destination set to Tencent Cloud CLS. The delivery data range includes the site acceleration log generated by domain.example.com in the Chinese mainland. The data includes the RequestID, ClientIP, and RequestTime fields, and field values extracted from the Accept-Language request header. The configuration sampling ratio is 60.5%.
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRealtimeLogDeliveryTask
<Common request parameters>
{
"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"
}
}
This example shows you how to create a log delivery task with the destination set to a custom HTTP service. The delivery data range includes the site acceleration log generated by domain.example.com in the Chinese mainland and with the final security handling method being interception or challenge. The data includes the RequestID, ClientIP, and RequestTime fields. Log sampling is disabled, log delivery compression is enabled, and the custom request header Vendor with a constant value of EdgeOne is carries during log delivery.
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRealtimeLogDeliveryTask
<Common request parameters>
{
"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"
}
}
TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.
The following only lists the error codes related to the API business logic. For other error codes, see Common Error Codes.
Error Code | Description |
---|---|
FailedOperation | Operation failed. |
FailedOperation.CreateClsLogSetFailed | Failed to create the log set. Check whether the log set name already exists. |
FailedOperation.CreateClsLogTopicTaskFailed | Failed to create the log topic task. Check whether the log topic name or task name already exists. |
FailedOperation.CreateLogTopicTaskAuthFailure | Authentication failed while creating a custom push task. Check whether the push address is correct. |
FailedOperation.RealtimeLogAuthFailure | The real-time log authentication failed. |
FailedOperation.RealtimeLogNotFound | The real-time log push task does not exist. |
InvalidParameter | Parameter error. |
InvalidParameter.InvalidLogFormatFieldDelimiter | The field separator in the log output format is incorrect. |
InvalidParameter.InvalidLogFormatFormatType | The log output format type is incorrect. |
InvalidParameter.InvalidLogFormatRecordDelimiter | The log record separator in the log output format is incorrect. |
InvalidParameter.RealtimeLogEntityAlreadyCreated | The push instance has been created. |
InvalidParameter.RealtimeLogInvalidDeliveryArea | The log push region is invalid. |
InvalidParameter.RealtimeLogInvalidLogType | The log push type is invalid. |
InvalidParameter.RealtimeLogInvalidTaskType | The real-time log delivery type is invalid. |
InvalidParameter.RealtimeLogNumsExceedLimit | The real-time log push task data exceeded the limit. |
InvalidParameterValue | Invalid parameter value. |
LimitExceeded | The quota limit has been reached. |
OperationDenied | Operation denied. |
ResourceNotFound | The resource doesn’t exist. |
ResourceUnavailable | The resource is unavailable. |
UnauthorizedOperation.NoPermission | The sub-account is not authorized for the operation. Please get permissions first. |
Was this page helpful?