Change logging to be json comaptible

This commit is contained in:
2026-05-03 22:42:43 +02:00
parent d1f6782c96
commit 1a82f21202
14 changed files with 501 additions and 35 deletions

40
internal/logger/logger.go Normal file
View File

@@ -0,0 +1,40 @@
package logger
import (
"os"
"time"
"github.com/rs/zerolog"
)
var Log zerolog.Logger
func init() {
output := os.Stderr
logFormat := os.Getenv("LOG_FORMAT")
if logFormat == "json" {
Log = zerolog.New(output).With().Timestamp().Logger()
} else {
Log = zerolog.New(zerolog.ConsoleWriter{
Out: output,
TimeFormat: time.RFC3339,
}).With().Timestamp().Logger()
}
level := os.Getenv("LOG_LEVEL")
switch level {
case "debug":
Log = Log.Level(zerolog.DebugLevel)
case "warn":
Log = Log.Level(zerolog.WarnLevel)
case "error":
Log = Log.Level(zerolog.ErrorLevel)
default:
Log = Log.Level(zerolog.InfoLevel)
}
}
func With() zerolog.Context {
return Log.With()
}