Skip to content

Commit 4892eb1

Browse files
[middleware](Placeholder) Significantly improve perf when log message not contains % char (#83)
1 parent 7dac5ee commit 4892eb1

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

middleware/benchmark_test.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,16 @@ func getEntries() []logger.Entry {
5555
Add("my_key4", "my_value4").
5656
Add("my_key5", "my_value5"),
5757
},
58+
{
59+
Message: "test message",
60+
Level: logger.WarningLevel,
61+
Context: logger.NewContext().
62+
Add("my_key", "my_value").
63+
Add("my_key2", "my_value2").
64+
Add("my_key3", "my_value3").
65+
Add("my_key4", "my_value4").
66+
Add("my_key5", "my_value5"),
67+
},
5868
}
5969
}
6070

middleware/placeholder.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010
func Placeholder() logger.MiddlewareInterface {
1111
return func(handler logger.HandlerInterface) logger.HandlerInterface {
1212
return func(entry logger.Entry) error {
13-
if entry.Context != nil {
13+
if entry.Context != nil && strings.Contains(entry.Message, "%") {
1414
msg := entry.Message
1515
for n, f := range *entry.Context {
1616
msg = strings.Replace(msg, "%"+n+"%", f.String(), -1)

0 commit comments

Comments
 (0)