diff --git a/src/Elastic.Apm/Filters/ErrorContextSanitizerFilter.cs b/src/Elastic.Apm/Filters/ErrorContextSanitizerFilter.cs index 089edff61..8e2409763 100644 --- a/src/Elastic.Apm/Filters/ErrorContextSanitizerFilter.cs +++ b/src/Elastic.Apm/Filters/ErrorContextSanitizerFilter.cs @@ -22,7 +22,7 @@ public IError Filter(IError error) { if (realError.Context.Request?.Headers != null && realError.ConfigSnapshot != null) { - foreach (var key in realError.Context?.Request?.Headers?.Keys) + foreach (var key in realError.Context?.Request?.Headers?.Keys.ToList()) { if (WildcardMatcher.IsAnyMatch(realError.ConfigSnapshot.SanitizeFieldNames, key)) realError.Context.Request.Headers[key] = Consts.Redacted; diff --git a/src/Elastic.Apm/Filters/HeaderDictionarySanitizerFilter.cs b/src/Elastic.Apm/Filters/HeaderDictionarySanitizerFilter.cs index 729b641f4..d3b570ea4 100644 --- a/src/Elastic.Apm/Filters/HeaderDictionarySanitizerFilter.cs +++ b/src/Elastic.Apm/Filters/HeaderDictionarySanitizerFilter.cs @@ -22,7 +22,7 @@ public ITransaction Filter(ITransaction transaction) { if (realTransaction.IsContextCreated && realTransaction.Context.Request?.Headers != null) { - foreach (var key in realTransaction.Context?.Request?.Headers?.Keys) + foreach (var key in realTransaction.Context?.Request?.Headers?.Keys.ToList()) { if (WildcardMatcher.IsAnyMatch(realTransaction.ConfigSnapshot.SanitizeFieldNames, key)) realTransaction.Context.Request.Headers[key] = Consts.Redacted; diff --git a/test/Elastic.Apm.AspNetCore.Tests/SanitizeFieldNamesTests.cs b/test/Elastic.Apm.AspNetCore.Tests/SanitizeFieldNamesTests.cs index b55faf533..e89901241 100644 --- a/test/Elastic.Apm.AspNetCore.Tests/SanitizeFieldNamesTests.cs +++ b/test/Elastic.Apm.AspNetCore.Tests/SanitizeFieldNamesTests.cs @@ -320,7 +320,7 @@ public async Task SanitizeHeadersOnError(string headerName, bool useOnlyDiagnost _capturedPayload.FirstTransaction.Context.Request.Headers[headerName].Should().Be("[REDACTED]"); _capturedPayload.WaitForErrors(); - _capturedPayload.Errors.Should().ContainSingle(); + _capturedPayload.Errors.Should().NotBeEmpty(); _capturedPayload.FirstError.Context.Should().NotBeNull(); _capturedPayload.FirstError.Context.Request.Should().NotBeNull(); _capturedPayload.FirstError.Context.Request.Headers.Should().NotBeNull();