Données de trace de cluster

Vous pouvez créer des clusters à l'aide du langage TQL (Trace Explorer Query Language) lorsque vous utilisez des requêtes pour des étendues de cluster par attributs.

Requêtes de cluster

Le langage TQL (Trace Explorer Query Language) prend en charge la création de requêtes de cluster qui permettent de mettre en cluster des traces ou des étendues par attributs et d'identifier les valeurs aberrantes. Ils peuvent être exécutés à l'aide de la commande CLUSTER BY.

Types d'attribut pris en charge

Les types d'attribut peuvent être des mesures ou des dimensions.

  • Mesure : valeurs numériques, y compris Temps (époque)
  • Dimension : valeurs de chaîne
Remarque

Les requêtes de cluster prennent en charge un maximum de 6 attributs.

Syntaxe

CLUSTER BY <TQL query>

Une requête TQL est une requête avec des attributs et des données à mettre en cluster. Il peut s'agir de n'importe quelle requête, y compris les requêtes imbriquées. Pour plus d'informations sur les requêtes et la syntaxe, reportez-vous à Utilisation des requêtes dans l'explorateur de traces.

Exemples de syntaxe :
  • CLUSTER BY traceduration, errorcount

    L'exemple ci-dessus interroge les attributs traceduration et errorcount à partir de toutes les traces. Notez qu'elle n'utilise pas la clause show traces car elle est facultative et que TQL l'ajoute par défaut.

  • CLUSTER BY show traces traceduration, host where ServiceName = 'Service1'  

    L'exemple ci-dessus utilise explicitement la clause show traces pour interroger les attributs : traceduration ethost à partir de toutes les traces où ServiceName est égal à Service1.

Résultats

Le résultat est les données dans un format de table avec les colonnes suivantes :

Tableau 5-1 Résultats de cluster par commande

Nom Type Description
ID de cluster Valeur numérique Identificateur de cluster
Nombre Valeur numérique Nombre d'étendues ou de traces dans ce cluster
Pourcentage Valeur numérique Pourcentage d'étendues ou de traces dans ce cluster
Outlier Chaîne True ou False

Indique si ce cluster est une valeur aberrante.

Dimension(s)

(Uniquement si les dimensions font partie de la requête de cluster)

Chaîne Nom de dimension

Valeur unique par dimension

Mesure(s)_min

(Uniquement si les mesures font partie de la requête de cluster)

Valeur numérique Valeur minimale de la mesure
Mesure(s)_max

(Uniquement si les mesures font partie de la requête de cluster)

Valeur numérique Valeur maximale de mesure
Mesure(s)_center

(Uniquement si les mesures font partie de la requête de cluster)

Valeur numérique Valeur de centre de mesure

Exemples

Exemple 1 :

CLUSTER BY show traces traceduration
Exemple de langage de requête de l'explorateur de traces utilisant le cluster par commande

L'exemple ci-dessus interroge l'attribut : traceduration à partir de toutes les étendues. Notez qu'elle utilise explicitement la clause show traces.

Exemple 2 :

CLUSTER BY show spans spanDuration, OperationName as ServerRequest where kind='SERVER'

L'exemple ci-dessus interroge les attributs : spanDuration et OperationName à partir de toutes les étendues où kind est égal à SERVER.

Pour la visualisation, vous pouvez générer un graphique à bulles à l'aide du générateur de widget de données de trace. Pour plus d'informations, reportez-vous à Création d'un widget basé sur une requête à l'aide de traces dans la documentation du tableau de bord de gestion. Exemple de graphique de roubles utilisant le cluster par commande

Remarque

  • Les valeurs vides sont supprimées des données de clustering. Utilisez la fonction omittedTo pour affecter une valeur vide.
  • Pas plus de 1 million d'enregistrements de données peuvent être clusterisés à la fois.
  • S'il existe plus de 300 clusters, les 300 principaux clusters sont renvoyés.