Ich benutze log4net und in einer Klasse erfordert die Anmeldung an einem RollingFile Appender, aber dann in einer anderen Klasse, ich möchte protokollieren, um das Ereignisprotokoll + rollende Datei + Konsole appender.einloggen log4net zu verschiedenen Appenders basierend auf den Umständen
Was ist die beste Vorgehensweise? und könnte ich einen Beispielcode sehen?
Übrigens verwende ich Castle Windsor Logging Facility mit Log4net, um meine Logger-Instanz aufzulösen.
Wenn es hilft, dachte ich dies unten, haben aber keine Ahnung, ob das beste Vorgehensweise ist, oder wie eine bestimmte Logger zu aktivieren, basierend auf ‚name‘ noch meine aktuelle Logger Instanz von windsor Verwendung:
log4net.config:
...
<logger name="EventLogOnly">
<level value="ALL" />
<appender-ref ref="EventLogAppender" />
</logger>
<logger name="ConsoleEventLog">
<level value="ALL" />
<appender-ref ref="ColoredConsoleAppender" />
<appender-ref ref="EventLogAppender" />
</logger>
...
Schloss windsor Container Bauer Klasse:
container.AddFacility("logging.facility",
new LoggingFacility(LoggerImplementation.Log4net, "log4net.config"));
Klasse, in der die Anmeldung:
private ILogger Logger;
public Test(ILogger logger) {
Logger.Info("Can I log under event log only?");
Logger.Info("Now can I log under both?");
}
Danke Jungs.
Hier finden Sie eine Möglichkeit, eine benannte Logger-Instanz zu erstellen [tip] (http://kenegozi.com/blog/2009/12/11/windsorsquos-logging-facility-getting-a-named-instance) –