log4net:写入服务器上的事件日志

时间:2013-08-07 09:04:16

标签: iis windows-server-2008 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>

当我在计算机上运行它时,它运行良好(localhost) 但我无法写入服务器上的事件日志。

1 个答案:

答案 0 :(得分: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 \ dir必须激活,你应该给apppool用户完全控制目录。