60 instantiations of LogBufferingFilterRule
Microsoft.AspNetCore.Diagnostics.Middleware (1)
Buffering\PerIncomingRequestLoggingBuilderExtensions.cs (1)
104
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: logLevel));
Microsoft.AspNetCore.Diagnostics.Middleware.Tests (14)
Buffering\PerIncomingRequestLoggingBuilderExtensionsTests.cs (9)
57
new
(categoryName: "Program.MyLogger", logLevel: LogLevel.Information, eventId: 1, eventName: "number one"),
58
new
(logLevel: LogLevel.Information),
77
new
(categoryName: "Program.MyLogger", logLevel: LogLevel.Information, eventId: 1, eventName: "number one"),
78
new
(logLevel: LogLevel.Information),
83
options.Rules.Add(new
LogBufferingFilterRule
(categoryName: "Program.MyLogger",
85
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Information));
109
new
(categoryName: "Program.MyLogger", logLevel: LogLevel.Information, eventId: 1, eventName: "number one"),
110
new
(logLevel : LogLevel.Information),
114
new
(logLevel: LogLevel.Information),
Buffering\PerRequestLogBufferingIncludeScopesTests.cs (1)
36
options.Rules.Add(new
LogBufferingFilterRule
(categoryName: "test", logLevel: LogLevel.Information));
Buffering\PerRequestLogBufferingOptionsCustomValidatorTests.cs (1)
21
new
LogBufferingFilterRule
(categoryName: "**")
Logging\AcceptanceTests.cs (3)
867
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Debug));
912
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Debug));
913
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Debug, categoryName: "logatrequest"));
Microsoft.Extensions.Telemetry (1)
Buffering\GlobalBufferLoggingBuilderExtensions.cs (1)
86
.Configure(options => options.Rules.Add(new
LogBufferingFilterRule
(logLevel: logLevel)));
Microsoft.Extensions.Telemetry.Tests (44)
Buffering\GlobalBufferIncludeScopesTests.cs (2)
129
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Warning));
152
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Warning));
Buffering\GlobalBufferLoggerBuilderExtensionsTests.cs (5)
48
new
("Program.MyLogger", LogLevel.Information, 1, "number one", [new("region", "westus2"), new ("priority", 1)]),
49
new
(logLevel: LogLevel.Information),
78
new
(categoryName: "Program.MyLogger", logLevel: LogLevel.Information, eventId: 1, eventName: "number one"),
79
new
(logLevel : LogLevel.Information),
83
new
(logLevel: LogLevel.Information),
Buffering\GlobalBufferTests.cs (1)
139
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Warning));
Buffering\GlobalLogBufferingOptionsCustomValidatorTests.cs (1)
20
new
LogBufferingFilterRule
(categoryName: "**")
Buffering\LogBufferingFilterRuleTests.cs (34)
19
new
LogBufferingFilterRule
(),
20
new
LogBufferingFilterRule
(eventId: 1),
21
new
LogBufferingFilterRule
(logLevel: LogLevel.Information, eventId: 1),
22
new
LogBufferingFilterRule
(logLevel: LogLevel.Information, eventId: 1),
23
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning),
24
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning, eventId: 2),
25
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning, eventId: 1),
26
new
LogBufferingFilterRule
("Program1.MyLogger", LogLevel.Warning, 1),
27
new
LogBufferingFilterRule
("Program.*MyLogger1", LogLevel.Warning, 1),
28
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes: [new("region2", "westus2")]), // inapplicable key
29
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes:[new("region", "westus3")]), // inapplicable value
30
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes:[new("region", "westus2")]), // the best rule - [11]
31
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 2),
32
new
LogBufferingFilterRule
("Program.MyLogger", eventId: 1),
33
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning, eventId: 1),
34
new
LogBufferingFilterRule
("Program", LogLevel.Warning, 1),
35
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning),
36
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Error, 1),
57
new
LogBufferingFilterRule
(logLevel: LogLevel.Information, eventId: 1),
58
new
LogBufferingFilterRule
(logLevel: LogLevel.Information, eventId: 1),
59
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning),
60
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning, eventId: 2),
61
new
LogBufferingFilterRule
(logLevel: LogLevel.Warning, eventId: 1),
62
new
LogBufferingFilterRule
("Program1.MyLogger", LogLevel.Warning, 1),
63
new
LogBufferingFilterRule
("Program.*MyLogger1", LogLevel.Warning, 1),
64
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1),
65
new
LogBufferingFilterRule
("Program.MyLogger*", LogLevel.Warning, 1),
66
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes:[new("region", "westus2")]), // the best rule
67
new
LogBufferingFilterRule
("Program.MyLogger*", LogLevel.Warning, 1, attributes:[new("region", "westus2")]), // same as the best, but last and should be selected
84
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes:[new("priority", 1)]),
85
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes:[new("priority", 2)]), // the best rule
86
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1, attributes:[new("priority", 3)]),
87
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning, 1),
104
new
LogBufferingFilterRule
("Program.MyLogger", LogLevel.Warning),
Logging\ExtendedLoggerTests.cs (1)
1000
options.Rules.Add(new
LogBufferingFilterRule
(logLevel: LogLevel.Warning));
49 references to LogBufferingFilterRule
Microsoft.AspNetCore.Diagnostics.Middleware (5)
Buffering\IncomingRequestLogBuffer.cs (1)
30
private readonly
LogBufferingFilterRule
[] _filterRules;
Buffering\PerRequestLogBufferingConfigureOptions.cs (1)
44
foreach (
LogBufferingFilterRule
rule in parsedOptions.Rules)
Buffering\PerRequestLogBufferingOptions.cs (2)
74
/// Gets or sets the collection of <see cref="
LogBufferingFilterRule
"/> used for filtering log messages for the purpose of further buffering.
84
public IList<
LogBufferingFilterRule
> Rules { get; set; } = [];
Buffering\PerRequestLogBufferingOptionsCustomValidator.cs (1)
18
foreach (
LogBufferingFilterRule
rule in options.Rules)
Microsoft.AspNetCore.Diagnostics.Middleware.Tests (5)
Buffering\PerIncomingRequestLoggingBuilderExtensionsTests.cs (4)
55
List<
LogBufferingFilterRule
> expectedData =
75
List<
LogBufferingFilterRule
> expectedData =
107
List<
LogBufferingFilterRule
> initialData =
112
List<
LogBufferingFilterRule
> updatedData =
Buffering\PerRequestLogBufferingOptionsCustomValidatorTests.cs (1)
19
Rules = new List<
LogBufferingFilterRule
>
Microsoft.Extensions.Telemetry (21)
Buffering\GlobalBuffer.cs (1)
21
internal
LogBufferingFilterRule
[] LastKnownGoodFilterRules;
Buffering\GlobalLogBufferingConfigureOptions.cs (1)
44
foreach (
LogBufferingFilterRule
rule in parsedOptions.Rules)
Buffering\GlobalLogBufferingOptions.cs (2)
73
/// Gets or sets the collection of <see cref="
LogBufferingFilterRule
"/> used for filtering log messages for the purpose of further buffering.
82
public IList<
LogBufferingFilterRule
> Rules { get; set; } = [];
Buffering\GlobalLogBufferingOptionsCustomValidator.cs (1)
17
foreach (
LogBufferingFilterRule
rule in options.Rules)
Buffering\LogBufferingFilterRule.cs (1)
21
/// Initializes a new instance of the <see cref="
LogBufferingFilterRule
"/> class.
Buffering\LogBufferingFilterRuleSelector.cs (15)
23
private static readonly ObjectPool<List<
LogBufferingFilterRule
>> _rulePool =
24
PoolFactory.CreateListPool<
LogBufferingFilterRule
>();
26
public static
LogBufferingFilterRule
[] SelectByCategory(IList<
LogBufferingFilterRule
> rules, string category)
28
List<
LogBufferingFilterRule
> rulesOfCategory = _rulePool.Get();
32
foreach (
LogBufferingFilterRule
rule in rules)
48
public static
LogBufferingFilterRule
? Select(
49
LogBufferingFilterRule
[] rules,
54
LogBufferingFilterRule
? currentBest = null;
55
foreach (
LogBufferingFilterRule
ruleCandidate in rules)
66
private static bool IsAttributesMatch(
LogBufferingFilterRule
rule, IReadOnlyList<KeyValuePair<string, object?>>? attributes)
83
private static bool IsBetter(
LogBufferingFilterRule
? currentBest,
LogBufferingFilterRule
ruleCandidate)
102
private static bool IsMatch(
LogBufferingFilterRule
rule, string category)
135
private static bool IsMatch(
LogBufferingFilterRule
rule, LogLevel logLevel, EventId eventId)
Microsoft.Extensions.Telemetry.Tests (18)
Buffering\GlobalBufferLoggerBuilderExtensionsTests.cs (3)
46
List<
LogBufferingFilterRule
> expectedData =
76
List<
LogBufferingFilterRule
> initialData =
81
List<
LogBufferingFilterRule
> updatedData =
Buffering\GlobalLogBufferingOptionsCustomValidatorTests.cs (1)
18
Rules = new List<
LogBufferingFilterRule
>
Buffering\LogBufferingFilterRuleTests.cs (14)
17
var rules = new List<
LogBufferingFilterRule
>
40
LogBufferingFilterRule
[] categorySpecificRules = LogBufferingFilterRuleSelector.SelectByCategory(rules, "Program.MyLogger");
41
LogBufferingFilterRule
? result = LogBufferingFilterRuleSelector.Select(
55
var rules = new List<
LogBufferingFilterRule
>
71
LogBufferingFilterRule
[] categorySpecificRules = LogBufferingFilterRuleSelector.SelectByCategory(rules, "Program.MyLogger");
72
LogBufferingFilterRule
? result = LogBufferingFilterRuleSelector.Select(categorySpecificRules, LogLevel.Warning, 1, [new("region", "westus2")]);
82
var rules = new List<
LogBufferingFilterRule
>
91
LogBufferingFilterRule
[] categorySpecificRules = LogBufferingFilterRuleSelector.SelectByCategory(rules, "Program.MyLogger");
92
LogBufferingFilterRule
? result = LogBufferingFilterRuleSelector.Select(categorySpecificRules, LogLevel.Warning, 1, [new("priority", "2")]);
102
var rules = new List<
LogBufferingFilterRule
>
106
LogBufferingFilterRule
[] myLoggerRules = LogBufferingFilterRuleSelector.SelectByCategory(rules, "Program.MyLogger");
107
LogBufferingFilterRule
[] otherLoggerRules = LogBufferingFilterRuleSelector.SelectByCategory(rules, "Program.OtherLogger");
110
LogBufferingFilterRule
? myLoggerResult = LogBufferingFilterRuleSelector.Select(myLoggerRules, LogLevel.Warning, 1, attributes: null);
111
LogBufferingFilterRule
? otherLoggerResult = LogBufferingFilterRuleSelector.Select(otherLoggerRules, LogLevel.Warning, 1, attributes: null);