public void InitializeSetsTelemetryOperationNameToControllerFromActionContext() { var actionContext = new ActionContext(); actionContext.RouteData = new RouteData(); actionContext.RouteData.Values.Add("controller", "home"); var contextAccessor = HttpContextAccessorHelper.CreateHttpContextAccessor(new RequestTelemetry(), actionContext); var telemetryListener = new DiagnosticListener(TestListenerName); var initializer = new MvcDiagnosticsListener(); telemetryListener.SubscribeWithAdapter(initializer); telemetryListener.Write("Microsoft.AspNetCore.Mvc.BeforeAction", new { httpContext = contextAccessor.HttpContext, routeData = actionContext.RouteData }); var telemetry = contextAccessor.HttpContext.Features.Get <RequestTelemetry>(); Assert.Equal("GET home", telemetry.Name); }
public void InitializeDoesNotIncludeRouteGroupKeyInParametersList() { var actionContext = new ActionContext(); actionContext.RouteData = new RouteData(); actionContext.RouteData.Values.Add("controller", "account"); actionContext.RouteData.Values.Add("action", "login"); actionContext.RouteData.Values.Add(TreeRouter.RouteGroupKey, "RouteGroupKey"); var contextAccessor = HttpContextAccessorHelper.CreateHttpContextAccessor(new RequestTelemetry(), actionContext); var telemetryListener = new DiagnosticListener(TestListenerName); var initializer = new MvcDiagnosticsListener(); telemetryListener.SubscribeWithAdapter(initializer); telemetryListener.Write("Microsoft.AspNetCore.Mvc.BeforeAction", new { httpContext = contextAccessor.HttpContext, routeData = actionContext.RouteData }); var telemetry = contextAccessor.HttpContext.Features.Get <RequestTelemetry>(); Assert.Equal("GET account/login", telemetry.Name); }
public void InitializeSortsParameters() { var actionContext = new ActionContext(); actionContext.RouteData = new RouteData(); actionContext.RouteData.Values.Add("controller", "account"); actionContext.RouteData.Values.Add("action", "login"); actionContext.RouteData.Values.Add("parameterZ", "myName1"); actionContext.RouteData.Values.Add("parameterA", "myName2"); actionContext.RouteData.Values.Add("parameterN", "myName1"); var contextAccessor = HttpContextAccessorHelper.CreateHttpContextAccessor(new RequestTelemetry(), actionContext); var telemetryListener = new DiagnosticListener(TestListenerName); var initializer = new MvcDiagnosticsListener(); telemetryListener.Subscribe(initializer); telemetryListener.Write("Microsoft.AspNetCore.Mvc.BeforeAction", new { httpContext = contextAccessor.HttpContext, routeData = actionContext.RouteData }); var telemetry = contextAccessor.HttpContext.Features.Get <RequestTelemetry>(); Assert.Equal("GET account/login [parameterA/parameterN/parameterZ]", telemetry.Name); }