package slog import ( "io" "os" "sync" ) type StdoutLogger struct { w io.Writer m sync.Mutex } func (s *StdoutLogger) Write(p []byte) (n int, err error) { s.m.Lock() defer s.m.Unlock() return s.w.Write(p) } func NewStdoutLogger() io.Writer { ret := &StdoutLogger{} ret.w = os.Stdout return ret }