Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MVC use concrete types for DiagnosticListener #11730

Merged
merged 11 commits into from
Jul 15, 2019
74 changes: 37 additions & 37 deletions src/Hosting/Hosting/test/HostingApplicationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -88,13 +88,13 @@ public void CreateContextWithEnabledLoggerAndRequestIdCreatesActivityAndSetsActi
public void ActivityStopDoesNotFireIfNoListenerAttachedForStart()
{
// Arrange
var diagnosticSource = new DiagnosticListener("DummySource");
var diagnosticListener = new DiagnosticListener("DummySource");
var logger = new LoggerWithScopes(isEnabled: true);
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource, logger: logger);
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener, logger: logger);
var startFired = false;
var stopFired = false;

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
// This should not fire
if (pair.Key == "Microsoft.AspNetCore.Hosting.HttpRequestIn.Start")
Expand Down Expand Up @@ -128,14 +128,14 @@ public void ActivityStopDoesNotFireIfNoListenerAttachedForStart()
[Fact]
public void ActivityIsNotCreatedWhenIsEnabledForActivityIsFalse()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool eventsFired = false;
bool isEnabledActivityFired = false;
bool isEnabledStartFired = false;

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
eventsFired |= pair.Key.StartsWith("Microsoft.AspNetCore.Hosting.HttpRequestIn");
}), (s, o, arg3) =>
Expand All @@ -162,14 +162,14 @@ public void ActivityIsNotCreatedWhenIsEnabledForActivityIsFalse()
[Fact]
public void ActivityIsCreatedButNotLoggedWhenIsEnabledForActivityStartIsFalse()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool eventsFired = false;
bool isEnabledStartFired = false;
bool isEnabledActivityFired = false;

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
eventsFired |= pair.Key.StartsWith("Microsoft.AspNetCore.Hosting.HttpRequestIn");
}), (s, o, arg3) =>
Expand Down Expand Up @@ -199,12 +199,12 @@ public void ActivityIsCreatedButNotLoggedWhenIsEnabledForActivityStartIsFalse()
[Fact]
public void ActivityIsCreatedAndLogged()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool startCalled = false;

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
if (pair.Key == "Microsoft.AspNetCore.Hosting.HttpRequestIn.Start")
{
Expand All @@ -224,11 +224,11 @@ public void ActivityIsCreatedAndLogged()
[Fact]
public void ActivityIsStoppedDuringStopCall()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool endCalled = false;
diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
if (pair.Key == "Microsoft.AspNetCore.Hosting.HttpRequestIn.Stop")
{
Expand All @@ -249,11 +249,11 @@ public void ActivityIsStoppedDuringStopCall()
[Fact]
public void ActivityIsStoppedDuringUnhandledExceptionCall()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool endCalled = false;
diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
if (pair.Key == "Microsoft.AspNetCore.Hosting.HttpRequestIn.Stop")
{
Expand All @@ -273,11 +273,11 @@ public void ActivityIsStoppedDuringUnhandledExceptionCall()
[Fact]
public void ActivityIsAvailableDuringUnhandledExceptionCall()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool endCalled = false;
diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair =>
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair =>
{
if (pair.Key == "Microsoft.AspNetCore.Hosting.UnhandledException")
{
Expand All @@ -295,10 +295,10 @@ public void ActivityIsAvailableDuringUnhandledExceptionCall()
[Fact]
public void ActivityIsAvailibleDuringRequest()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair => { }),
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair => { }),
s =>
{
if (s.StartsWith("Microsoft.AspNetCore.Hosting.HttpRequestIn"))
Expand All @@ -317,10 +317,10 @@ public void ActivityIsAvailibleDuringRequest()
[Fact]
public void ActivityParentIdAndBaggeReadFromHeaders()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair => { }),
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair => { }),
s =>
{
if (s.StartsWith("Microsoft.AspNetCore.Hosting.HttpRequestIn"))
Expand Down Expand Up @@ -349,10 +349,10 @@ public void ActivityParentIdAndBaggeReadFromHeaders()
[Fact]
public void ActivityTraceParentAndTraceStateFromHeaders()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

diagnosticSource.Subscribe(new CallbackDiagnosticListener(pair => { }),
diagnosticListener.Subscribe(new CallbackDiagnosticListener(pair => { }),
s =>
{
if (s.StartsWith("Microsoft.AspNetCore.Hosting.HttpRequestIn"))
Expand Down Expand Up @@ -385,11 +385,11 @@ public void ActivityTraceParentAndTraceStateFromHeaders()
[Fact]
public void ActivityOnExportHookIsCalled()
{
var diagnosticSource = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticSource: diagnosticSource);
var diagnosticListener = new DiagnosticListener("DummySource");
var hostingApplication = CreateApplication(out var features, diagnosticListener: diagnosticListener);

bool onActivityImportCalled = false;
diagnosticSource.Subscribe(
diagnosticListener.Subscribe(
observer: new CallbackDiagnosticListener(pair => { }),
isEnabled: (s, o, _) => true,
onActivityImport: (activity, context) =>
Expand Down Expand Up @@ -422,7 +422,7 @@ private static void AssertProperty<T>(object o, string name)
}

private static HostingApplication CreateApplication(out FeatureCollection features,
DiagnosticListener diagnosticSource = null, ILogger logger = null, Action<DefaultHttpContext> configure = null)
DiagnosticListener diagnosticListener = null, ILogger logger = null, Action<DefaultHttpContext> configure = null)
{
var httpContextFactory = new Mock<IHttpContextFactory>();

Expand All @@ -436,7 +436,7 @@ private static HostingApplication CreateApplication(out FeatureCollection featur
var hostingApplication = new HostingApplication(
ctx => Task.CompletedTask,
logger ?? new NullScopeLogger(),
diagnosticSource ?? new NoopDiagnosticSource(),
diagnosticListener ?? new NoopDiagnosticListener(),
httpContextFactory.Object);

return hostingApplication;
Expand Down Expand Up @@ -490,11 +490,11 @@ public void Dispose()
}
}

private class NoopDiagnosticSource : DiagnosticListener
private class NoopDiagnosticListener : DiagnosticListener
{
private readonly bool _isEnabled;

public NoopDiagnosticSource(bool isEnabled = false) : base("DummyListener")
public NoopDiagnosticListener(bool isEnabled = false) : base("DummyListener")
{
_isEnabled = isEnabled;
}
Expand Down
2 changes: 1 addition & 1 deletion src/Http/Http/src/DefaultHttpContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ public override ISession Session

// This property exists because of backwards compatibility.
// We send an anonymous object with an HttpContext property
// via DiagnosticSource in various events throughout the pipeline. Instead
// via DiagnosticListener in various events throughout the pipeline. Instead
rynowak marked this conversation as resolved.
Show resolved Hide resolved
// we just send the HttpContext to avoid extra allocations
[EditorBrowsable(EditorBrowsableState.Never)]
public HttpContext HttpContext => this;
Expand Down
Loading