Tous les produits
Search
Centre de documentation

Alibaba Cloud Service Mesh:Description des champs Telemetry

Dernière mise à jour :Aug 11, 2026

La CustomResourceDefinition (CRD) Telemetry définit et configure les politiques et comportements liés à l'observation et à la collecte de données dans une instance Service Mesh (ASM). Elle permet de gérer les fonctionnalités de télémétrie fournies par Istio avec un niveau de granularité élevé, notamment pour la journalisation, les métriques et le traçage. Grâce à la CRD Telemetry, personnalisez et ajustez les méthodes de collecte et de traitement des données de télémétrie selon vos besoins métier. Cette rubrique explique comment configurer une CRD Telemetry et décrit les champs associés.

Exemples de configuration

Istio prend en charge les configurations d'observabilité à trois niveaux différents, qui correspondent aux configurations suivantes dans la console ASM :

  1. Configurations globales (l'onglet Global dans la console ASM)

  2. Configurations spécifiques à un namespace (l'onglet Namespace dans la console ASM)

  3. Configurations spécifiques à une charge de travail (l'onglet Custom dans la console ASM)

Les exemples de fichiers YAML Telemetry ci-dessous illustrent la configuration de l'observabilité à différents niveaux :

Configurations globales

Afficher le fichier YAML

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  labels:
    provider: asm
  # When the name is default and the namespace is istio-system, the configurations take effect globally.
  name: default
  namespace: istio-system
spec:
  accessLogging:
  - disabled: false
    # This is the default configuration of ASM and cannot be modified.
    providers:
    - name: envoy
  metrics:
  # You need to configure each metric of the client and server.
  - overrides:
    - disabled: false
      match:
        metric: REQUEST_COUNT
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_COUNT
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_DURATION
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_DURATION
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_SIZE
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_SIZE
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: RESPONSE_SIZE
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: RESPONSE_SIZE
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_REQUEST_MESSAGES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_REQUEST_MESSAGES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_RESPONSE_MESSAGES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_RESPONSE_MESSAGES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_SENT_BYTES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_SENT_BYTES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_RECEIVED_BYTES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_RECEIVED_BYTES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_OPENED_CONNECTIONS
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_OPENED_CONNECTIONS
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_CLOSED_CONNECTIONS
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_CLOSED_CONNECTIONS
        mode: SERVER
      tagOverrides: {}
    # This is the default configuration of ASM and cannot be modified.
    providers:
    - name: prometheus
  tracing:
  - customTags:
    foo:
      literal:
        value: bar
    randomSamplingPercentage: 10

Configurations spécifiques à un namespace

Afficher le fichier YAML

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  labels:
    provider: asm
  # When the name is default, the configurations take effect for the entire namespace.
  name: default
  # The configurations take effect for the default namespace.
  namespace: default
spec:
  accessLogging:
  - disabled: false
    providers:
    - name: accesslogging.default.default
  metrics:
  - overrides:
    - disabled: false
      match:
        metric: REQUEST_COUNT
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_COUNT
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_DURATION
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_DURATION
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_SIZE
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_SIZE
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: RESPONSE_SIZE
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: RESPONSE_SIZE
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_REQUEST_MESSAGES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_REQUEST_MESSAGES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_RESPONSE_MESSAGES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_RESPONSE_MESSAGES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_SENT_BYTES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_SENT_BYTES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_RECEIVED_BYTES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_RECEIVED_BYTES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_OPENED_CONNECTIONS
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_OPENED_CONNECTIONS
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_CLOSED_CONNECTIONS
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_CLOSED_CONNECTIONS
        mode: SERVER
      tagOverrides: {}
    providers:
    - name: prometheus

Configurations spécifiques à une charge de travail

Afficher le fichier YAML

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  labels:
    provider: asm
  # When the name is not set to default, the configurations take effect only for workloads whose label matches the one specified in the selector field.
  name: test
  # The configurations take effect for specified workloads in the default namespace.
  namespace: default
spec:
  accessLogging:
  - disabled: false
    providers:
    - name: accesslogging.default.test
  metrics:
  - overrides:
    - disabled: false
      match:
        metric: REQUEST_COUNT
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_COUNT
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_DURATION
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_DURATION
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_SIZE
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: REQUEST_SIZE
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: RESPONSE_SIZE
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: RESPONSE_SIZE
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_REQUEST_MESSAGES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_REQUEST_MESSAGES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_RESPONSE_MESSAGES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: GRPC_RESPONSE_MESSAGES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_SENT_BYTES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_SENT_BYTES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_RECEIVED_BYTES
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_RECEIVED_BYTES
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_OPENED_CONNECTIONS
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_OPENED_CONNECTIONS
        mode: SERVER
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_CLOSED_CONNECTIONS
        mode: CLIENT
      tagOverrides: {}
    - disabled: false
      match:
        metric: TCP_CLOSED_CONNECTIONS
        mode: SERVER
      tagOverrides: {}
    providers:
    - name: prometheus
  # This field specifies the workloads for which the configurations take effect
  selector:
    matchLabels:
      foo: bar

Description des champs

Telemetry

Champ

Type

Requis

Description

selector

WorkloadSelector

Non

Désigne les charges de travail pour lesquelles la politique Telemetry doit être configurée.

tracing

Tracing[]

Non

Définit le comportement de traçage pour toutes les charges de travail sélectionnées.

metrics

Metrics[]

Non

Définit le comportement des métriques pour toutes les charges de travail sélectionnées.

accessLogging

AccessLogging[]

Non

Définit le comportement de journalisation des accès pour toutes les charges de travail sélectionnées.

Tracing

Champ

Type

Requis

Description

randomSamplingPercentage

double

Non

Indique le taux de trafic sélectionné pour le traçage. La valeur 0 signifie qu'aucun échantillonnage n'est effectué.

customTags

map<string, CustomTag>

Non

Ajoute des tags personnalisés supplémentaires aux spans de trace générées.

Metrics

Champ

Type

Requis

Description

overrides

MetricsOverrides[]

Non

Définit la méthode de génération personnalisée et l'affichage pour une métrique spécifique ou pour toutes les métriques standard prédéfinies.

providers

ProviderRef[]

Non

Désigne les fournisseurs auxquels la configuration s'applique. La valeur doit être définie sur prometheus.

AccessLogging

Champ

Type

Requis

Description

disabled

bool

Non

Définit le comportement de journalisation.

providers

ProviderRef[]

Non

Désigne les fournisseurs auxquels la configuration s'applique. La valeur doit être définie sur envoy.

WorkloadSelector

Champ

Type

Requis

Description

matchLabels

map<string, string>

Non

Désigne un ou plusieurs libellés indiquant l'ensemble des pods ou des machines virtuelles (VM) auxquels la politique s'applique. La portée de la recherche de libellés est limitée au namespace de configuration dans lequel la ressource se trouve.

CustomTag

Champ

Type

Requis

Description

literal

Tracing.Literal

Non

Ajoute la même valeur codée en dur à chaque span.

environment

Tracing.Environment

Non

Ajoute la valeur d'une variable d'environnement à chaque span.

header

Tracing.RequestHeader

Non

Ajoute la valeur d'un en-tête de la requête à chaque span.

MetricsOverrides

Champ

Type

Requis

Description

match

WorkloadSelector

Non

Fait correspondre les métriques à remplacer. Ajoutez et configurez toutes les métriques client et serveur.

disabled

bool

Non

Indique s'il faut désactiver le rapport de métriques. Si ce paramètre est défini sur true, le rapport de métriques est désactivé.

tagOverrides

map<string, MetricsOverrides>

Non

Désigne les noms de tags et expressions de tag à remplacer dans la métrique sélectionnée.

MetricSelector

Champ

Type

Requis

Description

metric

MetricSelector.IstioMetric

Non

Désigne une métrique.

mode

WorkloadMode

Non

Définit le mode de génération des métriques. Valeurs valides : CLIENT et SERVER.

ProviderRef

Champ

Type

Requis

Description

name

string

Oui

Désigne le nom du fournisseur Telemetry dans MeshConfig.

Tracing.Literal

Champ

Type

Requis

Description

value

string

Oui

Valeur du tag à utiliser.

Tracing.Environment

Champ

Type

Requis

Description

name

string

Oui

Désigne le nom de la variable d'environnement à partir de laquelle la valeur du tag est extraite.

defaultValue

string

Non

Définit la valeur par défaut utilisée si la variable d'environnement est introuvable.

Tracing.RequestHeader

Champ

Type

Requis

Description

name

string

Oui

Désigne le nom de l'en-tête à partir duquel la valeur du tag est extraite.

defaultValue

string

Non

Définit la valeur par défaut utilisée si l'en-tête est introuvable.

MetricsOverrides.TagOverride

Champ

Type

Requis

Description

operation

MetricsOverrides.TagOverride.Operation

Non

Indique s'il faut mettre à jour, ajouter ou supprimer un tag.

value

string

Non

Définit la valeur du tag, utilisée uniquement lorsque operation est défini sur UPSERT.

MetricSelector.IstioMetric

Nom

Description

REQUEST_COUNT

Compteur de requêtes HTTP, HTTP/2 et gRPC vers ou depuis une application

REQUEST_DURATION

Durée des requêtes HTTP, HTTP/2 et gRPC

REQUEST_SIZE

Taille du corps des requêtes HTTP, HTTP/2 et gRPC

RESPONSE_SIZE

Taille du corps des réponses HTTP, HTTP/2 et gRPC

TCP_OPENED_CONNECTIONS

Compteur de connexions TCP ouvertes pendant la durée de vie d'une charge de travail

TCP_CLOSED_CONNECTIONS

Compteur de connexions TCP fermées pendant la durée de vie d'une charge de travail

TCP_SENT_BYTES

Compteur d'octets envoyés lors d'une réponse sur une connexion TCP

TCP_RECEIVED_BYTES

Compteur d'octets reçus lors d'une réponse sur une connexion TCP

GRPC_REQUEST_MESSAGES

Compteur de messages gRPC envoyés depuis un client

GRPC_RESPONSE_MESSAGES

Compteur de messages gRPC envoyés depuis un serveur

MetricsOverrides.TagOverride.Operation

Nom

Description

UPSERT

Indique que le tag doit être inséré ou mis à jour.

REMOVE

Indique que le tag ne doit pas être inclus dans la métrique lors de sa génération.

WorkloadMode

Nom

Description

CLIENT

Sélectionnez cette valeur lorsque la charge de travail est la source du trafic réseau.

SERVER

Sélectionnez cette valeur lorsque la charge de travail est la destination du trafic réseau.

Précautions

En principe, les champs non décrits dans cette rubrique sont compatibles entre ASM et la version correspondante d'Istio. La console ASM ne prend pas en charge la modification de ces champs. Pour les utiliser, mettez-les à jour directement dans la ressource personnalisée (CR) Telemetry correspondante à l'aide de kubectl ou d'autres méthodes. Pour plus d'informations sur les champs de la CRD Telemetry, consultez Telemetry.