Activation de la journalisation et du partage d’événements pour une application

Cette rubrique décrit comment activer la journalisation et le partage d’événements pour dépanner une application. Les événements de journalisation et de traçage vous permettent d’obtenir des informations sur les performances et le diagnostic si une application rencontre des erreurs. Celles-ci sont partagées avec le fournisseur de l’application.

Workflow d’activation de la journalisation et du partage d’événements en tant que consommateur

En tant que consommateur, vous pouvez activer la journalisation et le partage d’événements pour une application en procédant comme suit :

  1. Passez en revue les considérations relatives à l’activation de la journalisation et du partage d’événements.

  2. Mettez en place une table d’événements

  3. Affichez le niveau de journalisation spécifié par le fournisseur.

  4. Affichez les événements dans la table des événements.

  5. Activez la journalisation et le partage d’événements sur une application.

Considérations relatives à l’activation de la journalisation et du partage d’événements

Avant d’activer la journalisation et le partage d’événements pour une application, vous devez prendre en considération les éléments suivants :

  • Cette fonction nécessite que vous configuriez une table d’événements dans votre compte.

  • Après avoir activé le partage d’événements, une copie masquée et expurgée des journaux et des événements de traçage est automatiquement capturée dans la table des événements d’un compte fournisseur désigné.

  • Snowflake ne vous facture pas l’activation du partage d’événements. Cependant, vous êtes responsable du coût de l’ingestion des journaux et des événements, ainsi que de leur stockage dans la table des événements.

  • Après avoir partagé des événements avec un fournisseur, vous ne pouvez pas révoquer l’accès aux journaux partagés et aux événements de traçage.

  • Vous ne pouvez pas partager d’événements historiques à l’aide du partage d’événements.

  • Vous ne pouvez pas partager un sous-ensemble d’événements ou appliquer un filtre.

  • Snowflake envoie les événements partagés à un compte fournisseur désigné dans la même région que votre compte. Cette fonction ne partage pas de données entre différentes régions.

  • Vous ne pouvez pas modifier les niveaux de journalisation ou de traçage d’une application, car c’est le fournisseur qui les définit.

  • Snowflake recommande d’examiner les journaux et les événements dans la table des événements avant d’activer le partage des événements.

  • Snowflake recommande de désactiver la journalisation et le partage d’événements si vous n’avez pas besoin de dépanner l’application.

Configuration d’une table d’événements

Le Native Apps Framework nécessite une table d’événements pour stocker les messages de journal et les événements de traçage générés par les fonctions et les procédures stockées dans une application.

Note

Si vous ne configurez pas une table d’événements et n’en faites pas la table active avant d’installer l’application, les données de journalisation et d’événements sont rejetées.

Un compte peut avoir plusieurs tables d’événements, mais une seule d’entre elles peut être définie comme table d’événements active pour un compte Snowflake à la fois. Sans table d’événements active, les messages de journal et les événements de traçage générés par l’application ne sont pas capturés. Cela est vrai même si les fonctions et procédures d’une application appellent les APIs d’événements de journalisation et de traçage.

Utilisez la commande CREATE EVENT TABLE pour créer une table d’événements comme indiqué dans l’exemple suivant :

CREATE EVENT TABLE event_db.event_schema.my_event_table;
Copy

Après avoir créé la table d’événements, utilisez la commande ALTER ACCOUNT pour spécifier que la table d’événements est la table active pour le compte :

ALTER ACCOUNT SET EVENT_TABLE=event_db.event_schema.my_event_table;
Copy

Affichage des événements dans la table des événements

Le fournisseur et le consommateur peuvent tous deux interroger la table des événements pour voir les événements stockés. Utilisez la commande SELECT pour effectuer une requête sur les journaux et les événements de traçage de la table des événements, par exemple :

SELECT * FROM event_db.event_schema.my_event_table;
Copy

Affichage des niveaux de journalisation et de traçage d’une application

En tant que consommateur, vous ne pouvez pas modifier le niveau de journalisation d’une application. Cependant, avant d’activer la journalisation pour une application, Snowflake recommande de vérifier le niveau de journalisation pour comprendre le type d’informations à partager avec le fournisseur.

Pour voir le niveau de journalisation d’une application installée, exécutez la commande suivante :

DESC APPLICATION HelloSnowflake;
Copy

Cette commande permet d’afficher des informations sur l’application HelloSnowflake , notamment les valeurs de log_level et trace_level.

Activation de la journalisation et du partage d’événements pour une application

Pour partager les journaux et les informations sur les événements avec un fournisseur, vous devez activer le partage d’événements pour une application.

Les conditions suivantes doivent être remplies pour activer le partage d’événements pour une instance d’application :

Pour activer le partage d’événements pour une application, exécutez la commande ALTER APPLICATION pour définir SHARE_EVENTS_WITH_PROVIDER sur TRUE. Par exemple :

ALTER APPLICATION HellowSnowflake SET SHARE_EVENTS_WITH_PROVIDER = TRUE;
Copy

Pour afficher le statut de partage des événements d’une application, utilisez la commande DESC APPLICATION comme indiqué dans l’exemple suivant :

DESC APPLICATION HelloSnowflake;
Copy

SHARE_EVENTS_WITH_PROVIDER indique le statut du partage d’événements pour l’application.