From 68e6d08c768b789987a753d42f66caf73ce10ee1 Mon Sep 17 00:00:00 2001 From: Daenney Date: Fri, 17 Feb 2023 12:02:29 +0100 Subject: [feature] Add a request ID and include it in logs (#1476) This adds a lightweight form of tracing to GTS. Each incoming request is assigned a Request ID which we then pass on and log in all our log lines. Any function that gets called downstream from an HTTP handler should now emit a requestID=value pair whenever it logs something. Co-authored-by: kim --- internal/processing/account/create.go | 4 ++-- internal/processing/account/delete.go | 2 +- internal/processing/account/update.go | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'internal/processing/account') diff --git a/internal/processing/account/create.go b/internal/processing/account/create.go index 11d77a302..b0efccf7e 100644 --- a/internal/processing/account/create.go +++ b/internal/processing/account/create.go @@ -59,13 +59,13 @@ func (p *processor) Create(ctx context.Context, applicationToken oauth2.TokenInf reason = "" } - log.Trace("creating new username and account") + log.Trace(ctx, "creating new username and account") user, err := p.db.NewSignup(ctx, form.Username, text.SanitizePlaintext(reason), approvalRequired, form.Email, form.Password, form.IP, form.Locale, application.ID, false, "", false) if err != nil { return nil, gtserror.NewErrorInternalError(fmt.Errorf("error creating new signup in the database: %s", err)) } - log.Tracef("generating a token for user %s with account %s and application %s", user.ID, user.AccountID, application.ID) + log.Tracef(ctx, "generating a token for user %s with account %s and application %s", user.ID, user.AccountID, application.ID) accessToken, err := p.oauthServer.GenerateUserAccessToken(ctx, applicationToken, application.ClientSecret, user.ID) if err != nil { return nil, gtserror.NewErrorInternalError(fmt.Errorf("error creating new access token for user %s: %s", user.ID, err)) diff --git a/internal/processing/account/delete.go b/internal/processing/account/delete.go index b06a7b960..32321e196 100644 --- a/internal/processing/account/delete.go +++ b/internal/processing/account/delete.go @@ -64,7 +64,7 @@ func (p *processor) Delete(ctx context.Context, account *gtsmodel.Account, origi }) } - l := log.WithFields(fields...) + l := log.WithContext(ctx).WithFields(fields...) l.Trace("beginning account delete process") // 1. Delete account's application(s), clients, and oauth tokens diff --git a/internal/processing/account/update.go b/internal/processing/account/update.go index dc4081915..675793800 100644 --- a/internal/processing/account/update.go +++ b/internal/processing/account/update.go @@ -97,7 +97,7 @@ func (p *processor) Update(ctx context.Context, account *gtsmodel.Account, form } account.AvatarMediaAttachmentID = avatarInfo.ID account.AvatarMediaAttachment = avatarInfo - log.Tracef("new avatar info for account %s is %+v", account.ID, avatarInfo) + log.Tracef(ctx, "new avatar info for account %s is %+v", account.ID, avatarInfo) } if form.Header != nil && form.Header.Size != 0 { @@ -107,7 +107,7 @@ func (p *processor) Update(ctx context.Context, account *gtsmodel.Account, form } account.HeaderMediaAttachmentID = headerInfo.ID account.HeaderMediaAttachment = headerInfo - log.Tracef("new header info for account %s is %+v", account.ID, headerInfo) + log.Tracef(ctx, "new header info for account %s is %+v", account.ID, headerInfo) } if form.Locked != nil { -- cgit v1.2.3