Files
blog/internal/echo/logger/logger.go
2026-02-18 20:25:24 -05:00

25 lines
526 B
Go

package logger
import (
"log/slog"
"os"
"github.com/charmbracelet/log"
)
// NewCharmSlog returns a standard *slog.Logger powered by Charmbracelet
func NewCharmSlog() *slog.Logger {
// 1. Initialize Charmbracelet
options := log.Options{
ReportTimestamp: true,
ReportCaller: false,
Level: log.DebugLevel,
Prefix: "ECHO",
}
handler := log.NewWithOptions(os.Stderr, options)
// 2. Return as *slog.Logger
// Charmbracelet's Logger implements the slog.Handler interface
return slog.New(handler)
}