mirror of
https://github.com/getAlby/lndhub.go.git
synced 2026-01-03 21:15:27 +01:00
add user id to logs as json field
This commit is contained in:
22
main.go
22
main.go
@@ -13,6 +13,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/getAlby/lndhub.go/rabbitmq"
|
||||
"github.com/rs/zerolog"
|
||||
|
||||
cache "github.com/SporkHubr/echo-http-cache"
|
||||
"github.com/SporkHubr/echo-http-cache/adapter/memory"
|
||||
@@ -131,9 +132,6 @@ func main() {
|
||||
|
||||
e.Logger = logger
|
||||
e.Use(middleware.RequestID())
|
||||
e.Use(lecho.Middleware(lecho.Config{
|
||||
Logger: logger,
|
||||
}))
|
||||
|
||||
// Setup exception tracking with Sentry if configured
|
||||
// sentry init needs to happen before the echo middlewares are added
|
||||
@@ -186,13 +184,14 @@ func main() {
|
||||
InvoicePubSub: service.NewPubsub(),
|
||||
}
|
||||
|
||||
logMw := createLoggingMiddleware(logger)
|
||||
// strict rate limit for requests for sending payments
|
||||
strictRateLimitMiddleware := createRateLimitMiddleware(c.StrictRateLimit, c.BurstRateLimit)
|
||||
secured := e.Group("", tokens.Middleware(c.JWTSecret))
|
||||
securedWithStrictRateLimit := e.Group("", tokens.Middleware(c.JWTSecret), strictRateLimitMiddleware)
|
||||
secured := e.Group("", tokens.Middleware(c.JWTSecret), logMw)
|
||||
securedWithStrictRateLimit := e.Group("", tokens.Middleware(c.JWTSecret), strictRateLimitMiddleware, logMw)
|
||||
|
||||
RegisterLegacyEndpoints(svc, e, secured, securedWithStrictRateLimit, strictRateLimitMiddleware, tokens.AdminTokenMiddleware(c.AdminToken))
|
||||
RegisterV2Endpoints(svc, e, secured, securedWithStrictRateLimit, strictRateLimitMiddleware, tokens.AdminTokenMiddleware(c.AdminToken))
|
||||
RegisterLegacyEndpoints(svc, e, secured, securedWithStrictRateLimit, strictRateLimitMiddleware, tokens.AdminTokenMiddleware(c.AdminToken), logMw)
|
||||
RegisterV2Endpoints(svc, e, secured, securedWithStrictRateLimit, strictRateLimitMiddleware, tokens.AdminTokenMiddleware(c.AdminToken), logMw)
|
||||
|
||||
//Swagger API spec
|
||||
docs.SwaggerInfo.Host = c.Host
|
||||
@@ -307,6 +306,15 @@ func main() {
|
||||
svc.Logger.Info("LNDhub exiting gracefully. Goodbye.")
|
||||
}
|
||||
|
||||
func createLoggingMiddleware(logger *lecho.Logger) echo.MiddlewareFunc {
|
||||
return lecho.Middleware(lecho.Config{
|
||||
Logger: logger,
|
||||
Enricher: func(c echo.Context, logger zerolog.Context) zerolog.Context {
|
||||
return logger.Interface("UserID", c.Get("UserID"))
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
func createRateLimitMiddleware(requestsPerSecond int, burst int) echo.MiddlewareFunc {
|
||||
config := middleware.RateLimiterConfig{
|
||||
Store: middleware.NewRateLimiterMemoryStoreWithConfig(
|
||||
|
||||
Reference in New Issue
Block a user