Compartilhar via


Formatação padrão do agente de console em imagens de contêiner

O formatador de console padrão configurado em contêineres aspnet foi alterado.

Comportamento anterior

Nas versões de manutenção anteriores do .NET 6, as imagens de contêiner aspnet foram configuradas com a variável de ambiente Logging__Console__FormatterName definida como Json. Isso resultou na saída do console formatada de forma semelhante à seguinte:

{"EventId":0,"LogLevel":"Information","Category":"Microsoft.Hosting.Lifetime","Message":"Now listening on: http://localhost:7000/","State":{"Message":"Now listening on: http://localhost:7000/","address":"http://localhost:7000/","{OriginalFormat}":"Now listening on: {address}"}}
{"EventId":0,"LogLevel":"Information","Category":"Microsoft.Hosting.Lifetime","Message":"Now listening on: http://localhost:7001/","State":{"Message":"Now listening on: http://localhost:7001/","address":"http://localhost:7001/","{OriginalFormat}":"Now listening on: {address}"}}
{"EventId":0,"LogLevel":"Information","Category":"Microsoft.Hosting.Lifetime","Message":"Now listening on: http://localhost:7002/","State":{"Message":"Now listening on: http://localhost:7002/","address":"http://localhost:7002/","{OriginalFormat}":"Now listening on: {address}"}}
{"EventId":0,"LogLevel":"Information","Category":"Microsoft.Hosting.Lifetime","Message":"Application started. Press Ctrl\u002BC to shut down.","State":{"Message":"Application started. Press Ctrl\u002BC to shut down.","{OriginalFormat}":"Application started. Press Ctrl\u002BC to shut down."}}
{"EventId":0,"LogLevel":"Information","Category":"Microsoft.Hosting.Lifetime","Message":"Hosting environment: Development","State":{"Message":"Hosting environment: Development","envName":"Development","{OriginalFormat}":"Hosting environment: {envName}"}}
{"EventId":0,"LogLevel":"Information","Category":"Microsoft.Hosting.Lifetime","Message":"Content root path: C:\\source\\temp\\web50","State":{"Message":"Content root path: C:\\source\\temp\\web50","contentRoot":"C:\\source\\temp\\web50","{OriginalFormat}":"Content root path: {contentRoot}"}}

Novo comportamento

A partir do .NET 6.0.5, as imagens de contêiner aspnet têm a variável de ambiente Logging__Console__FormatterName não configurada por padrão. Isso resulta em uma saída de console simples, multilinha e legível para humanos semelhante à seguinte:

warn: Microsoft.AspNetCore.Server.HttpSys.MessagePump[37]
      Overriding address(es) ''. Binding to endpoints added to UrlPrefixes instead.
info: Microsoft.Hosting.Lifetime[0]
      Now listening on: http://localhost:7000/
info: Microsoft.Hosting.Lifetime[0]
      Now listening on: http://localhost:7001/
info: Microsoft.Hosting.Lifetime[0]
      Now listening on: http://localhost:7002/
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]
      Content root path: C:\source\temp\web50

Versão introduzida

.NET 6.0.5 (manutenção de maio de 2022)

Tipo de alteração interruptiva

Essa alteração pode afetar a compatibilidade da origem.

Motivo da alteração

Quando a alteração para usar a formatação JSON foi introduzida na versão do .NET 6 GA, ela interrompeu muitos cenários que se baseavam na formatação original e simples, conforme descrito em dotnet/dotnet-docker#2725.

Se você quiser continuar usando a formatação JSON, poderá configurar seu contêiner para usá-lo definindo o valor da variável de ambiente Logging__Console__FormatterName como Json.

APIs afetadas

Nenhum.

Confira também