From add6eb6e2bb31b28882a5dc72ad143bccd712e99 Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Fri, 27 Aug 2021 13:26:45 +0200 Subject: Gin logging (#165) * start messing around with logger * more messing about * fix error with instance not created on startup (#156) * set logger * log user agent * finalize logging * go fmt * start messing around with logger * more messing about * set logger * log user agent * finalize logging * go fmt --- internal/router/router.go | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'internal/router/router.go') diff --git a/internal/router/router.go b/internal/router/router.go index 621d93ff5..cd6b7469d 100644 --- a/internal/router/router.go +++ b/internal/router/router.go @@ -104,23 +104,16 @@ func (r *router) Stop(ctx context.Context) error { // The given DB is only used in the New function for parsing config values, and is not otherwise // pinned to the router. func New(ctx context.Context, cfg *config.Config, db db.DB, logger *logrus.Logger) (Router, error) { - - // gin has different log modes; for convenience, we match the gin log mode to - // whatever log mode has been set for logrus - lvl, err := logrus.ParseLevel(cfg.LogLevel) - if err != nil { - return nil, fmt.Errorf("couldn't parse log level %s to set router level: %s", cfg.LogLevel, err) - } - switch lvl { - case logrus.TraceLevel, logrus.DebugLevel: - gin.SetMode(gin.DebugMode) - default: - gin.SetMode(gin.ReleaseMode) - } + gin.SetMode(gin.ReleaseMode) // create the actual engine here -- this is the core request routing handler for gts - engine := gin.Default() - engine.MaxMultipartMemory = 8 << 20 // 8 MiB + engine := gin.New() + + engine.Use(gin.RecoveryWithWriter(logger.Writer())) + engine.Use(loggerWithConfig(logger)) + + // 8 MiB + engine.MaxMultipartMemory = 8 << 20 // set up IP forwarding via x-forward-* headers. if err := engine.SetTrustedProxies(cfg.TrustedProxies); err != nil { -- cgit v1.2.3