Categorygithub.com/na4ma4/go-slogtool
repositorypackage
0.1.0
Repository: https://github.com/na4ma4/go-slogtool.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# README

go-slogtool

CI GoDoc GitHub issues GitHub forks GitHub stars GitHub license

log/slog wrappers and tools.

Install

go get -u github.com/na4ma4/go-slogtool

Tools

LogLevels

ctx := context.Background()
logmgr := slogtool.NewSlogManager(
    ctx,
    slogtool.WithDefaultLevel(slog.LevelDebug),
)

processOne := server.NewProcess(logmgr.Named("Server.Process"))

// somewhere else.

logmgr.SetLevel("Server.Process", "debug")

// and triggered somewhere else again.

logmgr.SetLevel("Server.Process", "info")

HTTP Logging Handler

r := mux.NewRouter()
r.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    w.Write([]byte("This is a catch-all route"))
})

loggedRouter := slogtool.LoggingHTTPHandler(logmgr.Named("WebServer"), r)
http.ListenAndServe(":1123", loggedRouter)