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.
30 lines
437 B
30 lines
437 B
package logger
|
|
|
|
import (
|
|
"os"
|
|
"sync"
|
|
|
|
"git.mnrva.dev/gabehf/go-project-template/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()
|
|
})
|
|
|
|
return log
|
|
}
|