tencentcloud-sdk-nodejs-cls 4.0.388 → 4.0.431
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.
- package/CHANGELOG.md +6462 -0
- package/README.md +3 -3
- package/SERVICE_CHANGELOG.md +4451 -124
- package/package.json +1 -1
- package/products.md +104 -100
- package/src/services/cls/index.ts +7 -4
- package/src/services/cls/v20201016/cls_client.ts +594 -770
- package/src/services/cls/v20201016/cls_models.ts +2990 -2781
- package/src/services/cls/v20201016/index.ts +3 -3
- package/tencentcloud/services/cls/v20201016/cls_client.d.ts +159 -159
- package/tencentcloud/services/cls/v20201016/cls_client.js +159 -159
- package/tencentcloud/services/cls/v20201016/cls_models.d.ts +1660 -1630
- package/tencentcloud/services/cls/v20201016/index.js +1 -1
|
@@ -43,9 +43,9 @@ export declare class Client extends TencentCloudCommon.AbstractClient {
|
|
|
43
43
|
*/
|
|
44
44
|
DescribeExports(req: DescribeExportsRequest, cb?: (error: string, rep: DescribeExportsResponse) => void): Promise<DescribeExportsResponse>;
|
|
45
45
|
/**
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
* 本接口用于修改索引配置
|
|
47
|
+
|
|
48
|
+
*/
|
|
49
49
|
ModifyIndex(req: ModifyIndexRequest, cb?: (error: string, rep: ModifyIndexResponse) => void): Promise<ModifyIndexResponse>;
|
|
50
50
|
/**
|
|
51
51
|
* 本接口用于修改特殊采集配置任务
|
|
@@ -164,162 +164,162 @@ export declare class Client extends TencentCloudCommon.AbstractClient {
|
|
|
164
164
|
*/
|
|
165
165
|
ModifyConfig(req: ModifyConfigRequest, cb?: (error: string, rep: ModifyConfigResponse) => void): Promise<ModifyConfigResponse>;
|
|
166
166
|
/**
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
167
|
+
* ## 提示
|
|
168
|
+
为了保障您日志数据的可靠性以及更高效地使用日志服务,建议您使用CLS优化后的接口[上传结构化日志](https://cloud.tencent.com/document/api/614/16873)上传日志。
|
|
169
|
+
|
|
170
|
+
同时我们给此接口专门优化定制了多个语言版本的SDK供您选择,SDK提供统一的异步发送、资源控制、自动重试、优雅关闭、感知上报等功能,使上报日志功能更完善,详情请参考[SDK采集](https://cloud.tencent.com/document/product/614/67157)。
|
|
171
|
+
|
|
172
|
+
同时云API上传日志接口也支持同步上传日志数据,如果您选继续使用此接口请参考下文。
|
|
173
|
+
|
|
174
|
+
## 功能描述
|
|
175
|
+
|
|
176
|
+
本接口用于将日志写入到指定的日志主题。
|
|
177
|
+
|
|
178
|
+
日志服务提供以下两种模式:
|
|
179
|
+
|
|
180
|
+
#### 负载均衡模式
|
|
181
|
+
|
|
182
|
+
系统根据当前日志主题下所有可读写的分区,遵循负载均衡原则自动分配写入的目标分区。该模式适合消费不保序的场景。
|
|
183
|
+
|
|
184
|
+
#### 哈希路由模式
|
|
185
|
+
|
|
186
|
+
系统根据携带的哈希值(X-CLS-HashKey)将数据写入到符合范围要求的目标分区。例如,可以将某个日志源端通过 hashkey 与某个主题分区强绑定,这样可以保证数据在该分区上写入和消费是严格保序的。
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
#### 输入参数(pb二进制流,位于body中)
|
|
191
|
+
|
|
192
|
+
| 字段名 | 类型 | 位置 | 必须 | 含义 |
|
|
193
|
+
| ------------ | ------- | ---- | ---- | ------------------------------------------------------------ |
|
|
194
|
+
| logGroupList | message | pb | 是 | logGroup 列表,封装好的日志组列表内容,建议 logGroup 数量不要超过5个 |
|
|
195
|
+
|
|
196
|
+
LogGroup 说明:
|
|
197
|
+
|
|
198
|
+
| 字段名 | 是否必选 | 含义 |
|
|
199
|
+
| ----------- | -------- | ------------------------------------------------------------ |
|
|
200
|
+
| logs | 是 | 日志数组,表示有多个 Log 组成的集合,一个 Log 表示一条日志,一个 LogGroup 中 Log 个数不能超过10000 |
|
|
201
|
+
| contextFlow | 否 | LogGroup 的唯一ID,需要使用上下文功能时传入。格式:"{上下文ID}-{LogGroupID}"。<br>上下文ID:唯一标识一个上下文(连续滚动的一系列日志文件,或者是需要保序的一系列日志),16进制64位整型字符串。<br>LogGroupID:连续递增的一串整型,16进制64位整型字符串。样例:"102700A66102516A-59F59"。 |
|
|
202
|
+
| filename | 否 | 日志文件名 |
|
|
203
|
+
| source | 否 | 日志来源,一般使用机器 IP 作为标识 |
|
|
204
|
+
| logTags | 否 | 日志的标签列表 |
|
|
205
|
+
|
|
206
|
+
Log 说明:
|
|
207
|
+
|
|
208
|
+
| 字段名 | 是否必选 | 含义 |
|
|
209
|
+
| -------- | -------- | ------------------------------------------------------------ |
|
|
210
|
+
| time | 是 | 日志时间(Unix 格式时间戳),支持秒、毫秒,建议采用毫秒 |
|
|
211
|
+
| contents | 否 | key-value 格式的日志内容,表示一条日志里的多个 key-value 组合 |
|
|
212
|
+
|
|
213
|
+
Content 说明:
|
|
214
|
+
|
|
215
|
+
| 字段名 | 是否必选 | 含义 |
|
|
216
|
+
| ------ | -------- | ------------------------------------------------------------ |
|
|
217
|
+
| key | 是 | 单条日志里某个字段组的 key 值,不能以`_`开头 |
|
|
218
|
+
| value | 是 | 单条日志某个字段组的 value 值,单条日志 value 不能超过1MB,LogGroup 中所有 value 总和不能超过5MB |
|
|
219
|
+
|
|
220
|
+
LogTag 说明:
|
|
221
|
+
|
|
222
|
+
| 字段名 | 是否必选 | 含义 |
|
|
223
|
+
| ------ | -------- | -------------------------------- |
|
|
224
|
+
| key | 是 | 自定义的标签 key |
|
|
225
|
+
| value | 是 | 自定义的标签 key 对应的 value 值 |
|
|
226
|
+
|
|
227
|
+
## PB 编译示例
|
|
228
|
+
|
|
229
|
+
本示例将说明如何使用官方 protoc 编译工具将 PB 描述文件 编译生成为 C++ 语言可调用的上传日志接口。
|
|
230
|
+
|
|
231
|
+
> ?目前 protoc 官方支持 Java、C++、Python 等语言的编译,详情请参见 [protoc](https://github.com/protocolbuffers/protobuf)。
|
|
232
|
+
|
|
233
|
+
#### 1. 安装 Protocol Buffer
|
|
234
|
+
|
|
235
|
+
下载 [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`目录并进入该目录,执行命令如下:
|
|
236
|
+
|
|
237
|
+
```
|
|
238
|
+
tar -zxvf protobuf-2.6.1.tar.gz -C /usr/local/ && cd /usr/local/protobuf-2.6.1
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
开始编译和安装,配置环境变量,执行命令如下:
|
|
242
|
+
|
|
243
|
+
```
|
|
244
|
+
[root@VM_0_8_centos protobuf-2.6.1]# ./configure
|
|
245
|
+
[root@VM_0_8_centos protobuf-2.6.1]# make && make install
|
|
246
|
+
[root@VM_0_8_centos protobuf-2.6.1]# export PATH=$PATH:/usr/local/protobuf-2.6.1/bin
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
编译成功后,您可以使用以下命令查看版本:
|
|
250
|
+
|
|
251
|
+
```
|
|
252
|
+
[root@VM_0_8_centos protobuf-2.6.1]# protoc --version
|
|
253
|
+
liprotoc 2.6.1
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
#### 2. 创建 PB 描述文件
|
|
257
|
+
|
|
258
|
+
PB 描述文件是通信双方约定的数据交换格式,上传日志时须将规定的协议格式编译成对应语言版本的调用接口,然后添加到工程代码里,详情请参见 [protoc](https://github.com/protocolbuffers/protobuf) 。
|
|
259
|
+
|
|
260
|
+
以日志服务所规定的 PB 数据格式内容为准, 在本地创建 PB 消息描述文件 cls.proto。
|
|
261
|
+
|
|
262
|
+
> !PB 描述文件内容不可更改,且文件名须以`.proto`结尾。
|
|
263
|
+
|
|
264
|
+
cls.proto 内容(PB 描述文件)如下:
|
|
265
|
+
|
|
266
|
+
```
|
|
267
|
+
package cls;
|
|
268
|
+
|
|
269
|
+
message Log
|
|
270
|
+
{
|
|
271
|
+
message Content
|
|
272
|
+
{
|
|
273
|
+
required string key = 1; // 每组字段的 key
|
|
274
|
+
required string value = 2; // 每组字段的 value
|
|
275
|
+
}
|
|
276
|
+
required int64 time = 1; // 时间戳,UNIX时间格式
|
|
277
|
+
repeated Content contents = 2; // 一条日志里的多个kv组合
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
message LogTag
|
|
281
|
+
{
|
|
282
|
+
required string key = 1;
|
|
283
|
+
required string value = 2;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
message LogGroup
|
|
287
|
+
{
|
|
288
|
+
repeated Log logs = 1; // 多条日志合成的日志数组
|
|
289
|
+
optional string contextFlow = 2; // 目前暂无效用
|
|
290
|
+
optional string filename = 3; // 日志文件名
|
|
291
|
+
optional string source = 4; // 日志来源,一般使用机器IP
|
|
292
|
+
repeated LogTag logTags = 5;
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
message LogGroupList
|
|
296
|
+
{
|
|
297
|
+
repeated LogGroup logGroupList = 1; // 日志组列表
|
|
298
|
+
}
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
#### 3. 编译生成
|
|
302
|
+
|
|
303
|
+
此例中,使用 proto 编译器生成 C++ 语言的文件,在 cls.proto 文件的同一目录下,执行如下编译命令:
|
|
304
|
+
|
|
305
|
+
```
|
|
306
|
+
protoc --cpp_out=./ ./cls.proto
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
> ?`--cpp_out=./`表示编译成 cpp 格式并输出当前目录下,`./cls.proto`表示位于当前目录下的 cls.proto 描述文件。
|
|
310
|
+
|
|
311
|
+
编译成功后,会输出对应语言的代码文件。此例会生成 cls.pb.h 头文件和 [cls.pb.cc](http://cls.pb.cc) 代码实现文件,如下所示:
|
|
312
|
+
|
|
313
|
+
```
|
|
314
|
+
[root@VM_0_8_centos protobuf-2.6.1]# protoc --cpp_out=./ ./cls.proto
|
|
315
|
+
[root@VM_0_8_centos protobuf-2.6.1]# ls
|
|
316
|
+
cls.pb.cc cls.pb.h cls.proto
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
#### 4. 调用
|
|
320
|
+
|
|
321
|
+
将生成的 cls.pb.h 头文件引入代码中,调用接口进行数据格式封装。
|
|
322
|
+
*/
|
|
323
323
|
UploadLog(req: UploadLogRequest, cb?: (error: string, rep: UploadLogResponse) => void): Promise<UploadLogResponse>;
|
|
324
324
|
/**
|
|
325
325
|
* 获取投递任务列表
|