在 Miniprofiler 工具中添加自定义持续时间

Add custom duration in Miniprofiler tool

我最近在玩 Miniprofiler。它在我们的应用程序中运行良好,并且发现了一些我们正在研究的有趣的东西。

但是,我有一个用例,我需要使用记录进行自定义注入,我可以在其中设置持续时间。

在下图中,您可以看到我现在制作的"hack",但我希望它能正确显示:

我的情况

我正在消费第三方API。每个页面都有很多调用,并且是从不同的视图调用的。

API 有一个 .NET 客户端,它有一个在用餐后调用的委托:

 private static void LogApiRequest(string httpMethod, string url, TimeSpan duration)

问题是这个方法显然只是用于日志记录,但我想在这里注入一个持续时间。

知道怎么做吗? :-)

如果我理解得很好,请用以下代码围绕您的 API 调用:

ApiClient thirdPartyClient = new ApiClient();
using (profiler.Step("Calling third party API Methods"))
{ 
    thirdPartyClient.MethodX();
}

或者,使用自定义类别:

ApiClient thirdPartyClient = new ApiClient();
using(MiniProfiler.Current.CustomTiming("3rd Party API","API.MethodY")
{
    thirdPartyClient.MethodY();
}