1
내 프로젝트에서 나는 MVC, NHibernate를 사용하고 있으며, HTML 오류를 로그하기 위해 log4net 라이브러리를 사용하고 싶습니다. 나는 코드의이 부분을 사용하는 경우 log4net 로그 파일이 생성되지 않았습니다
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Web.config", Watch = true)]
그러나 컨트롤러
, 그것은 어떤을 작성하지 않습니다여기
의 AssemblyInfo.cs에서<configuration>
<configSections>
<section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<!--<sectionGroup name="blowery.web">
<section name="httpCompress" type="blowery.Web.HttpCompress.SectionHandler, blowery.Web.HttpCompress"/>
</sectionGroup>-->
</configSections>
<log4net debug="false">
<!-- 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 - %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 - %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 - %m%n" />
</layout>
</appender>
<!-- Setup the root category, add the appenders and set the default priority -->
<root>
<priority value="INFO" />
<appender-ref ref="console" />
</root>
</log4net>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.connection_string">Password=maserver.login12345;Persist Security Info=True;User ID=sa;Initial Catalog=Mashhad4;Data Source=DEVSERVER</property>
<property name="show_sql">true</property>
<property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
<!--<property name="hibernate.batch_size">20</property>-->
<!--<property name="command_timeout">5000</property>-->
</session-factory>
</hibernate-configuration>
<configuration>
내가이이 파일 web.config
구성입니다 txt 파일.
log4net.Config.BasicConfigurator.Configure();
Exception inner = filterContext.Exception.InnerException;
log4net.ILog log = log4net.LogManager.GetLogger("MainLogger");
log.Error("Unhandled exception", inner == null ? filterContext.Exception : inner);
무엇이 문제인가?
나는 변화가 없었습니다. – Adrakadabra
@Adrakadabra 저는 제 대답에 또 다른 해결책을 제시했습니다. –
또한 웹 응용 프로그램 (네트워크 서비스/로컬 서비스 또는 기타)을 실행하는 사용자에게 쓰기를 시도하는 폴더에 대한 쓰기 권한이 있는지 확인하십시오 –