feat: adding request query (#13)
* feat: adding request query * Update README.md --------- Co-authored-by: Samuel Berthe <dev@samuel-berthe.fr>
This commit is contained in:
@@ -81,7 +81,7 @@ router.GET("/pong", func(c *gin.Context) {
|
||||
router.Run(":1234")
|
||||
|
||||
// output:
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" env=production request.time=2023-10-15T20:32:58.626+02:00 request.method=GET request.path=/ request.route="" request.ip=127.0.0.1:63932 request.length=0 response.time=2023-10-15T20:32:58.926+02:00 response.latency=100ms response.status=200 response.length=7 id=""
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" env=production request.time=2023-10-15T20:32:58.626+02:00 request.method=GET request.path=/ request.query="" request.route="" request.ip=127.0.0.1:63932 request.length=0 response.time=2023-10-15T20:32:58.926+02:00 response.latency=100ms response.status=200 response.length=7 id=""
|
||||
```
|
||||
|
||||
### OTEL
|
||||
@@ -200,7 +200,7 @@ router.GET("/pong", func(c *gin.Context) {
|
||||
router.Run(":1234")
|
||||
|
||||
// output:
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" env=production request.time=2023-10-15T20:32:58Z request.method=GET request.path=/ request.route="" request.ip=127.0.0.1:63932 request.length=0 response.time=2023-10-15T20:32:58Z response.latency=100ms response.status=200 response.length=7 id=""
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" env=production request.time=2023-10-15T20:32:58Z request.method=GET request.path=/ request.query="" request.route="" request.ip=127.0.0.1:63932 request.length=0 response.time=2023-10-15T20:32:58Z response.latency=100ms response.status=200 response.length=7 id=""
|
||||
```
|
||||
|
||||
### Using custom logger sub-group
|
||||
@@ -223,7 +223,7 @@ router.GET("/pong", func(c *gin.Context) {
|
||||
router.Run(":1234")
|
||||
|
||||
// output:
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" env=production http.request.time=2023-10-15T20:32:58.626+02:00 http.request.method=GET http.request.path=/ http.request.route="" http.request.ip=127.0.0.1:63932 http.request.length=0 http.response.time=2023-10-15T20:32:58.926+02:00 http.response.latency=100ms http.response.status=200 http.response.length=7 http.id=""
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" env=production http.request.time=2023-10-15T20:32:58.626+02:00 http.request.method=GET http.request.path=/ request.query="" http.request.route="" http.request.ip=127.0.0.1:63932 http.request.length=0 http.response.time=2023-10-15T20:32:58.926+02:00 http.response.latency=100ms http.response.status=200 http.response.length=7 http.id=""
|
||||
```
|
||||
|
||||
### Add logger to a single route
|
||||
@@ -269,7 +269,7 @@ router.GET("/pong", func(c *gin.Context) {
|
||||
router.Run(":1234")
|
||||
|
||||
// output:
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" environment=production server=gin/1.9.0 gin_mode=release request.time=2023-10-15T20:32:58.626+02:00 request.method=GET request.path=/ request.route="" request.ip=127.0.0.1:63932 request.length=0 response.time=2023-10-15T20:32:58.926+02:00 response.latency=100ms response.status=200 response.length=7 id="" foo=bar
|
||||
// time=2023-10-15T20:32:58.926+02:00 level=INFO msg="Incoming request" environment=production server=gin/1.9.0 gin_mode=release request.time=2023-10-15T20:32:58.626+02:00 request.method=GET request.path=/ request.query="" request.route="" request.ip=127.0.0.1:63932 request.length=0 response.time=2023-10-15T20:32:58.926+02:00 response.latency=100ms response.status=200 response.length=7 id="" foo=bar
|
||||
```
|
||||
|
||||
### JSON output
|
||||
@@ -292,7 +292,7 @@ router.GET("/pong", func(c *gin.Context) {
|
||||
router.Run(":1234")
|
||||
|
||||
// output:
|
||||
// {"time":"2023-10-15T20:32:58.926+02:00","level":"INFO","msg":"Incoming request","gin_mode":"GIN_MODE","env":"production","http":{"request":{"time":"2023-10-15T20:32:58.626+02:00","method":"GET","path":"/","route":"","ip":"127.0.0.1:55296","length":0},"response":{"time":"2023-10-15T20:32:58.926+02:00","latency":100000,"status":200,"length":7},"id":""}}
|
||||
// {"time":"2023-10-15T20:32:58.926+02:00","level":"INFO","msg":"Incoming request","gin_mode":"GIN_MODE","env":"production","http":{"request":{"time":"2023-10-15T20:32:58.626+02:00","method":"GET","path":"/","query":"","route":"","ip":"127.0.0.1:55296","length":0},"response":{"time":"2023-10-15T20:32:58.926+02:00","latency":100000,"status":200,"length":7},"id":""}}
|
||||
```
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
@@ -102,6 +102,7 @@ func NewWithConfig(logger *slog.Logger, config Config) gin.HandlerFunc {
|
||||
return func(c *gin.Context) {
|
||||
start := time.Now()
|
||||
path := c.Request.URL.Path
|
||||
query := c.Request.URL.RawQuery
|
||||
|
||||
requestID := uuid.New().String()
|
||||
if config.WithRequestID {
|
||||
@@ -136,6 +137,7 @@ func NewWithConfig(logger *slog.Logger, config Config) gin.HandlerFunc {
|
||||
slog.String("method", method),
|
||||
slog.String("host", host),
|
||||
slog.String("path", path),
|
||||
slog.String("query", query),
|
||||
slog.String("route", route),
|
||||
slog.String("ip", ip),
|
||||
slog.String("referer", referer),
|
||||
|
||||
Reference in New Issue
Block a user