-
-
Notifications
You must be signed in to change notification settings - Fork 5
glogging
Tony Wong edited this page Mar 1, 2023
·
1 revision
glogging 包设计目标是支持日志级别和自动切割, 通过对 go.uber.org/zap 和 github.com/natefinch/lumberjack 包封装分别实现这两个需求。
打印日志应该说明 when what where how why,因此打印日志应该带上文件名、行数信息,这也是选用 zap 而没选用其他日志库原因之一。
自定义日志级别和日志切割(默认 100 MB 一个、保留 30 天,最多保留 15 个)
package main
import (
"github.com/giant-stone/go/glogging"
)
func main() {
glogging.Init([]string{"stderr"}, "debug")
// or glogging.Init([]string{"/data/foo/main.log"}, "warn")
glogging.Sugared.Debug("hello")
glogging.Sugared.Error("hello")
glogging.Sugared.Warnf("hello %s", "world")
}