feat(api): implement global error handler middleware and trace integration

- Introduce APIError type and AbortWithError helper in response package
- Implement errorHandlerMiddleware to record Go errors to Otel Spans and format JSON response
- Register errorHandlerMiddleware globally in router
- Refactor logs analytics handler to use the new unified error pattern
This commit is contained in:
ryan
2026-06-16 10:24:14 +08:00
parent 9fa38dcfdc
commit f129a9cfca
5 changed files with 64 additions and 10 deletions
+1 -1
View File
@@ -83,7 +83,7 @@ func Serve() {
r.Use(sessions.Sessions(config.Config.App.SessionCookieName, sessionStore))
// 补充中间件
r.Use(otelgin.Middleware(config.Config.App.AppName), loggerMiddleware(), risk_control.RiskControlMiddleware())
r.Use(otelgin.Middleware(config.Config.App.AppName), errorHandlerMiddleware(), loggerMiddleware(), risk_control.RiskControlMiddleware())
registerRoutes(r)