sys.event_log (Base de Dados SQL do Azure)

Aplica-se a: Base de Dados SQL do Azure

Devolve ligações bem-sucedidas à base de dados Base de Dados SQL do Azure e falhas de ligação. Você pode usar essas informações para controlar ou solucionar problemas de atividade do banco de dados.

Caution

Para servidores lógicos com um grande número de bases de dados e/ou um elevado número de logins, consultar sys.event_log pode causar um elevado uso de recursos na base de dados principal, podendo resultar em falhas de login. Para reduzir o impacto deste problema, limite as consultas de sys.event_log.

A sys.event_log vista contém as seguintes colunas.

Nome da Coluna Tipo de dados Description
database_name sysname Nome do banco de dados. Se a ligação falhar e o utilizador não especificar o nome da base de dados, então esta coluna fica em branco.
start_time datetime2 UTC data e hora do início do intervalo de agregação. Para eventos agregados, o tempo é sempre 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 fim 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 equivalem à data e hora reais UTC do evento.
event_category Nvarchar(64) O componente de alto nível que gerou este evento.

Consulte Tipos de Eventos para uma lista de valores possíveis.
event_type Nvarchar(64) O tipo de evento.

Consulte Tipos de Eventos para uma lista de valores possíveis.
event_subtype int O subtipo do evento que ocorre.

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

Consulte Tipos de Eventos para uma lista de valores possíveis.
gravidade int A gravidade do erro. Os valores possíveis são:

0 = Informação
1 = Advertência
2 = Erro
event_count int O número de vezes que este evento ocorreu para a base de dados especificada dentro do intervalo de tempo especificado (start_time e end_time).
description nvarchar(max) Uma descrição detalhada do evento.

Consulte Tipos de Eventos para uma lista de valores possíveis.
additional_data XML Esta coluna não é utilizada e é preservada para compatibilidade retroativa.

Tipos de eventos

Os eventos registados por cada linha nesta vista são identificados por uma categoria (event_category), tipo de evento (event_type) e subtipo (event_subtype). A tabela seguinte lista os tipos de eventos que são recolhidos nesta visão.

Para eventos na categoria de conectividade , a informação resumida está disponível na vista sys.database_connection_stats.

Note

Esta perspetiva não inclui todos os eventos possíveis da base de dados SQL Database que podem ocorrer, apenas aqueles aqui listados. Categorias adicionais, tipos de eventos e subtipos poderão ser adicionados em futuras versões do SQL Database.

event_category event_type event_subtype event_subtype_desc gravidade description
Conectividade connection_successful 0 connection_successful 0 Ligado com sucesso à base de dados.
Conectividade connection_failed 0 invalid_login_name 2 O nome de login não é válido nesta versão do SQL Server.
Conectividade connection_failed 1 windows_auth_not_supported 2 Não há suporte para logons do Windows nesta versão do SQL Server.
Conectividade connection_failed 2 attach_db_not_supported 2 O utilizador pediu para anexar um ficheiro de base de dados, o que não é suportado.
Conectividade connection_failed 3 change_password_not_supported 2 O utilizador pediu para alterar a palavra-passe do utilizador que iniciou sessão, o que não é suportado.
Conectividade connection_failed 4 login_failed_for_user 2 Falha o login do utilizador.
Conectividade connection_failed 5 login_disabled 2 O login foi desativado.
Conectividade connection_failed 7 blocked_by_firewall 2 O endereço IP do cliente não pode aceder ao servidor.

Permissions

Os utilizadores com permissão para aceder à base de dados principal no servidor lógico no Base de Dados SQL do Azure têm acesso apenas de leitura a esta vista.

Observações

Agregação de eventos

A informação do evento para esta vista é recolhida e agregada em intervalos de 5 minutos. A coluna event_count representa o número de vezes que um determinado event_type e event_subtype ocorreram para uma base de dados específica dentro de um determinado intervalo de tempo.

Note

Alguns eventos, como impasses, não são agregados. Para estes eventos, event_count serão 1 e start_time e end_time serão iguais à data e hora reais UTC em que o evento ocorreu.

Por exemplo, se um utilizador não conseguir ligar-se à base de dados Database1, devido a um nome de login inválido, sete vezes entre as 11:00 e as 11:05 de 30/03/2022 (UTC), esta informação está disponível numa única linha nesta visão:

database_name start_time end_time event_category event_type event_subtype event_subtype_desc gravidade event_count description 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

Intervalo start_time e end_time

Um evento é incluído num intervalo de agregação quando o evento ocorre em ou apósstart_time e antesde end_time desse intervalo. Por exemplo, um evento que ocorra exatamente em 2022-03-30 19:25:00.0000000 seria incluído apenas 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 desta perspetiva são acumulados ao longo do tempo. Normalmente, os dados são acumulados dentro de uma hora após o início do intervalo de agregação, mas pode demorar até um máximo de 24 horas para que todos os dados apareçam na vista. Durante esse período, a informação dentro de uma única linha pode ser atualizada periodicamente.

Retenção de dados

Os dados desta vista são mantidos por um máximo de 30 dias, ou possivelmente menos, dependendo do número de bases de dados e do número de eventos únicos que cada base de dados gera. Para reter esta informação por um período mais longo, copie os dados para uma base de dados separada. Depois de fazer uma cópia inicial da visualização, as linhas da vista podem ser atualizadas à medida que os dados são acumulados. Para manter a sua cópia dos dados up-to-data, faça periodicamente uma análise da tabela das linhas para procurar um aumento na contagem de eventos das linhas existentes e para identificar novas linhas (pode identificar linhas únicas usando os horários de início e fim), depois atualize a sua cópia dos dados com estas alterações.

Erros não incluídos

Esta vista pode não incluir toda a informação de ligação e erro:

  • Esta perspetiva não inclui todos os erros da base de dados SQL Database que possam ocorrer, apenas aqueles especificados nos Tipos de Eventos deste artigo.
  • Se houver uma falha de máquina no centro de dados da base de dados SQL, pode faltar uma pequena quantidade de dados na tabela de eventos.
  • Se um endereço IP foi bloqueado através do DoSGuard, os eventos de tentativa de ligação desse endereço IP não podem ser recolhidos e não aparecerão nesta visão.

Exemplos

Ligue-se à base de dados mestre no servidor lógico em Base de Dados SQL do Azure para executar as seguintes consultas Transact-SQL.

Consultar a vista sys.event_log

A consulta seguinte devolve todos os eventos que ocorreram entre o meio-dia de 25 de março de 2022 e o meio-dia de 30 de março de 2022 (UTC). Por defeito, os resultados das consultas estão ordenados 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 consulta ao login para utilizadores

A consulta seguinte devolve falhas de ligação que são falhas em iniciar sessão para utilizadores que ocorreram entre as 10:00 e as 11:00 de 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';