zoukankan      html  css  js  c++  java
  • castle故障检测

    来源:http://wiki.castleproject.org/index.php/ActiveRecord:Troubleshooting
    故障检测
    有时候你的映射可能存在一些错误,或者你想看你的sql语句到底是什么一回事这个时候我们就需要把 NHibernate 的日记记录打开

    允许日记记录
    nhibernate用的是log4net. 以下的配置中他是将信息写到 log.txt中的(程序运行的时候被锁定了你可以拷贝一份来查看)
    <?xml version="1.0" encoding="utf-8" ?> 

    <configuration>

        
    <configSections>
        
    <section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
            
    <section name="activerecord"
                     type
    ="Castle.ActiveRecord.Framework.Config.ActiveRecordSectionHandler, Castle.ActiveRecord" />
            
    <section name="log4net"
                     type
    ="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
        
    </configSections>

        
    <activerecord>
          
        
          
        
    </activerecord>
        
        
    <log4net>

            
    <!-- Define some output appenders -->
            
    <appender name="trace" type="log4net.Appender.TraceAppender, log4net">
                
    <layout type="log4net.Layout.PatternLayout,log4net">
                    
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%P{user}&gt; - %m%n" />
                
    </layout>
            
    </appender>

            
    <appender name="console" type="log4net.Appender.ConsoleAppender, log4net">
                
    <layout type="log4net.Layout.PatternLayout,log4net">
                    
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%P{user}&gt; - %m%n" />
                
    </layout>
            
    </appender>

            
    <appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net" >
                
    <param name="File" value="log.txt" />
                
    <param name="AppendToFile" value="true" />
                
    <param name="RollingStyle" value="Date" />
                
    <param name="DatePattern" value="yyyy.MM.dd" />
                
    <param name="StaticLogFileName" value="true" />

                
    <layout type="log4net.Layout.PatternLayout,log4net">
                    
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n" />
                
    </layout>
                
            
    </appender>

            
    <root>
                
    <!-- priority value can be set to ALL|INFO|WARN|ERROR -->
                
    <priority value="ALL" />
                
    <appender-ref ref="rollingFile" />
            
    </root>

        
    </log4net>

        
    <nhibernate> 
            
    <!-- with this set to true, SQL statements will output to the console window if it's a console app -->
            
    <add key="hibernate.show_sql" value="true" />
        
    </nhibernate>
    </configuration>


    在完成这个之后你必须调用这个方法
    log4net.Config.XmlConfigurator.Configure();
    一般写在 global.asax中
    注意这个方法必须写在ActiveRecordStarter.Initialize(...)之前

    你可以在log.txt中搜索你的hql语句.这样就可以在下面的几行里看到sql语句了
  • 相关阅读:
    记事本02
    助人快乐:笔记本连网
    高性能 架构实例 学习笔记
    食.运动.阅读
    The server name ... address could not be resolved
    Mysql 远程访问
    CSS布局 UI 学习笔记
    MySql 修改root密码
    C#:String类型中的CharAt 方法
    La_Lb_Lc
  • 原文地址:https://www.cnblogs.com/lovebanyi/p/772339.html
Copyright © 2011-2022 走看看