Arquivos de log do banco de dados do Amazon RDS para Microsoft SQL Server - Amazon Relational Database Service

Arquivos de log do banco de dados do Amazon RDS para Microsoft SQL Server

Você pode acessar os logs de erros, logs de agentes, arquivos de rastreamento e arquivos de despejo do Microsoft SQL Server usando o console do Amazon RDS, a AWS CLI ou a API do RDS. Para mais informações sobre a visualização, o download e os logs de bancos de dados baseados no monitoramento de arquivos, consulte Monitorar arquivos de log do Amazon RDS.

Cronograma de retenção

Os arquivos de log são revezados a cada dia e sempre que sua instância de banco de dados for reiniciada. A seguir você encontra o cronograma de retenção para logs do Microsoft SQL Server no Amazon RDS.

Tipo de log Cronograma de retenção

Logs de erro

No máximo, 30 logs de erros são retidos. O Amazon RDS pode excluir logs de erros com mais de 7 dias.

Logs de agente

No máximo, 10 logs de agente são retidos. O Amazon RDS pode excluir logs de agente com mais de 7 dias.

Arquivos de rastreamento

Os arquivos de rastreamento são mantidos de acordo com o período de retenção de arquivos de rastreamento de sua instância de banco de dados. O período de retenção padrão de arquivos de rastreamento é de 7 dias. Para modificar o período de retenção de arquivos de rastreamento de sua instância de banco de dados, consulte Como definir o período de retenção para arquivos de rastreamento e despejo.

Arquivos de despejo

Os arquivos de despejo são mantidos de acordo com o período de retenção de arquivos de despejo de sua instância de banco de dados. O período de retenção padrão de arquivos de despejo é de 7 dias. Para modificar o período de retenção de arquivos de despejo de sua instância de banco de dados, consulte Como definir o período de retenção para arquivos de rastreamento e despejo.

Visualizar o log de erros do SQL Server usando o procedimento rds_read_error_log

Você pode usar o procedimento armazenado rds_read_error_log do Amazon RDS para visualizar logs de erros e logs de agente. Para obter mais informações, consulte Visualizar logs do agente ou erros.

Publicar logs do SQL Server no Amazon CloudWatch Logs

Com o Amazon RDS para SQL Server, você pode publicar eventos de log de erros e de agentes diretamente no Amazon CloudWatch Logs. Analise os dados de logs com o CloudWatch Logs e depois use o CloudWatch para criar alarmes e visualizar métricas.

Com o CloudWatch Logs, você pode fazer o seguinte:

  • Armazene os logs em um espaço de armazenamento resiliente e com um período de retenção definido por você.

  • Pesquisar e filtrar dados de log.

  • Compartilhar dados de log entre contas.

  • Exportar logs para o Amazon S3.

  • Faça uma transmissão de dados para o Amazon OpenSearch Service.

  • Processar dados de log em tempo real com o Amazon Kinesis Data Streams. Para obter mais informações, consulte Trabalhando com o Amazon CloudWatch Logs, no Guia do desenvolvedor do Amazon Kinesis Data Analytics para aplicativos SQL.

O Amazon RDS publica cada log de banco de dados SQL Server como um fluxo separado de banco de dados no grupo de logs. Por exemplo, se você publicar os logs de erro e os logs do agente, os dados de erro serão armazenados em um fluxo de logs de erros no grupo de logs /aws/rds/instance/my_instance/error, e os dados de log do agente serão armazenados no grupo de logs /aws/rds/instance/my_instance/agent.

Para instâncias de banco de dados multi-AZ, o Amazon RDS publica o log do banco de dados como dois fluxos separados no grupo de logs. Por exemplo, se você publicar logs de erro, os dados de erro serão armazenados nos fluxos de log de erros /aws/rds/instance/my_instance.node1/error e /aws/rds/instance/my_instance.node2/error respectivamente. Os fluxos de log não mudam durante um failover e o fluxo de logs de erros de cada nó pode conter logs de erros da instância primária ou secundária. Com o multi-AZ, um fluxo de logs é criado automaticamente para /aws/rds/instance/my_instance/rds-events para armazenar dados de eventos, como failovers de instâncias de banco de dados.

nota

A publicação de logs do SQL Server no CloudWatch Logs não está habilitada por padrão. Não há suporte para a publicação de arquivos de rastreamento e despejo. A publicação de logs do SQL Server no CloudWatch Logs é compatível com todas as regiões, exceto Ásia-Pacífico (Hong Kong).

Para publicar logs de banco de dados do SQL Server no CloudWatch Logs a partir do AWS Management Console
  1. Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Databases (Bancos de dados) e a instância de banco de dados que você deseja modificar.

  3. Selecione Modify.

  4. Na seção Log exports (Exportações de log), escolha os logs que deseja começar a publicar no CloudWatch Logs.

    Você pode escolher Agent log (Log do agente), Error log (Log de erros) ou ambos.

  5. Escolha Continue (Continuar) e depois escolha Modify DB Instance (Modificar instância de banco de dados) na página de resumo.

Para publicar os logs do SQL Server, você pode usar o comando modify-db-instance com os seguintes parâmetros:

  • --db-instance-identifier

  • --cloudwatch-logs-export-configuration

nota

Uma alteração feita na opção --cloudwatch-logs-export-configuration sempre é aplicada imediatamente na instância de banco de dados. Por isso, as opções --apply-immediately e --no-apply-immediately não entram em vigor.

Você também pode publicar logs da SQL Server usando os seguintes comandos:

exemplo

O exemplo a seguir cria uma instância de banco de dados SQL Server com a publicação no CloudWatch Logs habilitada. O valor --enable-cloudwatch-logs-exports é uma matriz JSON de strings que podem incluir error, agent ou ambos.

Para Linux, macOS ou Unix:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --enable-cloudwatch-logs-exports '["error","agent"]' \ --db-instance-class db.m4.large \ --engine sqlserver-se

Para Windows:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --enable-cloudwatch-logs-exports "[\"error\",\"agent\"]" ^ --db-instance-class db.m4.large ^ --engine sqlserver-se
nota

Ao usar o prompt de comando do Windows, você deve fazer o escape das aspas duplas (") no código JSON, prefixando-as com uma barra invertida (\).

exemplo

O exemplo a seguir altera uma instância de banco de dados SQL Server existente para publicar os arquivos de log no CloudWatch Logs. O valor --cloudwatch-logs-export-configuration é um objeto JSON. A chave desse objeto é EnableLogTypes, e seu valor é uma matriz de strings que pode incluir error, agent ou ambos.

Para Linux, macOS ou Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","agent"]}'

Para Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration "{\"EnableLogTypes\":[\"error\",\"agent\"]}"
nota

Ao usar o prompt de comando do Windows, você deve fazer o escape das aspas duplas (") no código JSON, prefixando-as com uma barra invertida (\).

exemplo

O exemplo a seguir altera uma instância de banco de dados SQL Server existente para desabilitar a publicação de arquivos de log do agente no CloudWatch Logs. O valor --cloudwatch-logs-export-configuration é um objeto JSON. A chave desse objeto é DisableLogTypes, e seu valor é uma matriz de strings que pode incluir error, agent ou ambos.

Para Linux, macOS ou Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"DisableLogTypes":["agent"]}'

Para Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration "{\"DisableLogTypes\":[\"agent\"]}"
nota

Ao usar o prompt de comando do Windows, você deve fazer o escape das aspas duplas (") no código JSON, prefixando-as com uma barra invertida (\).