日志开发
您可以在程序中使用
System.out.println()
和 java.util.logging.Logger()
语句来完成日志输出。例如,执行以下代码,可以在函数日志中查询输出内容。
System.out.println("Hello world!");
Logger logger = Logger.getLogger("AnyLoggerName");logger.setLevel(Level.INFO);logger.info("logging message here!");
日志查询
当前函数日志均会投递至腾讯云日志服务 CLS 中,您可对函数日志进行投递配置,详情可参见 日志投递配置。
您可通过云函数的日志查询界面或通过日志服务的查询界面,查询函数执行日志。日志查询方法详情可参见 日志检索教程。
说明
函数日志投递到日志服务日志集 LogSet 和日志主题 LogTopic,均可以通过函数配置查询。
自定义日志字段
目前云函数已经支持在输出到日志服务的内容中增加自定义字段,通过增加自定义字段,您可以将业务字段及相关数据内容输出到日志中,并通过使用日志服务的检索能力,对执行过程中的业务数据及相关内容进行查询跟踪。
注意
如需对自定义字段进行键值查询,如
SCF_CustomKey:SCF
,请参考 日志服务索引配置 为函数日志投递的日志主题添加键值索引。为避免误操作索引配置导致函数日志查询失败,函数配置的默认投递日志主题(以
SCF_LogTopic_
为前缀命名)不支持修改索引配置。请将函数日志投递主题设置为 自定义投递 后再更新日志主题索引配置。日志主题修改索引配置后,仅对新写入的数据有效。
输出方法
当函数输出的单行日志为 JSON 格式时,JSON 内容将被解析并在投递至日志服务时按
字段:值
的方式进行投递。JSON 内容的解析仅能解析第一层,更多的嵌套结构将作为值进行记录。您可执行以下代码进行测试:
package example;public class Hello {public String mainHandler(KeyValueClass kv) {System.out.println("{\\"key1\\": \\"test value 1\\",\\"key2\\": \\"test value 2\\"}");return String.format("hello world");}}
检索方法
检索结果
在测试写入日志服务后,您可以在日志查询中检索到
key1
字段。如下图所示: