Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il generatore di API dati (DAB) supporta livelli di log personalizzabili e filtrati per controllare la dettaglio e l'attenzione dei log. In questo modo è possibile ottenere diagnostica dettagliata su componenti specifici mantenendo altre aree più silenziose, migliorando l'esperienza di debug e monitoraggio.
Le impostazioni di registrazione vengono configurate nella runtime.telemetry.log-level sezione della configurazione. È possibile specificare livelli di log a livello globale o specificare classi o spazi dei nomi specifici per il controllo con granularità fine.
Priorità a livello di log
Il nome dello spazio dei nomi o della classe più specifico ha la precedenza.
La
defaultchiave imposta il livello di base per tutti gli altri componenti non elencati in modo esplicito.Se omesso, DAB usa i livelli predefiniti in base alla modalità host:
-
developmentmode defaults to (verbose) (mode defaults toDebug(verbose) -
productionmode defaults toError(less verbose)
-
Livelli di log supportati
-
Trace: acquisire le informazioni più dettagliate e con granularità fine, in genere utili solo per la risoluzione dei problemi approfondita o la comprensione di ogni passaggio di un processo. -
Debug: fornire informazioni dettagliate destinate alla diagnosi dei problemi e alla comprensione del flusso durante lo sviluppo. -
Information: registra eventi generali di alto livello che descrivono le normali operazioni e le attività cardine. -
Warning: indica situazioni impreviste o problemi secondari che non interrompono l'elaborazione, ma potrebbero richiedere attenzione. -
Error: errori di log che impediscono il completamento di un'operazione ma non arrestano il sistema. -
Critical: segnala problemi gravi che causano errori di sistema o di funzionalità gravi e richiedono un intervento immediato. -
None: disabilita la registrazione per eliminare tutti i messaggi per la categoria o il componente di destinazione.
Le corrispondenze parziali dei nomi degli spazi dei nomi sono supportate, ma devono terminare in corrispondenza di un . separatore. For example:
Azure.DataApiBuilder.Core.Configurations.RuntimeConfigValidatorAzure.DataApiBuilder.Coredefault
Example configuration
{
"runtime": {
"telemetry": {
"log-level": {
"Azure.DataApiBuilder.Core.Configurations.RuntimeConfigValidator": "Debug",
"Azure.DataApiBuilder.Core": "Information",
"default": "Warning"
}
}
}
}
In questo esempio:
- I log della
RuntimeConfigValidatorclasse vengono visualizzati aDebuglivello. - Altre classi sotto
Azure.DataApiBuilder.Coreil livello di utilizzoInformation. - Tutti gli altri log vengono predefinito a
Warninglivello.
Hot-reload support
È possibile aggiornare i livelli di log in modo dinamico (ricaricamento rapido) in modalità di sviluppo e produzione senza riavviare l'applicazione. Ciò consente di regolare la registrazione in tempo reale per risolvere i problemi.
Spazi dei nomi importanti per il filtro
Alcuni spazi dei nomi/classi comuni che è possibile filtrare:
Azure.DataApiBuilder.Core.Configurations.RuntimeConfigValidatorAzure.DataApiBuilder.Core.Resolvers.SqlQueryEngineAzure.DataApiBuilder.Core.Resolvers.IQueryExecutorAzure.DataApiBuilder.Service.HealthCheck.ComprehensiveHealthReportResponseWriterAzure.DataApiBuilder.Service.Controllers.RestControllerAzure.DataApiBuilder.Auth.IAuthorizationResolverMicrosoft.AspNetCore.Authorization.IAuthorizationHandlerdefault