How to get actual request execution time
问题 Given the following middleware: public class RequestDurationMiddleware { private readonly RequestDelegate _next; private readonly ILogger<RequestDurationMiddleware> _logger; public RequestDurationMiddleware(RequestDelegate next, ILogger<RequestDurationMiddleware> logger) { _next = next; _logger = logger; } public async Task Invoke(HttpContext context) { var watch = Stopwatch.StartNew(); await _next.Invoke(context); watch.Stop(); _logger.LogTrace("{duration}ms", watch.ElapsedMilliseconds); } }