Utilisation des tables d’événements

Vous pouvez effectuer un sous-ensemble d’opérations de table sur une table d’événements, qui est spécifiquement conçue pour capturer des événements. Les sections de cette rubrique décrivent les opérations prises en charge par une table d’événements.

Opérations prises en charge par une table d’événements

Étant donné qu’une table d’événements est conçue spécifiquement pour capturer des événements, vous ne pouvez pas effectuer sur une table d’événements certaines des opérations que vous pouvez effectuer sur une table.

Avec une table d’événements, vous pouvez effectuer uniquement les opérations suivantes :

Suppression de lignes dans une table d’événements

Si vous devez supprimer des lignes d’une table d’événements, vous pouvez utiliser les commandes suivantes :

  • Utilisez TRUNCATE TABLE pour supprimer toutes les lignes de la table des événements.

  • Utilisez DELETE pour supprimer les lignes sélectionnées de la table des événements.

    Vous pouvez utiliser cette option si vous devez mettre en œuvre des politiques de conservation des journaux plus complexes (par exemple, si vous devez conserver les journaux de certaines fonctions pendant une période plus longue que d’autres fonctions).

Paramètres pour les tables d’événements

Vous pouvez utiliser les paramètres suivants pour spécifier comment la table d’événements doit être utilisée par le code du gestionnaire.

EVENT_TABLE

Spécifie le nom de la table d’événements pour l’enregistrement des messages provenant des procédures stockées et des UDFs dans ce compte. Pour les informations de référence, voir EVENT_TABLE.

LOG_LEVEL

Spécifie le niveau de gravité des messages qui doivent être ingérés et mis à disposition dans la table des événements actifs. Les messages du niveau spécifié (et des niveaux plus sévères) sont ingérés. Pour plus d’informations, reportez-vous à LOG_LEVEL et à Réglage du niveau de journalisation.

TRACE_LEVEL

Spécifie la verbosité des événements de trace qui doivent être ingérés et mis à disposition dans la table d’événements active. Les événements du niveau spécifié sont pris en compte. Pour plus d’informations, reportez-vous à TRACE_LEVEL et à Réglage du niveau de trace.

Privilèges de contrôle d’accès pour les tables d’événements

Vous pouvez utiliser des privilèges dans le champ d’application global et le champ d’application de la table des événements pour gérer l’accès aux opérations sur une table d’événements.

Pour plus d’informations, reportez-vous à Privilèges de table d’événements et aux privilèges de niveau journal dans Privilèges globaux (privilèges au niveau du compte).

Gestion de l’accès aux données des tables d’événements

Lorsqu’il n’est pas pratique de mettre les données d’une table d’événements à la disposition d’un large éventail d’utilisateurs et de rôles, vous pouvez créer des vues accessibles à des utilisateurs ayant des rôles spécifiques.

Un compte ne peut avoir qu’une seule table d’événements active. Lorsque vous souhaitez gérer l’accès aux données de cette table unique, vous pouvez créer des vues sur la table des événements, puis accorder l’accès à chaque vue à des rôles distincts. Par le biais de la vue, un rôle peut avoir accès à un sous-ensemble spécifique des données de la table des événements.

Pour plus d’informations sur la création d’une vue, voir CREATE VIEW.

Utilisation de flux pour suivre les modifications apportées aux tables d’événements

Vous pouvez créer un flux sur une table d’événements, par exemple pour capturer les modifications apportées à la table.

Pour plus d’informations sur les flux, voir Suivi des modifications à l’aide de flux de table et CREATE STREAM.

Le code de l’exemple suivant crée un flux pour capturer les insertions dans la table d’événements my_event_table.

CREATE STREAM append_only_comparison ON EVENT TABLE my_event_table APPEND_ONLY=TRUE;
Copy