用于新建用户自定义的日志投递任务至SLS、HTTP、OSS、S3或Kafka等目标。
接口说明
本接口允许用户创建针对特定日志数据的投递任务,支持多种投递目标与详细的配置选项,包括但不限于 SLS 存储、HTTP 服务、阿里云 OSS、S3 兼容存储以及 Kafka 消息队列。用户可自定义任务名称、选择日志字段、指定数据中心、设置丢弃率、选择投递类型,并根据所选类型配置相应的投递详情。
- 字段筛选:通过
FieldName
指定需要投递的日志字段。 - 过滤规则:利用
FilterRules
实现日志数据的预处理过滤。 - 多样化投递:支持 SLS、HTTP(S)、阿里云 OSS、S3 兼容存储及 Kafka 等多种投递方式,每种方式有其特定的配置参数。
注意事项
- 确保提供的认证信息(如 AccessKey、SecretKey)具有足够的权限执行投递操作。
- 当选择加密或鉴权的投递方式时,正确配置相关的安全参数。
- 验证
FilterRules
语法正确性,确保过滤逻辑符合预期。 - 根据实际需求调整高级参数如重试次数、超时时间等,以优化投递效率与稳定性。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
esa:CreateUserDeliveryTask | create | *全部资源 * |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
BusinessType | string | 是 | 实时日志类型,取值:
| dcdn_log_access_l1 |
DataCenter | string | 是 | 数据中心。取值:
| cn |
TaskName | string | 是 | 任务名。 | test_project |
FieldName | string | 是 | 选择字段,以英文逗号分隔。 | user_agent,ip_address,ip_port |
DeliveryType | string | 是 | 投递类型:
| sls |
DiscardRate | float | 否 | 丢弃率,不填则默认为 0。 | 0 |
S3Delivery | object | 否 | s3/s3 兼容投递配置参数。 | |
Region | string | 否 | 服务所在区域。 | cn-shanghai |
BucketPath | string | 否 | Bucket 存储路径。 | logriver-test/log |
AccessKey | string | 否 | s3 账号使用的 AccessKey ID。 | g0f46623ll0g0 |
SecretKey | string | 否 | s3 账号使用的 SecretKey ID。 | *** |
Endpoint | string | 否 | S3 endpoint 地址。 | https://s3.oss-cn-hangzhou.aliyuncs.com |
PrefixPath | string | 否 | 存储路径前缀。 | logriver-test/log |
S3Cmpt | boolean | 否 | 是否为 s3 兼容。 | true |
OssDelivery | object | 否 | Oss 投递配置参数。 | |
Region | string | 否 | Oss 区域。 | cn-hangzhou |
Aliuid | string | 否 | 阿里云账号 ID。 | 1234*** |
BucketName | string | 否 | Bucket 名称。 | test_rlog |
PrefixPath | string | 否 | Oss 存储路径前缀。 | test/ |
HttpDelivery | object | 否 | Http 投递配置参数。 | |
DestUrl | string | 否 | http 服务器投递地址。 | http://xxx.aliyun.com/v1/log/upload |
StandardAuthOn | boolean | 否 | 是否使用标态鉴权。 | true |
StandardAuthParam | object | 否 | 标态鉴权参数。 | |
PrivateKey | string | 否 | 密钥。 | xxxx |
ExpiredTime | integer | 否 | 过期时间。 | 300 |
UrlPath | string | 否 | URL 路径。 | v1/log/upload |
MaxBatchSize | long | 否 | 单次投递最大条数。 | 1000 |
MaxBatchMB | long | 否 | 单次投递最大字节数,单位为 MB。 | 5 |
MaxRetry | long | 否 | 最大重试次数。 | 3 |
TransformTimeout | long | 否 | 超时等待时间,单位为秒。 | 10 |
LogBodyPrefix | string | 否 | 日志投递包前缀。 | cdnVersion:1.0 |
LogBodySuffix | string | 否 | 日志投递包尾缀。 | cdnVersion:1.0 |
MinBackoffMS | long | 否 | 最小回退时间,单位 ms。 | 100 |
MaxBackoffMS | long | 否 | 最大回退时间,单位 ms。 | 1000 |
Compress | string | 否 | 压缩方式。 | gzip |
LogSplit | string | 否 | 是否开启日志分割,默认为 true。 | true |
LastLogSplit | string | 否 | 末尾分隔符。 | \n |
LogSplitWords | string | 否 | 日志分隔符。 | \n |
ResponseBodyKey | string | 否 | 响应体中,判断成功的字段 key。 | err_code |
SuccessCode | long | 否 | 自定义成功状态码。 | 200 |
HeaderParam | object | 否 | 自定义 Header 头。 | |
object | 否 | 自定义 Header 头名称。 | ||
StaticValue | string | 否 | 自定义 Header 头值。 | aliyun |
QueryParam | object | 否 | 自定义请求参数。 | |
object | 否 | 自定义请求参数名称。 | ||
StaticValue | string | 否 | 自定义请求参数值。 | v1.1 |
KafkaDelivery | object | 否 | Kafka 投递配置参数。 | |
Topic | string | 否 | Kafka 消息主题。 | dqc_test2 |
UserAuth | boolean | 否 | 是否开启用户鉴权。 | true |
MachanismType | string | 否 | 加密方式。 | plain |
UserName | string | 否 | 加密用户名。 | xxx |
Password | string | 否 | 加密密码。 | xxx |
Brokers | array | 否 | 服务器数组。 | |
string | 否 | Kafka broker 服务器列表。 | 192.168.0.1:9902 | |
Compress | string | 否 | 压缩方式,默认不压缩。 | lz4 |
Balancer | string | 否 | 负载均衡方式。 | kafka.LeastBytes |
SlsDelivery | object | 否 | SLS 投递配置。 | |
SLSRegion | string | 否 | 日志服务(SLS)所在区域。 | cn-hangzhou |
SLSProject | string | 否 | 日志服务(SLS) Project 名称。 | dcdn-test20240417 |
SLSLogStore | string | 否 | 日志服务(SLS) LogStore 名称。 | accesslog-test |
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "2CCD40B1-3F20-5FF0-8A67-E3F34B87744F",
"TaskName": "er-http",
"DataCenter": "cn",
"Status": "online"
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InternalError | An internal exception occurred, please try again later. | 触发内部异常,请稍后再试。 |
400 | InvalidParameter | Invalid parameter. Check the parameter configuration. | 参数正确性校验失败,请检查的参数内容。 |
403 | ErService.NotOpen | Er service has not opend. | 您没有开通边缘函数服务。 |
403 | RealTimeLog.S3EndpointInvalidError | Invalid S3 information for the delivery task. Check your configurations and try again. | 您投递的S3地址不正确,请检查投递地址后重试。 |
403 | RealTimeLog.KafkaBrokersExceedError | The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50). | 您可投递的实时日志Kafka Broker服务器地址数量超过上限(最高为50个)。 |
403 | RealTimeLog.StatusQuotaError | The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase. | 您的实时日志可投递数量已达到套餐上限,请查看您的套餐配额,并升级您的套餐获得更多实时日志投递配额。 |
403 | EsaService.NotOpen | ESA service has not opend. | 边缘安全加速服务(ESA)未开通 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-10-18 | OpenAPI 错误码发生变更 | 查看变更详情 |
2024-09-27 | OpenAPI 错误码发生变更 | 查看变更详情 |
2024-09-24 | OpenAPI 错误码发生变更 | 查看变更详情 |