在 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();
}
我最近在玩 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();
}