https://github.com/bool64/zapctxd
Contextualized Logging with Zap
https://github.com/bool64/zapctxd
Last synced: about 2 months ago
JSON representation
Contextualized Logging with Zap
- Host: GitHub
- URL: https://github.com/bool64/zapctxd
- Owner: bool64
- License: mit
- Created: 2020-11-28T10:08:28.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-04-25T10:02:55.000Z (almost 2 years ago)
- Last Synced: 2024-06-21T06:41:44.841Z (almost 2 years ago)
- Language: Go
- Homepage: https://pkg.go.dev/github.com/bool64/zapctxd
- Size: 42 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Contextualized Logging with Zap
This library implements [contextualized logger](https://pkg.go.dev/github.com/bool64/ctxd#Logger) with
[`zap`](https://pkg.go.dev/go.uber.org/zap).
[](https://github.com/bool64/zapctxd/actions?query=branch%3Amaster+workflow%3Atest-unit)
[](https://codecov.io/gh/bool64/zapctxd)
[](https://pkg.go.dev/github.com/bool64/zapctxd)
[](https://wakatime.com/badge/github/bool64/zapctxd)


## Example
```go
logger := zapctxd.New(zapctxd.Config{
Level: zap.WarnLevel,
DevMode: true,
StripTime: true,
})
ctx := ctxd.AddFields(context.Background(),
"foo", "bar",
)
logger.Info(ctx, "not logged due to WARN level config")
logger.Error(ctx, "something failed",
"baz", 1,
"quux", 2.2,
)
logger.Important(ctx, "logged because is important")
logger.Info(ctxd.WithDebug(ctx), "logged because of forced DEBUG mode")
logger.SetLevelEnabler(zapcore.DebugLevel)
logger.Info(ctx, "logged because logger level was changed to DEBUG")
// Output:
// ERROR zapctxd/example_test.go:26 something failed {"baz": 1, "quux": 2.2, "foo": "bar"}
// INFO zapctxd/example_test.go:31 logged because is important {"foo": "bar"}
// INFO zapctxd/example_test.go:32 logged because of forced DEBUG mode {"foo": "bar"}
// INFO zapctxd/example_test.go:35 logged because logger level was changed to DEBUG {"foo": "bar"}
```
## See Also
* [zPage to report aggregated logs](https://github.com/bool64/logz)