2026-01-15 13:10:53 -07:00

33 lines
590 B
Go

package loggers
import (
"fmt"
"io"
"os"
"github.com/haydenhargreaves/Potion/internal/infrastructure/logging"
)
// TODO: Implement the Logger interface
type ConsoleLogger struct {
writer io.Writer
}
var _ logging.Logger = (*ConsoleLogger)(nil)
func NewConsoleLogger() ConsoleLogger {
return ConsoleLogger{
writer: os.Stdout,
}
}
func (l *ConsoleLogger) Log(level logging.LogLevel, format string, v ...any) {
prefix := fmt.Appendf(nil, "[%s] ", level)
bytes := fmt.Appendf(prefix, format, v...)
// WARN: Do we need to worry about errors?
_, _ = l.writer.Write(bytes)
}