Log4Net на Windows Server 2003 - PullRequest
       31

Log4Net на Windows Server 2003

2 голосов
/ 04 апреля 2011

Я работал над веб-приложением, использующим Visual Studio 2010 в ОС Windows 7.

Я использовал Log4Net для входа в программу просмотра событий, и это сработало, а это означает, что все правильно регистрируетсяв моем средстве просмотра событий Windows 7.

После установки этого же проекта на компьютер с Windows Server 2003 я заметил, что ничего не регистрируется ...

Я уже добавил ASPNET на администраторовгруппа компьютера с Windows Server 2003, но проблема не устранена ...

В файле AssemblyInfo.cs, который я добавил:

[Assembly: 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?

Заранее спасибо

1 Ответ

1 голос
/ 11 апреля 2011

Ну ...

Как оказалось, я также должен был предоставить СЕТЕВОЙ СЕРВИС полные разрешения для следующего ключа:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Eventlog

Voila

...