You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6 Web API中Serilog的Elapsed耗时如何计算?

Serilog请求日志中Elapsed的计算方式

Serilog的UseSerilogRequestLogging中间件里的Elapsed值,计算逻辑是从请求进入中间件的时刻开始,到请求处理完成、准备发送响应的时刻结束,这段时间的总耗时,单位是毫秒。

具体计算流程:

  • 当请求到达UseSerilogRequestLogging中间件时,立即启动高精度计时器(比如.NET内置的Stopwatch)
  • 请求继续流经后续的管道环节(路由匹配、控制器执行、业务逻辑处理等)
  • 当所有处理完成,请求回传至该中间件时,停止计时器
  • 用结束时间减去起始时间的差值,即为Elapsed的最终数值,会按照你配置的{Elapsed:0.0000}格式输出四位小数的毫秒数

这个耗时包含的范围:

  • 路由匹配、模型绑定的处理时间
  • 控制器动作方法的执行时间
  • 后续中间件的处理时间

不包含的范围:

  • 响应数据从服务器发送到客户端的网络传输时间

内容的提问来源于stack exchange,提问作者user246392

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 23:55:31