Appearance
日志配置
日志配置定义系统输出日志的方式。
说明
日志配置文件是一个 YAML 文件,文件名为log.yaml
,它的内容是一个 YAML 对象,包含以下字段:
console:
控制台输出相关配置,它有 4 个子字段,分别是:
- enable:
是否控制台输出,默认值:false - level:
日志输出级别,可选值有:DEBUG,INFO,WARN,ERROR,PANIC - caller:
是否输出调用的文件和行号,默认值:false - absPath:
是否输出绝对路径,默认值:false
file:
文件输出相关配置,它有 7 个子字段,分别是:
- enable:
是否文件输出,默认值:false - level:
日志输出级别,可选值有:DEBUG,INFO,WARN,ERROR,PANIC - caller:
是否输出调用的文件和行号,默认值:false - path:
日志文件存放目录,不存在则自动创建,默认值:./logs - maxSize:
单个日志文件大小,单位为 M,它是一个正整数值,默认值:100 - maxAge:
日志文件保留天数,它是一个正整数值或者 0,默认值:0,表示不根据日志文件存留时间删除日志文件 - maxDirSize:
日志文件总大小,单位为 M,它是一个正整数值,默认值:0,表示不根据日志文件总大小删除日志文件
特别的,如果 MaxDirSize 和 MaxAge 都为 0,则不会删除旧的日志文件。
panic:
panic 时堆栈信息输出相关配置,它有 3 个子字段,分别是:
- enable:
是否记录 panic 时堆栈信息,默认值:false - path:
panic 时堆栈信息输出目录,不存在则自动创建,默认值:./panic_stacks - maxCount:
panic 时堆栈信息文件最大数量,超过则删除最旧的,0 表示不限制,默认值:0
important:
重要日志配置相关配置,它有 7 个子字段,分别是:
- enable:
是否开启重要日志单独记录,默认值:false - level:
日志输出级别,可选值有:DEBUG,INFO,WARN,ERROR,PANIC - caller:
是否输出调用的文件和行号,默认值:false - path:
日志文件存放目录,不存在则自动创建,默认值:./logs - maxSize:
单个日志文件大小,单位为 M,它是一个正整数值,默认值:100 - maxAge:
日志文件保留天数,它是一个正整数值或者 0,默认值:0,表示不根据日志文件存留时间删除日志文件 - maxDirSize:
日志文件总大小,单位为 M,它是一个正整数值,默认值:0,表示不根据日志文件总大小删除日志文件
特别的,如果 MaxDirSize 和 MaxAge 都为 0,则不会删除旧的日志文件。
示例
一个完整日志配置文件内容如下:
yaml
console:
enable: true #是否控制台输出
level: INFO #控制台输出日志级别
caller: true #是否输出调用的文件和行号
absPath: false #控制台输出绝对路径
file:
enable: true #是否文件输出
level: INFO #文件输出级别
caller: true #是否输出调用的文件和行号
path: ./logs #文件路径 不存在则自动创建
maxSize: 10 # 单个日志文件大小限制,单位为 M
maxAge: 0 #日志文件最大保存时间,单位为天
maxDirSize: 100 #日志目录总大小限制,单位为 M
panic:
enable: true #是否记录 panic 时堆栈信息
path: ./panic_stacks #panic 时堆栈信息输出目录,不存在则自动创建
maxCount: 10 # panic 时堆栈信息文件最大数量,超过则删除最旧的,0 表示不限制
important: #重要日志配置
enable: true #是否开启重要日志单独记录
level: INFO #文件输出级别
caller: true #是否输出调用的文件和行号
path: ./logs #文件路径 不存在则自动创建
maxSize: 10 # 单个日志文件大小限制,单位为 M
maxAge: 0 #日志文件最大保存时间,单位为天
maxDirSize: 100 #日志目录总大小限制,单位为 M