您的位置:首页 > 编程语言 > ASP

ASP.NET MVC5 使用MiniProfiler 监控MVC性能

2017-07-27 11:19 801 查看
MiniProfiler ,一个简单而有效的迷你剖析器,可以有效的实时监控页面。通过直接引用、Ajax、Iframe形式访问的其它页面进行监控,监控内容包括数据库内容,并可以显示数据库访问的SQL。

1.安装

首先新建一个 asp.net mvc 项目

右键项目,管理NuGet程序包。 安装 MiniProfiler.Mvc4和MiniProfiler

ps:MiniProfiler.MVC4的NuGet包(该MVC4包支持MVC5)



或者也可以打开程序包管理控制台 输入命令进行安装

Install-Package MiniProfiler -Version 3.2.0.157

Install-Package MiniProfiler.Mvc4 -Version 3.0.11


2.将以下内容添加到
Application_Start()
Global.asax中

protected void Application_Start()
{
...
GlobalFilters.Filters.Add(new ProfilingActionFilter());

var copy = ViewEngines.Engines.ToList();
ViewEngines.Engines.Clear();
foreach (var item in copy)
{
ViewEngines.Engines.Add(new ProfilingViewEngine(item));
}
}


3.将以下内容添加到“Application_BeginRequest()”和“Application_EndRequest()”,也在Global.asax中

protected void Application_BeginRequest()
{
if (Request.IsLocal)
{
MiniProfiler.Start();
}
}

protected void Application_EndRequest()
{
MiniProfiler.Stop();
}


4.将以下内容添加到_Layout.cshtml(就在
</body>
标签之前):

@StackExchange.Profiling.MiniProfiler.RenderIncludes()
</body>
</html>


5.将以下内容添加到
<handlers>
Web.config 的部分中:

<system.webServer>
...
<handlers>
...
<add name="MiniProfiler" path="mini-profiler-resources/*" verb="*"
type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified"
preCondition="integratedMode" />
...
</handlers>
</system.webServer>


如果你在项目中使用了Entity Framework ,那么你可以安装MiniProfiler.EF6软件包,在
Application_Start()
在Global.asax 结尾添加了以下内容:
MiniProfilerEF6.Initialize();


一个简单的对MVC性能的监控就这样了,其实他还有很多功能,比如说能够通过不同的参数检测并突出显示执行相同查询的区域。这样您就可以快速找到可能批量的查询。

还可以记录所有的ajax的调用,查看最近100个分析请求的分析信息等。

结果展示:



此随笔乃本人原创,如有疑问欢迎在下面评论,转载请标明出处。

如果对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力。

MiniProfiler 官网:http://miniprofiler.com/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: