Un graphique de topologie visualise l'architecture système, les dépendances entre services et le sens du flux de données. Dans ce tutoriel, vous configurez un graphique de topologie sur un tableau de bord Simple Log Service afin d'afficher les relations entre nœuds et les métriques associées.
Introduction
Un graphique de topologie offre une vue système mettant en évidence les dépendances et l'état global des différents modules ou applications.
Simple Log Service analyse et structure les données de topologie collectées. L'exemple suivant présente un échantillon de données brutes. Les champs child et parent indiquent les dépendances entre modules ou applications, mais ce format est peu intuitif.
Chaque journal de topologie contient également les champs metric_1, metric_2, metric_3, type et d'autres encore. Les valeurs child_type et parent_type incluent des types tels que SERVER, MQ et WEB.
Pour visualiser les données de topologie, exécutez une instruction de requête qui extrait les champs de relation. Par exemple, l'instruction * | SELECT child, parent, child_type, parent_type FROM log récupère les champs child, child_type, parent et parent_type pour générer un graphique de topologie. Les dispositions prises en charge sont : Force-directed Layout, Hierarchical Layout ou Circular Layout.

Prérequis
Avant de commencer, assurez-vous que les conditions suivantes sont remplies :
Un Logstore contenant des données de topologie collectées, incluant les champs child, parent et type.
Un tableau de bord auquel vous pouvez ajouter des graphiques. @id="xref_lbr_ixj_l18" Ajouter un graphique à un tableau de bord.
Configurations générales
Définissez les propriétés globales du graphique de topologie.
Configuration de la topologie
| Paramètre | Description |
| @id="row_0m6_uhb_zbz" @id="entry_52w_n20_w1c" @id="uicontrol_8do_mof_4t7" Child Node Type | @id="entry_bwz_0e4_2kv" Sélectionnez le champ qui représente le type de nœud enfant. |
| @id="row_ydl_dvk_ehj" @id="entry_5k5_sth_mua" @id="uicontrol_ne1_a21_bj8" Child Node ID | @id="entry_a7h_py5_2he" Sélectionnez le champ qui représente l'ID du nœud enfant. |
| @id="row_luz_jmy_76d" @id="entry_y8y_5ub_o9p" @id="uicontrol_rnk_85x_tsp" Parent Node Type | @id="entry_xp4_7ch_uqo" Sélectionnez le champ qui représente le type de nœud parent. |
| @id="row_yz4_iqz_ijx" @id="entry_1g0_eyh_lkp" @id="uicontrol_i08_glm_2ai" Parent Node ID | @id="entry_2ic_nv8_hfl" Sélectionnez le champ qui représente l'ID du nœud parent. |
@id="ul_rb4_jfo_ykz" @id="li_vz9_ef0_3ef" Simple Log Service propose 13 icônes de nœud intégrées : Server, Database, WEB, MQ, Server Load Balancer (SLB), Web Application Firewall (WAF), Object Storage Service (OSS), Alibaba Cloud DNS, Switch, Router, Android, iOS et Windows. @id="li_rmh_b4f_472" Si aucun type de nœud n'est spécifié dans les champs @id="uicontrol_6kx_f3c_jhe" Child Node Type et @id="uicontrol_nik_gc8_js4" Parent Node Type, Simple Log Service utilise l'icône Server par défaut.
Exemple de configuration
Configurez les sections Topology Configuration et Layout Configuration à droite. À gauche, définissez la plage de temps, sélectionnez un Logstore et saisissez une instruction de requête. Cliquez sur Apply en haut de la page pour afficher le graphique.
Topology Configuration : Définissez Child Node Type sur
type, Child Node ID surchild_service, Parent Node Type surtypeet Parent Node ID surparent_serviceLayout Configuration : Définissez Layout Type sur Circular Layout et Node Type sur Icon
L'instruction suivante récupère les champs child_service, parent_service et type pour générer le graphique de topologie.
version: service | select child_service, parent_service, 'SERVER' as type from log
Configuration des métriques de nœud
Les configurations générales produisent un graphique de topologie affichant les dépendances entre nœuds sans métriques. Configurez les métriques de nœud pour ajouter des données métriques à chaque nœud.
L'exemple suivant présente des données métriques types. Le champ node correspond aux champs child et parent des données de topologie. Utilisez le champ node pour lier les métriques aux nœuds du graphique.
Le journal de données métriques d'exemple contient les champs suivants : __tag__:__client_ip__ (IP client), metric_1 à metric_7 (métriques numériques), node (nom du nœud, par exemple Mme.Hucheloup) et type (type de nœud, par exemple E70).
Vous pouvez configurer différentes métriques pour chaque type de nœud. Cet exemple utilise .
Dans , sélectionnez le Project et le Logstore contenant les données métriques, puis saisissez une instruction de requête. Par exemple, si metric_1 représente la latence, exécutez * | SELECT max(metric_1) AS maxLantency, min(metric_1) AS minLantency, node FROM log GROUP BY node pour calculer la latence maximale et minimale par nœud.
Après avoir appliqué la configuration, pointez sur un nœud pour vérifier que ses métriques s'affichent correctement. Cliquez sur un nœud pour masquer les nœuds et connexions non pertinents.
Configuration des métriques de ligne
L'instruction de requête et ses champs déterminent les dépendances entre nœuds. Différents types de lignes correspondent à différentes instructions de requête. Pour configurer les métriques de ligne, incluez les champs de métrique de ligne dans l'instruction de requête de topologie.
Par exemple, si metric_1 indique le temps de réponse et metric_2 la latence, utilisez la requête A pour extraire metric_1 et metric_2, puis configurez ces champs dans Line Metric Configuration.
Après avoir appliqué la configuration, pointez sur une ligne de connexion pour vérifier que ses métriques s'affichent correctement. Cliquez sur une ligne pour masquer les nœuds et connexions non pertinents.
Événements d'interaction
Les événements d'interaction permettent une analyse approfondie (drill-down) sur les nœuds. Événements pris en charge : Open Logstore, Open Quick Query, Open Dashboard, Open Trace Analysis, Open Trace Details et Custom HTTP URL. Ajouter des événements d'interaction à un tableau de bord pour une analyse approfondie.
Par exemple, définit un événement d'interaction pour les nœuds SERVER issus de la requête A. Si vous le définissez sur Create Custom HTTP URL, faites un clic droit sur un nœud SERVER et sélectionnez Create Custom HTTP URL pour ouvrir l'URL spécifiée.