logger.go

 1package util
 2
 3import (
 4	"log"
 5)
 6
 7// Logger defines a minimal logging interface
 8type Logger interface {
 9	Infof(format string, v ...any)
10	Errorf(format string, v ...any)
11}
12
13// --- Standard Library Logger Wrapper ---
14
15// DefaultStdLogger implements Logger using the standard library's log.Logger.
16func DefaultLogger() Logger {
17	return &stdLogger{
18		logger: log.Default(),
19	}
20}
21
22// stdLogger wraps the standard library's log.Logger.
23type stdLogger struct {
24	logger *log.Logger
25}
26
27func (l *stdLogger) Infof(format string, v ...any) {
28	l.logger.Printf("INFO: "+format, v...)
29}
30
31func (l *stdLogger) Errorf(format string, v ...any) {
32	l.logger.Printf("ERROR: "+format, v...)
33}