Skriving til standardfeil

C#:
Skriving til standardfeil

Hvordan:

I C# kan skriving til standardfeil oppnås ved å bruke Console.Error-strømmen. Denne strømmen brukes spesifikt for feilmeldinger og diagnostikk. Her er et grunnleggende eksempel:

Console.Error.WriteLine("Feil: Kunne ikke behandle forespørselen.");

Eksempel på utdata (til stderr):

Feil: Kunne ikke behandle forespørselen.

For scenarioer hvor du kanskje bruker et tredjepartsbibliotek som tilbyr avanserte loggefunksjoner, som Serilog eller NLog, kan du konfigurere disse bibliotekene til å skrive feillogger til stderr. Mens disse eksemplene fokuserer på enkel konsollomdirigering, husk at i produksjonsapplikasjoner tilbyr loggingsrammeverk mye mer robust feilhåndtering og utdataopsjoner. Her er et enkelt eksempel med Serilog:

Først, installer Serilog-pakken og dens Console-sink:

Install-Package Serilog
Install-Package Serilog.Sinks.Console

Deretter, konfigurer Serilog for å skrive til stderr:

using Serilog;

Log.Logger = new LoggerConfiguration()
    .WriteTo.Console(standardErrorFromLevel: Serilog.Events.LogEventLevel.Error)
    .CreateLogger();

Log.Information("Dette er en vanlig melding.");
Log.Error("Dette er en feilmelding.");

Eksempel på utdata (til stderr for feilmeldingen):

[15:04:20 ERR] Dette er en feilmelding.

Merk: standardErrorFromLevel-konfigurasjonen i Serilog sin konsoll-sink omdirigerer alle loggehendelser på det angitte nivået (Error, i dette tilfellet) eller høyere til standardfeilstrømmen, mens meldinger på et lavere nivå som Informasjon skrives til standard utstrøm.