refactor: remove metrics from server and database
This commit is contained in:
@@ -7,7 +7,7 @@ import (
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
func RequestLogger(metrics *observability.Metrics) gin.HandlerFunc {
|
||||
func RequestLogger() gin.HandlerFunc {
|
||||
return func(c *gin.Context) {
|
||||
start := time.Now()
|
||||
path := c.Request.URL.Path
|
||||
@@ -21,8 +21,6 @@ func RequestLogger(metrics *observability.Metrics) gin.HandlerFunc {
|
||||
}
|
||||
|
||||
duration := time.Since(start)
|
||||
metrics.ObserveHTTPRequest(c.Request.Method, route, c.Writer.Status(), duration)
|
||||
|
||||
status := c.Writer.Status()
|
||||
fields := map[string]any{
|
||||
"client_ip": c.ClientIP(),
|
||||
|
||||
@@ -16,22 +16,20 @@ import (
|
||||
)
|
||||
|
||||
var Module = fx.Options(
|
||||
fx.Provide(observability.NewMetrics),
|
||||
fx.Provide(ProvideRouter),
|
||||
fx.Invoke(RunServer),
|
||||
)
|
||||
|
||||
func ProvideRouter(cfg config.Config, htmlRender render.HTMLRender, metrics *observability.Metrics) *gin.Engine {
|
||||
func ProvideRouter(cfg config.Config, htmlRender render.HTMLRender) *gin.Engine {
|
||||
if cfg.GinMode == "" {
|
||||
gin.SetMode(gin.ReleaseMode)
|
||||
} else {
|
||||
gin.SetMode(cfg.GinMode)
|
||||
}
|
||||
r := gin.New()
|
||||
r.Use(CORSMiddlewareWithConfig(cfg), RequestContextMiddleware(), audit.ContextMiddleware(), RequestLogger(metrics), gin.Recovery())
|
||||
r.Use(CORSMiddlewareWithConfig(cfg), RequestContextMiddleware(), audit.ContextMiddleware(), RequestLogger(), gin.Recovery())
|
||||
r.Static("/static", "./static")
|
||||
r.Static("/dist", "./dist")
|
||||
r.GET("/metrics", gin.WrapH(metrics.Handler()))
|
||||
r.GET("/debug/pprof", gin.WrapH(http.DefaultServeMux))
|
||||
r.GET("/debug/pprof/*action", gin.WrapH(http.DefaultServeMux))
|
||||
r.HTMLRender = htmlRender
|
||||
|
||||
@@ -6,7 +6,6 @@ import (
|
||||
"io"
|
||||
"log"
|
||||
"mal/internal/config"
|
||||
"mal/internal/observability"
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"strings"
|
||||
@@ -39,7 +38,7 @@ func TestNewHTTPServer_TimeoutsAndAddr(t *testing.T) {
|
||||
func TestProvideRouterRegistersPprof(t *testing.T) {
|
||||
gin.SetMode(gin.TestMode)
|
||||
|
||||
router := ProvideRouter(config.Config{GinMode: gin.TestMode}, nil, observability.NewMetrics())
|
||||
router := ProvideRouter(config.Config{GinMode: gin.TestMode}, nil)
|
||||
req := httptest.NewRequestWithContext(context.Background(), http.MethodGet, "/debug/pprof/", nil)
|
||||
rec := httptest.NewRecorder()
|
||||
|
||||
@@ -63,7 +62,7 @@ func TestRequestLoggerUsesMatchedRoute(t *testing.T) {
|
||||
|
||||
router := gin.New()
|
||||
router.Use(RequestContextMiddleware())
|
||||
router.Use(RequestLogger(observability.NewMetrics()))
|
||||
router.Use(RequestLogger())
|
||||
router.GET("/anime/:id", func(c *gin.Context) {
|
||||
c.String(http.StatusOK, "ok")
|
||||
})
|
||||
@@ -105,7 +104,7 @@ func TestRequestLoggerSkipsSuccessfulStreamProxy(t *testing.T) {
|
||||
|
||||
router := gin.New()
|
||||
router.Use(RequestContextMiddleware())
|
||||
router.Use(RequestLogger(observability.NewMetrics()))
|
||||
router.Use(RequestLogger())
|
||||
router.GET("/watch/proxy/stream", func(c *gin.Context) {
|
||||
c.String(http.StatusOK, "segment")
|
||||
})
|
||||
@@ -132,7 +131,7 @@ func TestRequestLoggerLogsFailedStreamProxy(t *testing.T) {
|
||||
|
||||
router := gin.New()
|
||||
router.Use(RequestContextMiddleware())
|
||||
router.Use(RequestLogger(observability.NewMetrics()))
|
||||
router.Use(RequestLogger())
|
||||
router.GET("/watch/proxy/stream", func(c *gin.Context) {
|
||||
c.Status(http.StatusBadGateway)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user