我有一个正在分析的简单请求,如下所示。
public MyResponse GetOrders(OrdersRequest request)
{
var profiler = MiniProfiler.Current;
using (profiler.Step("GetOrders Service Requests"))
{
using (profiler.Step("_externalRepository.GetOrders"))
{
}
}
return result;
}
执行时会在数据库中产生以下行。
所以我的问题是根对象的DurantionMilliseconds如何与它的孩子的时间相关联?我看到73.400并假设这是整个操作的总数,这是正确的吗?
版本:
<package id="MiniProfiler" version="3.0.10-beta7" targetFramework="net45" />
<package id="MiniProfiler.EF5" version="3.0.10-beta1" targetFramework="net45" />
答案 0 :(得分:2)
是的,Timing步骤的持续时间包括其子女时间&#39;的持续时间。
更容易想象成树*:
> http://localhost:8203/ExternalService.svc 73.4 ms
>> GetOrders Service Requests 56.1 ms
>>> _externalRepository.GetOrders 55.9 ms
因此根时间(即整个请求)花费了73.4毫秒; GetOrders Service Requests
是整个73.4毫秒的56.1毫秒;并且_externalRepository.GetOrders
是其父母的56.9毫秒的55.9毫秒。
* MiniProfiler扩展方法RenderPlainText()
可以输出此格式。