Skip to content
This repository was archived by the owner on Apr 2, 2024. It is now read-only.

Commit 232756e

Browse files
Blagoj Atanasovskiatanasovskib
authored andcommitted
Fix log.go always being the caller in the logs
1 parent 066695e commit 232756e

File tree

1 file changed

+27
-9
lines changed

1 file changed

+27
-9
lines changed

pkg/log/log.go

Lines changed: 27 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,34 @@ package log
88
import (
99
"fmt"
1010
"os"
11+
"time"
1112

1213
"github.com/go-kit/kit/log"
1314
"github.com/go-kit/kit/log/level"
14-
"github.com/prometheus/common/promlog"
1515
)
1616

1717
var (
1818
// Application wide logger
1919
logger log.Logger
20+
21+
// logger timestamp format
22+
timestampFormat = log.TimestampFormat(
23+
func() time.Time { return time.Now().UTC() },
24+
"2006-01-02T15:04:05.000Z07:00",
25+
)
2026
)
2127

2228
// Init starts logging given the minimum log level
2329
func Init(logLevel string) error {
24-
allowedLevel := promlog.AllowedLevel{}
25-
err := allowedLevel.Set(logLevel)
30+
var l log.Logger
31+
l = log.NewJSONLogger(log.NewSyncWriter(os.Stderr))
32+
logLevelOption, err := parseLogLevel(logLevel)
2633
if err != nil {
2734
return err
2835
}
2936

30-
config := promlog.Config{
31-
Level: &allowedLevel,
32-
Format: &promlog.AllowedFormat{},
33-
}
34-
35-
logger = promlog.New(&config)
37+
l = level.NewFilter(l, logLevelOption)
38+
logger = log.With(l, "ts", timestampFormat, "caller", log.Caller(4))
3639
return nil
3740
}
3841

@@ -71,3 +74,18 @@ type CustomCacheLogger struct{}
7174
func (c *CustomCacheLogger) Printf(format string, v ...interface{}) {
7275
_ = level.Debug(logger).Log("msg", fmt.Sprintf(format, v...))
7376
}
77+
78+
func parseLogLevel(logLevel string) (level.Option, error) {
79+
switch logLevel {
80+
case "debug":
81+
return level.AllowDebug(), nil
82+
case "info":
83+
return level.AllowInfo(), nil
84+
case "warn":
85+
return level.AllowWarn(), nil
86+
case "error":
87+
return level.AllowError(), nil
88+
default:
89+
return nil, fmt.Errorf("unrecognized log level %q", logLevel)
90+
}
91+
}

0 commit comments

Comments
 (0)