一、日志开发
你可以在程序中使用如下语句来完成日志输出:
·console.log()
·console._stdout.write()(Node.js 8.9 及以上版本支持)
·process.stdout.write()(Node.js 8.9 及以上版本支持)
二、使用须知
·Node.js 12.16、Node.js 10.15 运行环境下,使用 console.log 打印日志,平台会按照“时间戳 RerquestId 日志内容”的格式对日志内容封装写入日志服务 CLS。
示例:
日志打印语句:console.log("hello world")
日志输出效果:2021-12-27T03:53:59.192Z a7358cce-489a-4674-8e4e-68665fa2b81d Hello World
·Node.js 8.9 运行环境下,使用 console.log 、console._stdout.write()、process.stdout.write()打印日志,平台会按照“时间戳 RerquestId 日志内容”的格式对日志内容封装写入日志服务 CLS。
示例:
日志打印语句:console.log("hello world")
日志输出效果:2021-12-27T03:53:59.192Z a7358cce-489a-4674-8e4e-68665fa2b81d Hello World
·Node.js 6.10 运行环境下,使用 console.log 打印日志,平台会按照“时间戳 RerquestId 日志内容”的格式对日志内容封装写入日志服务 CLS。
示例:
日志打印语句:console.log("hello world")
日志输出效果:2021-12-27T03:53:59.192Z a7358cce-489a-4674-8e4e-68665fa2b81d Hello World
三、日志查询
当前函数日志均会投递至腾讯云日志服务 CLS 中,你可对函数日志进行投递配置,详情可参见 日志投递配置。
你可通过云函数的日志查询界面或通过日志服务的查询界面,查询函数执行日志。日志查询方法详情可参见 日志检索教程。
注意:说明:
注意:函数日志投递到日志服务日志集 LogSet 和日志主题 LogTopic,均可以通过函数配置查询。
四、自定义日志字段
当前在函数代码中使用简单日志打印语句,将会在投递到日志服务时,记录在 SCF_Message 字段中。日志服务的字段说明可见 索引说明。
目前云函数已经支持在输出到日志服务的内容中增加自定义字段,通过增加自定义字段,你可以将业务字段及相关数据内容输出到日志中,并通过使用日志服务的检索能力,对执行过程中的业务数据及相关内容进行查询跟踪。
五、输出方法
当函数输出的单行日志为 JSON 格式时,JSON 内容将被解析并在投递至日志服务时按字段:值的方式进行投递。JSON 内容的解析仅能解析第一层的值类型为数值和文本类型的字段:值,其他类型的将被忽略。
你可执行以下代码进行测试:
'use strict';exports.main_handler = async (event, context) => { console._stdout.write(JSON.stringify({"key1": "test value 1","key2": "test value 2"})+'\\n'); return "hello world"};
六、检索方法
在使用上述代码进行测试运行后,你可在函数-日志查询-高级检索中通过如下语句进行检索:
检索结果
在测试写入日志服务后,你可以在日志查询中检索到 key1字段。如下: