Skip to content

Commit

Permalink
[middleware](Placeholder) Significantly improve perf when log message…
Browse files Browse the repository at this point in the history
… not contains % char (#83)
  • Loading branch information
instabledesign authored Feb 17, 2023
1 parent 7dac5ee commit 4892eb1
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 1 deletion.
10 changes: 10 additions & 0 deletions middleware/benchmark_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,16 @@ func getEntries() []logger.Entry {
Add("my_key4", "my_value4").
Add("my_key5", "my_value5"),
},
{
Message: "test message",
Level: logger.WarningLevel,
Context: logger.NewContext().
Add("my_key", "my_value").
Add("my_key2", "my_value2").
Add("my_key3", "my_value3").
Add("my_key4", "my_value4").
Add("my_key5", "my_value5"),
},
}
}

Expand Down
2 changes: 1 addition & 1 deletion middleware/placeholder.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import (
func Placeholder() logger.MiddlewareInterface {
return func(handler logger.HandlerInterface) logger.HandlerInterface {
return func(entry logger.Entry) error {
if entry.Context != nil {
if entry.Context != nil && strings.Contains(entry.Message, "%") {
msg := entry.Message
for n, f := range *entry.Context {
msg = strings.Replace(msg, "%"+n+"%", f.String(), -1)
Expand Down

0 comments on commit 4892eb1

Please sign in to comment.