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 pour votre projet afin de surveiller les pannes de manière automatisée et de recevoir des notifications en cas de perturbation du service. Nous publions une métrique de confiance pour mettre en évidence les interruptions de votre projet. Nous les étudierons dans cet atelier de programmation aux côtés de tous les autres outils d'alerte disponibles sur Google Cloud Platform.

Conditions préalables

Points abordés

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

2. Contrôle des performances

La surveillance des performances est essentielle à une intégration réussie dans l'écosystème de la maison connectée de Google. Nous fournissons aux développeurs d'applications pour la maison connectée un ensemble d'outils de surveillance sur Google Cloud Platform. Vous pouvez utiliser ces outils pour avoir une idée de la performance de votre projet.

Accéder aux tableaux de bord

Pour accéder à vos données, vous devez d'abord 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 et que les tableaux de bord pour la maison connectée sont accompagnés du préfixe Google Home Analytics.

317697e52ced2437-png

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

Lorsque vous ouvrez l'un de ces tableaux de bord, la vue qui s'affiche se présente comme suit:

f8bfd69286c569a4.png

Les tableaux de bord contiennent divers graphiques présentant les détails des requêtes traitées par votre projet. Pour chaque tableau de bord d'intégration, vous verrez un graphique indiquant le nombre total de requêtes traitées par votre projet, un graphique indiquant le taux de réussite pour ce type d'intégration, et plusieurs graphiques présentant les types d'appareils et les caractéristiques impliqués.

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

f511fafd3aaaa1eb.png

Pendant les pannes, vous verrez généralement des tendances à la baisse du pourcentage de réussite et une tendance à la hausse dans le graphique de répartition des erreurs. Surveiller le pourcentage de réussite des exécutions permet de détecter l'indisponibilité, tandis qu'examiner les principales erreurs dans la répartition des erreurs peut faciliter le débogage. Vous pouvez également observer une tendance à la hausse de la latence en cas d'indisponibilité, comme vous pouvez le voir dans 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 Analytics de Google Home n'est qu'une vue que nous avons créée pour votre projet à l'aide des données de métriques pour la 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 permettant de visualiser des sections transversales de l'ensemble de données d'un projet. L'outil est accessible dans la console Google Cloud en accédant à Opérations > Surveillance > Explorateur de métriques.

Google Cloud propose directement de nombreuses métriques différentes, dont certaines qui ne concernent pas 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 facilement les rechercher en saisissant "smarthome" dans la zone de sélection des métriques.

538d851edfd34764.png

Si vous recherchez "maison connectée", toutes les métriques pour la maison connectée que nous fournissons pour votre projet s'affichent. Vous pouvez obtenir des informations détaillées sur chacune de nos métriques sur les pages Monitoring et Logging de notre documentation.

Pour surveiller votre projet, la métrique la plus simple à utiliser 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 maison connectée lancée par vos utilisateurs. Elle enregistre des champs tels que le type d'appareil, la caractéristique, le type d'exécution impliqués dans l'exécution et le champ d'état qui indique le résultat.

Lorsque vous sélectionnez cette métrique, un écran présentant chaque bucket de données s'affiche comme suit:

b1c18141d15a0e09.png

En résumé, pour chaque combinaison de libellés de données présente dans cette métrique, il existe un bucket qui enregistre le changement (delta) entre les intervalles de temps précédent et actuel. Vous pouvez regrouper ou filtrer ces buckets pour obtenir la tranche de données de vue souhaitée. De plus, les données sont alignées sur des intervalles de temps sélectionnés avec une fonction d'alignement (DELTA, MEAN, MEDIAN, SUM). Sauf si nécessaire, vous utiliserez généralement l'alignement différent avec une métrique delta.

L'Explorateur de métriques vous permet de créer la plupart des graphiques disponibles dans les tableaux de bord Analytics de Google Home, puis de les enregistrer pour y accéder ultérieurement dans un tableau de bord personnalisé. Pour obtenir des vues plus complexes, telles qu'un graphique des ratios, vous devrez utiliser MQL (Monitoring Query Language).

3. Évaluation des résultats

Pour suivre la réussite de votre intégration, vous pouvez utiliser le taux de réussite que nous calculons à partir de votre métrique du nombre de demandes comme indicateur de référence, ou l'indice de confiance de la réussite pour une approche plus spécialisée.

Taux de réussite

Le taux de réussite est calculé pour toutes vos intégrations en divisant le nombre de demandes réussies par rapport au nombre total de demandes. Vous pouvez y accéder à partir du graphique "Taux de réussite de la réalisation" de votre tableau de bord d'analyse Google Home.

55ea8930fbf48d9e.png

Le graphique de taux de réussite d'exécution est très utile pour surveiller les performances de votre projet, mais pas beaucoup lorsque vous créez vos tableaux de bord personnalisés ou que vous configurez des alertes. Étant donné que le taux de réussite est dérivé de votre métrique de nombre de requêtes et non d'une métrique en elle-même, vous devrez la recréer à l'aide de MQL (Monitoring Query Language) dans l'explorateur de métriques afin de l'utiliser avec l'une des fonctionnalités.

De plus, pour suivre les perturbations au niveau des 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 change en fonction de l'écart que votre taux de réussite actuel de traitement des commandes par rapport aux normes historiques.

Métrique de confiance

Les pannes peuvent exister sous différentes formes et tailles pour les projets. Ils peuvent durer entre plusieurs heures et quelques minutes seulement, ce qui peut compliquer leur identification. Pour cela, 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 l'option Exécution réussie.

ab467a1777281526.png

Lorsque les performances de votre intégration de maison connectée sont égales ou supérieures à celles de l'historique des performances (moyenne sur sept jours), cette métrique renvoie la valeur maximale (1,0). Lorsque votre pourcentage de réussite s'écarte de plus d'un facteur de 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 0,0 sur une baisse de 10% du pourcentage de réussite.

Pour tous les cas intermédiaires, cette métrique fournit des valeurs comprises entre 1,0 (c'est-à-dire qu'il n'y a aucune interruption de service) et 0,0 (confiance maximale quant à l'existence d'une indisponibilité).

Par conséquent, lorsque vous définissez une alerte (à venir dans la section suivante), nous vous recommandons de baser une valeur de 0,5 comme seuil. Cela correspond à deux écarts types ou à une baisse de 5 %, le plus élevé prévaut.

4. Configuration 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 Platform sont définies via des règles d'alerte. Vous pouvez accéder aux règles d'alerte via l'onglet Opérations > Surveillance > Alertes du menu latéral. Vous pouvez créer une règle d'alerte en sélectionnant l'option + CRÉER UNE RÈGLE. Vous accédez alors à l'écran de création de règle d'alerte:

6e417d88c2274b3d.png

La création d'une règle d'alerte se fait en trois étapes. Tout d'abord, vous devez déterminer les éléments dont vous souhaitez effectuer le suivi en ajoutant une condition. Lorsque vous appuyez sur le bouton AJOUTER UNE CONDITION, une fenêtre semblable à l'Explorateur de métriques s'affiche, avec des 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 (Show Advanced Options > Align (Afficher les options avancées > Aligneur). L'étape suivante consiste à configurer la condition d'alerte et à utiliser les paramètres suivants:

4192e0f4ea00dd28.png

Déclenchement de la condition si : il s'agit de la configuration principale permettant de déterminer à quel moment les alertes doivent être déclenchées. La sélection de l'option À chaque infraction de série temporelle fonctionne, car nous allons définir un seuil pour notre métrique et surveiller si la valeur est dépassée.

Condition : l'alerte doit être déclenchée lorsque la valeur passe en dessous du seuil. Définissez donc cette valeur sur est inférieure. La valeur 1,0 indique que l'intégration fonctionne correctement, tandis que 0,0 indique une indisponibilité totale.

Seuil : nous avons créé la métrique de confiance permettant de fournir de meilleurs résultats lorsque cette valeur est définie sur 0.5. Si vous souhaitez augmenter la fréquence des alertes et recevoir des notifications pour un nombre d'incidents moindre, vous pouvez essayer d'augmenter cette valeur (1,0 maximum). Par la suite, si vous souhaitez recevoir moins d'alertes, mais uniquement pour les problèmes plus graves, vous pouvez essayer de réduire cette valeur (valeur minimale : 0,0).

Pour : paramètre permettant d'identifier la durée de l'indisponibilité avant de recevoir une alerte. Nous vous recommandons de conserver la valeur la plus récente pour recevoir une alerte dès qu'un point dépasse le seuil. Notre indicateur de confiance est publié toutes les 15 minutes et tient compte du succès moyen sur cette période.

Une fois l'ajout d'une condition terminé, l'étape suivante consiste à sélectionner le canal de notification. La méthode la plus simple consiste à envoyer des alertes par e-mail. Vous pouvez choisir un e-mail répertorié dans la liste déroulante Canaux de notification:

3cc10629830e7f13.png

Si vous cochez l'option Notifier en cas de fermeture d'incident, une autre notification est envoyée lorsque l'incident est marqué comme fermé. Dans ce cas, vous devez également sélectionner le Délai pour la fermeture automatique de l'incident, défini sur 7 jours par défaut.

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

686fb1c537fee10.png

Nous vous recommandons de fournir des documents, surtout si vous n'êtes pas celui qui reçoit l'alerte. Il peut être utile d'ajouter des étapes, comme les endroits où vérifier les données en cas d'incident, ainsi que le tri et le débogage. Si nécessaire, vous pouvez consulter notre Guide de dépannage.

Une fois enregistrée, votre règle d'alerte est répertoriée 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 fournis, et une entrée d'incident sera créée sur la page "Alertes".

Réception 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 devriez ne pas recevoir d'alertes (et donc ne pas subir d'indisponibilité). Si vous continuez, la notification se présentera comme suit:

43217b0a145c2cd.png

Notez que la notification d'alerte fournit la valeur observée dépassant le seuil que vous avez spécifié, ainsi qu'un code temporel indiquant le moment où l'incident a commencé.

Surveiller les incidents

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

fdd883a9604ed981.png

Vous pouvez cliquer sur un incident spécifique pour afficher les détails de l'indisponibilité, tels que sa durée ou son degré de sévérité.

N'oubliez pas que lorsque vous recevez des alertes, la meilleure première étape consiste à examiner vos métriques, puis à rechercher dans vos journaux les erreurs qui ont contribué à l'indisponibilité. Pour savoir comment procéder, 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 pour votre projet afin de surveiller les pannes de manière automatisée et de 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 acceptées de la page Monitoring.
  • Explorez 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 Platform.