Surveiller les interruptions de service pour la maison connectée

1. Avant de commencer

Comme nous l'avons expliqué dans l'atelier de programmation Déboguer la maison connectée, nous publions des métriques et des journaux dans vos projets pour la maison connectée. Les métriques vous permettent de déterminer les problèmes rencontrés par votre action pour la maison connectée. Quant aux journaux, ils sont utiles pour analyser la situation en détail afin de résoudre ces problèmes.

dd44868a4ff2df6e.png

Vous pouvez configurer des alertes à l'aide des métriques fournies à votre projet pour surveiller les pannes de manière automatisée et recevoir des notifications en cas de perturbation du service. Nous publions une métrique de confiance pour mettre en évidence les perturbations liées à votre projet. Nous en parlerons dans cet atelier de programmation, ainsi que de tous les autres outils d'alerte disponibles sur Google Cloud.

Prérequis

Points abordés

  • Surveiller les problèmes de performances et les perturbations de service sur votre projet
  • Créer une alerte basée sur un seuil et recevoir des notifications en cas de perturbation
  • Utiliser la métrique de confiance fournie à votre projet pour détecter les pannes

2. Contrôle des performances

Surveiller les performances est essentiel pour une intégration réussie avec l'écosystème Google Home. Nous fournissons un ensemble d'outils de surveillance aux développeurs de maisons connectées sur Google Cloud. Vous pouvez utiliser ces outils pour vous faire une idée des performances de votre projet.

Accéder aux tableaux de bord

Pour accéder à vos données, commencez par consulter les tableaux de bord Google Home. Pour ce faire, connectez-vous à la console Google Cloud, puis accédez à Opérations > Surveillance > Tableaux de bord. Vous constaterez qu'un certain nombre de tableaux de bord sont disponibles. Les tableaux de bord pour la maison connectée sont précédés du préfixe "Google Home Analytics".

317697e52ced2437.png

Nous avons créé des tableaux de bord individuels pour chaque type d'intégration. Les intégrations Cloud, Local et Matter disposent de leur propre tableau de bord. Les données des protocoles de streaming de la caméra sont fournies dans le tableau de bord "Qualité de la caméra". Ces tableaux de bord ne contiennent des données que si vous disposez d'une intégration du type correspondant et d'un projet fonctionnel répondant aux requêtes.

Lorsque vous ouvrez l'un de ces tableaux de bord, la vue qui s'affiche est la suivante:

f8bfd69286c569a4.png

Les tableaux de bord contiennent différents graphiques qui affichent les détails des requêtes traitées par votre projet. Chaque tableau de bord d'intégration affiche un graphique indiquant le nombre total de requêtes traitées par votre projet, un graphique indiquant le taux de réussite de ce type d'intégration, ainsi que plusieurs graphiques indiquant les types d'appareils et les caractéristiques impliqués.

Trois graphiques sont essentiels pour évaluer les performances de vos actions pour la maison connectée:

f511fafd3aaaa1eb.png

En cas d'indisponibilité, vous constaterez généralement une baisse du pourcentage de réussite et une hausse du graphique de répartition des erreurs. Surveiller le pourcentage de réussite de l'exécution permet de remarquer l'indisponibilité, tandis que l'examen des principales erreurs dans la répartition des erreurs peut aider au débogage. Vous pouvez également observer une tendance à la hausse de la latence lors des pannes, comme le montrent les graphiques de latence des requêtes.

Notez que la vue par défaut avec les graphiques que vous voyez dans les tableaux de bord Google Home Analytics n'est qu'une vue que nous avons créée pour votre projet à l'aide de données de métriques de maison connectée. Vous pouvez également utiliser l'explorateur de métriques pour créer vos propres graphiques à partir des mêmes métriques sous-jacentes et les enregistrer dans vos tableaux de bord personnalisés.

Explorateur de métriques

L'explorateur de métriques est un outil qui permet de visualiser des sections transversales de l'ensemble de données de votre projet. Pour y accéder dans la console Google Cloud, accédez à Operations > Monitoring > Metrics Explorer (Opérations > Surveillance > Explorateur de métriques).

Google Cloud fournit de nombreuses métriques prêtes à l'emploi, dont certaines ne sont pas liées à la maison connectée. Les métriques que nous fournissons pour la maison connectée sont listées sous la ressource "actions.googleapis.com/smarthome_action/...". Vous pouvez les rechercher facilement en saisissant "smarthome" dans le champ de sélection des métriques.

538d851edfd34764.png

Si vous recherchez "smarthome", toutes les métriques de la maison connectée que nous fournissons à votre projet s'affichent. Pour en savoir plus sur chacune de nos métriques, consultez les pages Monitoring (Surveillance) et Logging (Journalisation) de notre documentation.

Pour surveiller votre projet, la métrique la plus simple à consulter est la métrique Nombre de requêtes (qui est une métrique delta). Cette métrique enregistre une entrée pour chaque exécution de la maison connectée lancée par vos utilisateurs, et enregistre des champs tels que le type d'appareil, le trait, le type d'exécution impliqué dans l'exécution et le champ d'état qui indique le résultat.

Si vous sélectionnez cette métrique, un écran s'affichera, montrant chaque bucket de données, comme suit:

b1c18141d15a0e09.png

En substance, pour chaque combinaison de libellés de données présents dans cette métrique, un bucket enregistre la variation (delta) entre les intervalles de temps précédents et actuels. Vous pouvez regrouper ou filtrer ces buckets pour obtenir la vue de données souhaitée. De plus, les données sont alignées sur des intervalles de temps sélectionnés à l'aide d'une fonction d'alignement (DELTA, MOYENNE, MÉDIANE, SOMME). Sauf si vous en avez besoin, vous utiliserez généralement l'alignement delta avec une métrique delta.

Vous pouvez créer la plupart des graphiques disponibles dans les tableaux de bord Google Home Analytics à l'aide de l'explorateur de métriques et les enregistrer pour y accéder ultérieurement dans un tableau de bord personnalisé. Pour obtenir des vues plus complexes, comme un graphique de ratio, vous devez utiliser le langage MQL (Monitoring Query Language).

3. Métriques d'efficacité

Pour suivre la réussite de votre intégration, vous pouvez utiliser le taux de réussite que nous calculons à partir de la métrique "Nombre de requêtes" comme indicateur de référence ou la confiance de réussite pour une approche plus spécialisée.

Réussite Tarif

Le taux de réussite est calculé pour toutes vos intégrations en divisant le nombre de requêtes réussies par le nombre total de requêtes. Pour y accéder, accédez au graphique "Taux de réussite des commandes" dans le tableau de bord Google Home Analytics.

55ea8930fbf48d9e.png

Le graphique "Taux de réussite des commandes" est très utile pour surveiller les performances de votre projet, mais pas vraiment pour créer vos tableaux de bord personnalisés ni configurer des alertes. Étant donné que le taux de réussite est dérivé de la métrique de nombre de requêtes et non d'une métrique en soi, vous devrez la recréer à l'aide du langage MQL (Monitoring Query Language) dans l'explorateur de métriques pour l'utiliser avec l'une ou l'autre des fonctionnalités.

Pour suivre les perturbations de performances de votre projet, nous pensons qu'une approche beaucoup plus spécialisée est nécessaire. C'est pourquoi nous avons créé la métrique de confiance, qui varie en fonction de l'écart entre votre taux de réussite actuel et les normes historiques.

Métrique de confiance

Les pannes peuvent prendre différentes formes et tailles pour les projets. Elles peuvent durer de quelques minutes à plusieurs heures, ce qui peut rendre leur identification difficile. Pour ce faire, nous avons créé une métrique de confiance dans votre projet, qui fournit une valeur normalisée pour prédire la fiabilité en fonction des performances passées. Pour accéder à la métrique de confiance, recherchez "smarthome" dans l'explorateur de métriques, puis sélectionnez Confiance de réussite de l'exécution.

ab467a1777281526.png

Lorsque l'intégration de votre maison connectée est aussi bonne ou meilleure que les performances historiques (moyenne sur sept jours), cette métrique affiche la valeur maximale (1,0). Lorsque votre pourcentage de réussite présente une déviation supérieure à quatre écarts types (également calculés sur sept jours), cette métrique renvoie la valeur minimale (0,0). Dans les cas où les écarts-types sont trop faibles (moins de 2,5%), cette métrique base la valeur de 0,0 sur une baisse de 10% du pourcentage de réussite.

Dans tous les cas intermédiaires, cette métrique fournit des valeurs comprises entre 1,0 (certitude absolue qu'il n'y a pas d'indisponibilité) et 0,0 (certitude maximale qu'il y a une indisponibilité).

Par conséquent, lorsque vous définissez une alerte (dans la section suivante), nous vous recommandons de définir la valeur de seuil sur 0,5. Cela correspond à deux écarts-types ou à une baisse de 5 %, selon la valeur la plus élevée.

4. Configurer des alertes

L'étape suivante consiste à utiliser tout ce que vous avez appris dans la section précédente pour configurer des alertes sur votre projet.

Créer une règle d'alerte

Les alertes automatiques sur Google Cloud sont définies via des règles d'alerte. Vous pouvez accéder aux règles d'alerte dans le menu latéral, à l'onglet Opérations > Surveillance > Alertes. Vous pouvez créer une règle d'alerte en sélectionnant l'option + CRÉER UNE RÈGLE, qui vous permet d'accéder à l'écran de création de règles d'alerte:

6e417d88c2274b3d.png

La création d'une règle d'alerte se fait en trois étapes. Vous devez d'abord déterminer ce que vous souhaitez suivre en ajoutant une condition. Appuyer sur le bouton AJOUTER UNE CONDITION affiche une fenêtre semblable à l'explorateur de métriques, avec quelques commandes supplémentaires pour configurer la condition:

df1ccf7da741e1c7.png

Pour la cible, sélectionnez la métrique de confiance que nous avons abordée dans la section précédente. Assurez-vous que l'aligneur est défini sur delta à l'aide de cette métrique (Afficher les options avancées > Aligneur). L'étape suivante consiste à configurer la condition d'alerte et à utiliser les paramètres suivants:

4192e0f4ea00dd28.png

Condition déclenchée si : il s'agit de la configuration principale permettant de déterminer quand déclencher les alertes. La sélection de Any time series violates (L'une des séries temporelles est en infraction) est appropriée, car nous allons définir un seuil pour notre métrique et surveiller si la valeur est dépassée.

Condition : nous souhaitons que l'alerte se déclenche lorsque la valeur passe sous le seuil. Nous allons donc définir cette valeur sur est inférieure. Avec notre métrique, 1,0 signifie que l'intégration fonctionne correctement et 0,0 indique une panne certaine.

Seuil : nous avons créé la métrique de confiance pour obtenir les meilleurs résultats lorsque cette valeur est définie sur 0,5. Si vous souhaitez recevoir des alertes plus fréquentes et des notifications pour des incidents moins importants, vous pouvez essayer d'augmenter cette valeur (maximum : 1,0). Si vous souhaitez recevoir moins d'alertes, uniquement pour les problèmes plus graves, vous pouvez essayer de réduire cette valeur (valeur minimale : 0,0).

For (Pendant) : ce paramètre permet d'identifier la durée de l'indisponibilité avant de recevoir une alerte. Nous vous recommandons de laisser ce paramètre sur la valeur la plus récente pour recevoir une alerte à chaque point qui dépasse le seuil. Notre métrique de confiance est publiée toutes les 15 minutes et tient compte du taux de réussite moyen sur cette période.

Une fois que vous avez ajouté une condition, l'étape suivante consiste à sélectionner le canal de notification. Le moyen le plus simple de recevoir des notifications est de s'inscrire aux alertes par e-mail. Vous pouvez choisir une adresse e-mail dans la liste déroulante Notification Channels (Canaux de notification) :

3cc10629830e7f13.png

Si vous cochez l'option Notifier en cas de fermeture de l'incident, une autre notification sera envoyée une fois l'incident marqué comme fermé. Dans ce cas, vous devez également sélectionner une durée de fermeture automatique des incidents, qui est définie sur sept jours par défaut.

La dernière étape consiste à donner un nom à votre alerte et à ajouter toute documentation que vous souhaitez inclure dans les notifications.

686fb1c537fee10.png

Nous vous recommandons de fournir des documents, en particulier si vous n'êtes pas la personne qui recevra l'alerte. Ajouter des étapes telles que les endroits à vérifier en cas d'incident, la façon de hiérarchiser les problèmes et de déboguer peut vous aider en cas d'indisponibilité. Vous pouvez consulter notre guide de dépannage si nécessaire.

Une fois enregistrée, votre règle d'alerte s'affichera dans la section "Règles" de la page "Alertes".

c71a001e4df035ee.png

5. Atténuer les interruptions

Une fois les alertes configurées, vous recevrez une notification en cas d'indisponibilité via les canaux de notification que vous avez indiqués. Une entrée d'incident sera également créée sur la page "Alertes".

Recevoir des alertes

Le canal d'alerte que nous avons fourni dans cet atelier de programmation était un e-mail. Une fois la configuration effectuée, vous ne devriez pas recevoir d'alertes (pas d'indisponibilités). Si c'est le cas, la notification ressemblera à ceci:

43217b0a145c2cd.png

Notez que la notification d'alerte indique la valeur observée qui dépasse le seuil que vous avez spécifié, ainsi qu'un code temporel indiquant le début de l'incident.

Incidents de surveillance

À mesure que des incidents se produisent, ils sont également comptabilisés dans la section "Incidents" de la page "Alertes".

fdd883a9604ed981.png

Vous pouvez cliquer sur un incident spécifique pour en afficher les détails, comme la durée ou l'intensité de l'indisponibilité.

N'oubliez pas que lorsque vous recevez des alertes, la première étape consiste à examiner vos métriques, puis à rechercher les erreurs qui contribuent à l'indisponibilité dans vos journaux. Pour rafraîchir vos connaissances, consultez l'atelier de programmation Déboguer la maison connectée.

6. Félicitations

17d485868a6771bc.png

Félicitations ! Vous avez appris à configurer des alertes à l'aide des métriques fournies à votre projet pour surveiller les pannes de manière automatisée et recevoir des notifications en cas de perturbation du service.

Étapes suivantes

En complément de cet atelier de programmation, faites ces exercices et découvrez d'autres ressources :

  • Vous pouvez combiner ce que vous avez appris dans cet atelier de programmation avec d'autres métriques fournies à votre projet. Vous pouvez consulter la liste complète des métriques disponibles dans la section Métriques compatibles de la page Monitoring (Surveillance).
  • Découvrez d'autres types de canaux de notification pour les alertes, qui sont expliqués sur la page Options de notification de la documentation Google Cloud.