標準エラーへの書き込み

C#:
標準エラーへの書き込み

方法:

C#で標準エラーに書き込むには、Console.Errorストリームを使用できます。このストリームは、エラーメッセージと診断のために特別に使用されます。基本的な例を以下に示します。

Console.Error.WriteLine("Error: Failed to process the request.");

標準エラーへのサンプル出力:

Error: Failed to process the request.

SerilogNLog のように、高度なログ機能を提供するサードパーティのライブラリを使用している場面では、これらのライブラリを構成してエラーログをstderrに書き出すことができます。これらの例は単純なコンソールリダイレクションに焦点を当てていますが、本番アプリケーションでは、ログフレームワークがより堅牢なエラー処理と出力オプションを提供することを覚えておいてください。Serilogを使用した簡単な例を以下に示します。

まず、SerilogパッケージとそのConsoleシンクをインストールします:

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

次に、Serilogを標準エラーに書き込むように構成します:

using Serilog;

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

Log.Information("This is a normal message.");
Log.Error("This is an error message.");

エラーメッセージの標準エラーへのサンプル出力:

[15:04:20 ERR] This is an error message.

注:SerilogのConsoleシンクでのstandardErrorFromLevelの設定は、指定されたレベル(この場合はError)またはそれ以上のすべてのログイベントを標準エラーストリームにリダイレクトし、情報のような低レベルのメッセージは標準出力ストリームに書き込まれます。