sys.event_log (Azure SQL Database)
S’applique à :Azure SQL Database
Retourne les connexions et les échecs de connexion Azure SQL base de données de base de données. Utilisez ces informations pour suivre ou détecter un problème de l'activité de base de données.
Attention
Pour les serveurs logiques avec un grand nombre de bases de données et/ou un nombre élevé de connexions, l’interrogation de sys.event_log peut entraîner une utilisation élevée des ressources dans la base de données master, ce qui peut entraîner des échecs de connexion. Pour réduire l’impact de ce problème, limitez les requêtes de sys.event_log.
La vue sys.event_log
contient les colonnes suivantes.
Nom de la colonne | Type de données | Description |
---|---|---|
database_name | sysname | Nom de la base de données. Si la connexion échoue et l'utilisateur n'a pas spécifié de nom de la base de données, cette colonne est vide. |
heure-début | datetime2 | Date et heure UTC indiquant le début de l'intervalle d'agrégation. Pour les événements agrégés, l'heure est toujours un multiple de 5 minutes. Par exemple : '2022-03-30 16:00:00' '2022-03-30 16:05:00' '2022-03-30 16:10:00' |
heure-fin | datetime2 | Date et heure UTC indiquant la fin de l'intervalle d'agrégation. Pour les événements agrégés, End_time est toujours exactement 5 minutes plus tard que le start_time correspondant dans la même ligne. Pour les événements qui ne sont pas agrégés, start_time et end_time égaux à la date et à l’heure UTC réelles de l’événement. |
event_category | nvarchar(64) | Composant de niveau supérieur qui a généré cet événement. Pour une liste des valeurs possibles, consultez Types d'événements. |
event_type | nvarchar(64) | Type de l'événement. Pour une liste des valeurs possibles, consultez Types d'événements. |
event_subtype | int | Sous-type de l'événement. Pour une liste des valeurs possibles, consultez Types d'événements. |
event_subtype_desc | nvarchar(64) | Description du sous-type d'événement. Pour une liste des valeurs possibles, consultez Types d'événements. |
severity | int | Gravité de l'erreur. Les valeurs possibles sont les suivantes : 0 = Information 1 = Avertissement 2 = Erreur |
event_count | int | Nombre de fois où cet événement s’est produit pour la base de données spécifiée dans l’intervalle de temps spécifié (start_time et end_time). |
description | nvarchar(max) | Description détaillée de l'événement. Pour une liste des valeurs possibles, consultez Types d'événements. |
additional_data | XML | Cette colonne n’est pas utilisée et est conservée à des fins de compatibilité descendante. |
Types d’événements
Les événements enregistrés par chaque ligne de cette vue sont identifiés par une catégorie (event_category), un type d’événement (event_type) et un sous-type (event_subtype). Le tableau suivant répertorie les types d'événements regroupés dans cette vue.
Pour les événements de la catégorie connectivité , des informations récapitulatives sont disponibles dans la vue sys.database_connection_stats.
Notes
Cette vue n’inclut pas tous les événements de base de données SQL Database possibles qui peuvent se produire, uniquement ceux répertoriés ici. Des catégories, des types d’événements et des sous-types supplémentaires peuvent être ajoutés dans les versions ultérieures de SQL Database.
event_category | event_type | event_subtype | event_subtype_desc | severity | description |
---|---|---|---|---|---|
Connectivité | connection_successful | 0 | connection_successful | 0 | Connexion à la base de données réussie. |
Connectivité | connection_failed | 0 | invalid_login_name | 2 | Le nom de connexion n'est pas valide dans cette version de SQL Server. |
Connectivité | connection_failed | 1 | windows_auth_not_supported | 2 | Les identifiants de connexion Windows ne sont pas pris en charge dans cette version de SQL Server. |
Connectivité | connection_failed | 2 | attach_db_not_supported | 2 | L’utilisateur a demandé à joindre un fichier de base de données, ce qui n’est pas pris en charge. |
Connectivité | connection_failed | 3 | change_password_not_supported | 2 | L'utilisateur a demandé la modification du passe de connexion qui n'est pas prise en charge. |
Connectivité | connection_failed | 4 | login_failed_for_user | 2 | Échec de la connexion pour l'utilisateur. |
Connectivité | connection_failed | 5 | login_disabled | 2 | Connexion désactivée. |
Connectivité | connection_failed | 7 | blocked_by_firewall | 2 | L'adresse IP du client n'est pas autorisée à accéder au serveur. |
Autorisations
Les utilisateurs autorisés à accéder à la base de données master sur le serveur logique dans Azure SQL Base de données ont un accès en lecture seule à cette vue.
Notes
Agrégation des événements
Les informations relatives aux événements de cette vue sont collectées et agrégées par intervalles de 5 minutes. La colonne event_count représente le nombre de fois où un event_type particulier et event_subtype se sont produits pour une base de données spécifique dans un intervalle de temps donné.
Notes
Certains événements, comme les blocages, ne sont pas agrégés. Pour ces événements, event_count sera 1 et start_time et end_time correspondra à la date et à l’heure UTC réelles auxquelles l’événement s’est produit.
Par exemple, si un utilisateur ne parvient pas à se connecter à la base de données Database1, en raison d’un nom de connexion non valide, sept fois entre 11:00 et 11:05 le 30/03/2022 (UTC), ces informations sont disponibles dans une seule ligne dans cette vue :
database_name | heure-début | heure-fin | 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 |
Heure de début (start_time) et heure de fin (end_time) de l'intervalle
Un événement est inclus dans un intervalle d’agrégation quand l’événement se produit lestart_time ou après et avantend_time pour cet intervalle. Par exemple, un événement se produisant exactement à 2022-03-30 19:25:00.0000000
est inclus uniquement dans le deuxième intervalle indiqué ci-dessous :
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
Mises à jour des données
Les données de cette vue sont cumulées au fil du temps. Généralement, les données sont cumulées pendant une heure à compter du début de l'intervalle d'agrégation, mais cela peut prendre jusqu'à 24 heures avant que toutes les données apparaissent dans la vue. Pendant ce temps, les informations d'une seule ligne peuvent être mises à jour périodiquement.
Conservation des données
Les données de cette vue sont conservées pendant un maximum de 30 jours, voire moins selon le nombre de bases de données et le nombre d’événements uniques générés par chaque base de données. Pour conserver ces informations plus longtemps, copiez les données dans une base de données distincte. Une fois que vous avez effectué une copie initiale de la vue, les lignes de la vue peuvent être mises à jour au fur et à mesure que les données sont cumulées. Pour tenir à jour votre copie des données, effectuez périodiquement une analyse des lignes de la table pour détecter une augmentation du nombre d'événements dans les lignes existantes et pour identifier les nouvelles lignes (vous pouvez identifier les lignes qui sont uniques à l'aide des heures de début et de fin), puis mettez à jour votre copie des données en fonction de ces modifications.
Erreurs non incluses
Cette vue peut ne pas inclure toutes les informations de connexion et d'erreur :
- Cette vue n’inclut pas toutes les erreurs de base de données SQL Database qui peuvent se produire, mais uniquement celles spécifiées dans Types d’événements dans cet article.
- En cas de défaillance de l’ordinateur dans le centre de données SQL Database, une petite quantité de données peut être manquante dans la table d’événements.
- Si une adresse IP a été bloquée par DoSGuard, les événements de tentative de connexion à partir de cette adresse IP ne peuvent pas être collectés et n'apparaitront pas dans cette vue.
Exemples
Connectez-vous à la base de données master sur le serveur logique dans Azure SQL Database pour exécuter les requêtes Transact-SQL suivantes.
Interroger la vue sys.event_log
La requête suivante retourne tous les événements qui se sont produits entre midi le 25 mars 2022 et midi le 30 mars 2022 (UTC). Par défaut, les résultats de la requête sont triés par start_time (ordre croissant).
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';
Échecs de connexion de requête pour les utilisateurs
La requête suivante retourne les échecs de connexion qui sont des échecs de connexion pour les utilisateurs qui se sont produits entre 10:00 et 11:00 le 25 mars 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';
Étapes suivantes
Pour en savoir plus sur Azure SQL Database, consultez les articles suivants :
- Événements étendus dans une base de données SQL Azure
- Affichages catalogue Azure SQL Database
- sys.database_connection_stats (Azure SQL Database)
- Résolution des problèmes de connectivité et autres erreurs avec Azure SQL Database et Azure SQL Managed Instance
- Résoudre les erreurs de connexion temporaires dans SQL Database et SQL Managed Instance
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour