使用log4net清空NHibernate日志文件
我正在尝试使用Fluent NHibernate和log4net在我的应用程序上启用日志记录。我已经尝试过所描述的事情,并且。正在创建日志文件,但没有写入任何内容。此应用程序和其他应用程序的其他日志文件都正常工作,因此我假设问题出在我的配置上 以下是我为实现这一目标而编写的代码: 配置文件中包含与此应用程序相关的所有log4net设置的部分:使用log4net清空NHibernate日志文件,nhibernate,fluent-nhibernate,log4net,Nhibernate,Fluent Nhibernate,Log4net,我正在尝试使用Fluent NHibernate和log4net在我的应用程序上启用日志记录。我已经尝试过所描述的事情,并且。正在创建日志文件,但没有写入任何内容。此应用程序和其他应用程序的其他日志文件都正常工作,因此我假设问题出在我的配置上 以下是我为实现这一目标而编写的代码: 配置文件中包含与此应用程序相关的所有log4net设置的部分: <appender name="RollingFileAppenderNHibernate" type="log4net.Appen
<appender name="RollingFileAppenderNHibernate"
type="log4net.Appender.RollingFileAppender">
<file value="C:\temp\RollingLogFileNHibernate" />
<appendToFile value="true" />
<ImmediateFlush value="true" />
<rollingStyle value="Date" />
<DatePattern value="yyyyMMdd.\l\o\g" />
<StaticLogFileName value="false" />
<MaxSizeRollBackups value="1" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<logger name="NHibernate.SQL"
additivity="false">
<level value="ALL"/>
<appender-ref ref="RollingFileAppenderNHibernate"/>
</logger>
我尝试了几种不同的设置,但结果总是一样的,一个空的日志文件。如果XML是配置的真实再现,我可以看到两个潜在问题:
当然,这可能是由于复制并粘贴到本文中造成的。事实证明,这个问题与我们围绕log4net编写的框架代码中处理日志的方式过于复杂和复杂有关。一旦我找到了正确的跳转环,日志开始正常工作。这真的是您所有的配置吗?如果没有和元素,它肯定无法工作。不,这不是我的全部配置,但它是与此应用程序相关的部分。我已经更新了这个问题,使这个事实更加清楚。谢谢,这些都是复制和粘贴错误。我现在已经纠正了它们。
public static ISessionFactory CreateSessionFactory()
{
return Fluently.Configure()
.Database(OracleClientConfiguration.Oracle10
.ConnectionString((conn =>
conn.FromConnectionStringWithKey("APPDB")))
.ShowSql())
.Mappings(m =>
m.FluentMappings.AddFromAssemblyOf<{ObjectName}>())
.BuildSessionFactory();
}
log4net.Config.XmlConfigurator.Configure();