2017-01-19 3 views
0

У меня есть проблема с файлом журнала в моей системе в asp.net с использованием рамки Castle. Файл журнала не обновлялся. Это старая система с 2011 года, я думаю, и последняя дата, когда журнал обновлен на 2013 год.Log4net не записывает журнал

Существует еще один аналогичный базовый код с использованием той же самой веб-конфигурации, что и запись файла журнала, но после того, как я сделаю доступ к папке журнала всем , Я пытаюсь сделать то же самое на промежуточном сервере для старой системы, но файл журнала не записывается. Смотрел какую-то информацию здесь, но все еще не могу найти первопричину.

Ниже приведен код:

<log4net> 
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net"> 
    <param name="File" value="Logs\LogFile.log" /> 
    <param name="AppendToFile" value="true" /> 
    <param name="RollingStyle" value="Size" /> 
    <param name="MaxSizeRollBackups" value="10" /> 
    <param name="MaximumFileSize" value="10000KB" /> 
    <param name="StaticLogFileName" value="true" /> 
    <layout type="log4net.Layout.PatternLayout,log4net"> 
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}> - %m%n" /> 
    </layout> 
    <layout type="log4net.Layout.PatternLayout"> 
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}>%n - %m%n" /> 
    </layout> 
</appender> 

Надежда кто-то может дать некоторое представление.

[UPDATE]

Существует на самом деле fucntion из Application_Start (если это asp.net), как и выше. log4net.Config.XmlConfigurator.Configure(); но он был прокомментирован предыдущим разработчиком. Когда я раскомментирую его, появится новая ошибка.

Именно из-за этого ниже код:

try 
     { 
      SingleSignOnHelper<Staff> singleSignOnHelper = ServiceLocator.Current.GetInstance<SingleSignOnHelper<Staff>>(); 
      windowsAuthSucceeded = singleSignOnHelper.TryAuthenticateWithWindowsAuthentication(Context); 
      loginPageUrl = singleSignOnHelper.LoginPageUrl; 
     } 
     catch (Exception ex) 
     { 
      if (m_log.IsErrorEnabled) m_log.Error("Error while trying to authenticate user using Windows authentication", ex); 
      throw; 
     } 

     if (!windowsAuthSucceeded) 
      Context.Response.Redirect(loginPageUrl); 
    } 
} 
+0

Вы создаете приложения, но не назначаете их регистратору, есть ли в корне '' элемент 'root'? – stuartd

ответ

3
void Application_Start(object sender, EventArgs e) 
    { 
     log4net.Config.XmlConfigurator.Configure(); 
} 

Вы должны вызвать функцию в Application_Start (если это asp.net), как и выше. log4net.Config.XmlConfigurator.Configure();

+0

последний раз, когда я проверил application_start, есть. В новом проекте используется тот же код, что и некоторые из функций, но в основном это web.config. Поэтому, когда я даю разрешение папке журнала всем, новый базовый код может записывать файл журнала, но если я использую тот же метод, старая система не записывает файл журнала. – namasayadin

Смежные вопросы