Gibt es eine Möglichkeit, das Ausgabeformat in der .NET Core-Protokollierung zu formatieren?

10

Ich verwende den integrierten Protokollierungsanbieter für die Anmeldung an der Konsole ( Microsoft.Extensions.Logging.Console ) in einer .NET Core-Konsolenanwendung.

Jeder Logging-Eintrag erzeugt zwei Zeilen in der Ausgabe. Ich hätte gerne jeden Eintrag in einer Zeile. Gibt es eine Möglichkeit, das Ausgabeformat anzupassen?

Hier ist ein Beispiel, wie ich es benutze:

%Vor%

Was ich bekomme ist:

%Vor%

Was ich gerne haben möchte, ist etwa so:

%Vor%

Irgendeine Idee? Ich weiß, ich könnte einen benutzerdefinierten Logger schreiben, aber ich würde gerne wissen, ob es einen anderen Weg gibt.

Danke.

    
BooFar 28.05.2017, 17:58
quelle

2 Antworten

5

Im Moment ist das nicht konfigurierbar. Der Quellcode ist hier auf GitHub :

%Vor%

Wenn Sie das wollen, müssen Sie Ihren eigenen Logger schreiben. Sie können jedoch einfach den Quellcode des Konsolenprotokolls kopieren, bei Bedarf ändern und die Namespaces ändern, damit die Version von Microsoft nicht beeinträchtigt wird.

Sie können auch ein Problem im Protokollierungs-Repo öffnen, um nach dieser Option zu fragen.

    
Martin Ullrich 28.05.2017, 19:31
quelle
4

Wie schon bei @MartinUllrich erwähnt, kann dieser Zeilenumbruch nicht deaktiviert werden und Sie müssen einen benutzerdefinierten Logger implementieren, um dies zu vermeiden.

Registrierung:

%Vor%

Implementierung (kann mit der Verwendung des ursprünglichen Quelltext von ConsoleLogger - Sie könnten beispielsweise GetLogLevelConsoleColors method hinzufügen:

%Vor%     
Ilya Chumakov 28.05.2017 19:49
quelle