Files
schedule_converter/pkg/logger/logger.go

56 lines
935 B
Go
Raw Normal View History

package logger
import (
"log/slog"
"os"
)
var (
defaultLevel = slog.LevelInfo
logger *slog.Logger
)
func init() {
opts := &slog.HandlerOptions{
Level: defaultLevel,
}
logger = slog.New(slog.NewJSONHandler(os.Stdout, opts))
slog.SetDefault(logger)
}
func SetLevel(level slog.Level) {
opts := &slog.HandlerOptions{
Level: level,
}
logger = slog.New(slog.NewJSONHandler(os.Stdout, opts))
slog.SetDefault(logger)
}
func SetTextHandler() {
opts := &slog.HandlerOptions{
Level: defaultLevel,
}
logger = slog.New(slog.NewTextHandler(os.Stdout, opts))
slog.SetDefault(logger)
}
func Debug(msg string, args ...any) {
slog.Debug(msg, args...)
}
func Info(msg string, args ...any) {
slog.Info(msg, args...)
}
func Warn(msg string, args ...any) {
slog.Warn(msg, args...)
}
func Error(msg string, args ...any) {
slog.Error(msg, args...)
}
func With(args ...any) *slog.Logger {
return slog.With(args...)
}