Partilhar via


sys.event_log (Banco de Dados SQL do Azure)

Aplica-se a: Banco de Dados SQL do Azure

Retorna conexões de banco de dados do Banco de Dados SQL do Azure bem-sucedidas e falhas de conexão. Use essas informações para controlar ou solucionar problemas na atividade do banco de dados.

Cuidado

Para servidores lógicos com um grande número de bancos de dados e/ou um grande número de logons, consultar sys.event_log pode causar alto uso de recursos no banco de dados mestre, possivelmente resultando em falhas de logon. Para reduzir o impacto desse problema, limite as consultas de sys.event_log.

A exibição sys.event_log contém as colunas a seguir.

Nome da Coluna Tipo de Dados Descrição
database_name sysname Nome do banco de dados. Se a conexão falhar e o usuário não especificou um nome de banco de dados, essa coluna ficará em branco.
start_time datetime2 Data e hora UTC do início do intervalo de agregação. Para eventos agregados, a hora é sempre um múltiplo de 5 minutos. Por exemplo:

'2022-03-30 16:00:00'
'2022-03-30 16:05:00'
'2022-03-30 16:10:00'
end_time datetime2 Data e hora UTC do término do intervalo de agregação. Para eventos agregados, End_time é sempre exatamente 5 minutos mais tarde do que o start_time correspondente na mesma linha. Para eventos que não são agregados, start_time e end_time igual à data e hora UTC reais do evento.
event_category nvarchar(64) O componente de alto nível que gerou este evento.

Consulte Tipos de Evento para obter uma lista de valores possíveis.
event_type nvarchar(64) O tipo do evento.

Consulte Tipos de Evento para obter uma lista de valores possíveis.
event_subtype int O subtipo do evento que está ocorrendo.

Consulte Tipos de Evento para obter uma lista de valores possíveis.
event_subtype_desc nvarchar(64) A descrição do subtipo de evento.

Consulte Tipos de Evento para obter uma lista de valores possíveis.
severity int A severidade do erro do . Os valores possíveis são:

0 = Informações
1 = Aviso
2 = Erro
event_count int O número de vezes que esse evento ocorreu para o banco de dados especificado dentro do intervalo de tempo especificado (start_time e end_time).
descrição nvarchar(max) Uma descrição detalhada do evento.

Consulte Tipos de Evento para obter uma lista de valores possíveis.
additional_data XML Essa coluna não é usada e é preservada para compatibilidade com versões anteriores.

Tipos de evento

Os eventos registrados por cada linha nessa exibição são identificados por uma categoria (event_category), tipo de evento (event_type) e um subtipo (event_subtype). A tabela a seguir lista os tipos de eventos que estão coletados nessa exibição.

Para eventos na categoria de conectividade , as informações resumidas estão disponíveis na exibição sys.database_connection_stats.

Observação

Essa exibição não inclui todos os eventos de banco de dados do Banco de Dados SQL possíveis que podem ocorrer, apenas aqueles listados aqui. Categorias, tipos de evento e subtipos adicionais podem ser adicionados em versões futuras do Banco de Dados SQL.

event_category event_type event_subtype event_subtype_desc severity descrição
Conectividade connection_successful 0 connection_successful 0 Conectado com êxito ao banco de dados.
Conectividade connection_failed 0 invalid_login_name 2 O nome de logon não é válido nesta versão do SQL Server.
Conectividade connection_failed 1 windows_auth_not_supported 2 Logons do Windows não têm suporte nesta versão do SQL Server.
Conectividade connection_failed 2 attach_db_not_supported 2 O usuário solicitou a anexação de um arquivo de banco de dados, o que não é suportado.
Conectividade connection_failed 3 change_password_not_supported 2 O usuário solicitou alterar a senha de logon do usuário que não tem suporte.
Conectividade connection_failed 4 login_failed_for_user 2 Falha de logon do usuário .
Conectividade connection_failed 5 login_disabled 2 O logon foi desabilitado.
Conectividade connection_failed 7 blocked_by_firewall 2 O endereço IP do cliente não tem permissão para acessar o servidor.

Permissões

Os usuários com permissão para acessar o banco de dados mestre no servidor lógico no Banco de Dados SQL do Azure têm acesso somente leitura a essa exibição.

Comentários

Agregação de eventos

As informações de evento para esta exibição são coletadas e agregadas em intervalos de 5 minutos. A coluna event_count representa o número de vezes que um determinado event_type e event_subtype ocorreu para um banco de dados específico em um determinado intervalo de tempo.

Observação

Alguns eventos, como deadlocks, não são agregados. Para esses eventos, event_count será 1 e start_time e end_time será igual à data e hora UTC reais em que o evento ocorreu.

Por exemplo, se um usuário não conseguir se conectar ao banco de dados Database1, devido a um nome de logon inválido, sete vezes entre 11:00 e 11:05 em 30/03/2022 (UTC), essas informações estarão disponíveis em uma única linha nesta exibição:

database_name start_time end_time event_category event_type event_subtype event_subtype_desc severity event_count descrição additional_data
Database1 2022-03-30 11:00:00 2022-03-30 11:05:00 connectivity connection_failed 4 login_failed_for_user 2 7 Login failed for user. NULL

start_time e end_time do intervalo

Um evento é incluído em um intervalo de agregação quando o evento ocorre em ou após start_time e antes end_time para esse intervalo. Por exemplo, um evento que ocorre exatamente em 2022-03-30 19:25:00.0000000 seria incluído somente no segundo intervalo mostrado abaixo:

start_time                    end_time  
2022-03-30 19:20:00.0000000   2022-03-30 19:25:00.0000000  
2022-03-30 19:25:00.0000000   2022-03-30 19:30:00.0000000  

Atualizações de dados

Os dados nessa exibição são acumulados com o passar do tempo. Normalmente, os dados são acumulados em uma hora de início do intervalo de agregação, mas pode levar até um máximo de 24 horas para que todos os dados apareçam na exibição. Durante esse período, as informações em uma única linha podem ser atualizadas periodicamente.

Retenção de dados

Os dados nessa exibição são retidos por no máximo 30 dias, ou possivelmente menos, dependendo do número de bancos de dados e do número de eventos exclusivos que cada banco de dados gera. Para reter essas informações por um período mais longo, copie os dados em um banco de dados separado. Depois que você faz uma cópia inicial da exibição, as linhas na exibição podem ser atualizadas à medida que os dados são acumulados. Para manter sua cópia de dados atualizada, periodicamente faça uma verificação da tabela das linhas para procurar um aumento na contagem de eventos de linhas existentes e identificar novas linhas (você pode identificar linhas exclusivas usando a hora de início e de término) e, em seguida, atualize sua cópia dos dados com essas alterações.

Erros não incluídos

Essa exibição não pode incluir todas as informações de conexão e erro:

  • Essa exibição não inclui todos os erros de banco de dados do Banco de Dados SQL que podem ocorrer, apenas aqueles especificados em Tipos de Evento neste artigo.
  • Se houver uma falha de computador no datacenter do Banco de Dados SQL, uma pequena quantidade de dados poderá estar ausente da tabela de eventos.
  • Se um endereço IP tiver sido bloqueado com DoSGuard, os eventos da tentativa de conexão desse endereço IP não poderão ser coletados e não aparecerão nessa exibição.

Exemplos

Conecte-se ao banco de dados mestre no servidor lógico no Banco de Dados SQL do Azure para executar as seguintes consultas Transact-SQL.

Consultar a visualização sys.event_log

A consulta a seguir retorna todos os eventos ocorridos entre o meio-dia de 25 de março de 2022 e o meio-dia de 30 de março de 2022 (UTC). Por padrão, os resultados da consulta são classificados por start_time (ordem crescente).

SELECT database_name, start_time, end_time, event_category,
	event_type, event_subtype, event_subtype_desc, severity,
	event_count, description
FROM sys.event_log
WHERE start_time >= '2022-03-25 12:00:00'
    AND end_time <= '2022-03-30 12:00:00';  

Falhas de login de consulta para usuários

A consulta a seguir retorna falhas de conexão que são logins com falha para usuários que ocorreram entre 10:00 e 11:00 em 25 de março de 2022 (UTC).

SELECT database_name, start_time, end_time, event_category,
	event_type, event_subtype, event_subtype_desc, severity,
	event_count, description
FROM sys.event_log
WHERE event_type = 'connection_failed'
    AND event_subtype = 4
    AND start_time >= '2022-03-25 10:00:00'
    AND end_time <= '2022-03-25 11:00:00';  

Próximas etapas

Saiba mais sobre o Banco de Dados SQL do Azure nestes artigos: