ActionFilter를 사용하여 ASP.NET 웹 API 프로젝트의 모든 동작 호출을 기록합니다. OnActionExecuted 메서드는 어떤 일이 일어나고 있는지 많은 것을 알려줍니다.ASP 웹 API 동작의 로그 지속 시간
난 그냥 실행 시간을 측정 할 수있는 효율적인 방법을 찾는 방법을 알아낼 수 없습니다... 어떤 도움
감사합니다! 트릭을 할해야이 같은
ActionFilter를 사용하여 ASP.NET 웹 API 프로젝트의 모든 동작 호출을 기록합니다. OnActionExecuted 메서드는 어떤 일이 일어나고 있는지 많은 것을 알려줍니다.ASP 웹 API 동작의 로그 지속 시간
난 그냥 실행 시간을 측정 할 수있는 효율적인 방법을 찾는 방법을 알아낼 수 없습니다... 어떤 도움
감사합니다! 트릭을 할해야이 같은
뭔가 ...
public class StopwatchAttribute : ActionFilterAttribute
{
private const string StopwatchKey = "StopwatchFilter.Value";
public override void OnActionExecuting(HttpActionContext actionContext)
{
base.OnActionExecuting(actionContext);
actionContext.Request.Properties[StopwatchKey] = Stopwatch.StartNew();
}
public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
{
base.OnActionExecuted(actionExecutedContext);
Stopwatch stopwatch = (Stopwatch)actionExecutedContext.Request.Properties[StopwatchKey];
// TODO something useful with stopwatch.Elapsed
Trace.WriteLine("Elapsed = " + stopwatch.Elapsed);
}
}
는 여기에 우리가 요구 프로퍼티의 새로운
Stopwatch
를 저장하고 요청이 완료되면 중지.
System.Diagnostics.Stopwatch? – Joe
MVC API 및 웹 API 모두 [이 기사] (https://www.simple-talk.com/dotnet/performance/building-performance-metrics-into-asp.net-mvc-applications/)를 확인하십시오. –