惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
SegmentFault 最新的问题
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Attack and Defense Labs
Attack and Defense Labs
F
Full Disclosure
Vercel News
Vercel News
N
News | PayPal Newsroom
The GitHub Blog
The GitHub Blog
H
Hacker News: Front Page
H
Heimdal Security Blog
P
Privacy International News Feed
博客园 - 司徒正美
Google DeepMind News
Google DeepMind News
N
Netflix TechBlog - Medium
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cisco Blogs
L
Lohrmann on Cybersecurity
D
Docker
Recent Announcements
Recent Announcements
Security Archives - TechRepublic
Security Archives - TechRepublic
人人都是产品经理
人人都是产品经理
C
CXSECURITY Database RSS Feed - CXSecurity.com
P
Proofpoint News Feed
T
Tailwind CSS Blog
C
Check Point Blog
博客园 - 叶小钗
Google Online Security Blog
Google Online Security Blog
Martin Fowler
Martin Fowler
Stack Overflow Blog
Stack Overflow Blog
博客园 - 聂微东
S
Secure Thoughts
博客园 - Franky
博客园_首页
阮一峰的网络日志
阮一峰的网络日志
P
Palo Alto Networks Blog
Latest news
Latest news
量子位
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 三生石上(FineUI控件)
The Cloudflare Blog
Last Week in AI
Last Week in AI
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Cyberwarzone
Cyberwarzone
小众软件
小众软件
Cisco Talos Blog
Cisco Talos Blog
Hacker News: Ask HN
Hacker News: Ask HN
T
Threatpost
T
Tenable Blog
P
Privacy & Cybersecurity Law Blog
WordPress大学
WordPress大学

博客园 - HollisYao

创建Azure DS 虚拟机并附加SSD硬盘 Azure Site to Site VPN 配置手册 - HollisYao 使用Azure REST API创建虚拟机 SharePoint 2013 地址栏_layouts/15/start.aspx# SharePoint 2013 Workflow Manager 工作流配置注意事项 InfoPath 发布表单到SharePoint库报错 InfoPath发布到SharePoint Server 2013报错 log4net+spring.net+Nhibernate 内部异常捕捉问题 VMWare host 32位 guest 64位 QuickPart Permission问题 ASP.Net 域自动登录(AD自动登录) - HollisYao - 博客园 Feature部署EventHandler注意事项 QuickPart功能改进_Sharepoint_MOSS 部署WebPart的两种方式 MOSS/Sharepoint 2007 创建网站集之后,链接出现“未找到文件”错误提示 Apache2.2.8、php5.2.6、mysql5、phpMyAdmin2.11.6在Windows Vista下的安装和配置 Vista SP1、IIS7,安装ASP.Net 1.1、VS2003、NetAdvantage 2004vol、Sql Server2000全攻略 博客园怎么了? 将 MS SQL Server 2005 SP2 整合到安装文件--【脚本修正】
在log4net中控制nhibernate输出
HollisYao · 2010-05-21 · via 博客园 - HollisYao

  通常,如果nhibernate和log4net同时出现的话,nhibernate通常会自动用log4net输出信息,这样的话,会和通过应用程序输出的日志混杂在一起。因为nhibernate会默认使用root下的appender。但是,我们可以通过配置其它的logger来控制nihibernate的输出,如下配置:(这个配置是log4net连接到sql2008的一个配置文件)

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
  </configSections>
 
  <appSettings/>
  <connectionStrings/>
  <system.web>

  </system.web>

  <log4net>

    <root>
      <level value="ALL" />
      <appender-ref ref="ADONetAppender" />
    </root>
   
    <!--Nhibernate的日志配置开始-->
   
<!--additivity是 子Logger 是否继承 父Logger 的 输出源(appender) 的标志位。具体说,默认情况下子Logger会继承父Logger的appender,
    也就是说子Logger会在父Logger的appender里输出。若是additivity设为false,则子Logger只会在自己的appender里输出,
    而不会在父Logger的appender里输出。 -->
    <logger name="NHibernate" additivity="false">
      <level value="WARN" />
      <appender-ref ref="ADONetAppender" />
    </logger>
    <logger name="NHibernate.SQL" additivity="false">
      <level value="ERROR" />
      <appender-ref ref="ADONetAppender" />
    </logger>
    <!--Nhibernate的日志配置结束-->

    <appender name="ADONetAppender" type="log4net.Appender.ADONetAppender">
      <bufferSize value="0" />
      <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <connectionString value="server=localhost;database=SummerData;user id=sa;password=P@ssw0rd;Connect Timeout=15;" />
      <commandText value="INSERT INTO LogMessage ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />
      <parameter>
        <parameterName value="@log_date" />
        <dbType value="DateTime" />
        <layout type="log4net.Layout.RawTimeStampLayout" />
      </parameter>
      <parameter>
        <parameterName value="@thread" />
        <dbType value="String" />
        <size value="255" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%thread" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@log_level" />
        <dbType value="String" />
        <size value="50" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%level" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@logger" />
        <dbType value="String" />
        <size value="255" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%logger" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@message" />
        <dbType value="String" />
        <size value="4000" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%message" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@exception" />
        <dbType value="String" />
        <size value="2000" />
        <layout type="log4net.Layout.ExceptionLayout" />
      </parameter>
    </appender>

  </log4net>
</configuration>