setupMiddleware configures all middleware
()
| 193 | |
| 194 | // setupMiddleware configures all middleware |
| 195 | func (s *Server) setupMiddleware() { |
| 196 | // Recovery middleware |
| 197 | s.router.Use(gin.Recovery()) |
| 198 | |
| 199 | // Request ID middleware |
| 200 | s.router.Use(requestIDMiddleware()) |
| 201 | |
| 202 | // Tracing middleware (should be early in the chain) |
| 203 | if s.config.Observability.Enabled && s.config.Observability.Tracing.Enabled && s.tracing != nil { |
| 204 | s.router.Use(s.tracing.Middleware()) |
| 205 | } |
| 206 | |
| 207 | // Logging middleware |
| 208 | if s.config.Logging.Structured { |
| 209 | s.router.Use(structuredLoggingMiddleware(s.config.Logging)) |
| 210 | } else { |
| 211 | s.router.Use(gin.Logger()) |
| 212 | } |
| 213 | |
| 214 | // CORS middleware |
| 215 | if s.config.CORS.Enabled { |
| 216 | s.router.Use(corsMiddleware(s.config.CORS)) |
| 217 | } |
| 218 | |
| 219 | // Metrics middleware |
| 220 | if s.config.Observability.Enabled && s.config.Observability.Metrics.Enabled && s.metrics != nil { |
| 221 | s.router.Use(s.metrics.Middleware()) |
| 222 | } |
| 223 | } |
| 224 | |
| 225 | // setupRoutes configures all routes |
| 226 | func (s *Server) setupRoutes() { |
no test coverage detected