Categories: GoFrame 教程

GoFrame 日志组件-Context

从​v2​版本开始,​glog​组件将​ctx​上下文变量作为日志打印的必需参数。

自定义CtxKeys

日志组件支持自定义的键值打印,通过​ctx​上下文变量中读取。

使用配置

# 日志组件配置
logger:
  Path:    "/var/log/my-app"
  Level:   "all"
  Stdout:  false
  CtxKeys: ["RequestId"]

其中​CtxKeys​用于配置需要从​context.Context​接口对象中读取并输出的键名。

日志输出

在输出日志的时候,需要通过​Ctx​链式操作方法指定输出的​context.Context​接口对象,例如:

ctx := context.WithValue(context.Background(), "RequestId", "123456789")
g.Log().Error(ctx,"runtime error")

// May Output:
// 2020-06-08 20:17:03.630 [ERRO] {123456789} runtime error
// Stack:
// ...

日志示例


传递给Handler

如果开发者自定义了日志对象的​Handler​,那么每个日志打印传递的​ctx​上下文变量将会传递给​Handler​中。

链路跟踪支持

glog​组件支持​OpenTelemetry​标准的链路跟踪特性,该支持是内置的,无需开发者做任何设置。


唐伯虎点蚊香

前端小白,想各位学习!

Share
Published by
唐伯虎点蚊香

Recent Posts

聊聊vue3中的defineProps

在Vue 3中,defineP…

1 周 ago

在 Chrome 中删除、允许和管理 Cookie

您可以选择删除现有 Cooki…

2 周 ago

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

3 周 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

4 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

1 月 ago

Vue3:手动清理keep-alive组件缓存的方法

Vue3中手动清理keep-a…

1 月 ago