gommunicator/internal/logger/logger.go

35 lines
617 B
Go

package logger
import (
"log/slog"
"os"
prettyLogger "github.com/charmbracelet/log"
)
const (
envDev = "dev"
envProd = "prod"
)
func SetupLogger(env string) *slog.Logger {
var log *slog.Logger
switch env {
case envDev:
handler := prettyLogger.NewWithOptions(os.Stdout, prettyLogger.Options{
Level: prettyLogger.DebugLevel,
ReportTimestamp: true,
})
log = slog.New(handler)
case envProd:
handler := prettyLogger.NewWithOptions(os.Stdout, prettyLogger.Options{
Level: prettyLogger.InfoLevel,
ReportTimestamp: true,
})
log = slog.New(handler)
}
return log
}