Home

Handler samber/slog-logrus

Handlers
Bench Tests
Verify Tests
Summary Links

samber/slog-logrus is a wrapper around the pre-existing sirupsen/logrus logging library.

samber/slog-logrus
sirupsen/logrus

Benchmark Data

Benchmark Runs Ns/Op Allocs/Op Bytes/Op MB/Sec
Attributes 65,823 17,797.00 94 9,079 22.87
Big Group 3,158 371,154.00 4,024 251,921 28.36
Disabled 319,968,763 3.75 0 0 0.00
Key Values 67,507 17,759.00 94 9,079 22.92
Logging 2,917 403,544.00 2,704 202,592 20.89
Simple 355,820 3,242.00 26 1,481 22.52
Simple Source 157,461 7,436.00 63 4,276 35.91
With Attrs Attributes 44,931 26,774.00 139 16,437 24.05
With Attrs Key Values 44,371 26,775.00 139 16,435 24.05
With Attrs Simple 67,767 17,645.00 93 8,841 24.88
With Group Attributes 58,345 20,933.00 168 15,348 18.01
With Group Key Values 46,758 21,407.00 168 15,348 17.61

Check box to see charts

Warnings

Required
Resolver LogValuer objects are not resolved
Verify: Resolve Group

Verify: Resolve Group With

Verify: Resolve Valuer

Verify: Resolve With

SlogTest Failure of embedded slog/slogtest
Verify: Slog Test

unexpected key "time"
a Handler should ignore a zero Record.Time

missing key "c"
a Handler should inline the Attrs of a group with an empty key

"k"
got map[string]interface {}{}, want "replaced": a Handler should call Resolve on attribute values

"b"
got map[string]interface {}{}, want "v2": a Handler should call Resolve on attribute values in groups

"k"
got map[string]interface {}{}, want "replaced": a Handler should call Resolve on attribute values from WithAttrs

"b"
got map[string]interface {}{}, want "v2": a Handler should call Resolve on attribute values in groups from WithAttrs

ZeroTime Zero time is logged
Verify: Zero Time

2025-02-16T01:41:19Z

Implied
NoReplAttrBasic HandlerOptions.ReplaceAttr not available for basic fields
Verify: Replace Attr Basic

too many attributes: 4

time field still exists

msg field still exists

source == map[file:/home/runner/work/go-slog/go-slog/verify/tests/replace.go function:github.com/madkins23/go-slog/verify/tests.(*SlogTestSuite).TestReplaceAttrBasic line:89]

Verify: Replace Attr Fn Level Case

level value not null

Verify: Replace Attr Fn Multi

Verify: Replace Attr Fn Remove Empty Key

Verify: Replace Attr Fn Remove Time

time value not empty string

Suggested
LevelCase Log level in lowercase
Verify: Canceled Context

'info'

Verify: Canceled Context

'info'

Verify: Canceled Context

'info'

Verify: Key Case

'debug'

Verify: Key Case

'info'

Verify: Key Case

'error'

Verify: Keys

'info'

Verify: Source Key

'info'

Verify: Zero PC

'info'

Verify: Zero Time

'info'

LevelWrong Log level is incorrect
Verify: Key Case

should be 'WARN', not 'warning'

NoEmptyName Attributes with empty names are not logged
Verify: Attribute Empty Name

Verify: Attribute With Empty Name

Verify: Attributes Not Empty

Verify: Attributes With Not Empty

Administrative
Unused Unused Warnings(s)
Verify: Group Inline

GroupInline

Verify: With Group Inline

GroupInline

Verify: Zero PC

ZeroPC