单例对象

日志组件支持单例模式,使用g.Log(单例名称)获取不同的单例日志管理对象。提供单例对象的目的在于针对不同业务场景可以使用不同配置的日志管理对象。我们推荐使用g.Log()方法获取单例对象来进行日志操作,该方法内部会自动读取配置文件并初始化单例对象,该初始化操作仅会执行一次。

配置文件(推荐)

日志组件支持配置文件,当使用g.Log(单例名称)获取Logger单例对象时,将会自动通过默认的配置管理对象获取对应的Logger配置。默认情况下会读取logger.单例名称配置项,当该配置项不存在时,将会读取默认的logger配置项。配置项请参考配置对象结构定义:

完整配置文件配置项及说明如下,其中配置项名称不区分大小写:

示例2,多个配置项

多个Logger的配置示例:

我们可以通过单例对象名称获取对应配置的Logger单例对象:

配置方法(高级)

配置方法用于模块化使用glog时由开发者自己进行配置管理。

简要说明:

  1. 可以通过SetConfigSetConfigWithMap来设置。
  2. 主要注意的是,配置项在Logger对象执行日志输出之前设置,避免并发安全问题。

我们可以使用SetConfigWithMap方法通过Key-Value键值对来设置/修改Logger的特定配置,其余的配置使用默认配置即可。其中Key的名称即是Config这个struct中的属性名称,并且不区分大小写,单词间也支持使用-/_/空格符号连接,具体可参考 类型转换-Struct转换 章节的转换规则。

简单示例:

其中,level配置项使用字符串配置,按照日志级别支持以下配置:DEBU < INFO < NOTI < WARN < ERRO < CRIT,也支持ALL, DEV, PROD常见部署模式配置名称。配置项字符串不区分大小写。关于日志级别的详细介绍请查看 章节。