From 0160258bb5afab897c30634be081b139660e2f89 Mon Sep 17 00:00:00 2001 From: Irena Rindos Date: Wed, 17 Apr 2024 14:53:24 -0400 Subject: [PATCH] bug: fix data race in hclogger (#4645) * bug: fix data race in hclogger --- internal/event/hclog_formatter_node.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/event/hclog_formatter_node.go b/internal/event/hclog_formatter_node.go index 27affbb30..54b5f7012 100644 --- a/internal/event/hclog_formatter_node.go +++ b/internal/event/hclog_formatter_node.go @@ -35,7 +35,8 @@ type hclogFormatterFilter struct { allow []*filter deny []*filter signer signer - l sync.RWMutex + // l protects the signer field + l sync.RWMutex } func newHclogFormatterFilter(jsonFormat bool, opt ...Option) (*hclogFormatterFilter, error) { @@ -205,6 +206,8 @@ func (f *hclogFormatterFilter) Process(ctx context.Context, e *eventlogger.Event if err != nil { return nil, fmt.Errorf("%s: unable to format: %w", op, err) } + f.l.Lock() + defer f.l.Unlock() if f.signer != nil && string(e.Type) == string(AuditType) { bufHmac, err := f.signer(ctx, buf.Bytes()) if err != nil {