2013-08-07 109 views
0

我的應用程序使用:log4net的:寫入事件日誌服務器上

  • .NET 4
  • MVC 3
  • 的Windows Server 2008 R2

我用log4net寫的日誌在事件日誌上。
我的配置文件看起來像這樣:

<configuration> 
    <log4net> 
    <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender"> 
     <param name="LogName" value="SomeLogName"/> 
     <param name="ApplicationName" value="MyAppName"/> 
     <some settings for log4net...> 
    </appender> 
    <log4net> 
</configuration> 

它工作得很好,當我在我的電腦(本地主機)上運行。
但我無法寫入服務器上的事件日誌。

回答

0

您應該檢查apppool用戶是否完全控制了日誌目錄。他必須創建和更新權利。

啓用內部調試:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
     <add key="log4net.Internal.Debug" value="true"/> 
    </appSettings> 
</configuration> 

或者:

<configuration> 
    ... 

    <system.diagnostics> 
     <trace autoflush="true"> 
      <listeners> 
       <add 
        name="textWriterTraceListener" 
        type="System.Diagnostics.TextWriterTraceListener" 
        initializeData="C:\tmp\log4net.txt" /> 
      </listeners> 
     </trace> 
    </system.diagnostics> 

    ... 
</configuration> 

的C:\ tmp目錄\目錄具有excits,你應該給該目錄的程序池用戶完全控制。