sys.event_log (Azure SQL Database)

Se aplica a:Azure SQL Database

Devuelve correctamente Azure SQL conexiones de base de datos de base de datos y errores de conexión. Puede utilizar esta información para realizar el seguimiento de la actividad de las bases de datos o solucionar problemas.

Precaución

En el caso de los servidores lógicos con un gran número de bases de datos o un gran número de inicios de sesión, la consulta de sys.event_log puede provocar un uso elevado de recursos en la base de datos maestra, lo que puede provocar errores de inicio de sesión. Para reducir el impacto de este problema, limite las consultas de sys.event_log.

La vista sys.event_log contiene las siguientes columnas.

Nombre de columna Tipo de datos Descripción
database_name sysname Nombre de la base de datos. Si la conexión no se realiza correctamente y el usuario no especificó un nombre de base de datos, esta columna está en blanco.
start_time datetime2 Fecha y hora UTC del inicio del intervalo de agregación. Para los eventos de agregado, la hora es siempre un múltiplo de 5 minutos. Por ejemplo:

'2022-03-30 16:00:00'
'2022-03-30 16:05:00'
'2022-03-30 16:10:00'
end_time datetime2 Fecha y hora UTC del final del intervalo de agregación. En el caso de los eventos agregados, End_time siempre es exactamente 5 minutos más tarde que el start_time correspondiente en la misma fila. En el caso de los eventos que no se agregan, start_time y end_time igual que la fecha y hora UTC reales del evento.
event_category nvarchar (64) Componente de nivel superior que generó este evento.

Consulte Tipos de eventos para obtener una lista de los valores posibles.
event_type nvarchar (64) Tipo del evento.

Consulte Tipos de eventos para obtener una lista de los valores posibles.
event_subtype int Subtipo del evento que se está produciendo.

Consulte Tipos de eventos para obtener una lista de los valores posibles.
event_subtype_desc nvarchar (64) Descripción del subtipo de evento.

Consulte Tipos de eventos para obtener una lista de los valores posibles.
severity int Gravedad del error. Los valores posibles son:

0 = Información
1 = Advertencia
2 = Error
event_count int Número de veces que se produjo este evento para la base de datos especificada dentro del intervalo de tiempo especificado (start_time y end_time).
description nvarchar(max) Descripción detallada del evento.

Consulte Tipos de eventos para obtener una lista de los valores posibles.
additional_data XML Esta columna no se usa y se conserva por motivos de compatibilidad con versiones anteriores.

Tipos de eventos

Los eventos registrados por cada fila de esta vista se identifican mediante una categoría (event_category), un tipo de evento (event_type) y un subtipo (event_subtype). En la tabla siguiente se muestra una lista de los tipos de eventos que se recopilan en esta vista:

En el caso de los eventos de la categoría de conectividad , la información de resumen está disponible en la vista sys.database_connection_stats.

Nota

Esta vista no incluye todos los posibles eventos de base de datos SQL Database que pueden producirse, solo los que se enumeran aquí. Se pueden agregar categorías, tipos de eventos y subtipos adicionales en futuras versiones de SQL Database.

event_category event_type event_subtype event_subtype_desc severity description
Conectividad connection_successful 0 connection_successful 0 Conectado correctamente a la base de datos.
Conectividad connection_failed 0 invalid_login_name 2 El nombre de inicio de sesión no es válido en esta versión de SQL Server.
Conectividad connection_failed 1 windows_auth_not_supported 2 Los inicios de sesión de Windows no se admiten en esta versión de SQL Server.
Conectividad connection_failed 2 attach_db_not_supported 2 El usuario solicitó adjuntar un archivo de base de datos, que no se admite.
Conectividad connection_failed 3 change_password_not_supported 2 El usuario solicitó cambiar la contraseña del usuario que inicia sesión, lo que no se admite.
Conectividad connection_failed 4 login_failed_for_user 2 Error de inicio de sesión del usuario.
Conectividad connection_failed 5 login_disabled 2 El inicio de sesión se deshabilitó.
Conectividad connection_failed 7 blocked_by_firewall 2 No se permite que la dirección IP del cliente tenga acceso al servidor.

Permisos

Los usuarios con permiso para acceder a la base de datos maestra en el servidor lógico de Azure SQL Database tienen acceso de solo lectura a esta vista.

Comentarios

Agregación de datos

La información de eventos de esta vista se recopila y se agrega a intervalos de 5 minutos. La columna event_count representa el número de veces que se produjo un event_type determinado y event_subtype para una base de datos específica dentro de un intervalo de tiempo determinado.

Nota

Algunos eventos, como los interbloqueos, no se agregan. Para estos eventos, event_count serán 1 y start_time y end_time serán iguales a la fecha y hora UTC reales en que se produjo el evento.

Por ejemplo, si un usuario no se conecta a la base de datos Database1, debido a un nombre de inicio de sesión no válido, siete veces entre 11:00 y 11:05 el 30/30/2022 (UTC), esta información está disponible en una sola fila en esta vista:

database_name start_time end_time event_category event_type event_subtype event_subtype_desc severity 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

Start_time y end_time de intervalo

Un evento se incluye en un intervalo de agregación cuando el evento se produce en start_time o después de start_time y antesde end_time para ese intervalo. Por ejemplo, un evento que ocurra exactamente el 2022-03-30 19:25:00.0000000 solo se incluiría en el segundo intervalo que se muestra a continuación:

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  

Actualizaciones de datos

Los datos de esta vista se acumulan a lo largo del tiempo. Normalmente, los datos se acumulan en la hora siguiente al inicio del intervalo de agregación, pero puede llevar hasta 24 horas que todos los datos aparezcan en la vista. Durante ese tiempo, la información de una sola fila puede actualizarse de forma periódica.

Retención de datos

Los datos de esta vista se conservan durante un máximo de 30 días, o posiblemente menos según el número de bases de datos y el número de eventos únicos que genera cada base de datos. Para conservar esta información durante más tiempo, copie los datos en una base de datos independiente. Una vez realizada una copia inicial de la vista, las filas de esta pueden actualizarse a medida que se acumulan datos. Para mantener actualizada su copia de los datos, realice periódicamente una exploración de las filas de la tabla para ver si se ha producido un aumento del número de eventos de las filas existentes y para identificar nuevas filas (se pueden identificar filas únicas usando las horas de inicio y fin), después actualice su copia de los datos con esos cambios.

Errores no incluidos

Esta vista puede no incluir toda la información de conexión y de error:

  • Esta vista no incluye todos los errores de base de datos SQL Database que podrían producirse, solo los especificados en Tipos de eventos de este artículo.
  • Si se produce un error en la máquina dentro del centro de datos de SQL Database, es posible que falte una pequeña cantidad de datos en la tabla de eventos.
  • Si se ha bloqueado una dirección IP a través de DoSGuard, los eventos de intento de conexión de esa dirección IP no pueden recopilarse y no aparecerán en esta vista.

Ejemplos

Conéctese a la base de datos maestra en el servidor lógico de Azure SQL Database para ejecutar las siguientes consultas de Transact-SQL.

Consulta de la vista de sys.event_log

La consulta siguiente devuelve todos los eventos que se produjeron entre el mediodía el 25 de marzo de 2022 y el mediodía el 30 de marzo de 2022 (UTC). De forma predeterminada, los resultados de la consulta se ordenan por start_time (orden ascendente).

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';  

Errores de inicio de sesión de consultas para usuarios

La consulta siguiente devuelve errores de conexión que son inicios de sesión erróneos para los usuarios que se produjeron entre las 10:00 y las 11:00 el 25 de marzo 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';  

Pasos siguientes

Obtenga más información sobre Azure SQL Database en estos artículos: