You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
552 B

package logger
import (
"os"
"sync"
"github.com/gabehf/kanpeki/internal/cfg"
"github.com/rs/zerolog"
)
var once sync.Once
var log zerolog.Logger
func Get(cfg *cfg.Config) zerolog.Logger {
once.Do(func() {
zerolog.TimeFieldFormat = zerolog.TimeFormatUnixMs
logLevel := cfg.LogLevel
log = zerolog.New(os.Stdout).
Level(zerolog.Level(logLevel)).
With().
Timestamp().
Logger()
if os.Getenv("LOG_LEVEL") == "" {
log.Info().Msg("environment variable LOG_LEVEL unset, using default value 0 (debug)")
}
})
return log
}