Formattazione predefinita del logger della console nelle immagini del contenitore
Il formattatore della console predefinito configurato nei contenitori aspnet
è stato modificato.
Comportamento precedente
Nelle versioni di manutenzione precedenti di .NET 6, le immagini del contenitore aspnet
erano configurate con la variabile di ambiente Logging__Console__FormatterName
impostata su Json
. L'output della console era formattato in modo analogo al seguente:
{"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}"}}
Nuovo comportamento
A partire da .NET 6.0.5, per impostazione predefinita le immagini del contenitore aspnet
hanno la variabile di ambiente Logging__Console__FormatterName
non settata. Ciò produce un output della console semplice, multilinea e leggibile simile al seguente:
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
Versione introdotta
.NET 6.0.5 (manutenzione di maggio 2022)
Tipo di modifica che causa un'interruzione
Questa modifica può influire sulla compatibilità dell'origine.
Motivo della modifica
Quando la modifica riguardante l'uso della formattazione JSON è stata introdotta nella versione GA di .NET 6, ha interrotto molti scenari basati sulla formattazione originale e semplice, come descritto in dotnet/dotnet-docker#2725.
Azione consigliata
Se vuoi continuare a usare la formattazione JSON, puoi configurare il contenitore per l’uso impostando il valore della variabile di ambiente Logging__Console__FormatterName
su Json
.
API interessate
Nessuno.