tencentcloud-sdk-nodejs 4.0.692 → 4.0.693

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/CHANGELOG.md +271 -0
  2. package/SERVICE_CHANGELOG.md +367 -97
  3. package/package.json +1 -1
  4. package/products.md +18 -18
  5. package/src/common/sdk_version.ts +1 -1
  6. package/src/services/apm/v20210622/apm_client.ts +17 -0
  7. package/src/services/apm/v20210622/apm_models.ts +187 -0
  8. package/src/services/asr/v20190614/asr_models.ts +5 -5
  9. package/src/services/cam/v20190116/cam_models.ts +1 -1
  10. package/src/services/car/v20220110/car_client.ts +28 -16
  11. package/src/services/car/v20220110/car_models.ts +24 -0
  12. package/src/services/cdb/v20170320/cdb_models.ts +11 -6
  13. package/src/services/clb/v20180317/clb_models.ts +24 -24
  14. package/src/services/cls/v20201016/cls_client.ts +680 -656
  15. package/src/services/cls/v20201016/cls_models.ts +80 -0
  16. package/src/services/cpdp/v20190820/cpdp_client.ts +1 -13
  17. package/src/services/cpdp/v20190820/cpdp_models.ts +35 -113
  18. package/src/services/essbasic/v20210526/essbasic_models.ts +12 -7
  19. package/src/services/mps/v20190612/mps_models.ts +11 -0
  20. package/src/services/ocr/v20181119/ocr_models.ts +9 -0
  21. package/src/services/tag/v20180813/tag_client.ts +4 -6
  22. package/src/services/tag/v20180813/tag_models.ts +60 -22
  23. package/src/services/thpc/v20230321/thpc_client.ts +5 -1
  24. package/src/services/thpc/v20230321/thpc_models.ts +119 -63
  25. package/src/services/trp/v20210515/trp_models.ts +60 -22
  26. package/tencentcloud/common/sdk_version.d.ts +1 -1
  27. package/tencentcloud/common/sdk_version.js +1 -1
  28. package/tencentcloud/services/apm/v20210622/apm_client.d.ts +5 -1
  29. package/tencentcloud/services/apm/v20210622/apm_client.js +6 -0
  30. package/tencentcloud/services/apm/v20210622/apm_models.d.ts +180 -0
  31. package/tencentcloud/services/asr/v20190614/asr_models.d.ts +5 -5
  32. package/tencentcloud/services/cam/v20190116/cam_models.d.ts +1 -1
  33. package/tencentcloud/services/car/v20220110/car_client.d.ts +11 -7
  34. package/tencentcloud/services/car/v20220110/car_client.js +15 -9
  35. package/tencentcloud/services/car/v20220110/car_models.d.ts +22 -0
  36. package/tencentcloud/services/cdb/v20170320/cdb_models.d.ts +11 -6
  37. package/tencentcloud/services/clb/v20180317/clb_models.d.ts +24 -24
  38. package/tencentcloud/services/cls/v20201016/cls_client.d.ts +334 -326
  39. package/tencentcloud/services/cls/v20201016/cls_client.js +420 -408
  40. package/tencentcloud/services/cls/v20201016/cls_models.d.ts +76 -0
  41. package/tencentcloud/services/cpdp/v20190820/cpdp_client.d.ts +1 -5
  42. package/tencentcloud/services/cpdp/v20190820/cpdp_client.js +0 -6
  43. package/tencentcloud/services/cpdp/v20190820/cpdp_models.d.ts +35 -111
  44. package/tencentcloud/services/essbasic/v20210526/essbasic_models.d.ts +12 -7
  45. package/tencentcloud/services/mps/v20190612/mps_models.d.ts +11 -0
  46. package/tencentcloud/services/ocr/v20181119/ocr_models.d.ts +9 -0
  47. package/tencentcloud/services/tag/v20180813/tag_client.d.ts +0 -2
  48. package/tencentcloud/services/tag/v20180813/tag_client.js +0 -2
  49. package/tencentcloud/services/tag/v20180813/tag_models.d.ts +60 -22
  50. package/tencentcloud/services/thpc/v20230321/thpc_models.d.ts +115 -63
  51. package/tencentcloud/services/trp/v20210515/trp_models.d.ts +60 -22
  52. package/test/apm.v20210622.test.js +10 -0
  53. package/test/car.v20220110.test.js +18 -8
  54. package/test/cls.v20201016.test.js +188 -168
  55. package/test/cpdp.v20190820.test.js +0 -10
@@ -28,315 +28,167 @@ class Client extends abstract_client_1.AbstractClient {
28
28
  super("cls.tencentcloudapi.com", "2020-10-16", clientConfig);
29
29
  }
30
30
  /**
31
- * 创建机器组
31
+ * 修改Kafka协议消费信息
32
32
  */
33
- async CreateMachineGroup(req, cb) {
34
- return this.request("CreateMachineGroup", req, cb);
33
+ async ModifyKafkaConsumer(req, cb) {
34
+ return this.request("ModifyKafkaConsumer", req, cb);
35
35
  }
36
36
  /**
37
- * 用于删除机器组信息
37
+ * 本接口用于创建Kafka数据订阅任务
38
38
  */
39
- async DeleteMachineGroupInfo(req, cb) {
40
- return this.request("DeleteMachineGroupInfo", req, cb);
39
+ async CreateKafkaRecharge(req, cb) {
40
+ return this.request("CreateKafkaRecharge", req, cb);
41
41
  }
42
42
  /**
43
- * 本接口用于获取告警任务历史
43
+ * 本接口用于获取日志下载任务列表
44
44
  */
45
- async GetAlarmLog(req, cb) {
46
- return this.request("GetAlarmLog", req, cb);
45
+ async DescribeExports(req, cb) {
46
+ return this.request("DescribeExports", req, cb);
47
47
  }
48
48
  /**
49
- * ## 提示
50
- 为了保障您日志数据的可靠性以及更高效地使用日志服务,建议您使用CLS优化后的接口[上传结构化日志](https://cloud.tencent.com/document/product/614/16873)。
51
-
52
- 同时我们给此接口专门优化定制了多个语言版本的SDK供您选择,SDK提供统一的异步发送、资源控制、自动重试、优雅关闭、感知上报等功能,使上报日志功能更完善,详情请参考[SDK采集](https://cloud.tencent.com/document/product/614/67157)。
53
-
54
- 同时云API上传日志接口也支持同步上传日志数据,如果您选择继续使用此接口请参考下文。
55
-
56
- ## 功能描述
57
-
58
- 本接口用于将日志写入到指定的日志主题。
59
-
60
- 日志服务提供以下两种模式:
61
-
62
- #### 负载均衡模式
63
-
64
- 系统根据当前日志主题下所有可读写的分区,遵循负载均衡原则自动分配写入的目标分区。该模式适合消费不保序的场景。
65
-
66
- #### 哈希路由模式
67
-
68
- 系统根据携带的哈希值(X-CLS-HashKey)将数据写入到符合范围要求的目标分区。例如,可以将某个日志源端通过 hashkey 与某个主题分区强绑定,这样可以保证数据在该分区上写入和消费是严格保序的。
69
-
70
-
71
-
72
- #### 输入参数(pb二进制流,位于body中)
73
-
74
- | 字段名 | 类型 | 位置 | 必须 | 含义 |
75
- | ------------ | ------- | ---- | ---- | ------------------------------------------------------------ |
76
- | logGroupList | message | pb | 是 | logGroup 列表,封装好的日志组列表内容,建议 logGroup 数量不要超过5个 |
77
-
78
- LogGroup 说明:
79
-
80
- | 字段名 | 是否必选 | 含义 |
81
- | ----------- | -------- | ------------------------------------------------------------ |
82
- | logs | 是 | 日志数组,表示有多个 Log 组成的集合,一个 Log 表示一条日志,一个 LogGroup 中 Log 个数不能超过10000 |
83
- | contextFlow | 否 | LogGroup 的唯一ID,需要使用上下文功能时传入。格式:"{上下文ID}-{LogGroupID}"。<br>上下文ID:唯一标识一个上下文(连续滚动的一系列日志文件,或者是需要保序的一系列日志),16进制64位整型字符串。<br>LogGroupID:连续递增的一串整型,16进制64位整型字符串。样例:"102700A66102516A-59F59"。 |
84
- | filename | 否 | 日志文件名 |
85
- | source | 否 | 日志来源,一般使用机器 IP 作为标识 |
86
- | logTags | 否 | 日志的标签列表 |
87
-
88
- Log 说明:
89
-
90
- | 字段名 | 是否必选 | 含义 |
91
- | -------- | -------- | ------------------------------------------------------------ |
92
- | time | 是 | 日志时间(Unix 格式时间戳),支持秒、毫秒,建议采用毫秒 |
93
- | contents | 否 | key-value 格式的日志内容,表示一条日志里的多个 key-value 组合 |
94
-
95
- Content 说明:
96
-
97
- | 字段名 | 是否必选 | 含义 |
98
- | ------ | -------- | ------------------------------------------------------------ |
99
- | key | 是 | 单条日志里某个字段组的 key 值,不能以`_`开头 |
100
- | value | 是 | 单条日志某个字段组的 value 值,单条日志 value 不能超过1MB,LogGroup 中所有 value 总和不能超过5MB |
101
-
102
- LogTag 说明:
103
-
104
- | 字段名 | 是否必选 | 含义 |
105
- | ------ | -------- | -------------------------------- |
106
- | key | 是 | 自定义的标签 key |
107
- | value | 是 | 自定义的标签 key 对应的 value 值 |
108
-
109
- ## PB 编译示例
110
-
111
- 本示例将说明如何使用官方 protoc 编译工具将 PB 描述文件 编译生成为 C++ 语言可调用的上传日志接口。
112
-
113
- > ?目前 protoc 官方支持 Java、C++、Python 等语言的编译,详情请参见 [protoc](https://github.com/protocolbuffers/protobuf)。
114
-
115
- #### 1. 安装 Protocol Buffer
116
-
117
- 下载 [Protocol Buffer](https://main.qcloudimg.com/raw/d7810aaf8b3073fbbc9d4049c21532aa/protobuf-2.6.1.tar.gz) ,解压并安装。示例版本为 protobuf 2.6.1,环境为 Centos 7.3 系统。 解压`protobuf-2.6.1.tar.gz`压缩包至`/usr/local`目录并进入该目录,执行命令如下:
118
-
119
- ```
120
- tar -zxvf protobuf-2.6.1.tar.gz -C /usr/local/ && cd /usr/local/protobuf-2.6.1
121
- ```
122
-
123
- 开始编译和安装,配置环境变量,执行命令如下:
124
-
125
- ```
126
- [root@VM_0_8_centos protobuf-2.6.1]# ./configure
127
- [root@VM_0_8_centos protobuf-2.6.1]# make && make install
128
- [root@VM_0_8_centos protobuf-2.6.1]# export PATH=$PATH:/usr/local/protobuf-2.6.1/bin
129
- ```
130
-
131
- 编译成功后,您可以使用以下命令查看版本:
132
-
133
- ```
134
- [root@VM_0_8_centos protobuf-2.6.1]# protoc --version
135
- liprotoc 2.6.1
136
- ```
137
-
138
- #### 2. 创建 PB 描述文件
139
-
140
- PB 描述文件是通信双方约定的数据交换格式,上传日志时须将规定的协议格式编译成对应语言版本的调用接口,然后添加到工程代码里,详情请参见 [protoc](https://github.com/protocolbuffers/protobuf) 。
141
-
142
- 以日志服务所规定的 PB 数据格式内容为准, 在本地创建 PB 消息描述文件 cls.proto。
143
-
144
- > !PB 描述文件内容不可更改,且文件名须以`.proto`结尾。
145
-
146
- cls.proto 内容(PB 描述文件)如下:
147
-
148
- ```
149
- package cls;
150
-
151
- message Log
152
- {
153
- message Content
154
- {
155
- required string key = 1; // 每组字段的 key
156
- required string value = 2; // 每组字段的 value
157
- }
158
- required int64 time = 1; // 时间戳,UNIX时间格式
159
- repeated Content contents = 2; // 一条日志里的多个kv组合
160
- }
161
-
162
- message LogTag
163
- {
164
- required string key = 1;
165
- required string value = 2;
166
- }
167
-
168
- message LogGroup
169
- {
170
- repeated Log logs = 1; // 多条日志合成的日志数组
171
- optional string contextFlow = 2; // 目前暂无效用
172
- optional string filename = 3; // 日志文件名
173
- optional string source = 4; // 日志来源,一般使用机器IP
174
- repeated LogTag logTags = 5;
175
- }
176
-
177
- message LogGroupList
178
- {
179
- repeated LogGroup logGroupList = 1; // 日志组列表
180
- }
181
- ```
182
-
183
- #### 3. 编译生成
184
-
185
- 此例中,使用 proto 编译器生成 C++ 语言的文件,在 cls.proto 文件的同一目录下,执行如下编译命令:
186
-
187
- ```
188
- protoc --cpp_out=./ ./cls.proto
189
- ```
190
-
191
- > ?`--cpp_out=./`表示编译成 cpp 格式并输出当前目录下,`./cls.proto`表示位于当前目录下的 cls.proto 描述文件。
192
-
193
- 编译成功后,会输出对应语言的代码文件。此例会生成 cls.pb.h 头文件和 [cls.pb.cc](http://cls.pb.cc) 代码实现文件,如下所示:
194
-
195
- ```
196
- [root@VM_0_8_centos protobuf-2.6.1]# protoc --cpp_out=./ ./cls.proto
197
- [root@VM_0_8_centos protobuf-2.6.1]# ls
198
- cls.pb.cc cls.pb.h cls.proto
199
- ```
200
-
201
- #### 4. 调用
202
-
203
- 将生成的 cls.pb.h 头文件引入代码中,调用接口进行数据格式封装。
49
+ * 本接口用于创建索引
204
50
  */
205
- async UploadLog(req, cb) {
206
- return this.request("UploadLog", req, cb);
51
+ async CreateIndex(req, cb) {
52
+ return this.request("CreateIndex", req, cb);
207
53
  }
208
54
  /**
209
- * 本接口用于创建投递任务
55
+ * 修改现有的投递规则,客户如果使用此接口,需要自行处理CLS对指定bucket的写权限。
210
56
  */
211
- async CreateConsumer(req, cb) {
212
- return this.request("CreateConsumer", req, cb);
57
+ async ModifyShipper(req, cb) {
58
+ return this.request("ModifyShipper", req, cb);
213
59
  }
214
60
  /**
215
- * 本接口用于获取kafka用户信息
61
+ * 获取采集规则配置
216
62
  */
217
- async DescribeKafkaUser(req, cb) {
218
- return this.request("DescribeKafkaUser", req, cb);
63
+ async DescribeConfigs(req, cb) {
64
+ return this.request("DescribeConfigs", req, cb);
219
65
  }
220
66
  /**
221
- * 本接口用于修改日志主题。
67
+ * 本接口用于删除日志集。
222
68
  */
223
- async ModifyTopic(req, cb) {
224
- return this.request("ModifyTopic", req, cb);
69
+ async DeleteLogset(req, cb) {
70
+ return this.request("DeleteLogset", req, cb);
225
71
  }
226
72
  /**
227
- * 本接口用于预览cos导入信息
73
+ * 删除应用到机器组的采集配置
228
74
  */
229
- async SearchCosRechargeInfo(req, cb) {
230
- return this.request("SearchCosRechargeInfo", req, cb);
75
+ async DeleteConfigFromMachineGroup(req, cb) {
76
+ return this.request("DeleteConfigFromMachineGroup", req, cb);
231
77
  }
232
78
  /**
233
- * 本接口用于获取cos导入配置
79
+ * 本接口用于删除数据加工任务
234
80
  */
235
- async DescribeCosRecharges(req, cb) {
236
- return this.request("DescribeCosRecharges", req, cb);
81
+ async DeleteDataTransform(req, cb) {
82
+ return this.request("DeleteDataTransform", req, cb);
237
83
  }
238
84
  /**
239
- * 本接口用于获取日志集信息列表。
85
+ * 本接口用于创建日志集,返回新创建的日志集的 ID。
240
86
  */
241
- async DescribeLogsets(req, cb) {
242
- return this.request("DescribeLogsets", req, cb);
87
+ async CreateLogset(req, cb) {
88
+ return this.request("CreateLogset", req, cb);
243
89
  }
244
90
  /**
245
- * 本接口用于修改Kafka数据订阅任务
91
+ * 本接口用于创建日志主题。
246
92
  */
247
- async ModifyKafkaRecharge(req, cb) {
248
- return this.request("ModifyKafkaRecharge", req, cb);
93
+ async CreateTopic(req, cb) {
94
+ return this.request("CreateTopic", req, cb);
249
95
  }
250
96
  /**
251
- * 本接口用于获取日志下载任务列表
97
+ * 该接口用于删除通知渠道组
252
98
  */
253
- async DescribeExports(req, cb) {
254
- return this.request("DescribeExports", req, cb);
99
+ async DeleteAlarmNotice(req, cb) {
100
+ return this.request("DeleteAlarmNotice", req, cb);
255
101
  }
256
102
  /**
257
- * 本接口用于修改索引配置,该接口除受默认接口请求频率限制外,针对单个日志主题,并发数不能超过1,即同一时间同一个日志主题只能有一个正在执行的索引配置修改操作。
258
-
103
+ * 获取告警历史,例如今天未恢复的告警
259
104
  */
260
- async ModifyIndex(req, cb) {
261
- return this.request("ModifyIndex", req, cb);
105
+ async DescribeAlertRecordHistory(req, cb) {
106
+ return this.request("DescribeAlertRecordHistory", req, cb);
262
107
  }
263
108
  /**
264
- * 新建投递到COS的任务,【!!!注意】使用此接口,需要检查是否配置了投递COS的角色和权限。如果没有配置,请参考文档投递权限查看和配置https://cloud.tencent.com/document/product/614/71623。
109
+ * 本接口用于删除Kafka数据订阅任务
265
110
  */
266
- async CreateShipper(req, cb) {
267
- return this.request("CreateShipper", req, cb);
111
+ async DeleteKafkaRecharge(req, cb) {
112
+ return this.request("DeleteKafkaRecharge", req, cb);
268
113
  }
269
114
  /**
270
- * 本接口用于获取索引配置信息
115
+ * 创建采集规则配置
271
116
  */
272
- async DescribeIndex(req, cb) {
273
- return this.request("DescribeIndex", req, cb);
117
+ async CreateConfig(req, cb) {
118
+ return this.request("CreateConfig", req, cb);
274
119
  }
275
120
  /**
276
- * 本接口用于获取主题分区列表。
121
+ * 查询指定时刻指标的最新值
277
122
  */
278
- async DescribePartitions(req, cb) {
279
- return this.request("DescribePartitions", req, cb);
123
+ async QueryMetric(req, cb) {
124
+ return this.request("QueryMetric", req, cb);
280
125
  }
281
126
  /**
282
- * 本接口用于创建索引
127
+ * 本接口用于获取日志主题列表,支持分页
283
128
  */
284
- async CreateIndex(req, cb) {
285
- return this.request("CreateIndex", req, cb);
129
+ async DescribeTopics(req, cb) {
130
+ return this.request("DescribeTopics", req, cb);
286
131
  }
287
132
  /**
288
- * 本接口用于获取定时SQL分析任务列表
133
+ * 本接口用于创建cos导入任务
289
134
  */
290
- async DescribeScheduledSqlInfo(req, cb) {
291
- return this.request("DescribeScheduledSqlInfo", req, cb);
135
+ async CreateCosRecharge(req, cb) {
136
+ return this.request("CreateCosRecharge", req, cb);
292
137
  }
293
138
  /**
294
- * 删除采集规则配置
139
+ * 本接口用于合并一个读写态的主题分区,合并时指定一个主题分区 ID,日志服务会自动合并范围右相邻的分区。
295
140
  */
296
- async DeleteConfig(req, cb) {
297
- return this.request("DeleteConfig", req, cb);
141
+ async MergePartition(req, cb) {
142
+ return this.request("MergePartition", req, cb);
298
143
  }
299
144
  /**
300
- * 本接口用于获取特殊采集配置,特殊采集配置应用于自建K8S环境的采集Agent
145
+ * 本接口用于删除定时SQL分析任务
301
146
  */
302
- async DescribeConfigExtras(req, cb) {
303
- return this.request("DescribeConfigExtras", req, cb);
147
+ async DeleteScheduledSql(req, cb) {
148
+ return this.request("DeleteScheduledSql", req, cb);
304
149
  }
305
150
  /**
306
- * 本接口用于校验Kafka服务集群是否可以正常访问
151
+ * 本接口仅创建下载任务,任务返回的下载地址,请用户调用DescribeExports查看任务列表。其中有下载地址CosPath参数。参考文档https://cloud.tencent.com/document/product/614/56449
307
152
  */
308
- async CheckRechargeKafkaServer(req, cb) {
309
- return this.request("CheckRechargeKafkaServer", req, cb);
153
+ async CreateExport(req, cb) {
154
+ return this.request("CreateExport", req, cb);
310
155
  }
311
156
  /**
312
- * 本接口用于修改投递任务
157
+ * 关闭Kafka协议消费
313
158
  */
314
- async ModifyConsumer(req, cb) {
315
- return this.request("ModifyConsumer", req, cb);
159
+ async CloseKafkaConsumer(req, cb) {
160
+ return this.request("CloseKafkaConsumer", req, cb);
316
161
  }
317
162
  /**
318
- * 本接口用于创建Kafka数据订阅任务
163
+ * 本接口用于修改索引配置,该接口除受默认接口请求频率限制外,针对单个日志主题,并发数不能超过1,即同一时间同一个日志主题只能有一个正在执行的索引配置修改操作。
164
+
319
165
  */
320
- async CreateKafkaRecharge(req, cb) {
321
- return this.request("CreateKafkaRecharge", req, cb);
166
+ async ModifyIndex(req, cb) {
167
+ return this.request("ModifyIndex", req, cb);
322
168
  }
323
169
  /**
324
- * 该接口用于创建通知渠道组。
170
+ * 本接口用于获取索引配置信息
325
171
  */
326
- async CreateAlarmNotice(req, cb) {
327
- return this.request("CreateAlarmNotice", req, cb);
172
+ async DescribeIndex(req, cb) {
173
+ return this.request("DescribeIndex", req, cb);
328
174
  }
329
175
  /**
330
- * 本接口用于删除投递配置
176
+ * 新建投递到COS的任务,【!!!注意】使用此接口,需要检查是否配置了投递COS的角色和权限。如果没有配置,请参考文档投递权限查看和配置https://cloud.tencent.com/document/product/614/71623。
331
177
  */
332
- async DeleteConsumer(req, cb) {
333
- return this.request("DeleteConsumer", req, cb);
178
+ async CreateShipper(req, cb) {
179
+ return this.request("CreateShipper", req, cb);
334
180
  }
335
181
  /**
336
- * 本接口用于修改告警策略。需要至少修改一项有效内容。
182
+ * 本接口用于修改投递任务
337
183
  */
338
- async ModifyAlarm(req, cb) {
339
- return this.request("ModifyAlarm", req, cb);
184
+ async ModifyConsumer(req, cb) {
185
+ return this.request("ModifyConsumer", req, cb);
186
+ }
187
+ /**
188
+ * 本接口用于删除投递配置
189
+ */
190
+ async DeleteConsumer(req, cb) {
191
+ return this.request("DeleteConsumer", req, cb);
340
192
  }
341
193
  /**
342
194
  * 删除机器组
@@ -345,306 +197,452 @@ cls.pb.cc cls.pb.h cls.proto
345
197
  return this.request("DeleteMachineGroup", req, cb);
346
198
  }
347
199
  /**
348
- * 重试失败的投递任务
200
+ * 本接口用于获取Kafka数据订阅任务
349
201
  */
350
- async RetryShipperTask(req, cb) {
351
- return this.request("RetryShipperTask", req, cb);
202
+ async DescribeKafkaRecharges(req, cb) {
203
+ return this.request("DescribeKafkaRecharges", req, cb);
352
204
  }
353
205
  /**
354
- * 本接口用于获取日志主题列表,支持分页
206
+ * 本接口用于获取告警策略列表。
355
207
  */
356
- async DescribeTopics(req, cb) {
357
- return this.request("DescribeTopics", req, cb);
208
+ async DescribeAlarms(req, cb) {
209
+ return this.request("DescribeAlarms", req, cb);
358
210
  }
359
211
  /**
360
- * 本接口用于删除日志集。
212
+ * 本接口用于获取cos导入配置
361
213
  */
362
- async DeleteLogset(req, cb) {
363
- return this.request("DeleteLogset", req, cb);
214
+ async DescribeCosRecharges(req, cb) {
215
+ return this.request("DescribeCosRecharges", req, cb);
364
216
  }
365
217
  /**
366
- * 获取投递到COS的任务配置信息
218
+ * 应用采集配置到指定机器组
367
219
  */
368
- async DescribeShippers(req, cb) {
369
- return this.request("DescribeShippers", req, cb);
220
+ async ApplyConfigToMachineGroup(req, cb) {
221
+ return this.request("ApplyConfigToMachineGroup", req, cb);
370
222
  }
371
223
  /**
372
- * 修改机器组
224
+ * 本接口用于构建日志数量直方图
373
225
  */
374
- async ModifyMachineGroup(req, cb) {
375
- return this.request("ModifyMachineGroup", req, cb);
226
+ async DescribeLogHistogram(req, cb) {
227
+ return this.request("DescribeLogHistogram", req, cb);
376
228
  }
377
229
  /**
378
- * 删除应用到机器组的采集配置
230
+ * 该接口用于修改通知渠道组
379
231
  */
380
- async DeleteConfigFromMachineGroup(req, cb) {
381
- return this.request("DeleteConfigFromMachineGroup", req, cb);
232
+ async ModifyAlarmNotice(req, cb) {
233
+ return this.request("ModifyAlarmNotice", req, cb);
382
234
  }
383
235
  /**
384
- * 本接口用于删除数据加工任务
236
+ * 打开Kafka协议消费功能
385
237
  */
386
- async DeleteDataTransform(req, cb) {
387
- return this.request("DeleteDataTransform", req, cb);
238
+ async OpenKafkaConsumer(req, cb) {
239
+ return this.request("OpenKafkaConsumer", req, cb);
388
240
  }
389
241
  /**
390
- * 本接口用于创建日志集,返回新创建的日志集的 ID。
242
+ * 获取投递任务列表
391
243
  */
392
- async CreateLogset(req, cb) {
393
- return this.request("CreateLogset", req, cb);
244
+ async DescribeShipperTasks(req, cb) {
245
+ return this.request("DescribeShipperTasks", req, cb);
394
246
  }
395
247
  /**
396
- * 本接口用于获取Kafka数据订阅任务
248
+ * 本接口用于删除日志主题的索引配置,删除索引配置后将无法检索和查询采集到的日志。
397
249
  */
398
- async DescribeKafkaRecharges(req, cb) {
399
- return this.request("DescribeKafkaRecharges", req, cb);
250
+ async DeleteIndex(req, cb) {
251
+ return this.request("DeleteIndex", req, cb);
400
252
  }
401
253
  /**
402
- * 本接口用于创建数据加工任务。
254
+ * 获取Kafka协议消费信息
403
255
  */
404
- async CreateDataTransform(req, cb) {
405
- return this.request("CreateDataTransform", req, cb);
256
+ async DescribeKafkaConsumer(req, cb) {
257
+ return this.request("DescribeKafkaConsumer", req, cb);
406
258
  }
407
259
  /**
408
- * 用于添加机器组信息
260
+ * 本接口用于预览Kafka数据订阅任务客户日志信息
409
261
  */
410
- async AddMachineGroupInfo(req, cb) {
411
- return this.request("AddMachineGroupInfo", req, cb);
262
+ async PreviewKafkaRecharge(req, cb) {
263
+ return this.request("PreviewKafkaRecharge", req, cb);
412
264
  }
413
265
  /**
414
- * 本接口用于获取数据加工任务列表基本信息
266
+ * 本接口用于修改特殊采集配置任务,特殊采集配置应用于自建K8S环境的采集Agent
415
267
  */
416
- async DescribeDataTransformInfo(req, cb) {
417
- return this.request("DescribeDataTransformInfo", req, cb);
268
+ async ModifyConfigExtra(req, cb) {
269
+ return this.request("ModifyConfigExtra", req, cb);
418
270
  }
419
271
  /**
420
- * 该接口用于获取通知渠道组列表
272
+ * 本接口用于创建特殊采集配置任务,特殊采集配置应用于自建K8S环境的采集Agent
421
273
  */
422
- async DescribeAlarmNotices(req, cb) {
423
- return this.request("DescribeAlarmNotices", req, cb);
274
+ async CreateConfigExtra(req, cb) {
275
+ return this.request("CreateConfigExtra", req, cb);
424
276
  }
425
277
  /**
426
- * 本接口用于创建日志主题。
278
+ * 本接口用于修改定时SQL分析任务
427
279
  */
428
- async CreateTopic(req, cb) {
429
- return this.request("CreateTopic", req, cb);
280
+ async ModifyScheduledSql(req, cb) {
281
+ return this.request("ModifyScheduledSql", req, cb);
430
282
  }
431
283
  /**
432
- * 应用采集配置到指定机器组
284
+ * 创建机器组
433
285
  */
434
- async ApplyConfigToMachineGroup(req, cb) {
435
- return this.request("ApplyConfigToMachineGroup", req, cb);
286
+ async CreateMachineGroup(req, cb) {
287
+ return this.request("CreateMachineGroup", req, cb);
436
288
  }
437
289
  /**
438
- * 本接口用于删除特殊采集规则配置,特殊采集配置应用于自建K8S环境的采集Agent
290
+ * 用于删除机器组信息
439
291
  */
440
- async DeleteConfigExtra(req, cb) {
441
- return this.request("DeleteConfigExtra", req, cb);
292
+ async DeleteMachineGroupInfo(req, cb) {
293
+ return this.request("DeleteMachineGroupInfo", req, cb);
442
294
  }
443
295
  /**
444
- * 本接口用于修改cos导入任务
296
+ * 本接口用于获取告警任务历史
445
297
  */
446
- async ModifyCosRecharge(req, cb) {
447
- return this.request("ModifyCosRecharge", req, cb);
298
+ async GetAlarmLog(req, cb) {
299
+ return this.request("GetAlarmLog", req, cb);
448
300
  }
449
301
  /**
450
- * 本接口用于分裂主题分区
302
+ * 本接口用于获取日志集信息列表。
451
303
  */
452
- async SplitPartition(req, cb) {
453
- return this.request("SplitPartition", req, cb);
304
+ async DescribeLogsets(req, cb) {
305
+ return this.request("DescribeLogsets", req, cb);
454
306
  }
455
307
  /**
456
- * 该接口用于删除通知渠道组
308
+ * 本接口用于预览cos导入信息
457
309
  */
458
- async DeleteAlarmNotice(req, cb) {
459
- return this.request("DeleteAlarmNotice", req, cb);
310
+ async SearchCosRechargeInfo(req, cb) {
311
+ return this.request("SearchCosRechargeInfo", req, cb);
460
312
  }
461
313
  /**
462
- * 本接口用于获取仪表盘
314
+ * 本接口用于修改Kafka数据订阅任务
463
315
  */
464
- async DescribeDashboards(req, cb) {
465
- return this.request("DescribeDashboards", req, cb);
316
+ async ModifyKafkaRecharge(req, cb) {
317
+ return this.request("ModifyKafkaRecharge", req, cb);
466
318
  }
467
319
  /**
468
- * 本接口用于构建日志数量直方图
320
+ * 该接口用于创建通知渠道组。
469
321
  */
470
- async DescribeLogHistogram(req, cb) {
471
- return this.request("DescribeLogHistogram", req, cb);
322
+ async CreateAlarmNotice(req, cb) {
323
+ return this.request("CreateAlarmNotice", req, cb);
472
324
  }
473
325
  /**
474
- * 本接口用于检索分析日志, 该接口除受默认接口请求频率限制外,针对单个日志主题,查询并发数不能超过15。
475
-
476
- API返回数据包最大49MB,建议启用 gzip 压缩(HTTP Request Header Accept-Encoding:gzip)。
326
+ * 本接口用于创建数据加工任务。
477
327
  */
478
- async SearchLog(req, cb) {
479
- return this.request("SearchLog", req, cb);
328
+ async CreateDataTransform(req, cb) {
329
+ return this.request("CreateDataTransform", req, cb);
480
330
  }
481
331
  /**
482
- * 本接口用于删除定时SQL分析任务
332
+ * 用于添加机器组信息
483
333
  */
484
- async DeleteScheduledSql(req, cb) {
485
- return this.request("DeleteScheduledSql", req, cb);
334
+ async AddMachineGroupInfo(req, cb) {
335
+ return this.request("AddMachineGroupInfo", req, cb);
486
336
  }
487
337
  /**
488
- * 获取制定机器组下的机器状态
338
+ * 本接口用于获取数据加工任务列表基本信息
489
339
  */
490
- async DescribeMachines(req, cb) {
491
- return this.request("DescribeMachines", req, cb);
340
+ async DescribeDataTransformInfo(req, cb) {
341
+ return this.request("DescribeDataTransformInfo", req, cb);
492
342
  }
493
343
  /**
494
- * 打开Kafka协议消费功能
344
+ * 该接口用于获取通知渠道组列表
495
345
  */
496
- async OpenKafkaConsumer(req, cb) {
497
- return this.request("OpenKafkaConsumer", req, cb);
346
+ async DescribeAlarmNotices(req, cb) {
347
+ return this.request("DescribeAlarmNotices", req, cb);
498
348
  }
499
349
  /**
500
- * 修改采集规则配置
350
+ * 本接口用于获取主题分区列表。
501
351
  */
502
- async ModifyConfig(req, cb) {
503
- return this.request("ModifyConfig", req, cb);
352
+ async DescribePartitions(req, cb) {
353
+ return this.request("DescribePartitions", req, cb);
504
354
  }
505
355
  /**
506
- * 获取告警历史,例如今天未恢复的告警
356
+ * 本接口用于删除特殊采集规则配置,特殊采集配置应用于自建K8S环境的采集Agent
507
357
  */
508
- async DescribeAlertRecordHistory(req, cb) {
509
- return this.request("DescribeAlertRecordHistory", req, cb);
358
+ async DeleteConfigExtra(req, cb) {
359
+ return this.request("DeleteConfigExtra", req, cb);
510
360
  }
511
361
  /**
512
- * 本接口用于删除日志主题。
362
+ * 本接口用于删除告警策略。
513
363
  */
514
- async DeleteTopic(req, cb) {
515
- return this.request("DeleteTopic", req, cb);
364
+ async DeleteAlarm(req, cb) {
365
+ return this.request("DeleteAlarm", req, cb);
516
366
  }
517
367
  /**
518
- * 获取投递任务列表
368
+ * 删除投递COS任务
519
369
  */
520
- async DescribeShipperTasks(req, cb) {
521
- return this.request("DescribeShipperTasks", req, cb);
370
+ async DeleteShipper(req, cb) {
371
+ return this.request("DeleteShipper", req, cb);
522
372
  }
523
373
  /**
524
- * 本接口用于删除Kafka数据订阅任务
374
+ * 查询指定时间范围内指标的变化趋势
525
375
  */
526
- async DeleteKafkaRecharge(req, cb) {
527
- return this.request("DeleteKafkaRecharge", req, cb);
376
+ async QueryRangeMetric(req, cb) {
377
+ return this.request("QueryRangeMetric", req, cb);
528
378
  }
529
379
  /**
530
- * 创建采集规则配置
380
+ * 获取采集规则配置所绑定的机器组
531
381
  */
532
- async CreateConfig(req, cb) {
533
- return this.request("CreateConfig", req, cb);
382
+ async DescribeConfigMachineGroups(req, cb) {
383
+ return this.request("DescribeConfigMachineGroups", req, cb);
534
384
  }
535
385
  /**
536
- * 获取机器组绑定的采集规则配置
386
+ * 本接口用于删除日志下载任务
537
387
  */
538
- async DescribeMachineGroupConfigs(req, cb) {
539
- return this.request("DescribeMachineGroupConfigs", req, cb);
388
+ async DeleteExport(req, cb) {
389
+ return this.request("DeleteExport", req, cb);
540
390
  }
541
391
  /**
542
- * 修改Kafka协议消费信息
392
+ * 本接口用于分裂主题分区
543
393
  */
544
- async ModifyKafkaConsumer(req, cb) {
545
- return this.request("ModifyKafkaConsumer", req, cb);
394
+ async SplitPartition(req, cb) {
395
+ return this.request("SplitPartition", req, cb);
546
396
  }
547
397
  /**
548
- * 删除投递COS任务
398
+ * 获取机器组信息列表
549
399
  */
550
- async DeleteShipper(req, cb) {
551
- return this.request("DeleteShipper", req, cb);
400
+ async DescribeMachineGroups(req, cb) {
401
+ return this.request("DescribeMachineGroups", req, cb);
552
402
  }
553
403
  /**
554
- * 本接口用于删除日志主题的索引配置,删除索引配置后将无法检索和查询采集到的日志。
404
+ * 本接口用于创建投递任务
555
405
  */
556
- async DeleteIndex(req, cb) {
557
- return this.request("DeleteIndex", req, cb);
406
+ async CreateConsumer(req, cb) {
407
+ return this.request("CreateConsumer", req, cb);
558
408
  }
559
409
  /**
560
- * 本接口用于修改数据加工任务
410
+ * 本接口用于获取kafka用户信息
561
411
  */
562
- async ModifyDataTransform(req, cb) {
563
- return this.request("ModifyDataTransform", req, cb);
412
+ async DescribeKafkaUser(req, cb) {
413
+ return this.request("DescribeKafkaUser", req, cb);
564
414
  }
565
415
  /**
566
- * 修改现有的投递规则,客户如果使用此接口,需要自行处理CLS对指定bucket的写权限。
416
+ * 本接口用于修改日志主题。
567
417
  */
568
- async ModifyShipper(req, cb) {
569
- return this.request("ModifyShipper", req, cb);
418
+ async ModifyTopic(req, cb) {
419
+ return this.request("ModifyTopic", req, cb);
570
420
  }
571
421
  /**
572
- * 本接口用于删除告警策略。
422
+ * 修改机器组
573
423
  */
574
- async DeleteAlarm(req, cb) {
575
- return this.request("DeleteAlarm", req, cb);
424
+ async ModifyMachineGroup(req, cb) {
425
+ return this.request("ModifyMachineGroup", req, cb);
576
426
  }
577
427
  /**
578
- * 获取Kafka协议消费信息
428
+ * 本接口用于获取定时SQL分析任务列表
579
429
  */
580
- async DescribeKafkaConsumer(req, cb) {
581
- return this.request("DescribeKafkaConsumer", req, cb);
430
+ async DescribeScheduledSqlInfo(req, cb) {
431
+ return this.request("DescribeScheduledSqlInfo", req, cb);
582
432
  }
583
433
  /**
584
- * 本接口用于搜索日志上下文附近的内容
434
+ * 删除采集规则配置
585
435
  */
586
- async DescribeLogContext(req, cb) {
587
- return this.request("DescribeLogContext", req, cb);
436
+ async DeleteConfig(req, cb) {
437
+ return this.request("DeleteConfig", req, cb);
588
438
  }
589
439
  /**
590
- * 本接口用于获取投递配置
440
+ * 本接口用于获取特殊采集配置,特殊采集配置应用于自建K8S环境的采集Agent
591
441
  */
592
- async DescribeConsumer(req, cb) {
593
- return this.request("DescribeConsumer", req, cb);
442
+ async DescribeConfigExtras(req, cb) {
443
+ return this.request("DescribeConfigExtras", req, cb);
594
444
  }
595
445
  /**
596
- * 该接口用于修改通知渠道组
446
+ * 本接口用于校验Kafka服务集群是否可以正常访问
597
447
  */
598
- async ModifyAlarmNotice(req, cb) {
599
- return this.request("ModifyAlarmNotice", req, cb);
448
+ async CheckRechargeKafkaServer(req, cb) {
449
+ return this.request("CheckRechargeKafkaServer", req, cb);
600
450
  }
601
451
  /**
602
- * 获取采集规则配置
452
+ * 本接口用于修改告警策略。需要至少修改一项有效内容。
603
453
  */
604
- async DescribeConfigs(req, cb) {
605
- return this.request("DescribeConfigs", req, cb);
454
+ async ModifyAlarm(req, cb) {
455
+ return this.request("ModifyAlarm", req, cb);
606
456
  }
607
457
  /**
608
- * 本接口用于创建cos导入任务
458
+ * 获取投递到COS的任务配置信息
609
459
  */
610
- async CreateCosRecharge(req, cb) {
611
- return this.request("CreateCosRecharge", req, cb);
460
+ async DescribeShippers(req, cb) {
461
+ return this.request("DescribeShippers", req, cb);
612
462
  }
613
463
  /**
614
- * 获取机器组信息列表
464
+ * 本接口用于获取仪表盘
615
465
  */
616
- async DescribeMachineGroups(req, cb) {
617
- return this.request("DescribeMachineGroups", req, cb);
466
+ async DescribeDashboards(req, cb) {
467
+ return this.request("DescribeDashboards", req, cb);
618
468
  }
619
469
  /**
620
- * 本接口用于合并一个读写态的主题分区,合并时指定一个主题分区 ID,日志服务会自动合并范围右相邻的分区。
470
+ * 本接口用于修改cos导入任务
621
471
  */
622
- async MergePartition(req, cb) {
623
- return this.request("MergePartition", req, cb);
472
+ async ModifyCosRecharge(req, cb) {
473
+ return this.request("ModifyCosRecharge", req, cb);
624
474
  }
625
475
  /**
626
- * 本接口用于创建特殊采集配置任务,特殊采集配置应用于自建K8S环境的采集Agent
476
+ * 修改采集规则配置
627
477
  */
628
- async CreateConfigExtra(req, cb) {
629
- return this.request("CreateConfigExtra", req, cb);
478
+ async ModifyConfig(req, cb) {
479
+ return this.request("ModifyConfig", req, cb);
630
480
  }
631
481
  /**
632
- * 本接口用于预览Kafka数据订阅任务客户日志信息
633
- */
634
- async PreviewKafkaRecharge(req, cb) {
635
- return this.request("PreviewKafkaRecharge", req, cb);
482
+ * ## 提示
483
+ 为了保障您日志数据的可靠性以及更高效地使用日志服务,建议您使用CLS优化后的接口[上传结构化日志](https://cloud.tencent.com/document/product/614/16873)。
484
+
485
+ 同时我们给此接口专门优化定制了多个语言版本的SDK供您选择,SDK提供统一的异步发送、资源控制、自动重试、优雅关闭、感知上报等功能,使上报日志功能更完善,详情请参考[SDK采集](https://cloud.tencent.com/document/product/614/67157)
486
+
487
+ 同时云API上传日志接口也支持同步上传日志数据,如果您选择继续使用此接口请参考下文。
488
+
489
+ ## 功能描述
490
+
491
+ 本接口用于将日志写入到指定的日志主题。
492
+
493
+ 日志服务提供以下两种模式:
494
+
495
+ #### 负载均衡模式
496
+
497
+ 系统根据当前日志主题下所有可读写的分区,遵循负载均衡原则自动分配写入的目标分区。该模式适合消费不保序的场景。
498
+
499
+ #### 哈希路由模式
500
+
501
+ 系统根据携带的哈希值(X-CLS-HashKey)将数据写入到符合范围要求的目标分区。例如,可以将某个日志源端通过 hashkey 与某个主题分区强绑定,这样可以保证数据在该分区上写入和消费是严格保序的。
502
+
503
+
504
+
505
+ #### 输入参数(pb二进制流,位于body中)
506
+
507
+ | 字段名 | 类型 | 位置 | 必须 | 含义 |
508
+ | ------------ | ------- | ---- | ---- | ------------------------------------------------------------ |
509
+ | logGroupList | message | pb | 是 | logGroup 列表,封装好的日志组列表内容,建议 logGroup 数量不要超过5个 |
510
+
511
+ LogGroup 说明:
512
+
513
+ | 字段名 | 是否必选 | 含义 |
514
+ | ----------- | -------- | ------------------------------------------------------------ |
515
+ | logs | 是 | 日志数组,表示有多个 Log 组成的集合,一个 Log 表示一条日志,一个 LogGroup 中 Log 个数不能超过10000 |
516
+ | contextFlow | 否 | LogGroup 的唯一ID,需要使用上下文功能时传入。格式:"{上下文ID}-{LogGroupID}"。<br>上下文ID:唯一标识一个上下文(连续滚动的一系列日志文件,或者是需要保序的一系列日志),16进制64位整型字符串。<br>LogGroupID:连续递增的一串整型,16进制64位整型字符串。样例:"102700A66102516A-59F59"。 |
517
+ | filename | 否 | 日志文件名 |
518
+ | source | 否 | 日志来源,一般使用机器 IP 作为标识 |
519
+ | logTags | 否 | 日志的标签列表 |
520
+
521
+ Log 说明:
522
+
523
+ | 字段名 | 是否必选 | 含义 |
524
+ | -------- | -------- | ------------------------------------------------------------ |
525
+ | time | 是 | 日志时间(Unix 格式时间戳),支持秒、毫秒,建议采用毫秒 |
526
+ | contents | 否 | key-value 格式的日志内容,表示一条日志里的多个 key-value 组合 |
527
+
528
+ Content 说明:
529
+
530
+ | 字段名 | 是否必选 | 含义 |
531
+ | ------ | -------- | ------------------------------------------------------------ |
532
+ | key | 是 | 单条日志里某个字段组的 key 值,不能以`_`开头 |
533
+ | value | 是 | 单条日志某个字段组的 value 值,单条日志 value 不能超过1MB,LogGroup 中所有 value 总和不能超过5MB |
534
+
535
+ LogTag 说明:
536
+
537
+ | 字段名 | 是否必选 | 含义 |
538
+ | ------ | -------- | -------------------------------- |
539
+ | key | 是 | 自定义的标签 key |
540
+ | value | 是 | 自定义的标签 key 对应的 value 值 |
541
+
542
+ ## PB 编译示例
543
+
544
+ 本示例将说明如何使用官方 protoc 编译工具将 PB 描述文件 编译生成为 C++ 语言可调用的上传日志接口。
545
+
546
+ > ?目前 protoc 官方支持 Java、C++、Python 等语言的编译,详情请参见 [protoc](https://github.com/protocolbuffers/protobuf)。
547
+
548
+ #### 1. 安装 Protocol Buffer
549
+
550
+ 下载 [Protocol Buffer](https://main.qcloudimg.com/raw/d7810aaf8b3073fbbc9d4049c21532aa/protobuf-2.6.1.tar.gz) ,解压并安装。示例版本为 protobuf 2.6.1,环境为 Centos 7.3 系统。 解压`protobuf-2.6.1.tar.gz`压缩包至`/usr/local`目录并进入该目录,执行命令如下:
551
+
552
+ ```
553
+ tar -zxvf protobuf-2.6.1.tar.gz -C /usr/local/ && cd /usr/local/protobuf-2.6.1
554
+ ```
555
+
556
+ 开始编译和安装,配置环境变量,执行命令如下:
557
+
558
+ ```
559
+ [root@VM_0_8_centos protobuf-2.6.1]# ./configure
560
+ [root@VM_0_8_centos protobuf-2.6.1]# make && make install
561
+ [root@VM_0_8_centos protobuf-2.6.1]# export PATH=$PATH:/usr/local/protobuf-2.6.1/bin
562
+ ```
563
+
564
+ 编译成功后,您可以使用以下命令查看版本:
565
+
566
+ ```
567
+ [root@VM_0_8_centos protobuf-2.6.1]# protoc --version
568
+ liprotoc 2.6.1
569
+ ```
570
+
571
+ #### 2. 创建 PB 描述文件
572
+
573
+ PB 描述文件是通信双方约定的数据交换格式,上传日志时须将规定的协议格式编译成对应语言版本的调用接口,然后添加到工程代码里,详情请参见 [protoc](https://github.com/protocolbuffers/protobuf) 。
574
+
575
+ 以日志服务所规定的 PB 数据格式内容为准, 在本地创建 PB 消息描述文件 cls.proto。
576
+
577
+ > !PB 描述文件内容不可更改,且文件名须以`.proto`结尾。
578
+
579
+ cls.proto 内容(PB 描述文件)如下:
580
+
581
+ ```
582
+ package cls;
583
+
584
+ message Log
585
+ {
586
+ message Content
587
+ {
588
+ required string key = 1; // 每组字段的 key
589
+ required string value = 2; // 每组字段的 value
636
590
  }
637
- /**
638
- * 获取采集规则配置所绑定的机器组
591
+ required int64 time = 1; // 时间戳,UNIX时间格式
592
+ repeated Content contents = 2; // 一条日志里的多个kv组合
593
+ }
594
+
595
+ message LogTag
596
+ {
597
+ required string key = 1;
598
+ required string value = 2;
599
+ }
600
+
601
+ message LogGroup
602
+ {
603
+ repeated Log logs = 1; // 多条日志合成的日志数组
604
+ optional string contextFlow = 2; // 目前暂无效用
605
+ optional string filename = 3; // 日志文件名
606
+ optional string source = 4; // 日志来源,一般使用机器IP
607
+ repeated LogTag logTags = 5;
608
+ }
609
+
610
+ message LogGroupList
611
+ {
612
+ repeated LogGroup logGroupList = 1; // 日志组列表
613
+ }
614
+ ```
615
+
616
+ #### 3. 编译生成
617
+
618
+ 此例中,使用 proto 编译器生成 C++ 语言的文件,在 cls.proto 文件的同一目录下,执行如下编译命令:
619
+
620
+ ```
621
+ protoc --cpp_out=./ ./cls.proto
622
+ ```
623
+
624
+ > ?`--cpp_out=./`表示编译成 cpp 格式并输出当前目录下,`./cls.proto`表示位于当前目录下的 cls.proto 描述文件。
625
+
626
+ 编译成功后,会输出对应语言的代码文件。此例会生成 cls.pb.h 头文件和 [cls.pb.cc](http://cls.pb.cc) 代码实现文件,如下所示:
627
+
628
+ ```
629
+ [root@VM_0_8_centos protobuf-2.6.1]# protoc --cpp_out=./ ./cls.proto
630
+ [root@VM_0_8_centos protobuf-2.6.1]# ls
631
+ cls.pb.cc cls.pb.h cls.proto
632
+ ```
633
+
634
+ #### 4. 调用
635
+
636
+ 将生成的 cls.pb.h 头文件引入代码中,调用接口进行数据格式封装。
639
637
  */
640
- async DescribeConfigMachineGroups(req, cb) {
641
- return this.request("DescribeConfigMachineGroups", req, cb);
638
+ async UploadLog(req, cb) {
639
+ return this.request("UploadLog", req, cb);
642
640
  }
643
641
  /**
644
- * 本接口用于修改特殊采集配置任务,特殊采集配置应用于自建K8S环境的采集Agent
642
+ * 本接口用于创建定时SQL分析任务
645
643
  */
646
- async ModifyConfigExtra(req, cb) {
647
- return this.request("ModifyConfigExtra", req, cb);
644
+ async CreateScheduledSql(req, cb) {
645
+ return this.request("CreateScheduledSql", req, cb);
648
646
  }
649
647
  /**
650
648
  * 本接口用于修改日志集信息
@@ -653,46 +651,60 @@ API返回数据包最大49MB,建议启用 gzip 压缩(HTTP Request Header Ac
653
651
  return this.request("ModifyLogset", req, cb);
654
652
  }
655
653
  /**
656
- * 本接口用于删除日志下载任务
654
+ * 获取机器组绑定的采集规则配置
657
655
  */
658
- async DeleteExport(req, cb) {
659
- return this.request("DeleteExport", req, cb);
656
+ async DescribeMachineGroupConfigs(req, cb) {
657
+ return this.request("DescribeMachineGroupConfigs", req, cb);
660
658
  }
661
659
  /**
662
- * 本接口用于创建告警策略。
660
+ * 本接口用于修改数据加工任务
663
661
  */
664
- async CreateAlarm(req, cb) {
665
- return this.request("CreateAlarm", req, cb);
662
+ async ModifyDataTransform(req, cb) {
663
+ return this.request("ModifyDataTransform", req, cb);
666
664
  }
667
665
  /**
668
- * 本接口用于创建定时SQL分析任务
666
+ * 本接口用于检索分析日志, 该接口除受默认接口请求频率限制外,针对单个日志主题,查询并发数不能超过15。
667
+
668
+ API返回数据包最大49MB,建议启用 gzip 压缩(HTTP Request Header Accept-Encoding:gzip)。
669
669
  */
670
- async CreateScheduledSql(req, cb) {
671
- return this.request("CreateScheduledSql", req, cb);
670
+ async SearchLog(req, cb) {
671
+ return this.request("SearchLog", req, cb);
672
672
  }
673
673
  /**
674
- * 本接口仅创建下载任务,任务返回的下载地址,请用户调用DescribeExports查看任务列表。其中有下载地址CosPath参数。参考文档https://cloud.tencent.com/document/product/614/56449
674
+ * 本接口用于搜索日志上下文附近的内容
675
675
  */
676
- async CreateExport(req, cb) {
677
- return this.request("CreateExport", req, cb);
676
+ async DescribeLogContext(req, cb) {
677
+ return this.request("DescribeLogContext", req, cb);
678
678
  }
679
679
  /**
680
- * 本接口用于修改定时SQL分析任务
680
+ * 本接口用于获取投递配置
681
681
  */
682
- async ModifyScheduledSql(req, cb) {
683
- return this.request("ModifyScheduledSql", req, cb);
682
+ async DescribeConsumer(req, cb) {
683
+ return this.request("DescribeConsumer", req, cb);
684
684
  }
685
685
  /**
686
- * 关闭Kafka协议消费
686
+ * 获取制定机器组下的机器状态
687
687
  */
688
- async CloseKafkaConsumer(req, cb) {
689
- return this.request("CloseKafkaConsumer", req, cb);
688
+ async DescribeMachines(req, cb) {
689
+ return this.request("DescribeMachines", req, cb);
690
690
  }
691
691
  /**
692
- * 本接口用于获取告警策略列表。
692
+ * 重试失败的投递任务
693
693
  */
694
- async DescribeAlarms(req, cb) {
695
- return this.request("DescribeAlarms", req, cb);
694
+ async RetryShipperTask(req, cb) {
695
+ return this.request("RetryShipperTask", req, cb);
696
+ }
697
+ /**
698
+ * 本接口用于创建告警策略。
699
+ */
700
+ async CreateAlarm(req, cb) {
701
+ return this.request("CreateAlarm", req, cb);
702
+ }
703
+ /**
704
+ * 本接口用于删除日志主题。
705
+ */
706
+ async DeleteTopic(req, cb) {
707
+ return this.request("DeleteTopic", req, cb);
696
708
  }
697
709
  }
698
710
  exports.Client = Client;