.net core webApi 怎样通过程序记录每个API的执行时间
自定义一个过滤器,然后注册为全局的,监听所有Action,再过滤器中计时,计算进出所消耗时间,然后使用一个独立的线程保存这个日志,以免影响接口响应速度。
public class TimmerFilter : IActionFilter { private readonly Stopwatch Timmer = new Stopwatch(); public void OnActionExecuted(ActionExecutedContext context) { Timmer.Stop(); var useTime = Timmer.ElapsedMilliseconds; //save usetime... } public void OnActionExecuting(ActionExecutingContext context) { Timmer.Start(); } }