windows - Windows Server 2003 上的 Log4Net

标签 windows events log4net viewer

我一直在 Windows 7 操作系统上使用 Visual Studio 2010 开发 Web 应用程序。

我使用 Log4Net 登录事件查看器,效果很好,这意味着我的 Windows 7 事件查看器上的所有内容都正确记录。

在 Windows Server 2003 机器上安装同一个项目后,我注意到没有任何记录......

我已经在 Windows Server 2003 计算机的管理员组中添加了 ASPNET,但问题仍然存在...

在我添加的 AssemblyInfo.cs 文件中:

[程序集:log4net.Config.XmlConfigurator()]

在我添加的 Web.config 文件中:

... ...
-->

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >
  <param name="LogName" value="MyLog" />
  <param name="ApplicationName" value="MyApplication" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
  </layout>
</appender>

<!-- Setup the root category, add the appenders and set the default level -->
<root>
  <level value="INFO" />
  <appender-ref ref="ConsoleAppender" />
</root>
<!-- ApplicationKit category - the presentation UI -->
<logger name="MyLogger">
  <level value="INFO" />
  <appender-ref ref="FileAppender" />
  <appender-ref ref="EventLogAppender" />
</logger>

最后是背后的代码:

... log4net.Config.XmlConfigurator.Configure(); Ilog log = LogManager.GetLogger("MyLogger"); ...

我已经在以下位置创建了 MyLog 键值:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog

但是,那里仍然没有任何记录。

我 100% 确定这在 Windows 7 上完美运行。

我是否需要在 Windows Server 2003 上进行一些特殊配置?

提前致谢

最佳答案

嗯...

事实证明,我还必须授予 NETWORK SERVICE 对以下 key 的完全权限:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog

关于windows - Windows Server 2003 上的 Log4Net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5536997/

相关文章:

c# - 使用 C# 检测事件窗口更改而不轮询

windows - Microsoft SysVAD虚拟音频设备驱动程序(SYSVAD)无法工作

达到maximumFileSize时的log4net滚动文件appender文件名格式

.net - Log4net html 格式的 SmtpAppender

windows - Mongodb 文件分配器需要更多时间

c# - 在 C# 中不使用内置函数或方法求和平均最小最大值

javascript - 在 FullCalendar 的 Dayclick 事件上触发 jQuery qTip,然后使用其中的按钮创建事件

c# - 从外部类调用私有(private)事件处理程序

javascript - 打印窗口关闭后执行命令

C++/命令行界面 : how to store a managed reference inside a native class?