public void Intercept(IInvocation invocation) { //protected override ActionResult InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary<string, object> parameters) var controllerContext = (ControllerContext)invocation.Arguments[0]; var actionDescriptor = (ActionDescriptor)invocation.Arguments[1]; var allFilters = controllerContext.FiltersStore(); var calledFilters = controllerContext.CallStore(); var action = GlimpseFilterCallMetadata.ControllerAction(actionDescriptor, controllerContext.IsChildAction); allFilters.Add(action); var calledMetadata = new GlimpseFilterCalledMetadata { Guid = action.Guid }; calledFilters.Add(calledMetadata); var watch = new Stopwatch(); watch.Start(); using (GlimpseTimer.Start("Action: " + actionDescriptor.ActionName, "Controller", controllerContext.Controller.GetType().Name)) { invocation.Proceed(); } watch.Stop(); calledMetadata.ExecutionTime = watch.Elapsed; }
public ViewEngineResult FindView(ControllerContext controllerContext, string viewName, string masterName, bool useCache) { ViewEngineResult viewEngineResult; using (GlimpseTimer.Start("Find View: " + viewName, "View", string.Format("{0}{1}", ViewEngine.GetType().Name, useCache ? " cache":""))) { viewEngineResult = ViewEngine.FindView(controllerContext, viewName, masterName, useCache); } viewEngineResult = Process(viewEngineResult, false, viewName, masterName, useCache); return(viewEngineResult); }
public ViewEngineResult FindPartialView(ControllerContext controllerContext, string partialViewName, bool useCache) { ViewEngineResult viewEngineResult; using (GlimpseTimer.Start("Find Partial View: " + partialViewName, "View", string.Format("{0}{1}", ViewEngine.GetType().Name, useCache ? " cache" : ""))) { viewEngineResult = ViewEngine.FindPartialView(controllerContext, partialViewName, useCache); } viewEngineResult = Process(viewEngineResult, true, partialViewName, "", useCache); return(viewEngineResult); }
public void OnResultExecuting(ResultExecutingContext filterContext) { var metadata = LogCall(OnResultExecutingGuid); var watch = new Stopwatch(); watch.Start(); using (GlimpseTimer.Start("Executing: Result Filter", "Filter", ResultFilter.GetType().Name)) { ResultFilter.OnResultExecuting(filterContext); } watch.Stop(); metadata.ExecutionTime = watch.Elapsed; }
public void OnException(ExceptionContext filterContext) { var metadata = LogCall(Guid); var watch = new Stopwatch(); watch.Start(); using (GlimpseTimer.Start("Executing: Exception Filter", "Filter", ExceptionFilter.GetType().Name)) { ExceptionFilter.OnException(filterContext); } watch.Stop(); metadata.ExecutionTime = watch.Elapsed; }
public void Render(ViewContext viewContext, TextWriter writer) { ViewContext = viewContext; var id = Guid.NewGuid().ToString(); //writer.Write("<!--VIEW("+ViewName+")-->"); using (GlimpseTimer.Start(string.Format("Render View: {0}", ViewName), "View")) { View.Render(viewContext, writer); } //writer.Write("<!--/VIEW(" + ViewName + ")-->"); }
public void OnActionExecuted(ActionExecutedContext filterContext) { var metadata = LogCall(OnActionExecutedGuid); var watch = new Stopwatch(); watch.Start(); using (GlimpseTimer.Start("Executed: Action Filter", "Filter", ActionFilter.GetType().Name)) { ActionFilter.OnActionExecuted(filterContext); } watch.Stop(); metadata.ExecutionTime = watch.Elapsed; }
private static void BeginRequest(object sender, WebRequestEventArgs e) { GlimpseTimer.Start("Query - " + e.Request.RequestUri.PathAndQuery, GlimpseTimerCategory); //GlimpseTimer.Moment(); }