Structured logger backed by log/slog with request-context enrichment, extra-field context helpers, and duck-typed automatic error enrichment. What's included: - `Logger` interface with Debug / Info / Warn / Error / With / WithContext; `New(Options)` constructor writing to os.Stdout - `WithRequestID` / `GetRequestID` and `WithField` / `WithFields` context helpers — package owns both context keys - Automatic error_code and context-field enrichment in Logger.Error via duck-typed errorWithCode / errorWithContext interfaces (no xerrors import) Tested-via: todo-api POC integration Reviewed-against: docs/adr/
8 lines
273 B
Go
8 lines
273 B
Go
package logz_test
|
|
|
|
import "code.nochebuena.dev/go/logz"
|
|
|
|
// Verify New returns a Logger — the concrete slogLogger type satisfies the interface.
|
|
// If any method is removed or its signature changes, this file fails to compile.
|
|
var _ logz.Logger = logz.New(logz.Options{})
|