Tous les produits
Search
Centre de documentation

Cloud Monitor:Intégrer des applications OpenClaw

Dernière mise à jour :Aug 18, 2026

OpenClaw s'appuie sur les plugins opentelemetry-instrumentation-openclaw et diagnostics-otel pour transmettre la trace complète ainsi que les métriques d'exécution d'un agent IA vers la surveillance des applications de Cloud Monitor 2.0. Le plugin opentelemetry-instrumentation-openclaw gère le signalement des traces en suivant les conventions sémantiques GenAI d'OpenTelemetry afin de générer une trace structurée pour chaque requête. Le plugin diagnostics-otel collecte quant à lui les métriques d'exécution en temps réel, telles que le taux de consommation de tokens, le QPS des appels et la profondeur de la file d'attente. Une fois ces plugins activés, consultez les données de surveillance de votre application OpenClaw dans Cloud Monitor 2.0, notamment la trace complète, la latence des appels au modèle, les détails de consommation de tokens et les informations relatives aux appels d'outils.

Limites

Limite

Description

Version d'OpenClaw

v26.2.19 ou ultérieure. Les versions antérieures n'incluent pas le plugin diagnostics-otel. Effectuez d'abord une mise à niveau.

Protocole de signalement

Seul HTTP/Protobuf est pris en charge. HTTP/JSON et gRPC ne sont pas supportés.

Type de données

Seules les données de trace et de métrique sont prises en charge. Les données de journal ne sont pas supportées.

Service Cloud Monitor

Vous devez avoir activé Cloud Monitor 2.0 et créé un espace de travail.

Étape 1 : Obtenir la commande d'installation

Avant d'installer le plugin, récupérez une commande d'installation depuis la console Cloud Monitor 2.0.

  1. Connectez-vous à la console Cloud Monitor 2.0 et sélectionnez votre espace de travail cible.

  2. Dans le volet de navigation de gauche, cliquez sur Integration Center.

  3. Dans la section AI Application Observability, cliquez sur la carte OpenClaw.

  4. Dans la zone de configuration des paramètres, saisissez un nom d'application, choisissez une méthode de connexion selon vos besoins, puis cliquez sur Get en regard de LicenseKey.

    La console génère une commande d'installation basée sur votre configuration. Cliquez sur l'icône de copie située dans le coin supérieur droit pour copier cette commande. Celle-ci contient des informations sur l'endpoint, telles que l'Endpoint et la LicenseKey. Si vous prévoyez d'effectuer une installation manuelle, notez les informations suivantes :

    Paramètre

    Description

    Exemple

    Endpoint

    Endpoint de signalement des traces et métriques OTLP

    • https://proj-xtrace-xxx.cn-hangzhou-intranet.log.aliyuncs.com/apm/trace/opentelemetry/v1/traces

    • https://proj-xtrace-xxx.cn-hangzhou-intranet.log.aliyuncs.com/apm/trace/opentelemetry/v1/metrics

    x-arms-license-key

    LicenseKey pour l'authentification d'écriture des données

    d95vgxi0cn@xxxxx

    x-arms-project

    Nom du projet Simple Log Service

    proj-xtrace-xxx-cn-hangzhou

    x-cms-workspace

    ID de l'espace de travail Cloud Monitor 2.0

    default-cms-xxx-cn-hangzhou

    serviceName

    Nom de l'application.

    openclaw-xxx

Étape 2 : Installer et intégrer

Méthode 1 : Installation en un clic (Recommandé)

Sur la machine exécutant OpenClaw, ouvrez un terminal, collez la commande d'installation obtenue à l'étape précédente, puis exécutez-la :

curl -fsSL https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/opentelemetry-instrumentation-openclaw/install.sh | bash -s -- \
  --endpoint "https://<YOUR_ENDPOINT>" \
  --x-arms-license-key "<YOUR_LICENSE_KEY>" \
  --x-arms-project "<YOUR_PROJECT>" \
  --x-cms-workspace "<YOUR_WORKSPACE>" \
  --serviceName "<YOUR_SERVICE_NAME>"

Le script d'installation effectue automatiquement les actions suivantes :

  1. Vérifie la présence de Node.js, npm et de la CLI OpenClaw dans l'environnement.

  2. Télécharge et extrait le plugin opentelemetry-instrumentation-openclaw dans le répertoire des extensions d'OpenClaw.

  3. Installe les dépendances d'exécution du plugin.

  4. Localise automatiquement l'extension diagnostics-otel et installe ses dépendances si elles ne sont pas déjà présentes.

  5. Met à jour le fichier openclaw.json avec les configurations des deux plugins. Pour OpenClaw v2026.4.25 et versions ultérieures, il ajoute également automatiquement hooks.allowConversationAccess: true.

  6. Redémarre la passerelle pour appliquer la nouvelle configuration.

La sortie attendue ressemble à ceci :

[INFO]  Checking prerequisites...
[OK]    Node.js v24.14.0
[OK]    npm 11.9.0
[OK]    OpenClaw CLI found
[INFO]  Downloading plugin...
[OK]    Downloaded
[INFO]  Extracting...
[OK]    Extracted
[INFO]  Installing npm dependencies...
[OK]    Dependencies installed
[INFO]  Locating diagnostics-otel extension...
[OK]    Found diagnostics-otel at: /home/.../extensions/diagnostics-otel
[OK]    diagnostics-otel dependencies already present
[INFO]  Updating config...
[OK]    Config updated
[INFO]  Restarting OpenClaw gateway...
[OK]    Gateway restarted
════════════════════════════════════════════════════
  ✅ opentelemetry-instrumentation-openclaw installed successfully!
════════════════════════════════════════════════════

Paramètres d'installation

Paramètre

Obligatoire

Description

--endpoint

Oui

L'endpoint de signalement des données OTLP, obtenu via l'Integration Center de Cloud Monitor 2.0.

--x-arms-license-key

Oui

La LicenseKey servant à l'authentification d'écriture des données.

--x-arms-project

Oui

Le nom du projet Simple Log Service.

--x-cms-workspace

Oui

L'identifiant de l'espace de travail Cloud Monitor 2.0.

--serviceName

Oui

Le nom du service signalé, qui apparaît comme nom d'application dans la liste des applications de Cloud Monitor 2.0.

--plugin-url

Non

Une URL personnalisée pour le téléchargement de l'archive tarball.

--install-dir

Non

Un répertoire d'installation personnalisé.

--disable-metrics

Non

Désactive le signalement des métriques en ignorant la configuration de diagnostics-otel. Cela active uniquement le signalement des traces.

Méthode 2 : Installation manuelle

Pour réaliser une installation manuelle, suivez les étapes ci-dessous.

1. Télécharger et extraire le plugin

curl -fsSL -o opentelemetry-instrumentation-openclaw.tar.gz https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/opentelemetry-instrumentation-openclaw/opentelemetry-instrumentation-openclaw.tar.gz
tar -xzf opentelemetry-instrumentation-openclaw.tar.gz
cd opentelemetry-instrumentation-openclaw
npm install --omit=dev

2. Activer le plugin diagnostics-otel

openclaw plugins enable diagnostics-otel

3. Modifier le fichier de configuration

Modifiez le fichier ~/.openclaw/openclaw.json et ajoutez la configuration suivante. Remplacez les espaces réservés par les informations d'endpoint obtenues lors de l'Étape 1.

{
  "plugins": {
    "allow": ["opentelemetry-instrumentation-openclaw", "diagnostics-otel"],
    "load": {
      "paths": ["<PATH_TO_OPENTELEMETRY_INSTRUMENTATION_OPENCLAW>"]
    },
    "entries": {
      "opentelemetry-instrumentation-openclaw": {
        "enabled": true,
        "hooks": {
          "allowConversationAccess": true
        },
        "config": {
          "endpoint": "<ENDPOINT>",
          "headers": {
            "x-arms-license-key": "<YOUR_LICENSE_KEY>",
            "x-arms-project": "<YOUR_ARMS_PROJECT>",
            "x-cms-workspace": "<YOUR_WORKSPACE_ID>"
          },
          "serviceName": "<YOUR_SERVICE_NAME>"
        }
      },
      "diagnostics-otel": {
        "enabled": true
      }
    }
  },
  "diagnostics": {
    "enabled": true,
    "otel": {
      "enabled": true,
      "endpoint": "<ENDPOINT>",
      "protocol": "http/protobuf",
      "headers": {
        "x-arms-license-key": "<YOUR_LICENSE_KEY>",
        "x-arms-project": "<YOUR_ARMS_PROJECT>",
        "x-cms-workspace": "<YOUR_WORKSPACE_ID>"
      },
      "serviceName": "<YOUR_SERVICE_NAME>",
      "traces": false,
      "metrics": true,
      "logs": false
    }
  }
}
Compatibilité des versions : Le paramètre hooks.allowConversationAccess est pris en charge uniquement à partir d'OpenClaw v2026.4.25. Pour les versions antérieures, supprimez la section hooks afin d'éviter une erreur « Unrecognized key » au démarrage de la passerelle.

4. Redémarrer la passerelle

openclaw gateway restart

Méthode 3 : Intégration dans un conteneur

Commencez par sélectionner une image de base OpenClaw. Si vous avez déjà construit une image personnalisée à partir de l'image de base officielle, utilisez celle-ci. Ensuite, installez les plugins d'observabilité OpenClaw par-dessus l'image de base et reconstruisez votre propre image OpenClaw, comme illustré ci-dessous :

FROM ghcr.io/openclaw/openclaw:latest
RUN curl -fsSL https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/opentelemetry-instrumentation-openclaw/install.sh | bash -s -- \
  --endpoint "https://<YOUR_ENDPOINT>" \
  --x-arms-license-key "<YOUR_LICENSE_KEY>" \
  --x-arms-project "<YOUR_PROJECT>" \
  --x-cms-workspace "<YOUR_WORKSPACE>" \
  --serviceName "<YOUR_SERVICE_NAME>"

Il s'agit du même script d'installation que celui utilisé pour l'installation en un clic.

Construisez ensuite une image OpenClaw personnalisée à partir de ce Dockerfile et utilisez-la dans votre environnement conteneurisé.

Si vous devez configurer dynamiquement l'endpoint de signalement, le nom de l'application et d'autres paramètres pour votre instance OpenClaw, construisez votre image OpenClaw comme suit :

FROM ghcr.io/openclaw/openclaw:latest
RUN curl -fsSL https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/opentelemetry-instrumentation-openclaw/install-ack.sh | bash -s

Lors de l'exécution de l'image, définissez les variables d'environnement suivantes pour spécifier l'endpoint de signalement, le nom de l'application et d'autres informations :

Variable d'environnement

Description

ARMS_OTLP_ENDPOINT

Votre URL d'endpoint

ARMS_LICENSE_KEY

Votre LicenseKey

ARMS_PROJECT

Votre projet

ARMS_CMS_WORKSPACE

Votre espace de travail

ARMS_SERVICE_NAME

Votre nom de service

Paramètres de configuration

opentelemetry-instrumentation-openclaw

Paramètre

Type

Obligatoire

Description

endpoint

String

Oui

L'endpoint de signalement des données OTLP, disponible dans l'Integration Center de Cloud Monitor 2.0.

headers.x-arms-license-key

String

Oui

La LicenseKey pour l'authentification d'identité.

headers.x-arms-project

String

Oui

Le projet Simple Log Service destiné au stockage des données de trace.

headers.x-cms-workspace

String

Oui

L'espace de travail Cloud Monitor 2.0 cible pour le signalement des données.

serviceName

String

Oui

Le nom du service signalé, affiché comme nom d'application dans la liste des applications de Cloud Monitor 2.0.

debug

Boolean

Non

Active le journal de débogage. La valeur par défaut est false.

batchSize

Number

Non

Nombre maximal de spans à conserver dans le tampon avant leur envoi par lot. La valeur par défaut est 10.

flushIntervalMs

Number

Non

Temps d'attente maximal du tampon (en millisecondes). La valeur par défaut est 5000.

enableTracePropagation

Boolean

Non

Active la propagation du contexte de trace W3C pour corréler les requêtes en amont et en aval. La valeur par défaut est false.

propagationTargetUrls

String[]

Non

Injecte l'en-tête traceparent dans les URL en aval correspondantes (correspondance par sous-chaîne d'URL).

resourceAttributes

Object

Non

Spécifie des attributs Resource personnalisés à injecter dans la ressource OTel, par exemple {"deployment.environment": "production"}.

globalSpanAttributes

Object

Non

Attributs Span globaux, injectés dans tous les spans (par exemple {"biz.team": "payment"}).

Remarque : hooks.allowConversationAccess: true doit être configuré dans le champ hooks des entrées de plugin (au même niveau que config ). Sinon, la politique de sécurité d'OpenClaw bloquera les hooks liés aux conversations. Seules les versions d'OpenClaw >= 2026.4.25 prennent en charge ce champ. Ne le configurez pas pour les versions antérieures.

Fallback par variable d'environnement

Si un champ de configuration n'est pas défini, le plugin lit la valeur depuis la variable d'environnement correspondante. Cette méthode est idéale pour les environnements conteneurisés et Kubernetes.

Variable d'environnement

Configuration correspondante

Description

ARMS_OTLP_ENDPOINT

endpoint

Endpoint de signalement OTLP

ARMS_LICENSE_KEY

headers.x-arms-license-key

LicenseKey ARMS

ARMS_PROJECT

headers.x-arms-project

Nom du projet ARMS

ARMS_CMS_WORKSPACE

headers.x-cms-workspace

Identifiant de l'espace de travail

ARMS_SERVICE_NAME / OTEL_SERVICE_NAME

serviceName

Nom du service

ARMS_TRACE_DEBUG

debug

Journal de débogage (true / 1)

OTEL_RESOURCE_ATTRIBUTES

resourceAttributes

Propriétés Resource personnalisées (key1=value1,key2=value2)

OTEL_SPAN_ATTRIBUTES

globalSpanAttributes

Attributs Span globaux (key1=value1,key2=value2)

Priorité : Fichier de configuration > Variables d'environnement > Valeurs par défaut.

Important : La passerelle OpenClaw s'exécute en mode démon par défaut et n'hérite pas des variables d'environnement du shell appelant. Pour le développement local, privilégiez la méthode du fichier de configuration. Les variables d'environnement conviennent aux environnements conteneurisés tels que Docker et Kubernetes.

diagnostics-otel

Paramètre

Type

Obligatoire

Description

enabled

Boolean

Oui

Indique s'il faut activer la fonctionnalité de diagnostic. Définissez la valeur sur true pour l'activer.

otel.enabled

Boolean

Oui

Indique s'il faut activer l'exportation des données OpenTelemetry. Définissez la valeur sur true pour l'activer.

otel.endpoint

String

Oui

Endpoint de signalement des données OTLP. Le plugin ajoute automatiquement le chemin /v1/traces ou /v1/metrics.

otel.protocol

String

Oui

Protocole de signalement. Actuellement, seul http/protobuf est pris en charge.

otel.headers

Object

Oui

Les en-têtes d'authentification inclus dans les requêtes de signalement.

otel.serviceName

String

Oui

Le nom du service signalé doit correspondre au serviceName configuré dans opentelemetry-instrumentation-openclaw.

otel.traces

Boolean

Oui

Indique s'il faut signaler les données de trace. Nous recommandons de définir cette valeur sur false, car le traçage est géré par opentelemetry-instrumentation-openclaw.

otel.metrics

Boolean

Oui

Indique s'il faut signaler les données de métrique. Définissez ce paramètre sur true pour consulter des métriques telles que l'utilisation des tokens, le nombre d'appels et la latence.

otel.logs

Boolean

Oui

Indique s'il faut signaler les données de journal. Cette fonctionnalité n'est actuellement pas prise en charge par Cloud Monitor 2.0. Nous recommandons de définir ce paramètre sur false.

otel.sampleRate

Number

Non

Le taux d'échantillonnage des traces varie de 0,0 à 1,0 et s'applique uniquement au span racine. Une valeur de 1 correspond à un échantillonnage complet.

otel.flushIntervalMs

Number

Non

Intervalle d'actualisation des données par lot, en millisecondes. La valeur minimale est 1000 et la valeur par défaut est 60000.

Étape 3 : Vérifier l'installation

Exécutez la commande suivante pour vérifier si les plugins sont actifs :

openclaw plugins list

La sortie attendue ressemble à ceci :

┌───────────────────┬─────────────────┬──────────┬──────────┬────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┐
│ Name              │ ID              │ Format   │ Status   │ Source                                                                                                                                                                     │ Version    │
├───────────────────┼─────────────────┼──────────┼──────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┤
│ OpenClaw OTel     │ opentelemetry-  │ openclaw │ enabled  │ ~/.openclaw/extensions/opentelemetry-instrumentation-openclaw/dist/index.js                                                                                                │ 0.1.3-beta │
│ Plugin            │ instrumentation │          │          │ Report OpenClaw AI agent execution traces to any OTLP-compatible backend via OpenTelemetry                                                                                 │            │
│ @openclaw/        │ diagnostics-    │ openclaw │ enabled  │ ~/.openclaw/npm/node_modules/@openclaw/diagnostics-otel/dist/index.js                                                                                                      │ 2026.5.6   │
│ diagnostics-otel  │ otel            │          │          │                                                                                                                                                                            │            │
└───────────────────┴─────────────────┴──────────┴──────────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┘

Étape 4 : Consulter les données de surveillance

Une fois l'installation terminée, envoyez quelques messages à OpenClaw pour déclencher l'exécution de l'agent. Consultez ensuite les données de surveillance transmises par OpenClaw dans la console Cloud Monitor 2.0.

  1. Connectez-vous à la console Cloud Monitor 2.0 et sélectionnez votre espace de travail cible.

  2. Dans le volet de navigation de gauche, choisissez Application Observability > AI Application Observability.

  3. Dans la liste des applications, recherchez le nom de service que vous avez configuré (par exemple, openclaw-gateway).

  4. Cliquez sur le nom de l'application ou sélectionnez Trace Analysis pour afficher la trace, la consommation de tokens, les entrées et sorties LLM ainsi que la distribution de la latence.

Désinstallation

Pour désinstaller le plugin, exécutez la commande suivante :

curl -fsSL https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/opentelemetry-instrumentation-openclaw/uninstall.sh | bash

Le script de désinstallation nettoie automatiquement le répertoire d'installation de opentelemetry-instrumentation-openclaw ainsi que toutes les configurations associées dans openclaw.json. La configuration de diagnostics-otel est également désactivée.

Paramètre

Description

-y / --yes

Ignore l'invite de confirmation.

--install-dir

Spécifie le répertoire d'installation du plugin. S'il n'est pas fourni, le répertoire est détecté automatiquement.

--keep-metrics

Désinstalle uniquement opentelemetry-instrumentation-openclaw (Trace) et conserve la configuration de diagnostics-otel (Metrics).

FAQ

Aucune donnée n'apparaît dans la console après la configuration ?

Vérifiez les points suivants dans l'ordre :

  1. Assurez-vous que votre version d'OpenClaw est la v26.2.19 ou ultérieure. Exécutez openclaw --version pour le vérifier.

  2. Confirmez que la passerelle a bien redémarré (elle redémarre automatiquement après une installation en un clic, mais nécessite l'exécution de openclaw gateway restart pour une installation manuelle). En cas d'échec du redémarrage, exécutez openclaw doctor puis redémarrez la passerelle une fois les problèmes résolus.

  3. Vérifiez que l'URL de l'Endpoint est correcte et accessible sur le réseau. Testez la connectivité avec curl.

  4. Assurez-vous que les trois valeurs d'en-tête (x-arms-license-key, x-arms-project et x-cms-workspace) sont correctement renseignées.

  5. Si la version d'OpenClaw est 2026.4.25 ou ultérieure, définissez hooks.allowConversationAccess sur true dans la configuration du plugin pour empêcher la politique de sécurité de bloquer les hooks liés aux conversations. Pour les versions antérieures à 2026.4.25, assurez-vous que la configuration ne contient pas le champ hooks afin d'éviter une erreur « Unrecognized key ».

  6. Notez que la valeur par défaut de flushIntervalMs est de 60 secondes. Pour les tâches de courte durée, patientez quelques minutes avant l'apparition des données.

L'intégration affecte-t-elle les performances ?

L'impact est minime. opentelemetry-instrumentation-openclaw utilise le mécanisme d'exportation par lot d'OpenTelemetry. Les données de span sont mises en mémoire tampon et signalées par lots à intervalles réguliers, ce qui ne bloque pas le flux de traitement normal de l'agent.

Puis-je installer uniquement le signalement des traces ?

Oui. Ajoutez le paramètre --disable-metrics lors de l'installation pour ignorer la configuration de diagnostics-otel et activer uniquement le signalement des traces.

Les traces provenant de différents plugins entrent-elles en conflit ?

Non. Le script d'installation définit diagnostics.otel.traces sur false par défaut. Le composant opentelemetry-instrumentation-openclaw est spécifiquement chargé du signalement des traces. Aucun conflit ne survient même si les deux signalent simultanément.

L'installation écrase-t-elle les configurations existantes ?

Non. Le script d'installation utilise une stratégie de fusion-mise à jour : il met à jour uniquement les champs nécessaires tels que endpoint et headers, et laisse inchangées vos configurations existantes pour traces, logs et sampleRate.

Pourquoi la consommation de tokens est-elle toujours à 0 ?

OpenClaw v2026.3.8 contient un bogue entraînant une collecte incorrecte de la consommation de tokens. Ce bogue a été corrigé dans la v2026.4.5 et les versions ultérieures.

Puis-je utiliser gRPC pour signaler des données ?

Le plugin diagnostics-otel d'OpenClaw prend uniquement en charge http/protobuf. Si vous définissez grpc, le paramètre est ignoré silencieusement. Aucune erreur ne se produit, mais le paramètre n'a aucun effet.