云日志服务 node.js SDK 4. LTS服务代码示例 4.1. 关于Client的操作 此操作是初始化client,client包含的配置信息如下: 参数 参数类型 描述 是否必须 endpoint string 域名 是 accessKey string AccessKey,简称ak 是 secretKey string SecretKey ,简称sk 是 compressType string 日志压缩方式 ,默认lz4 否 securityToken ITokenInfo token信息 否 httpClient HttpClient 用于http请求 否 示例代码:初始化创建Client plaintext const client new Client(ak,sk,endpoint) 4.2. 关于Log的操作 此操作用于生成待上传的日志,其中LogItem格式如下,日志上传默认只支持Array,如果只上传一条也需要加入到Array中。 参数 类型 描述 是否必须 logTimestamp number 时间戳,单位纳秒 是 originMsg string 原始日志内容 是 contents Map kv类型,日志分词,可用于索引 否 labels Map kv类型,自定义label 否 注意:单条日志大小不超过1MB,单次发送的日志大小不能超过5MB其中Contents和Labels的key的长度不超过64字符,仅支持数字、字母、下划线、连字符()、点(.),且必须以字母开头。value类型最好使用字符串(string)和数字类型(number),其他类型建议先转为字符串类型,并且value值不能为空或空字符串。 示例代码:组装生成10条日志 plaintext const logItems new Array(); for (let i 0; i < 10; i++) { const logItem new lts.LogItem('node.js sdk test'); logItem.setLogTimestamp(Date.now()10001000) //省略,则默认为当前时间 logItem.addContent('contentString', 'contents test string') //分词内容,可不加 logItem.addContent('contentDouble', 3.1415926) logItem.addLabel('labelString','tag') logItems.push(logItem) } //常用方式 const logItems new Array(); for (let i 0; i < 10; i++) { const logItem new lts.LogItem('node.js sdk test'); logItems.push(logItem) }