Partilhar via


Configurar e acessar logs no Banco de Dados do Azure para PostgreSQL

Os logs do Banco de Dados do Azure para instâncias de servidor flexíveis do PostgreSQL estão disponíveis em cada nó de um servidor. Pode enviar registos para um servidor de armazenamento ou para um serviço de análise. Os registos podem ser utilizados para identificar, resolver problemas e corrigir erros de configuração e de desempenho abaixo do ideal.

Configurar definições de diagnóstico

Você pode habilitar as configurações de diagnóstico para sua instância de servidor flexível do Banco de Dados do Azure para PostgreSQL usando o portal do Azure, a CLI, A API REST e o PowerShell. A categoria de log a ser selecionada é PostgreSQLLogs.

Para habilitar logs de recursos usando o portal do Azure:

  1. No portal, vá para Configurações de Diagnóstico no menu de navegação da sua instância de servidor flexível do Banco de Dados do Azure para PostgreSQL.

  2. Selecione Adicionar configuração de diagnóstico. Botão Adicionar configurações de diagnóstico

  3. Nomeie essa configuração.

  4. Selecione seu ponto de extremidade preferido (espaço de trabalho do Log Analytics, conta de armazenamento, hub de eventos).

  5. Selecione o tipo de log na lista de categorias (logs do servidor, dados de sessões, tempo de execução do repositório de consultas / estatísticas de espera, etc.) Captura de ecrã a mostrar a escolha de categorias de registo.

  6. Salve sua configuração.

Para habilitar logs de recursos usando PowerShell, CLI ou API REST, visite o artigo de configurações de diagnóstico.

Acessar logs de recursos

A maneira como você acessa os logs depende de qual ponto de extremidade você escolher. Para o Armazenamento do Azure, consulte o artigo da conta de armazenamento de logs. Para Hubs de Eventos, consulte o artigo de logs do Azure de fluxo.

Para os Logs do Azure Monitor, os logs são enviados para o espaço de trabalho selecionado. O Banco de Dados do Azure para logs do PostgreSQL usa o modo de coleta AzureDiagnostics , para que possam ser consultados a partir da tabela AzureDiagnostics. Os campos na tabela são descritos abaixo. Saiba mais sobre consultas e alertas na visão geral da consulta Logs do Azure Monitor.

A seguir estão as consultas que você pode tentar para começar. Você pode configurar alertas com base em consultas.

Pesquise todos os logs do Azure Database para PostgreSQL de um determinado servidor nas últimas 24 horas.

AzureDiagnostics
| where Resource == "myservername"
| where Category == "PostgreSQLLogs"
| where TimeGenerated > ago(1d) 

Procure todas as tentativas de conexão não-localhost. A consulta abaixo mostrará os resultados nas últimas 6 horas para qualquer registo do Banco de Dados do Azure para PostgreSQL nesta área de trabalho.

AzureDiagnostics
| where Message contains "connection received" and Message !contains "host=127.0.0.1"
| where Category == "PostgreSQLLogs" and TimeGenerated > ago(6h)

Pesquise Sessões do Azure Database para PostgreSQL coletadas da vista de sistema pg_stat_activity para um servidor específico nas últimas 24 horas.

AzureDiagnostics
| where Resource == "myservername"
| where Category =='PostgreSQLFlexSessions'
| where TimeGenerated > ago(1d) 

Pesquise o Banco de Dados do Azure para estatísticas de Tempo de Execução do PostgreSQL Query Store coletadas de query_store.qs_view um determinado servidor no último dia. Ele requer que o Repositório de Consultas esteja habilitado.

AzureDiagnostics
| where Resource == "myservername"
| where Category =='PostgreSQLFlexQueryStoreRuntime'
| where TimeGenerated > ago(1d) 

Pesquise estatísticas de espera do Repositório de Consultas do Banco de Dados do Azure para PostgreSQL coletadas de query_store.pgms_wait_sampling_view para um determinado servidor no último dia. Requer que a Amostragem de Espera do Repositório de Consultas esteja habilitada.

AzureDiagnostics
| where Resource == "myservername"
| where Category =='PostgreSQLFlexQueryStoreWaitStats'
| where TimeGenerated > ago(1d) 

Pesquise o Banco de Dados do Azure para estatísticas de Autovacuum e Esquema do PostgreSQL para cada banco de dados em um servidor específico no último dia.

AzureDiagnostics
| where Resource == "myservername"
| where Category =='PostgreSQLFlexTableStats'
| where TimeGenerated > ago(1d) 

Pesquisar no Banco de Dados do Azure as transações pendentes e multixacts do PostgreSQL até que ocorra o autovacuum de emergência ou proteção contra wraparound para cada base de dados num servidor específico durante o último dia.

AzureDiagnostics
| where Resource == "myservername"
| where Category =='PostgreSQLFlexDatabaseXacts'
| where TimeGenerated > ago(1d)