Я не уверен, что это правильный форум для публикации этого вопроса. Но я просто надеюсь, что кто-то здесь мог использовать log4net в прошлом, поэтому надеюсь получить некоторую помощь.
Я использую log4net для регистрации своих исключений. Настройки конфигурации выглядят так:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net debug="false">
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\sample.log" />
<appendToFile value="true"/>
<rollingStyle value="Size"/>
<maxSizeRollBackups value="10"/>
<maximumFileSize value="10MB"/>
<staticLogFileName value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5level %date %logger.%method[line %line] - %message%newline"/>
</layout>
</appender>
<root>
<level value="INFO"/>
<appender-ref ref="RollingLogFileAppender"/>
</root>
</log4net>
</configuration>
Я начал с добавления этой конфигурации в web.config, но получил ошибку (VS studio не смогла найти схему для log4net- «Не удалось найти информацию о схеме для элемента log4net»). Поэтому я перешел по этой ссылке ( сообщения Log4Net «Не удалось найти информацию о схеме» ) и настроил мои параметры в отдельном XML-файле и добавил следующую строку кода в свой AssemblyInfo.cs
:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "xmlfile.xml", Watch = true)]
И в фактическом коде я поместил эту строку:
public void CreateUser(String username, String password)
{
try
{
log.Info("Inside createuser");
//code for creating user
}
catch(exception e)
{
log.Info("something happened in create user", e);
}
}
Проблема в том, что файл журнала не создается. Я ничего не вижу внутри C: \ Logs. Кто-нибудь может сказать мне, что я здесь делаю неправильно?
Любые предложения / предложения будут очень полезны.
Спасибо всем заранее.