tencent cloud

文档反馈

日志说明

最后更新时间:2022-04-29 15:55:43

    日志开发

    您可以在程序中使用如下语句来完成日志输出:

    • fmt.Println
    • 或使用 fmt.Sprintf 类似方法

    例如,执行以下代码,可以在函数日志中查询输出内容。

    package main
    import (
      "context"
      "fmt"
      "github.com/tencentyun/scf-go-lib/cloudfunction"
    )
    type DefineEvent struct {
      // test event define
      Key1 string `json:"key1"`
      Key2 string `json:"key2"`
    }
    func hello(ctx context.Context, event DefineEvent) (string, error) {
      fmt.Println("key1:", event.Key1)
      fmt.Println("key2:", event.Key2)
      return fmt.Sprintf("Hello %s!", event.Key1), nil
    }
    func main() {
      // Make the handler available for Remote Procedure Call by Cloud Function
      cloudfunction.Start(hello)
    }
    

    日志查询

    当前函数日志均会投递至腾讯云日志服务 CLS 中,您可对函数日志进行投递配置,详情可参见 日志投递配置
    您可通过云函数的日志查询界面或通过日志服务的查询界面,查询函数执行日志。日志查询方法详情可参见 日志检索教程

    说明:

    函数日志投递到日志服务日志集 LogSet 和日志主题 LogTopic,均可以通过函数配置查询。

    自定义日志字段

    当前在函数代码中使用简单日志打印语句,将会在投递到日志服务时,记录在 SCF_Message 字段中。日志服务的字段说明可见 索引说明

    目前云函数已经支持在输出到日志服务的内容中增加自定义字段,通过增加自定义字段,您可以将业务字段及相关数据内容输出到日志中,并通过使用日志服务的检索能力,对执行过程中的业务数据及相关内容进行查询跟踪。

    注意:

    • 如需对自定义字段进行键值查询,如SCF_CustomKey:SCF,请参考 日志服务索引配置 为函数日志投递的日志主题添加键值索引。
    • 为避免误操作索引配置导致函数日志查询失败,函数配置的默认投递日志主题(以 SCF_LogTopic_ 为前缀命名)不支持修改索引配置。请将函数日志投递主题设置为 自定义投递 后再更新日志主题索引配置。
    • 日志主题修改索引配置后,仅对新写入的数据有效。

    输出方法

    当函数输出的单行日志为 JSON 格式时,JSON 内容将被解析并在投递至日志服务时按字段:值的方式进行投递。JSON 内容的解析仅能解析第一层,更多的嵌套结构将作为值进行记录。

    您可执行以下代码进行测试:

    package main
    import (
      "context"
      "fmt"
      "github.com/tencentyun/scf-go-lib/cloudfunction"
    )
    type DefineEvent struct {
      Key1 string `json:"key1"`
      Key2 string `json:"key2"`
    }
    func hello(ctx context.Context, event DefineEvent) (string, error) {
      m := map[string]string{"key1": "test value 1", "key2": "test value 2"}
    data, _ := json.Marshal(m)
    fmt.Println(string(data))
      return fmt.Sprintf("hello world"), nil
    }
    func main() {
      cloudfunction.Start(hello)
    }
    

    检索方法

    在使用上述代码进行测试运行后,您可在函数-日志查询-高级检索中通过如下语句进行检索:

    检索结果
    在测试写入日志服务后,您可以在日志查询中检索到 key1字段。如下图所示:

    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持