feat: add proxy information in sentry context
All checks were successful
Cadoles/bouncer/pipeline/head This commit looks good
All checks were successful
Cadoles/bouncer/pipeline/head This commit looks good
This commit is contained in:
@ -6,6 +6,7 @@ import (
|
||||
"net/url"
|
||||
|
||||
"forge.cadoles.com/cadoles/bouncer/internal/store"
|
||||
"github.com/getsentry/sentry-go"
|
||||
"github.com/pkg/errors"
|
||||
"gitlab.com/wpetit/goweb/logger"
|
||||
)
|
||||
@ -17,6 +18,7 @@ const (
|
||||
contextKeyLayers contextKey = "layers"
|
||||
contextKeyOriginalURL contextKey = "originalURL"
|
||||
contextKeyHandleError contextKey = "handleError"
|
||||
contextKeySentryScope contextKey = "sentryScope"
|
||||
)
|
||||
|
||||
var (
|
||||
@ -82,3 +84,16 @@ func HandleError(ctx context.Context, w http.ResponseWriter, r *http.Request, st
|
||||
|
||||
fn(w, r, status, err)
|
||||
}
|
||||
|
||||
func withSentryScope(ctx context.Context, scope *sentry.Scope) context.Context {
|
||||
return context.WithValue(ctx, contextKeySentryScope, scope)
|
||||
}
|
||||
|
||||
func SentryScope(ctx context.Context) (*sentry.Scope, error) {
|
||||
scope, err := ctxValue[*sentry.Scope](ctx, contextKeySentryScope)
|
||||
if err != nil {
|
||||
return nil, errors.WithStack(err)
|
||||
}
|
||||
|
||||
return scope, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user