Partager via


Alertes Databricks SQL

Important

Cette fonctionnalité est en version bêta.

Cette page fournit des instructions pas à pas pour activer et utiliser des alertes Databricks SQL pour automatiser l’exécution des requêtes, évaluer des conditions personnalisées et remettre des notifications lorsque ces conditions sont remplies. Avec des alertes, vous pouvez surveiller de manière proactive vos données métier et recevoir des notifications en temps opportun chaque fois que les valeurs signalées tombent en dehors des seuils attendus. Lorsque vous planifiez une alerte, sa requête associée s’exécute et les critères d’alerte sont vérifiés, quelles que soient les planifications existantes sur la requête sous-jacente. En outre, vous pouvez accéder à un historique des alertes pour passer en revue les résultats des évaluations des alertes passées.

Pour savoir comment utiliser des alertes héritées à la place, consultez Qu’est-ce que les alertes héritées ?.

Activer les alertes dans votre espace de travail

Pour la plupart des clients, les administrateurs d’espace de travail peuvent contrôler l’accès de l’espace de travail à cet aperçu à partir de la page Aperçus. Si vous ne voyez pas cette version des alertes dans votre espace de travail, contactez votre équipe de compte Databricks.

L’activation de cette préversion n’a pas d’impact sur vos alertes existantes ; vous pouvez continuer à utiliser ces alertes et les alertes héritées en parallèle.

Afficher et organiser les alertes

Cliquez sur l’icône Alertes dans la barre latérale pour ouvrir la page de référencement des alertes.

Page de liste des alertes.

  • L’onglet Alertes est ouvert par défaut et affiche toutes les alertes dans l’espace de travail. Vous pouvez taper pour filtrer par nom. Cliquez uniquement sur mes alertes pour afficher uniquement les alertes où vous êtes le propriétaire.

  • L’onglet Alertes héritées affiche les alertes créées à l’aide du système d’alertes précédent.

  • Nom présente le nom de chaîne de chaque alerte.

  • L’état indique si l’état de l’alerte est TRIGGERED, OKou UNKNOWN.

  • La planification affiche l’heure ou la date de la dernière mise à jour.

  • Le propriétaire affiche le nom d’utilisateur de la personne propriétaire de l’alerte.

  • Création affiche la date et à l’heure de création de l’alerte.

    • TRIGGERED signifie que sur l’exécution la plus récente, la colonne Valeur de votre requête cible a atteint la condition et le seuil que vous avez configurés. Si votre alerte vérifie si les « chats » sont plus de 1 500, alors elle se déclenche tant que les « chats » sont plus de 1 500.
    • OK signifie que sur l’exécution de requête la plus récente, la colonne Valeur n’a pas satisfait à la condition et au seuil que vous avez configurés. Cela ne signifie pas que l’alerte n’a pas été déclenchée précédemment. Si le nombre de « chats » s’élève maintenant à 1470, votre alerte indique OK.
    • UNKNOWN indique que Databricks SQL n’a pas suffisamment de données pour évaluer les critères d’alerte. Cet état s’affiche immédiatement après la création de votre alerte et reste jusqu’à ce que la requête s’exécute. Cet état est également utilisé s’il n’y a pas de données dans le résultat de la requête ou si le résultat de la requête le plus récent n’inclut pas la colonne valeur que vous avez configurée.
    • ERROR indique qu’une erreur s’est produite lors de l’évaluation de l’alerte.

Créer une alerte

Les étapes de cette section vous guident tout au long de la création de l’alerte illustrée dans l’image suivante. Utilisez les étiquettes et les explications pour comprendre chaque composant.

L’interface utilisateur de création d’alerte s’affiche avec des étiquettes numérotées qui identifient différentes parties.

  1. Jeu de données: Écrivez et testez la requête sur laquelle vous souhaitez alerter.
  2. Condition: Sélectionnez le seuil de valeur qui doit déclencher une notification d’alerte. Vous pouvez exécuter la requête pour tester la condition à partir de cette section.
  3. Horaire: Définissez une planification périodique pour l’exécution de l’alerte.
  4. Notifications : Les notifications doivent être envoyées aux utilisateurs ou aux destinations spécifiées lorsque la valeur du seuil sort de la plage attendue.
  5. Avancé: Utilisez les paramètres avancés pour alerter sur des valeurs et des conditions spéciales.

Important

Pendant la période bêta, les alertes ne prennent pas en charge les requêtes avec des paramètres. Voir Qu’est-ce que les alertes héritées ?.

Pour créer une alerte, procédez comme suit :

  1. Cliquez sur Alertes dans la barre latérale, puis cliquez sur Créer une alerte.

  2. Copiez et collez la requête suivante dans l’éditeur du jeu de données .

    SELECT
      to_date(tpep_pickup_datetime) as date,
      SUM(fare_amount) as amount
    FROM
      `samples`.`nyctaxi`.`trips`
    GROUP BY
      ALL
    ORDER BY
      1 DESC
    
    
  3. Dans le champ Condition , définissez les conditions qui doivent déclencher l’alerte.

    Champ condition avec les paramètres appliqués comme dans le texte suivant.

    Appliquez les paramètres suivants, comme indiqué :

    • Sélectionnez Sum comme valeur de données à vérifier. Des conditions d’alerte peuvent être définies sur la première valeur d’une colonne dans le résultat de la requête, ou vous pouvez choisir de définir une agrégation sur toutes les lignes d’une seule colonne, par exemple SUM ou AVERAGE.
    • Sélectionnez la quantité en tant que colonne à vérifier.
    • Sélectionnez > (supérieur à) comme opérateur logique à appliquer.
    • Définissez la valeur de seuil sur Static value 4 000. La valeur statique est sélectionnée par défaut. Entrez 4000 dans le champ valeur.
  4. Cliquez sur Condition de test pour afficher un aperçu de l’alerte et tester si l’alerte se déclencherait avec les données actuelles. Les paramètres fournis doivent déclencher l’alerte. Vous pouvez modifier la valeur de seuil pour tester davantage.

  5. Utilisez les menus déroulants Planification pour définir l'alerte afin qu'elle s'exécute toutes les 5minutes à partir de 0 minutes après l'heure. Si vous le souhaitez, sélectionnez la case à cocher Afficher la syntaxe Cron pour modifier la planification dans la Syntaxe Quartz Cron.

  6. Dans la section Notifications , recherchez votre nom d’utilisateur et cliquez dessus lorsqu’il apparaît.

  7. Cliquez sur Créer.

Votre alerte est enregistrée et s’exécute selon la planification que vous avez fournie. Les données utilisées dans cet exemple sont statiques. Par conséquent, si votre condition de test est retournée comme déclenchée, elle le sera de nouveau la prochaine fois qu'elle s'exécute. Vous recevrez une notification par e-mail en tant qu’alerte. Si la condition de test a retourné OK, aucune notification n’est envoyée.

Passer en revue les détails de l’alerte

Une page s’ouvre pour afficher les détails de votre alerte. En outre, un historique des alertes s’affiche avec les détails de l’historique d’évaluation. Cliquez sur le bouton Exécuter maintenant pour exécuter la requête d’alerte immédiatement et afficher le résultat à l'écran.

Cliquez sur Modifier dans le coin supérieur droit de la page pour continuer à modifier l’alerte.

Paramètres avancés

Cliquez sur Paramètres avancés pour appliquer les paramètres suivants :

  • Notifier sur ok : Envoyez une notification lorsque l’alerte est retournée en tant que OK.

  • Fréquence de notification : Envoyez régulièrement des notifications sur une alerte jusqu’à ce que l’état revienne à OK.

  • État de résultat vide : Définissez un état spécial à retourner lorsque la requête ne retourne aucun résultat.

  • Modèle: Vous pouvez choisir d’envoyer des notifications à l’aide du modèle par défaut ou d’un modèle personnalisé. La liste suivante explique chaque type de modèle :

    • Use default template (Utiliser le modèle par défaut) : la notification d’alerte est un message contenant des liens vers l’écran de configuration d’alerte et l’écran de requête.

    • Use custom template (Utiliser un modèle personnalisé) : la notification d’alerte contient des informations plus spécifiques sur l’alerte.

      1. Une zone s’affiche, composée de champs d’entrée pour l’objet et le corps. Tout contenu statique est valide et vous pouvez incorporer des variables de modèle intégré :

        • ALERT_STATUS : état d’alerte évalué (chaîne).
        • ALERT_CONDITION : opérateur de condition d’alerte (chaîne).
        • ALERT_THRESHOLD : seuil d’alerte (chaîne ou nombre).
        • ALERT_COLUMN : nom de la colonne d’alerte (chaîne).
        • ALERT_NAME : nom de l’alerte (chaîne).
        • ALERT_URL : URL de la page d’alerte (chaîne).
        • QUERY_NAME : nom de la requête associée (chaîne).
        • QUERY_URL : URL de la page de requête associée (chaîne).
        • QUERY_RESULT_TABLE : table HTML du résultat de la requête (chaîne). Les résultats sont limités aux 100 premières lignes. Seules les destinations de notification par e-mail peuvent afficher le code HTML.
        • QUERY_RESULT_VALUE : valeur du résultat de la requête (chaîne ou nombre).
        • QUERY_RESULT_ROWS : lignes de résultat de la requête (tableau de valeurs).
        • QUERY_RESULT_COLS : colonnes de résultat de la requête (tableau de valeurs).

        Un exemple d’objet pourrait être : Alert "{{ALERT_NAME}}" changed status to {{ALERT_STATUS}}.

      2. Vous pouvez utiliser le format HTML pour mettre en forme des messages dans un modèle personnalisé. Seules les destinations de notification par e-mail peuvent afficher le code HTML. Les balises et les attributs suivants sont autorisés dans les modèles :

        • Étiquettes : <a>, <abbr>, <acronym>, <b>, <blockquote>, <body>, <br>, <code>, <div>, <em>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <head>, <hr>, <html>, <i>, <li>, <ol>, <p>, <span>, <strong>, <table>, <tbody>, <td>, <th>, <tr>, <ul>
        • Attributs : href (pour <a>), titre (pour <a>, <abbr>, <acronym>)
      3. Cliquez sur le bouton bascule Preview (Aperçu) pour afficher un aperçu du résultat du rendu.

        Important

        L’aperçu permet de vérifier que les variables de modèle sont rendues correctement. Il ne s’agit pas d’une représentation exacte du contenu de notification final, car chaque destination de notifications peut afficher les notifications différemment.

Les administrateurs d’espace de travail peuvent configurer de nouvelles destinations de notification. Consultez Gérer les destinations de notification.

Agrégations d’alertes

Une agrégation sur une alerte fonctionne en modifiant le SQL d’origine de la requête Databricks SQL attachée à l’alerte. L’alerte encapsule le texte de la requête d’origine dans une expression de table commune (CTE) et exécute une requête d’agrégation d’encapsulage sur celle-ci pour agréger le résultat de la requête.

Par exemple, une agrégation SUM sur une alerte attachée à une requête avec un texte SELECT 1 AS column_name signifie que chaque fois que l’alerte est actualisée, le code SQL modifié qui s’exécute est : WITH q AS (SELECT 1 AS column_name) SELECT SUM(column_name) FROM q.

Cela veut dire que le résultat de la requête d’origine (pré-agrégé) ne peut pas être affiché dans un corps personnalisé d’alerte (avec des paramètres tels que QUERY_RESULT_ROWS et QUERY_RESULT_COLS) chaque fois qu’une agrégation existe sur une alerte. Au lieu de cela, ces variables affichent uniquement le résultat final et postérieur à l’agrégation de la requête.

Notes

Toutes les conditions du déclencheur liées aux agrégations ne sont pas prises en charge par l’API.

Alerte sur plusieurs colonnes

Pour définir une alerte sur la base de plusieurs colonnes d’une requête, votre requête peut implémenter la logique d’alerte et retourner une valeur booléenne pour déclencher l’alerte. Par exemple :

SELECT CASE WHEN drafts_count > 10000 AND archived_count > 5000 THEN 1 ELSE 0 END
FROM (
SELECT sum(CASE WHEN is_archived THEN 1 ELSE 0 END) AS archived_count,
sum(CASE WHEN is_draft THEN 1 ELSE 0 END) AS drafts_count
FROM queries) data

Cette requête retourne 1 quand drafts_count > 10000 and archived_count > 5000. Vous pouvez ensuite configurer l’alerte pour qu’elle se déclenche lorsque la valeur est 1.

Alerte sur les indicateurs de performance

Étant donné que les vues de métriques sont conçues pour suivre et mesurer les métriques métier principales, elles s’associent bien aux alertes afin que vous puissiez être automatiquement averti lorsqu’une métrique tombe en dehors d’une plage attendue. Les alertes sur les vues de métriques fonctionnent de la même façon qu’une alerte sur tout autre jeu de données. Lorsque vous écrivez la requête pour configurer la requête, utilisez le nom complet de la vue métrique que vous souhaitez surveiller.

Configurer les autorisations d’alerte et transférer la propriété d’alerte

Pour plus d’informations sur les niveaux d’autorisation des alertes, consultez Listes de contrôle d’accès (ACL) des alertes.

  1. Dans la barre latérale, cliquez sur Alertes.

  2. Cliquez sur une alerte.

  3. Cliquez sur Partager dans le coin supérieur droit de la page de détails de l’alerte pour ouvrir la boîte de dialogue Partage .

    Gérer les autorisations d’alerte

  4. Recherchez et sélectionnez les groupes et les utilisateurs, et attribuez-leur un niveau d’autorisation.

  5. Cliquez sur Ajouter.

Transfert de la propriété d’une alerte

Lorsque vous enregistrez une alerte, vous devenez le propriétaire de l’alerte. Si le propriétaire d’une alerte est supprimé d’un espace de travail, l’alerte n’a plus de propriétaire. Un utilisateur administrateur d’espace de travail peut transférer la propriété d’une alerte à un autre utilisateur. La propriété d’une alerte ne peut pas être attribuée à des principaux de service et des groupes. Vous pouvez également transférer la propriété à l’aide de l’API Autorisations.

  1. En tant qu’administrateur d’espace de travail, connectez-vous à votre espace de travail Azure Databricks.

  2. Dans la barre latérale, cliquez sur Alertes.

  3. Cliquez sur une alerte.

  4. Cliquez sur le bouton Partager en haut à droite pour ouvrir la boîte de dialogue Partage.

  5. Cliquez sur l’icône d’engrenage en haut à droite, puis cliquez sur Affecter un nouveau propriétaire.

    Affecter un nouveau propriétaire

  6. Sélectionnez l’utilisateur auquel attribuer la propriété.

  7. Cliquez sur Confirmer.