You need to enable JavaScript to run this app.
导航
CreateImportTask
最近更新时间:2024.11.22 11:13:39首次发布时间:2024.09.20 18:36:41

调用 CreateImportTask 接口创建数据导入任务。

请求说明

  • 请求方式:POST
  • 请求地址:https://tls-{Region}.ivolces.com/CreateImportTask

请求参数

下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数

Body

参数类型是否必选示例值描述
DescriptionStringthis is a task数据导入任务描述。
ImportSourceInfoObject of ImportSourceInfo/数据导入任务的导入源端信息。
ProjectIDStringfc69****用于存储数据的日志项目 ID。

SourceType

String

tos

导入源端类型。可选值:

  • tos:导入 TOS 数据。
  • kafka:导入 Kafka 数据。
TargetInfoObject of TargetInfo/数据导入任务的输出端信息。
TaskNameStringtask-name-1数据导入任务名称。
TopicIDStringfa************用于存储数据的日志主题 ID。

ImportSourceInfo

参数类型是否必选示例值描述

TosSourceInfo

Object of TosSourceInfo

/

TOS 导入源端信息。
sourceTypetos 时,TosSourceInfo 字段为必填。

KafkaSourceInfo

Object of KafkaSourceInfo

/

Kafka 导入源端信息。
sourceTypekafka 时,KafkaSourceInfo 字段为必填。

TargetInfo

参数类型是否必选示例值描述
RegionStringcn-shanghai地域 ID。

LogType

String

json_log

导入时指定日志解析类型。

  • delimiter_log:分隔符类型。
  • minimalist_log:单行全文类型。
  • json_log:JSON 类型。
ExtractRuleObject of ExtractRule/日志提取规则。

TosSourceInfo

参数类型是否必选示例值描述
bucketStringimport01日志文件所在的 TOS 存储桶。
prefixStringaccesslog/待导入的文件在 TOS 存储桶中的路径。
regionStringcn-shanghaiTOS 存储桶所在的地域。支持跨地域导入数据。

compress_type

String

snappy

TOS 存储桶中数据的压缩模式。

  • none:无压缩
  • snappy:使用 snappy 进行压缩。
  • gzip:使用 gzip 进行压缩。
  • lz4:使用 lz4 进行压缩。

KafkaSourceInfo

参数类型是否必选示例值描述

host

String

kafka-cnngc7an0qpv****.kafka.ivolces.com:9092

不同类型的 Kafka 集群对应的服务地址不同,详细说明如下:

  • 火山引擎消息队列 Kafka 版:Kafka 实例的接入点,详细说明请参考查看接入点
    如果 Kafka 实例与日志服务 Project 属于同一地域,可使用私网访问,否则需使用公网访问。
  • 自建的 Kafka 集群:Kafka Broker 的 IP 地址和端口号或者域名和端口号。仅支持公网访问。
    多个服务地址之间需使用半角逗号(,)分隔。
groupStringmygroupKafka 消费组。如果不填,系统将自动创建 Kafka 消费组。
topicStringtestKafka Topic 名称。 多个 Kafka Topic 之间应使用半角逗号(,)分隔。
encodeStringUTF-8数据的编码格式。可选值包括 UTF-8、GBK。
passwordString/用于身份认证的 Kafka SASL 用户密码。
protocolStringplaintext安全传输协议,可选值包括 plaintext、sasl_ssl、ssl 和 sasl_plaintext。
usernameString/用于身份认证的 Kafka SASL 用户名。
mechanismStringPLAIN密码认证机制,可选值包括 PLAIN、SCRAM-SHA-256 和 SCRAM-SHA-512。
instance_idStringkafka-cnngbnntswg1****当您使用的是火山引擎消息队列 Kafka 版时,应设置为 Kafka 实例 ID。
is_need_authBooleantrue是否开启鉴权。如果您使用的是公网服务地址,建议开启鉴权。

initial_offset

Integer

/

数据导入的起始位置。可选值:

  • 0:最早时间,即从指定的 Kafka Topic 中的第一条数据开始导入。
  • 1:最近时间,即从指定的 Kafka Topic 中最新生成的数据开始导入。

time_source_default

Integer

/

指定日志时间。可选值:

  • 0:使用 Kafka 消息时间戳。
  • 1:使用系统当前时间。

ExtractRule

参数类型是否必选示例值描述

Keys

Array of String

[
"time",
"",
"level",
"msg"
]

日志字段名称(Key)列表。

  • 当且仅当 LogType 为 delimiter_log 或 fullregex_log 时有效。
  • 支持配置最多 100 个字段名称。
  • 当 LogType 为 delimiter_log时,不能配置重复的字段名称,不能指定全部字段名称为空。
  • 当 LogType 为 fullregex_log 时,不能配置重复的字段名称,不能指定字段名称为空。
QuoteString"引用符。被引用符包裹的内容不会被分隔而是会被解析为一个完整的字段。当且仅当 LogType 为 delimiter_log 时有效。

TimeKey

String

request_time

日志时间字段的字段名称。如果将日志中的指定时间字段作为日志时间戳,则需要填写 TimeKey 和 TimeFormat。

TimeKey 和 TimeFormat 必须成对出现。

LogRegex

String

[(\d+-\d+-\w+:\d+:\d+,\d+)]\s[(\w+)]\s(.*)

整条日志需要匹配的正则表达式。

  • 当且仅当采集的日志类型为 fullregex_log 时有效。
  • 必须是合法的正则表达式。

TimeZone

String

GMT+08:00

时区,支持机器时区(默认)和自定义时区。其中,自定义时区支持 GMT 和 UTC。

  • GMT 格式:GMT+08:00。
  • UTC 格式:Asia/Shanghai。
DelimiterString#日志分隔符。当且仅当 LogType 为 delimiter_log 时有效。

TimeFormat

String

%Y-%m-%dT%H:%M:%S,%f

时间字段的解析格式。如果将日志中的指定时间字段作为日志时间戳,则需要填写 TimeKey 和 TimeFormat。

  • TimeKey 和 TimeFormat 必须成对出现。
  • 如何配置时间格式,请参考时间格式

SkipLineCount

Integer

2

跳过的日志行数。例如设置为 1,则导入日志时,将从 CSV 文件的第 2 行开始导入。
当且仅当采集的日志类型为 delimiter_log 且导入类型为 tos 时有效。

UnMatchLogKey

String

LogParseFailed

当上传解析失败的日志时,解析失败的日志的 key 名称。

UnMatchUpLoadSwitch=true 和 UnMatchLogKey 必须成对出现。

TimeExtractRegexString[0-9]{0,2}\/[0-9a-zA-Z]+\/[0-9:,]+提取时间的正则表达式,用于提取 TimeKey 字段中的时间值并解析为对应的采集时间。

UnMatchUpLoadSwitch

Boolean

true

是否上传解析失败的日志。UnMatchUpLoadSwitch=true 和 UnMatchLogKey 必须成对出现。

  • true:上传解析失败的日志。
  • false:不上传解析失败的日志。

返回参数

下表仅列出本接口特有的返回参数。更多信息请参见返回结构

参数类型示例值描述
TaskIdStringfa************导入任务 ID。

请求示例

POST https://tls-{Region}.ivolces.com/CreateImportTask HTTP/1.1
Content-Type: application/json
{
    "TopicID": "5123c4b3-****",
    "TaskName": "import-example",
    "SourceType": "tos",
    "ImportSourceInfo": {
        "TosSourceInfo": {
            "bucket": "tos-import-logs",
            "compress_type": "none",
            "prefix": "test/timeJson.txt",
            "region": "cn-shanghai"
        }
    },
    "TargetInfo": {
        "Region": "cn-shanghai",
        "LogType": "json_log",
        "ExtractRule": {
            "UnMatchUpLoadSwitch": true,
            "UnMatchLogKey": "LogParseFailed",
            "TimeKey": "__time__",
            "TimeFormat": "%F",
            "TimeZone": "Asia/Shanghai"
        }
    }
}

返回示例

{"TaskId":"841c3908-09e8-4811-bdb4-2b77dd4****"}

错误码

您可访问公共错误码,获取更多错误码信息。