11package echozap
22
33import (
4+ "fmt"
45 "time"
56
67 "github.com/labstack/echo/v4"
@@ -22,20 +23,20 @@ func ZapLogger(log *zap.Logger) echo.MiddlewareFunc {
2223 req := c .Request ()
2324 res := c .Response ()
2425
25- id := req .Header .Get (echo .HeaderXRequestID )
26- if id == "" {
27- id = res .Header ().Get (echo .HeaderXRequestID )
28- }
29-
3026 fields := []zapcore.Field {
3127 zap .String ("remote_ip" , c .RealIP ()),
3228 zap .String ("time" , time .Since (start ).String ()),
33- zap .String ("request_id" , id ),
3429 zap .String ("host" , req .Host ),
35- zap .String ("method" , req .Method ),
36- zap .String ("uri" , req .RequestURI ),
30+ zap .String ("request" , fmt .Sprintf ("%s %s" , req .Method , req .RequestURI )),
3731 zap .Int ("status" , res .Status ),
38- zap .String ("size" , res .Header ().Get ("Content-Length" )),
32+ zap .Int64 ("size" , res .Size ),
33+ zap .String ("user_agent" , req .UserAgent ()),
34+ }
35+
36+ id := req .Header .Get (echo .HeaderXRequestID )
37+ if id == "" {
38+ id = res .Header ().Get (echo .HeaderXRequestID )
39+ fields = append (fields , zap .String ("request_id" , id ))
3940 }
4041
4142 n := res .Status
0 commit comments