Protokollierung

S# bietet mehrere grafische Komponenten zur Anzeige von Logs: LogControl und Monitor.

Bei der Verwendung visueller Logging-Komponenten müssen Sie den Logger GuiLogListener als "Listener" verwenden. Dieser Logger stellt beim Aufzeichnen neuer LogMessage-Meldungen eine Streaming-Synchronisierung mit der GUI bereit.

Um Logging in Ihrer eigenen Klasse zu implementieren, müssen Sie die Schnittstelle ILogReceiver implementieren. Einfacher ist es, von der Klasse BaseLogReceiver zu erben, wie im Beispiel Samples/08_Misc/01_Logging gezeigt:

private class TestSource : BaseLogReceiver
{
}
private readonly LogManager _logManager = new LogManager();
private readonly TestSource _testSource = new TestSource();
public MainWindow()
{
	InitializeComponent();
	// Sofortiges Flushen
	_logManager.FlushInterval = TimeSpan.FromMilliseconds(1);
	// Test-Logquelle setzen
	_logManager.Sources.Add(_testSource);
	// .NET-Trace-System als Quelle setzen
	_logManager.Sources.Add(new Ecng.Logging.TraceSource());
	// Logs in MainWindow schreiben
	_logManager.Listeners.Add(new GuiLogListener(Monitor));
	// und in die Datei logs.txt
	_logManager.Listeners.Add(new FileLogListener
	{
		FileName = "logs",
	});
}

Empfohlene Inhalte

Protokollierung

Log-Panel

Erweitertes Log-Panel