70 instantiations of LoggingOptions
Microsoft.Extensions.Http.Diagnostics.PerformanceTests (1)
Benchmarks\HeadersReaderBenchmark.cs (1)
41
var options = new
LoggingOptions
{ LogContentHeaders = LogContentHeaders };
Microsoft.Extensions.Http.Diagnostics.Tests (69)
Logging\HttpClientLoggerTest.cs (17)
57
var options = new
LoggingOptions
90
var options = new
LoggingOptions
();
138
var options = new
LoggingOptions
();
202
var options = new
LoggingOptions
261
var options = new
LoggingOptions
324
var options = new
LoggingOptions
433
var options = new
LoggingOptions
530
var options = new
LoggingOptions
645
var options = new
LoggingOptions
702
var options = new
LoggingOptions
();
743
var options = new
LoggingOptions
792
var options = new
LoggingOptions
();
843
new
LoggingOptions
()),
916
var options = new
LoggingOptions
983
var options = new
LoggingOptions
();
1017
var logger = new HttpClientLogger(fakeLogger, requestReaderMock.Object, Array.Empty<IHttpClientLogEnricher>(),
new
());
1032
var options = new
LoggingOptions
();
Logging\HttpClientLoggingExtensionsTest.cs (4)
312
int defaultBodySizeLimit = new
LoggingOptions
().BodySizeLimit;
314
var defaultOptions = new
LoggingOptions
326
var mismatchedOptions = new
LoggingOptions
();
331
var missingSectionOptions = new
LoggingOptions
();
Logging\HttpHeadersReaderTest.cs (4)
25
var options = new
LoggingOptions
();
50
var options = new
LoggingOptions
112
var options = new
LoggingOptions
172
var options = new
LoggingOptions
();
Logging\HttpRequestBodyReaderTest.cs (11)
34
var options = new
LoggingOptions
54
var options = new
LoggingOptions
78
var options = new
LoggingOptions
99
var options = new
LoggingOptions
125
var options = new
LoggingOptions
149
var options = new
LoggingOptions
171
var options = new
LoggingOptions
204
var options = new
LoggingOptions
225
var options = new
LoggingOptions
246
var reader = new HttpRequestBodyReader(
new
(), DebuggerState.Attached);
255
var options = new
LoggingOptions
{ BodyReadTimeout = timeout };
Logging\HttpRequestReaderTest.cs (16)
62
var options = new
LoggingOptions
130
var options = new
LoggingOptions
192
var opts = new
LoggingOptions
265
var opts = new
LoggingOptions
339
var opts = new
LoggingOptions
401
var opts = new
LoggingOptions
474
var opts = new
LoggingOptions
543
var opts = new
LoggingOptions
594
var opts = new
LoggingOptions
();
633
var options = new
LoggingOptions
678
var options = new
LoggingOptions
705
var options = new
LoggingOptions
736
var options = new
LoggingOptions
773
var options = new
LoggingOptions
826
var options = new
LoggingOptions
867
var options = new
LoggingOptions
Logging\HttpResponseBodyReaderTest.cs (12)
41
var options = new
LoggingOptions
61
var options = new
LoggingOptions
80
var options = new
LoggingOptions
102
var options = new
LoggingOptions
122
var options = new
LoggingOptions
145
var options = new
LoggingOptions
173
var options = new
LoggingOptions
207
var options = new
LoggingOptions
235
var options = new
LoggingOptions
263
var options = new
LoggingOptions
();
273
var options = new
LoggingOptions
{ BodyReadTimeout = timeout };
283
var options = new
LoggingOptions
Logging\LoggingOptionsTest.cs (2)
19
_sut = new
LoggingOptions
();
25
var sut = new
LoggingOptions
();
Logging\LoggingOptionsValidatorTest.cs (3)
25
var result = validator.Validate("model", new
LoggingOptions
());
34
var options = new
LoggingOptions
{ BodyReadTimeout = TimeSpan.Zero };
43
var options = new
LoggingOptions
{ BodySizeLimit = -1 };
231 references to LoggingOptions
Microsoft.Extensions.Http.Diagnostics (45)
Logging\HttpClientLoggingHttpClientBuilderExtensions.cs (8)
67
/// <param name="section">The <see cref="IConfigurationSection"/> to use for configuring <see cref="
LoggingOptions
"/>.</param>
86
/// <param name="section">The <see cref="IConfigurationSection"/> to use for configuring <see cref="
LoggingOptions
"/>.</param>
110
/// <param name="configure">The delegate to configure <see cref="
LoggingOptions
"/> with.</param>
117
public static IHttpClientBuilder AddExtendedHttpClientLogging(this IHttpClientBuilder builder, Action<
LoggingOptions
> configure)
129
/// <param name="configure">The delegate to configure <see cref="
LoggingOptions
"/> with.</param>
141
public static IHttpClientBuilder AddExtendedHttpClientLogging(this IHttpClientBuilder builder, Action<
LoggingOptions
> configure, bool wrapHandlersPipeline)
151
Action<OptionsBuilder<
LoggingOptions
>>? configureOptionsBuilder,
155
.AddOptionsWithValidateOnStart<
LoggingOptions
, LoggingOptionsValidator>(builder.Name);
Logging\HttpClientLoggingServiceCollectionExtensions.cs (5)
56
/// <param name="section">The <see cref="IConfigurationSection"/> to use for configuring <see cref="
LoggingOptions
"/>.</param>
68
.AddOptionsWithValidateOnStart<
LoggingOptions
, LoggingOptionsValidator>()
78
/// <param name="configure">The delegate to configure <see cref="
LoggingOptions
"/> with.</param>
84
public static IServiceCollection AddExtendedHttpClientLogging(this IServiceCollection services, Action<
LoggingOptions
> configure)
90
.AddOptionsWithValidateOnStart<
LoggingOptions
, LoggingOptionsValidator>()
Logging\Internal\HttpClientLogger.cs (2)
42
IOptionsMonitor<
LoggingOptions
> optionsMonitor,
56
LoggingOptions
options)
Logging\Internal\HttpHeadersReader.cs (2)
26
public HttpHeadersReader(IOptionsMonitor<
LoggingOptions
> optionsMonitor, IHttpHeadersRedactor redactor, [ServiceKey] string? serviceKey = null)
28
var
options = optionsMonitor.GetKeyedOrCurrent(serviceKey);
Logging\Internal\HttpRequestBodyReader.cs (1)
26
public HttpRequestBodyReader(
LoggingOptions
requestOptions, IDebuggerState? debugger = null)
Logging\Internal\HttpRequestReader.cs (2)
49
IOptionsMonitor<
LoggingOptions
> optionsMonitor,
66
LoggingOptions
options,
Logging\Internal\HttpResponseBodyReader.cs (1)
33
public HttpResponseBodyReader(
LoggingOptions
responseOptions, IDebuggerState? debugger = null)
Logging\Internal\LoggingOptionsBinder.cs (6)
13
/// Binds <see cref="
LoggingOptions
"/> to a configuration section.
23
public static OptionsBuilder<
LoggingOptions
> BindConfigurationSection(this OptionsBuilder<
LoggingOptions
> builder, IConfigurationSection section)
26
.AddSingleton<IConfigureOptions<
LoggingOptions
>>(
28
.AddSingleton<IOptionsChangeTokenSource<
LoggingOptions
>>(
29
new ConfigurationChangeTokenSource<
LoggingOptions
>(builder.Name, section));
Logging\Internal\LoggingOptionsConfigureOptions.cs (17)
20
internal sealed class LoggingOptionsConfigureOptions : IConfigureNamedOptions<
LoggingOptions
>
35
void IConfigureOptions<
LoggingOptions
>.Configure(
LoggingOptions
options) => Configure(Options.Options.DefaultName, options);
37
public void Configure(string? name,
LoggingOptions
options)
44
BindValue(_section, nameof(
LoggingOptions
.LogRequestStart), bool.Parse, value => options.LogRequestStart = value);
45
BindDataClassifications(_section.GetSection(nameof(
LoggingOptions
.RequestQueryParametersDataClasses)), options.RequestQueryParametersDataClasses);
46
BindValue(_section, nameof(
LoggingOptions
.LogBody), bool.Parse, value => options.LogBody = value);
49
nameof(
LoggingOptions
.BodySizeLimit),
54
nameof(
LoggingOptions
.BodyReadTimeout),
57
BindSet(_section.GetSection(nameof(
LoggingOptions
.RequestBodyContentTypes)), options.RequestBodyContentTypes);
58
BindSet(_section.GetSection(nameof(
LoggingOptions
.ResponseBodyContentTypes)), options.ResponseBodyContentTypes);
59
BindDataClassifications(_section.GetSection(nameof(
LoggingOptions
.RequestHeadersDataClasses)), options.RequestHeadersDataClasses);
60
BindDataClassifications(_section.GetSection(nameof(
LoggingOptions
.ResponseHeadersDataClasses)), options.ResponseHeadersDataClasses);
61
BindEnum<OutgoingPathLoggingMode>(_section, nameof(
LoggingOptions
.RequestPathLoggingMode), value => options.RequestPathLoggingMode = value);
62
BindEnum<HttpRouteParameterRedactionMode>(_section, nameof(
LoggingOptions
.RequestPathParameterRedactionMode), value => options.RequestPathParameterRedactionMode = value);
63
BindDataClassifications(_section.GetSection(nameof(
LoggingOptions
.RouteParameterDataClasses)), options.RouteParameterDataClasses);
64
BindValue(_section, nameof(
LoggingOptions
.LogContentHeaders), bool.Parse, value => options.LogContentHeaders = value);
Logging\Internal\LoggingOptionsValidator.cs (1)
9
internal sealed partial class LoggingOptionsValidator : IValidateOptions<
LoggingOptions
>
Microsoft.Extensions.Http.Diagnostics.PerformanceTests (2)
Benchmarks\HeadersReaderBenchmark.cs (2)
41
var
options = new LoggingOptions { LogContentHeaders = LogContentHeaders };
48
_headersReader = new HttpHeadersReader(new StaticOptionsMonitor<
LoggingOptions
>(options), redactor);
Microsoft.Extensions.Http.Diagnostics.Tests (184)
Logging\AcceptanceTests.cs (20)
471
var
optionsFirst = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(FirstClientName);
472
var
optionsSecond = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(SecondClientName);
506
var
optionsFirst = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(nameof(ITestHttpClient1));
507
var
optionsSecond = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(nameof(ITestHttpClient2));
556
var
optionsFirst = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(nameof(ITestHttpClient1));
557
var
optionsSecond = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(nameof(ITestHttpClient2));
558
var
optionsThird = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("testClient3");
559
var
optionsFourth = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("testClient4");
560
var
optionsFifth = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("testClient5");
561
var
optionsSixth = provider.GetRequiredService<IOptions<
LoggingOptions
>>().Value;
Logging\HttpClientLoggerTest.cs (15)
57
var
options = new LoggingOptions
90
var
options = new LoggingOptions();
138
var
options = new LoggingOptions();
202
var
options = new LoggingOptions
261
var
options = new LoggingOptions
324
var
options = new LoggingOptions
433
var
options = new LoggingOptions
530
var
options = new LoggingOptions
645
var
options = new LoggingOptions
702
var
options = new LoggingOptions();
743
var
options = new LoggingOptions
792
var
options = new LoggingOptions();
916
var
options = new LoggingOptions
983
var
options = new LoggingOptions();
1032
var
options = new LoggingOptions();
Logging\HttpClientLoggingExtensionsTest.cs (97)
53
act = () => Mock.Of<IHttpClientBuilder>().AddExtendedHttpClientLogging((Action<
LoggingOptions
>)null!);
72
act = () => Mock.Of<IServiceCollection>().AddExtendedHttpClientLogging((Action<
LoggingOptions
>)null!);
100
var
optionsFirst = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test1");
101
var
optionsSecond = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test2");
123
var
optionsFirst = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(nameof(ITestHttpClient1));
124
var
optionsSecond = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get(nameof(ITestHttpClient2));
146
var
options = provider.GetRequiredService<IOptions<
LoggingOptions
>>().Value;
185
var
options = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test");
241
var
options = provider
242
.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test");
254
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.LogRequestStart)}"] = "true",
255
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestQueryParametersDataClasses)}:search:{nameof(DataClassification.TaxonomyName)}"] = "MyTaxonomy",
256
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestQueryParametersDataClasses)}:search:{nameof(DataClassification.Value)}"] = "PrivateData",
257
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.LogBody)}"] = "true",
258
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.BodySizeLimit)}"] = "1024",
259
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.BodyReadTimeout)}"] = "00:00:02",
260
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestBodyContentTypes)}:0"] = "application/json",
261
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestBodyContentTypes)}:1"] = null,
262
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.ResponseBodyContentTypes)}:0"] = "text/plain",
263
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestHeadersDataClasses)}:User-Agent"] = "None",
264
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.ResponseHeadersDataClasses)}:Content-Type"] = "Unknown",
265
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestPathLoggingMode)}"] = "Structured",
266
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestPathParameterRedactionMode)}"] = "None",
267
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RouteParameterDataClasses)}:userId"] = "MyTaxonomy:EUII",
268
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.LogContentHeaders)}"] = "true",
271
var configurationSection = configuration.GetSection(nameof(
LoggingOptions
));
279
var
options = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test");
282
typeof(
LoggingOptions
).GetProperties()
306
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.BodySizeLimit)}"] = "1024",
307
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.LogBody)}"] = "false",
308
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.LogContentHeaders)}"] = "false",
311
var section = configuration.GetSection(nameof(
LoggingOptions
));
314
var
defaultOptions = new LoggingOptions
320
((IConfigureOptions<
LoggingOptions
>)defaultConfigurator).Configure(defaultOptions);
326
var
mismatchedOptions = new LoggingOptions();
331
var
missingSectionOptions = new LoggingOptions();
375
var
options = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test");
393
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestHeadersDataClasses)}:User-Agent"] = "invalid",
399
.AddExtendedHttpClientLogging(configuration.GetSection(nameof(
LoggingOptions
)))
403
var act = () => provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test");
415
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestPathLoggingMode)}"] = "invalid",
421
.AddExtendedHttpClientLogging(configuration.GetSection(nameof(
LoggingOptions
)))
425
var act = () => provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>().Get("test");
437
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.BodySizeLimit)}"] = "1024",
438
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestHeadersDataClasses)}:User-Agent"] = "None",
444
.AddExtendedHttpClientLogging(configuration.GetSection(nameof(
LoggingOptions
)))
447
var options = provider.GetRequiredService<IOptionsMonitor<
LoggingOptions
>>();
452
configuration[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.BodySizeLimit)}"] = "2048";
453
configuration[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestHeadersDataClasses)}:User-Agent"] = "Unknown";
507
var
options = provider.GetRequiredService<IOptions<
LoggingOptions
>>().Value;
603
var
options = provider
604
.GetRequiredService<IOptions<
LoggingOptions
>>().Value;
619
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestQueryParametersDataClasses)}:search"] = "MyTaxonomy:PrivateData",
620
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RequestHeadersDataClasses)}:User-Agent"] = "None",
621
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.ResponseHeadersDataClasses)}:Content-Type"] = "Unknown",
622
[$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.RouteParameterDataClasses)}:userId"] = "MyTaxonomy:EUII",
628
.AddExtendedHttpClientLogging(configuration.GetSection(nameof(
LoggingOptions
)))
631
var
options = provider.GetRequiredService<IOptions<
LoggingOptions
>>().Value;
824
private static ServiceProvider BuildServiceProviderWithoutRedactionRegistration(bool useHttpClientBuilder, Action<
LoggingOptions
>? configure = null)
Logging\HttpHeadersReaderTest.cs (4)
25
var
options = new LoggingOptions();
50
var
options = new LoggingOptions
112
var
options = new LoggingOptions
172
var
options = new LoggingOptions();
Logging\HttpRequestBodyReaderTest.cs (10)
34
var
options = new LoggingOptions
54
var
options = new LoggingOptions
78
var
options = new LoggingOptions
99
var
options = new LoggingOptions
125
var
options = new LoggingOptions
149
var
options = new LoggingOptions
171
var
options = new LoggingOptions
204
var
options = new LoggingOptions
225
var
options = new LoggingOptions
255
var
options = new LoggingOptions { BodyReadTimeout = timeout };
Logging\HttpRequestReaderTest.cs (16)
62
var
options = new LoggingOptions
130
var
options = new LoggingOptions
192
var
opts = new LoggingOptions
265
var
opts = new LoggingOptions
339
var
opts = new LoggingOptions
401
var
opts = new LoggingOptions
474
var
opts = new LoggingOptions
543
var
opts = new LoggingOptions
594
var
opts = new LoggingOptions();
633
var
options = new LoggingOptions
678
var
options = new LoggingOptions
705
var
options = new LoggingOptions
736
var
options = new LoggingOptions
773
var
options = new LoggingOptions
826
var
options = new LoggingOptions
867
var
options = new LoggingOptions
Logging\HttpResponseBodyReaderTest.cs (12)
41
var
options = new LoggingOptions
61
var
options = new LoggingOptions
80
var
options = new LoggingOptions
102
var
options = new LoggingOptions
122
var
options = new LoggingOptions
145
var
options = new LoggingOptions
173
var
options = new LoggingOptions
207
var
options = new LoggingOptions
235
var
options = new LoggingOptions
263
var
options = new LoggingOptions();
273
var
options = new LoggingOptions { BodyReadTimeout = timeout };
283
var
options = new LoggingOptions
Logging\Internal\HelperExtensions.cs (3)
26
public static IOptionsMonitor<
LoggingOptions
> ToOptionsMonitor(this
LoggingOptions
options, string? key = null)
28
var snapshotMock = new Mock<IOptionsMonitor<
LoggingOptions
>>();
Logging\Internal\TestConfiguration.cs (3)
22
$"{nameof(
LoggingOptions
)}:{nameof(
LoggingOptions
.BodyReadTimeout)}",
27
.GetSection($"{nameof(
LoggingOptions
)}");
Logging\LoggingOptionsTest.cs (2)
15
private readonly
LoggingOptions
_sut;
25
var
sut = new LoggingOptions();
Logging\LoggingOptionsValidatorTest.cs (2)
34
var
options = new LoggingOptions { BodyReadTimeout = TimeSpan.Zero };
43
var
options = new LoggingOptions { BodySizeLimit = -1 };