NHibernate SQL探测工具 NHProfAppender 的使用

9 篇文章 0 订阅
9 篇文章 0 订阅

NHibernate框架使用时,经常需要跟踪SQL脚本,牛X的工具当然就是 NHProfAppender了,不过网上对这个工具的使用方法说的不多,俺在这里备注下,希望能帮助那些还不清楚的朋友们。

1 下载引用

我这里整理了一份:http://download.csdn.net/detail/xz2001/5010939

下载后解压到一个固定目录,相当于一个绿色软件来使用,然后在你的项目中引用如下两个DLL:

HibernatingRhinos.Profiler.Appender.dll

HibernatingRhinos.Profiler.Appender.NHibernateLog4Net.dll

2 配置log4net

 NHProfAppender 配置要用到log4net,如果对log4net不清楚请看下这篇:http://blog.csdn.net/xz2001/article/details/8450548

很简单,看下我的配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<appender name="NHProfAppender" type="HibernatingRhinos.Profiler.Appender.NHibernate.NHProfAppender, HibernatingRhinos.Profiler.Appender.NHibernateLog4Net">
<sink value="http://localhost:8010"/>
</appender>
<appender name="LogFile" type="log4net.Appender.FileAppender,log4net">
<param name="File" value="Logs\\error.log"/>
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
</layout>
</appender>
<root>
<level value="ERROR" />
<appender-ref ref="LogFile" />
<appender-ref ref="NHProfAppender"/>
</root>
</log4net>
</configuration>

注意看第7、8(修改成你项目的URL)、9行和19行,这是配置的重点,其他的是日志文件配置。

3 设置log4net配置文件路径

我的log4net配置文件放这里: Config/log4net.xml,这里需要修改两处:

在 AssemblyInfo.cs 文件最后一行加入:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Config\\log4net.xml", Watch = true)]

在 Global 中的Start事件中类似这样:

        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo("Config/log4net.xml"));
            HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.Initialize();

            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);
        }
这里要注意一下,如果你的框架中使用Spring.NET框架,第4行是必须的“ log4net.Config.XmlConfigurator.Configure(new FileInfo("log4net_config.xml"));”,没有用Spring.NET的话可以没有,这个我仅在自己的项目环境中测试,如果在使用时遇到问题,可以留意下这个问题。

4 使用方法

先到NHProfAppender解压目录中运行“NHProf.exe”,然后在浏览器里访问你的Web项目,切回NHProfAppender看下,有了吧。

很简单,只是配置的时候要注意一下,另外,同一个HTTP请求可能有多个Session;还有,多次访问产生太多的Session找起来可能有些麻烦,可以点击右键把之前访问的Session清除,重新请求后再检查。



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值