modelRT/middleware
douxu 03bd058558 feat: implement end-to-end distributed tracing for HTTP and async tasks
- introduce typed traceCtxKey to prevent context key collisions (staticcheck fix)
  - inject B3 trace values into c.Request.Context() in StartTrace middleware
    so handlers using c.Request.Context() carry trace info
  - create startup trace context in main.go, replacing context.TODO()
  - propagate HTTP traceID/spanID through TaskQueueMessage into RabbitMQ
    worker, linking HTTP request → publish → execution on the same traceID
  - fix GORM logger null traceID by binding ctx to AutoMigrate and queries
    via db.WithContext(ctx)
  - thread ctx through handler factory to fix null traceID in startup logs
  - replace per-request RabbitMQ producer with channel-based
    PushTaskToRabbitMQ goroutine; restrict Swagger to non-production
2026-04-23 16:48:32 +08:00
..
config_middleware.go feat: implement end-to-end distributed tracing for HTTP and async tasks 2026-04-23 16:48:32 +08:00
limiter.go feat: implement end-to-end distributed tracing for HTTP and async tasks 2026-04-23 16:48:32 +08:00
panic_recover.go feat: implement end-to-end distributed tracing for HTTP and async tasks 2026-04-23 16:48:32 +08:00
token.go feat: implement end-to-end distributed tracing for HTTP and async tasks 2026-04-23 16:48:32 +08:00
trace.go feat: implement end-to-end distributed tracing for HTTP and async tasks 2026-04-23 16:48:32 +08:00