如何记录每个ASP.NET WebAPI调用需要多长时间?

时间:2014-08-12 23:55:55

标签: asp.net-web-api

有没有办法攻击某种全局记录器,以便我知道每个WebAPI请求需要多长时间?

1 个答案:

答案 0 :(得分:1)

是的,请查看MiniProfiler

它也有很多不同的适配器 - 例如,我已经将它与ServiceStack / Dapper一起使用,但它也适用于MS vanilla WebApi / EF。

在localhost(或用于在全局应用类中启用探查器的任何条件)上,当您在浏览器中点击站点URL时,您将在右上角获得一个ui小部件,详细说明总请求时间,序列化时间和数据库执行时间(包括执行的实际sql)。

要查看最近100个请求,请浏览: ~/mini-profiler-resources/results

对于更强大的存储,有选项here - 开箱即用支持sql server。使用此create script,然后为MiniProfiler设置存储提供程序:

MiniProfiler.Settings.Storage = new SqlServerStorage("..connectionstring...");

use Sqlite开箱即用

您甚至可以设置多个存储选项。 Examples here

添加探查器ui以查看请求时,它应该看起来像这样