Skip to content

Commit 731b1c7

Browse files
committed
chore(logger): replace trace ID with custom field
1 parent 2045af8 commit 731b1c7

File tree

7 files changed

+8
-25
lines changed

7 files changed

+8
-25
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ func main() {
7171
c.String(http.StatusOK, "pong "+fmt.Sprint(time.Now().Unix()))
7272
})
7373

74+
// add custom fields.
7475
r.GET("/id", requestid.New(requestid.WithGenerator(func() string {
7576
return "foobar"
7677
})), logger.SetLogger(
@@ -79,6 +80,7 @@ func main() {
7980
Str("id", requestid.Get(c)).
8081
Str("foo", "bar").
8182
Str("path", c.Request.URL.Path).
83+
Str("traceID", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String()).
8284
Logger()
8385
}),
8486
), func(c *gin.Context) {

_example/go.mod

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,5 @@ require (
77
github.com/gin-contrib/requestid v0.0.5
88
github.com/gin-gonic/gin v1.8.1
99
github.com/rs/zerolog v1.28.0
10+
go.opentelemetry.io/otel/trace v1.10.0
1011
)

_example/main.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
"github.com/gin-gonic/gin"
1212
"github.com/rs/zerolog"
1313
"github.com/rs/zerolog/log"
14+
"go.opentelemetry.io/otel/trace"
1415
)
1516

1617
var rxURL = regexp.MustCompile(`^/regexp\d*`)
@@ -58,6 +59,7 @@ func main() {
5859
c.String(http.StatusOK, "pong "+fmt.Sprint(time.Now().Unix()))
5960
})
6061

62+
// add custom fields.
6163
r.GET("/id", requestid.New(requestid.WithGenerator(func() string {
6264
return "foobar"
6365
})), logger.SetLogger(
@@ -66,6 +68,7 @@ func main() {
6668
Str("id", requestid.Get(c)).
6769
Str("foo", "bar").
6870
Str("path", c.Request.URL.Path).
71+
Str("traceID", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String()).
6972
Logger()
7073
}),
7174
), func(c *gin.Context) {

go.mod

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,4 @@ require (
77
github.com/mattn/go-isatty v0.0.16
88
github.com/rs/zerolog v1.28.0
99
github.com/stretchr/testify v1.8.0
10-
go.opentelemetry.io/otel/trace v1.10.0
1110
)

go.sum

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,6 @@ github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE
77
github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=
88
github.com/gin-gonic/gin v1.8.1 h1:4+fr/el88TOO3ewCmQr8cx/CtZ/umlIRIs5M4NTNjf8=
99
github.com/gin-gonic/gin v1.8.1/go.mod h1:ji8BvRH1azfM+SYow9zQ6SZMvR8qOMZHmsCuWR9tTTk=
10-
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
11-
github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
12-
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
1310
github.com/go-playground/assert/v2 v2.0.1 h1:MsBgLAaY856+nPRTKrp3/OZK38U/wa0CcBYNjji3q3A=
1411
github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
1512
github.com/go-playground/locales v0.14.0 h1:u50s323jtVGugKlcYeyzC0etD1HifMjqmJqb8WugfUU=
@@ -22,9 +19,8 @@ github.com/goccy/go-json v0.9.7 h1:IcB+Aqpx/iMHu5Yooh7jEzJk1JZ7Pjtmys2ukPr7EeM=
2219
github.com/goccy/go-json v0.9.7/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
2320
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
2421
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
22+
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
2523
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
26-
github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
27-
github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
2824
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
2925
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
3026
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
@@ -71,10 +67,6 @@ github.com/ugorji/go v1.2.7 h1:qYhyWUUd6WbiM+C6JZAUkIJt/1WrjzNHY9+KCIjVqTo=
7167
github.com/ugorji/go v1.2.7/go.mod h1:nF9osbDWLy6bDVv/Rtoh6QgnvNDpmCalQV5urGCCS6M=
7268
github.com/ugorji/go/codec v1.2.7 h1:YPXUKf7fYbp/y8xloBqZOw2qaVggbfwMlI8WM3wZUJ0=
7369
github.com/ugorji/go/codec v1.2.7/go.mod h1:WGN1fab3R1fzQlVQTkfxVtIBhWDRqOviHU95kRgeqEY=
74-
go.opentelemetry.io/otel v1.10.0 h1:Y7DTJMR6zs1xkS/upamJYk0SxxN4C9AqRd77jmZnyY4=
75-
go.opentelemetry.io/otel v1.10.0/go.mod h1:NbvWjCthWHKBEUMpf0/v8ZRZlni86PpGFEMA9pnQSnQ=
76-
go.opentelemetry.io/otel/trace v1.10.0 h1:npQMbR8o7mum8uF95yFbOEJffhs1sbCOfDh8zAJiH5E=
77-
go.opentelemetry.io/otel/trace v1.10.0/go.mod h1:Sij3YYczqAdz+EhmGhE6TpTxUO5/F/AzrK+kxfGqySM=
7870
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97 h1:/UOmuWzQfxxo9UtlXMwuQU8CMgg1eZXqTRwkSQJWKOI=
7971
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
8072
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 h1:qWPm9rbaAMKs8Bq/9LRpbMqxWRVUAQwMI9fVrssnTfw=
@@ -91,6 +83,7 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
9183
golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M=
9284
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
9385
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
86+
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
9487
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
9588
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
9689
google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw=

logger.go

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010
"github.com/gin-gonic/gin"
1111
"github.com/mattn/go-isatty"
1212
"github.com/rs/zerolog"
13-
"go.opentelemetry.io/otel/trace"
1413
)
1514

1615
type Fn func(*gin.Context, zerolog.Logger) zerolog.Logger
@@ -31,8 +30,6 @@ type config struct {
3130
clientErrorLevel zerolog.Level
3231
// the log level used for request with status code >= 500
3332
serverErrorLevel zerolog.Level
34-
// optionally log Open Telemetry TraceID
35-
traceID bool
3633
}
3734

3835
// SetLogger initializes the logging middleware.
@@ -110,12 +107,6 @@ func SetLogger(opts ...Option) gin.HandlerFunc {
110107
Dur("latency", latency).
111108
Str("user_agent", c.Request.UserAgent()).Logger()
112109

113-
if cfg.traceID {
114-
l = l.With().
115-
Str("traceID", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String()).
116-
Logger()
117-
}
118-
119110
msg := "Request"
120111
if len(c.Errors) > 0 {
121112
msg = c.Errors.String()

options.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,3 @@ func WithServerErrorLevel(lvl zerolog.Level) Option {
7474
c.serverErrorLevel = lvl
7575
})
7676
}
77-
78-
func WithAddTraceID(v bool) Option {
79-
return optionFunc(func(c *config) {
80-
c.traceID = v
81-
})
82-
}

0 commit comments

Comments
 (0)