gpt4 book ai didi

c# - .NET Core API 多行记录输出

转载 作者:行者123 更新时间:2023-12-04 14:12:08 25 4
gpt4 key购买 nike

我正在使用在 .NET Core 3.1 上运行的 API 并使用框架的默认日志记录,这对我来说非常有用。不过,我想知道是否可以更改输出日志的格式,因为每个单独的日志输出打印 2 行。

例如下面这行代码:

logger.LogInformation("'{0} {1}'. Status: {2}. Time: {3}ms.",
context.Request.Method, context.Request.Path, context.Response.StatusCode, responseTime);

产生以下输出:

info: MyApi.Utilities.RequestLoggerMiddleware[0]
'GET /api/users/current'. Status: 200. Time: 8ms.

有什么方法可以让 info: MyApi.Utilities.RequestLoggerMiddleware[0] 在与消息文本相同的行上打印?

最佳答案

我能够通过在 Program.cs 中的 Host.CreateDefaultBuilder(args) 之后添加此代码并使用 Systemd 配置控制台记录器来解决我的问题 格式:

            .ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.AddConsole(configure =>
{
configure.Format = Microsoft.Extensions.Logging.Console.ConsoleLoggerFormat.Systemd;
});
})

输出现在看起来像这样:

<6>MyApi.Utilities.RequestLoggerMiddleware[0] 'GET /api/users/current'. Status: 200. Time: 8ms.

关于c# - .NET Core API 多行记录输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63509439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com