Condividi tramite


Log in Azure Cosmos DB for PostgreSQL

SI APPLICA A: Azure Cosmos DB for PostgreSQL (con tecnologia basata sull'estensione di database Citus per PostgreSQL)

I log del server di database di PostgreSQL sono disponibili per ogni nodo di un cluster. È possibile spedire i log a un server di archiviazione o a un servizio di analisi. I log possono essere usati per individuare e risolvere i problemi e correggere errori di configurazione e prestazioni non ottimali.

Acquisire i log

Per accedere ai log di PostgreSQL per un nodo coordinatore o di lavoro, è necessario abilitare l'impostazione di diagnostica dei log del server PostgreSQL. Dalla pagina del cluster nel portale di Azure, nel menu di sinistra selezionare Impostazioni di diagnostica, quindi selezionare Aggiungi impostazione di diagnostica.

Screenshot che mostra l'impostazione Aggiungi diagnostica.

Immettere un nome per la nuova impostazione di diagnostica, selezionare la casella Log del server PostgreSQL e selezionare la casella Invia all'area di lavoro Log Analytics. Quindi selezionare Salva.

Screenshot che mostra le impostazioni per l'impostazione di diagnostica.

Visualizzare i log

Per visualizzare e filtrare i log, usare le query Kusto. Nella pagina del cluster nel portale di Azure selezionare Log dal menu a sinistra. Chiudere la schermata iniziale di apertura e la schermata di selezione della query.

Screenshot che mostra la chiusura della schermata di selezione della query di apertura.

Incollare la query seguente nella finestra di immissione delle query, quindi selezionare Esegui.

AzureDiagnostics
| project TimeGenerated, Message, errorLevel_s, LogicalServerName_s

Screenshot che mostra la casella di input della query.

La query precedente elenca i messaggi di log di tutti i nodi, insieme alla relativa gravità e al timestamp. È possibile aggiungere clausole where per filtrare i risultati. Ad esempio, per visualizzare gli errori solo dal nodo coordinatore, filtrare il livello di errore e il nome del server come nella query seguente. Sostituire il nome del server con il nome del proprio server.

AzureDiagnostics
| project TimeGenerated, Message, errorLevel_s, LogicalServerName_s
| where LogicalServerName_s == 'example-cluster-c'
| where errorLevel_s == 'ERROR'

Il nome del nodo coordinatore ha il suffisso -c e i nodi di lavoro vengono denominati con un suffisso -w0, -w1 e così via.

I log di Azure possono essere filtrati in modi diversi. Ecco come trovare i log dell'ultimo giorno i cui messaggi corrispondono a un'espressione regolare.

AzureDiagnostics
| where TimeGenerated > ago(24h)
| order by TimeGenerated desc
| where Message matches regex ".*error.*"

Passaggi successivi