跳到主要内容

CLS 日志

查询环境 CLS 日志的接口,可通过 commonService 来调用

日志查询

1. 接口描述

接口功能:查询指定条件的 CLS 日志

接口声明:manager.commonService().call({ Action: 'SearchClsLog', Param: {}}): Promise<Object>

⚠️ 本接口从 3.0.0 版本后,commonService 作为方法使用,请求参数为(service?:string, version?:string) ,属于不兼容变更

2. 输入参数

字段必填类型说明
EnvIdString环境 ID
StartTimeString查询起始时间条件, 日期格式为 YYYY-MM-DD HH:mm:ss
EndTimeString查询结束时间条件, 日期格式为 YYYY-MM-DD HH:mm:ss
QueryStringString查询语句,详情参考
LimitString单次要返回的日志条数,单次返回的最大条数为 100
SortBoolean按时间排序 asc(升序)或者 desc(降序),默认为 desc
UseLuceneBoolean是否使用 Lucene 语法,默认为 false

3. 返回结果

字段类型说明
RequestIdString请求唯一标识
LogResultsString日志内容结果

ILogResObject

字段类型说明
ContextString获取更多检索结果的游标
ListOverBoolean搜索结果是否已经全部返回
ResultsArray<ILogObject>日志内容信息

ILogObject

字段类型说明
TopicIdString日志属于的 topic ID
TopicNameString日志主题的名字
TimestampString日志时间
ContentString日志内容
FileNameString采集路径
SourceString日志来源设备

4. 示例代码

import CloudBase from "@cloudbase/manager-node";
const moment = require("moment"); // 格式化日期库需自行安装依赖

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

const { functions } = manager;

async function test() {
const logs = await functions.getFunctionLogs({ name: "your function name" });
const { Data } = logs;
for (let item in Data) {
console.log(item.RequestId);
// 基于 requestId 查 cls 日志
const clsLogRes = await manager.commonService().call({
Action: "SearchClsLog",
Param: {
EnvId: cloudBaseConfig.envId,
StartTime: moment(new Date().getTime() - 24 * 60 * 60 * 1000).format("YYYY-MM-DD HH:mm:ss"), // 开始时间,例如取一天前时间
EndTime: moment().format("YYYY-MM-DD HH:mm:ss"), // 截止时间,例如取当前时间
Limit: 100,
Sort: "asc",
QueryString: `requestId:${item.RequestId}`
}
});
console.log("clsLogRes", clsLogRes);
}
}

test();