Próbowałem skonfigurować log4net do rejestrowania wszystkiego na wyjściu konsoli. Mam plik konfiguracyjny o nazwie Log4Net.config
Konfigurowanie log4net z plikiem xml
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="ConsoleAppender" />
</root>
</log4net>
</configuration>
i mam główne klasy (tylko przypadek testowania)
namespace TestLog4Net {
class Program {
private static readonly ILog log = LogManager.GetLogger(typeof(Program));
static void Main(string[] args) {
log.Info("Info");
log.Error("Error");
Console.ReadKey();
}
}
}
Dodałem te linie do AssemblyInfo.cs
[assembly: log4net.Config.XmlConfigurator(
ConfigFile = "Log4Net.config", Watch = true)]
ale teraz nic jest zalogowany, czy ktoś może to wyjaśnić?
Otrzymuję dokładnie ten sam problem. Mam podobną implementację i nadal nie jestem w stanie naprawić problemu. Czy możesz mi pomóc to naprawić? – Karthikeyan
Upewnij się, że plik log4net.config jest oznaczony jako "Kopiuj do wyjścia" -> "Kopiuj zawsze" we Właściwościach. – Amit