logger(feat) create logger package
This commit is contained in:
parent
46ad4d31d2
commit
2eb52068f6
|
@ -0,0 +1,44 @@
|
|||
/**
|
||||
* file: logger.go
|
||||
* author: theo technicguy
|
||||
* license: apache-2.0
|
||||
*
|
||||
* This is the logger package, providing global logging
|
||||
* facilities to hoffman-server.
|
||||
*/
|
||||
|
||||
// The logger package provides logging facilites to the
|
||||
// entire hoffman-server project.
|
||||
package logger
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"github.com/rs/zerolog"
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
|
||||
var (
|
||||
logger zerolog.Logger = log.Logger.With().Str("service", "logger").Logger()
|
||||
setupDone bool = false
|
||||
)
|
||||
|
||||
func Setup() {
|
||||
zerolog.TimeFieldFormat = zerolog.TimeFormatUnixMs
|
||||
log.Logger = zerolog.New(zerolog.ConsoleWriter{Out: os.Stderr}).With().Timestamp().Logger()
|
||||
logger.Debug().Msg("setup logger")
|
||||
setupDone = true
|
||||
}
|
||||
|
||||
func GetLogger(service string) zerolog.Logger {
|
||||
if !setupDone {
|
||||
Setup()
|
||||
}
|
||||
|
||||
logger.Debug().Str("new-service", service).Msg("generating logger")
|
||||
return log.With().Str("service", service).Logger()
|
||||
}
|
||||
|
||||
func SetLogLevel(level zerolog.Level) {
|
||||
zerolog.SetGlobalLevel(level)
|
||||
}
|
Loading…
Reference in New Issue