C#:
写入标准错误
如何实现:
在 C# 中,可以使用 Console.Error
流来实现向标准错误写入。这个流专门用于错误消息和诊断信息。这里是一个基本示例:
Console.Error.WriteLine("Error: Failed to process the request.");
示例输出(到 stderr):
Error: Failed to process the request.
在您可能使用提供高级日志记录能力的第三方库(如 Serilog
或 NLog
)的场景中,您可以配置这些库将错误日志写入 stderr。虽然这些示例集中在简单的控制台重定向上,但请记住,在生产应用程序中,日志框架提供了更加健壮的错误处理和输出选项。这里是一个使用 Serilog
的简单示例:
首先,安装 Serilog 包及其控制台接收器:
Install-Package Serilog
Install-Package Serilog.Sinks.Console
然后,配置 Serilog 写入 stderr:
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.");
示例输出(对于错误消息,到 stderr):
[15:04:20 ERR] This is an error message.
注意:Serilog 控制台接收器中的 standardErrorFromLevel
配置将所有在指定级别(在此例中为 Error)或更高级别的日志事件重定向到标准错误流,而像信息这样的低级消息则被写入到标准输出流。