64}64}
65```65```
66 66
67Claude Code ignore les [variables d'exportateur OpenTelemetry](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) dans le `.claude/settings.json` et `.claude/settings.local.json` d'un référentiel, donc un référentiel ne peut pas les utiliser pour activer la télémétrie, choisir où elle va ou capturer du contenu. Définissez-les dans les paramètres gérés, ou laissez chaque développeur les définir dans son shell ou `~/.claude/settings.json`. Un référentiel peut toujours désactiver un signal en définissant son sélecteur d'exportateur, tel que `OTEL_LOGS_EXPORTER`, sur `none`, sauf si les paramètres gérés, un fichier `--settings` ou l'environnement à partir duquel vous lancez Claude Code définit cette variable.
68
67Claude Code ne transmet pas les variables d'environnement `OTEL_*` aux sous-processus qu'il génère, y compris l'outil Bash, les hooks, les serveurs MCP et les serveurs de langage. Une application instrumentée par OpenTelemetry que vous exécutez via l'outil Bash n'hérite pas du point de terminaison de l'exportateur ou des en-têtes de Claude Code, donc définissez ces variables directement dans la commande si cette application doit exporter sa propre télémétrie.69Claude Code ne transmet pas les variables d'environnement `OTEL_*` aux sous-processus qu'il génère, y compris l'outil Bash, les hooks, les serveurs MCP et les serveurs de langage. Une application instrumentée par OpenTelemetry que vous exécutez via l'outil Bash n'hérite pas du point de terminaison de l'exportateur ou des en-têtes de Claude Code, donc définissez ces variables directement dans la commande si cette application doit exporter sa propre télémétrie.
68 70
69<h3 id="how-managed-settings-lock-the-otlp-destination">71<h3 id="how-managed-settings-lock-the-otlp-destination">
101 Variables de configuration courantes103 Variables de configuration courantes
102</h3>104</h3>
103 105
104Ces variables configurent les exportateurs, les points de terminaison et le comportement d'export pour tous les déploiements. Si vous définissez une variable de point de terminaison ou de protocole par signal, telle que `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT`, Claude Code l'utilise à la place de la variable générique pour ce signal. Si vous définissez une variable d'en-têtes par signal, telle que `OTEL_EXPORTER_OTLP_METRICS_HEADERS`, Claude Code la fusionne avec la variable générique `OTEL_EXPORTER_OTLP_HEADERS` pour ce signal. Sur les machines avec des paramètres gérés, voir [Comment les paramètres gérés verrouillent la destination OTLP](#how-managed-settings-lock-the-otlp-destination) pour savoir ce que Claude Code supprime.106Ces variables configurent les exportateurs, les points de terminaison et le comportement d'export pour tous les déploiements.
107
108Si vous définissez une variable de point de terminaison ou de protocole par signal, telle que `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT`, Claude Code l'utilise à la place de la variable générique pour ce signal. Si vous définissez une variable d'en-têtes par signal, telle que `OTEL_EXPORTER_OTLP_METRICS_HEADERS`, Claude Code la fusionne avec la variable générique `OTEL_EXPORTER_OTLP_HEADERS` pour ce signal.
109
110Sur les machines avec des paramètres gérés, voir [Comment les paramètres gérés verrouillent la destination OTLP](#how-managed-settings-lock-the-otlp-destination) pour savoir ce que Claude Code supprime.
105 111
106| Variable d'environnement | Description | Exemples de valeurs |112| Variable d'environnement | Description | Exemples de valeurs |
107| --------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |113| --------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
531| `session.id` | Identifiant de session unique | `OTEL_METRICS_INCLUDE_SESSION_ID` (par défaut : true) |537| `session.id` | Identifiant de session unique | `OTEL_METRICS_INCLUDE_SESSION_ID` (par défaut : true) |
532| `app.version` | Version actuelle de Claude Code | `OTEL_METRICS_INCLUDE_VERSION` (par défaut : false) |538| `app.version` | Version actuelle de Claude Code | `OTEL_METRICS_INCLUDE_VERSION` (par défaut : false) |
533| `app.entrypoint` | Comment la session a été lancée, par exemple `cli`, `sdk-cli`, `sdk-ts`, `sdk-py`, ou `claude-vscode` | `OTEL_METRICS_INCLUDE_ENTRYPOINT` (par défaut : false) |539| `app.entrypoint` | Comment la session a été lancée, par exemple `cli`, `sdk-cli`, `sdk-ts`, `sdk-py`, ou `claude-vscode` | `OTEL_METRICS_INCLUDE_ENTRYPOINT` (par défaut : false) |
534| `organization.id` | UUID de l'organisation (si authentifié) | Toujours inclus si disponible |540| `organization.id` | UUID de l'organisation (si authentifié) | Toujours inclus quand disponible |
535| `user.account_uuid` | UUID du compte (si authentifié) | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (par défaut : true) |541| `user.account_uuid` | UUID du compte (si authentifié) | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (par défaut : true) |
536| `user.account_id` | ID du compte au format balisé correspondant aux API d'administration Anthropic (si authentifié), tel que `user_01BWBeN28...` | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (par défaut : true) |542| `user.account_id` | ID du compte au format balisé correspondant aux API d'administration Anthropic (si authentifié), par exemple `user_01BWBeN28...` | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (par défaut : true) |
537| `user.id` | Identifiant anonyme aléatoire généré à la première exécution et conservé dans `~/.claude.json`. Il ne contient aucune information personnelle et n'est pas dérivé de votre compte Claude. La suppression du fichier produit une nouvelle valeur sans rapport à la prochaine exécution. | Toujours inclus |543| `user.id` | Identifiant anonyme aléatoire généré à la première exécution et persisté dans `~/.claude.json`. Il ne contient aucune information personnelle et n'est pas dérivé de votre compte Claude. La suppression du fichier produit une nouvelle valeur sans rapport à la prochaine exécution. | Toujours inclus |
538| `user.email` | Adresse e-mail de l'utilisateur, de votre connexion ou, dans une [session cloud](/docs/fr/claude-code-on-the-web), des identifiants de la session elle-même | Toujours inclus si disponible |544| `user.email` | Adresse e-mail de l'utilisateur, de votre connexion ou, dans une [session cloud](/docs/fr/claude-code-on-the-web), des identifiants de la session elle-même | Toujours inclus quand disponible |
539| `terminal.type` | Type de terminal, tel que `iTerm.app`, `vscode`, `cursor`, ou `tmux` | Toujours inclus si détecté |545| `terminal.type` | Type de terminal, par exemple `iTerm.app`, `vscode`, `cursor`, ou `tmux` | Toujours inclus quand détecté |
540| Clés de `OTEL_RESOURCE_ATTRIBUTES` | Attributs personnalisés que vous définissez, tels que `department` ou `team.id`. Voir [Support des organisations multi-équipes](#multi-team-organization-support) | `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` (par défaut : true) |546| Clés de `OTEL_RESOURCE_ATTRIBUTES` | Attributs personnalisés que vous définissez, par exemple `department` ou `team.id`. Voir [Support des organisations multi-équipes](#multi-team-organization-support) | `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` (par défaut : true) |
541| `vcs.repository.url.full`, `vcs.owner.name`, `vcs.repository.name`, `vcs.provider.name` | L'identité du référentiel de la session, dérivée de sa télécommande `origin`. Voir [Attributs du référentiel](#repository-attributes) | `OTEL_METRICS_INCLUDE_REPOSITORY` (par défaut : false). Nécessite Claude Code v2.1.269 ou ultérieur |547| `vcs.repository.url.full`, `vcs.owner.name`, `vcs.repository.name`, `vcs.provider.name` | L'identité du référentiel de la session, dérivée de sa télécommande `origin`. Voir [Attributs du référentiel](#repository-attributes) | `OTEL_METRICS_INCLUDE_REPOSITORY` (par défaut : false). Nécessite Claude Code v2.1.269 ou ultérieur |
542 548
543Lorsque Claude Code est connecté à une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), la CLI marque les exportations avec l'identité authentifiée de la session de la passerelle : `user.id` est le sujet IdP plutôt qu'un identifiant d'installation anonyme, `user.email` est l'e-mail connecté, et `user.groups` porte l'appartenance au groupe IdP sous forme de chaîne séparée par des virgules. Chaque exportation porte également `identity.source: gateway-oidc`. L'identité de la passerelle est appliquée en dernier, donc les clés `user.*` et `identity.*` définies via `OTEL_RESOURCE_ATTRIBUTES` sont ignorées sur les sessions de passerelle.549Quand Claude Code est connecté à une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), l'interface de ligne de commande marque les exportations avec l'identité authentifiée de la session de la passerelle : `user.id` est le sujet IdP plutôt qu'un identifiant d'installation anonyme, `user.email` est l'e-mail connecté, et `user.groups` porte l'appartenance au groupe IdP sous forme de chaîne séparée par des virgules. Chaque exportation porte également `identity.source: gateway-oidc`. L'identité de la passerelle est appliquée en dernier, donc les clés `user.*` et `identity.*` définies via `OTEL_RESOURCE_ATTRIBUTES` sont ignorées sur les sessions de passerelle.
544 550
545Les événements incluent en outre les attributs suivants. Ceux-ci ne sont jamais attachés aux métriques car ils causeraient une cardinalité non bornée :551Les événements incluent en outre les attributs suivants. Ceux-ci ne sont jamais attachés aux métriques car ils causeraient une cardinalité non bornée :
546 552
547* `prompt.id` : UUID corrélant une invite utilisateur avec tous les événements suivants jusqu'à l'invite suivante. Voir [Attributs de corrélation d'événements](#event-correlation-attributes).553* `prompt.id` : UUID corrélant une invite utilisateur avec tous les événements suivants jusqu'à l'invite suivante. Voir [Attributs de corrélation d'événements](#event-correlation-attributes).
548* `workspace.host_paths` : répertoires d'espace de travail hôte sélectionnés dans l'application de bureau, sous forme de tableau de chaînes554* `workspace.host_paths` : répertoires d'espace de travail hôte sélectionnés dans l'application de bureau, sous forme de tableau de chaînes
549* `workflow.run_id` : identifiant d'exécution, préfixé `wf_`, sur les événements d'API et d'outil émis par les agents qui appartiennent à une exécution d'outil [Workflow](/docs/fr/workflows). Le filtrage des événements par un `workflow.run_id` reconstruit les demandes d'API et les résultats d'outil de cette exécution. L'identifiant couvre les agents que le script de flux de travail génère et tous les agents que ceux-ci génèrent à leur tour, tels que les invocations de compétences. Il correspond à l'identifiant d'exécution signalé dans le résultat de l'outil Workflow. Absent sur tous les autres événements. Nécessite Claude Code v2.1.202 ou ultérieur555* `workflow.run_id` : identifiant d'exécution, préfixé `wf_`, sur les événements API et d'outils émis par les agents qui appartiennent à une exécution d'outil [Workflow](/docs/fr/workflows). Le filtrage des événements par un `workflow.run_id` reconstruit les demandes API et les résultats d'outils de cette exécution. L'identifiant couvre les agents que le script de flux de travail génère et tous les agents que ceux-ci génèrent à leur tour, par exemple les invocations de compétences. Il correspond à l'identifiant d'exécution signalé dans le résultat de l'outil Workflow. Absent sur tous les autres événements. Nécessite Claude Code v2.1.202 ou ultérieur
550* `workflow.name` : nom du flux de travail, le `meta.name` de son script, émis aux côtés de `workflow.run_id`. Les noms de flux de travail intégrés apparaissent textuellement lorsque l'exécution exécute le script intégré non modifié. Les noms créés par l'utilisateur, y compris les copies modifiées de scripts intégrés, sont remplacés par `custom` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Nécessite Claude Code v2.1.202 ou ultérieur556* `workflow.name` : nom du flux de travail, le `meta.name` de son script, émis aux côtés de `workflow.run_id`. Les noms de flux de travail intégrés apparaissent textuellement quand l'exécution exécute le script intégré non modifié. Les noms créés par l'utilisateur, y compris les copies modifiées de scripts intégrés, sont remplacés par `custom` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Nécessite Claude Code v2.1.202 ou ultérieur
551 557
552<h4 id="repository-attributes">558<h4 id="repository-attributes">
553 Attributs du référentiel559 Attributs du référentiel
554</h4>560</h4>
555 561
556Définissez `OTEL_METRICS_INCLUDE_REPOSITORY=true` pour baliser les métriques et les événements avec l'identité du référentiel de la session, afin qu'un collecteur partagé puisse attribuer l'utilisation par référentiel. Nécessite Claude Code v2.1.269 ou ultérieur.562Définissez `OTEL_METRICS_INCLUDE_REPOSITORY=true` pour balisez les métriques et les événements avec l'identité du référentiel de la session, afin qu'un collecteur partagé puisse attribuer l'utilisation par référentiel. Nécessite Claude Code v2.1.269 ou ultérieur.
557 563
558Claude Code dérive ces attributs une fois par session à partir de la télécommande `origin` du référentiel. Les télécommandes HTTPS et SSH d'un référentiel produisent des valeurs identiques :564Claude Code dérive ces attributs une fois par session à partir de la télécommande `origin` du référentiel. Les télécommandes HTTPS et SSH d'un référentiel produisent des valeurs identiques :
559 565
560| Attribut | Valeur |566| Attribut | Valeur |
561| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |567| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
562| `vcs.repository.url.full` | L'URL du navigateur du référentiel sans `.git`, telle que `https://github.com/example-org/example-repo` |568| `vcs.repository.url.full` | L'URL du navigateur du référentiel sans `.git`, par exemple `https://github.com/example-org/example-repo` |
563| `vcs.owner.name` | Le chemin du propriétaire ou du groupe, tel que `example-org` ; omis lorsque le chemin de la télécommande a un seul segment |569| `vcs.owner.name` | Le chemin du propriétaire ou du groupe, par exemple `example-org` ; omis quand le chemin de la télécommande a un seul segment |
564| `vcs.repository.name` | Le nom du référentiel nu, tel que `example-repo` |570| `vcs.repository.name` | Le nom du référentiel nu, par exemple `example-repo` |
565| `vcs.provider.name` | `github`, `gitlab`, `bitbucket`, ou `gitea` lorsque Claude Code reconnaît l'hôte de la télécommande ou la forme de l'URL comme l'un de ces fournisseurs ; omis sinon |571| `vcs.provider.name` | `github`, `gitlab`, `bitbucket`, ou `gitea` quand Claude Code reconnaît l'hôte de la télécommande ou la forme de l'URL comme l'un de ces fournisseurs ; omis sinon |
566 572
567Les valeurs sont en minuscules, et les identifiants, les chaînes de requête et les fragments de l'URL de la télécommande n'apparaissent jamais en eux. Les attributs sont omis lorsque la session n'a pas de télécommande `origin`, lorsque la télécommande n'est pas en forme d'URL, ou lorsque le seul référentiel englobant est votre répertoire personnel.573Les valeurs sont en minuscules, et les identifiants, chaînes de requête et fragments de l'URL de la télécommande n'apparaissent jamais en eux. Les attributs sont omis quand la session n'a pas de télécommande `origin`, quand la télécommande n'a pas la forme d'une URL, ou quand le seul référentiel englobant est votre répertoire personnel.
568 574
569Une clé `vcs.*` que vous déclarez dans [`OTEL_RESOURCE_ATTRIBUTES`](#multi-team-organization-support) remplace la valeur dérivée pour cette clé. Si vous déclarez `vcs.repository.url.full`, Claude Code ne lit jamais la télécommande et rapporte uniquement les clés que vous déclarez.575Une clé `vcs.*` que vous déclarez dans [`OTEL_RESOURCE_ATTRIBUTES`](#multi-team-organization-support) remplace la valeur dérivée pour cette clé. Si vous déclarez `vcs.repository.url.full`, Claude Code ne lit jamais la télécommande et signale uniquement les clés que vous déclarez.
570 576
571Les attributs circulent uniquement vers vos propres exportateurs ; la télémétrie d'Anthropic supprime chaque clé `vcs.*`.577Les attributs ne circulent que vers vos propres exportateurs ; la télémétrie d'Anthropic supprime chaque clé `vcs.*`.
572 578
573<h3 id="metrics">579<h3 id="metrics">
574 Métriques580 Métriques
578 584
579| Nom de la métrique | Description | Unité |585| Nom de la métrique | Description | Unité |
580| ------------------------------------- | -------------------------------------------------------------- | ------ |586| ------------------------------------- | -------------------------------------------------------------- | ------ |
581| `claude_code.session.count` | Nombre de sessions CLI démarrées | none |587| `claude_code.session.count` | Nombre de sessions CLI démarrées | aucune |
582| `claude_code.lines_of_code.count` | Nombre de lignes de code modifiées | none |588| `claude_code.lines_of_code.count` | Nombre de lignes de code modifiées | aucune |
583| `claude_code.pull_request.count` | Nombre de demandes de tirage créées | none |589| `claude_code.pull_request.count` | Nombre de demandes de tirage créées | aucune |
584| `claude_code.commit.count` | Nombre de commits git créés | none |590| `claude_code.commit.count` | Nombre de commits git créés | aucune |
585| `claude_code.cost.usage` | Coût de la session Claude Code | USD |591| `claude_code.cost.usage` | Coût de la session Claude Code | USD |
586| `claude_code.token.usage` | Nombre de jetons utilisés | tokens |592| `claude_code.token.usage` | Nombre de jetons utilisés | tokens |
587| `claude_code.code_edit_tool.decision` | Nombre de décisions de permission de l'outil d'édition de code | none |593| `claude_code.code_edit_tool.decision` | Nombre de décisions de permission de l'outil d'édition de code | aucune |
588| `claude_code.active_time.total` | Temps actif total | s |594| `claude_code.active_time.total` | Temps actif total | s |
589 595
590Lorsque `prometheus` est le seul exportateur listé dans `OTEL_METRICS_EXPORTER`, Claude Code omet les unités `USD`, `tokens`, et `s` des métriques exportées afin que le scrape reste au format texte Prometheus valide. Les noms de métriques ne changent pas, et les configurations qui combinent des exportateurs, telles que `otlp,prometheus`, conservent les unités. Avant v2.1.216, le scrape Prometheus incluait des lignes `# UNIT` uniquement OpenMetrics que certains scrapers rejetaient.596Quand `prometheus` est le seul exportateur listé dans `OTEL_METRICS_EXPORTER`, Claude Code omet les unités `USD`, `tokens`, et `s` des métriques exportées afin que le scrape reste au format texte Prometheus valide. Les noms de métriques ne changent pas, et les configurations qui combinent des exportateurs, par exemple `otlp,prometheus`, conservent les unités. Avant v2.1.216, le scrape Prometheus incluait des lignes `# UNIT` uniquement OpenMetrics que certains scrapers rejetaient.
591 597
592<h3 id="metric-details">598<h3 id="metric-details">
593 Détails des métriques599 Détails des métriques
596Chaque métrique inclut les attributs standard listés ci-dessus. Les métriques avec des attributs supplémentaires spécifiques au contexte sont notées ci-dessous.602Chaque métrique inclut les attributs standard listés ci-dessus. Les métriques avec des attributs supplémentaires spécifiques au contexte sont notées ci-dessous.
597 603
598<h4 id="session-counter">604<h4 id="session-counter">
599 Compteur de sessions605 Compteur de session
600</h4>606</h4>
601 607
602Incrémenté au début de chaque session.608Incrémenté au début de chaque session.
604**Attributs** :610**Attributs** :
605 611
606* Tous les [attributs standard](#standard-attributes)612* Tous les [attributs standard](#standard-attributes)
607* `start_type` : Comment la session a été démarrée. L'un de `"fresh"`, `"resume"`, `"continue"`, ou `"agents_view"`. La valeur `"agents_view"` identifie le processus du tableau de bord `claude agents`, une interface utilisateur locale lancée par l'utilisateur plutôt qu'une session conversationnelle. Filtrez sur cette valeur pour séparer les lancements de processus d'interface utilisateur des sessions conversationnelles dans vos tableaux de bord.613* `start_type` : Comment la session a été démarrée. L'une de `"fresh"`, `"resume"`, `"continue"`, ou `"agents_view"`. La valeur `"agents_view"` identifie le processus du tableau de bord `claude agents`, une interface utilisateur locale lancée par l'utilisateur plutôt qu'une session conversationnelle. Filtrez sur cette valeur pour séparer les lancements de processus d'interface utilisateur des sessions conversationnelles dans vos tableaux de bord.
608 614
609<h4 id="lines-of-code-counter">615<h4 id="lines-of-code-counter">
610 Compteur de lignes de code616 Compteur de lignes de code
611</h4>617</h4>
612 618
613Incrémenté lorsque du code est ajouté ou supprimé.619Incrémenté quand du code est ajouté ou supprimé.
614 620
615**Attributs** :621**Attributs** :
616 622
619* `model` : Identifiant du modèle pour le modèle qui a effectué la modification (par exemple, « claude-sonnet-5 »)625* `model` : Identifiant du modèle pour le modèle qui a effectué la modification (par exemple, « claude-sonnet-5 »)
620 626
621<h4 id="pull-request-counter">627<h4 id="pull-request-counter">
622 Compteur de demandes de tirage628 Compteur de demande de tirage
623</h4>629</h4>
624 630
625Incrémenté lors de la création de demandes de tirage ou de demandes de fusion via une commande shell ou un outil MCP.631Incrémenté quand Claude Code crée une demande de tirage ou de fusion via une commande shell ou un outil MCP.
626 632
627**Attributs** :633**Attributs** :
628 634
629* Tous les [attributs standard](#standard-attributes)635* Tous les [attributs standard](#standard-attributes)
630 636
631<h4 id="commit-counter">637<h4 id="commit-counter">
632 Compteur de commits638 Compteur de commit
633</h4>639</h4>
634 640
635Incrémenté lors de la création de commits git via Claude Code.641Incrémenté lors de la création de commits git via Claude Code.
639* Tous les [attributs standard](#standard-attributes)645* Tous les [attributs standard](#standard-attributes)
640 646
641<h4 id="cost-counter">647<h4 id="cost-counter">
642 Compteur de coûts648 Compteur de coût
643</h4>649</h4>
644 650
645Incrémenté après chaque demande d'API.651Incrémenté après chaque demande API.
646 652
647**Attributs** :653**Attributs** :
648 654
649* Tous les [attributs standard](#standard-attributes)655* Tous les [attributs standard](#standard-attributes)
650* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)656* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)
651* `query_source` : Catégorie du sous-système qui a émis la demande. L'un de `"main"`, `"subagent"`, ou `"auxiliary"`657* `query_source` : Catégorie du sous-système qui a émis la demande. L'une de `"main"`, `"subagent"`, ou `"auxiliary"`
652* `speed` : `"fast"` lorsque la demande a utilisé le mode rapide. Absent sinon658* `speed` : `"fast"` quand la demande a utilisé le mode rapide. Absent sinon
653* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande : `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Absent lorsque le modèle ne supporte pas l'effort.659* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande : `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Absent quand Claude Code n'envoie aucun niveau d'effort, par exemple sur un modèle qui ne supporte pas l'effort.
654* `agent.name` : Type de sous-agent qui a émis la demande. Les noms d'agents intégrés et les agents des plugins de la place de marché officielle apparaissent textuellement. Les autres noms d'agents définis par l'utilisateur sont remplacés par `"custom"`. Absent lorsque la demande n'a pas été émise par un type de sous-agent nommé.660* `agent.name` : Type de sous-agent qui a émis la demande. Les noms d'agents intégrés et les agents des plugins de la place de marché officielle apparaissent textuellement. Les autres noms d'agents définis par l'utilisateur sont remplacés par `"custom"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand la demande n'a pas été émise par un type de sous-agent nommé.
655* `skill.name` : Compétence active pour la demande, définie par l'outil Skill, une commande `/`, ou héritée par un sous-agent généré. Les noms de compétences intégrées, groupées, définies par l'utilisateur et de plugin de place de marché officielle apparaissent textuellement. Les noms de compétences de plugin tiers sont remplacés par `"third-party"`. Absent lorsqu'aucune compétence n'est active.661* `skill.name` : Compétence active pour la demande, définie par l'outil Skill, une commande `/`, ou héritée par un sous-agent généré. Les noms de compétences intégrés, groupés, définis par l'utilisateur et de la place de marché officielle des plugins apparaissent textuellement. Les noms de compétences des plugins tiers sont remplacés par `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand aucune compétence n'est active.
656* `plugin.name` : Plugin propriétaire lorsque la compétence active ou le sous-agent est fourni par un plugin. Les noms de plugins de place de marché officielle apparaissent textuellement. Les noms de plugins tiers sont remplacés par `"third-party"`. Absent lorsque ni la compétence ni le sous-agent n'a de plugin propriétaire.662* `plugin.name` : Plugin propriétaire quand la compétence active ou le sous-agent est fourni par un plugin. Les noms de plugins de la place de marché officielle apparaissent textuellement. Les noms de plugins tiers sont remplacés par `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand ni la compétence ni le sous-agent n'a de plugin propriétaire.
657* `marketplace.name` : Place de marché à partir de laquelle le plugin propriétaire a été installé. Émis uniquement pour les plugins de place de marché officielle. Absent sinon.663* `marketplace.name` : Place de marché à partir de laquelle le plugin propriétaire a été installé. Émis uniquement pour les plugins de la place de marché officielle. Absent sinon.
658* `mcp_server.name` : Serveur MCP dont le résultat d'outil cette demande a consommé. Les noms de serveurs intégrés, proxifiés par claude.ai et de registre officiel apparaissent textuellement. Les noms de serveurs configurés par l'utilisateur sont remplacés par `"custom"`. Absent lorsque la demande n'a consommé aucun résultat d'outil MCP. Avant v2.1.222, Claude Code définissait cet attribut sur chaque demande après un appel d'outil MCP, pas seulement sur les demandes qui ont consommé un résultat d'outil, donc les tableaux de bord qui l'agrègent montrent une baisse après la mise à niveau.664* `mcp_server.name` : Serveur MCP dont le résultat de l'outil cette demande a consommé. Les noms de serveurs intégrés, proxifiés par claude.ai, et de registre officiel apparaissent textuellement. Les noms de serveurs configurés par l'utilisateur sont remplacés par `"custom"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand la demande n'a consommé aucun résultat d'outil MCP. Avant v2.1.222, Claude Code définissait cet attribut sur chaque demande après un appel d'outil MCP, pas seulement sur les demandes qui ont consommé un résultat d'outil, donc les tableaux de bord qui l'agrègent montrent une baisse après la mise à niveau.
659* `mcp_tool.name` : Outil MCP dont le résultat cette demande a consommé, avec le même comportement de masquage et de version que `mcp_server.name`. Absent lorsque la demande n'a consommé aucun résultat d'outil MCP.665* `mcp_tool.name` : Outil MCP dont le résultat cette demande a consommé, avec le même comportement de rédaction et de version que `mcp_server.name`. Absent quand la demande n'a consommé aucun résultat d'outil MCP.
660 666
661<h4 id="token-counter">667<h4 id="token-counter">
662 Compteur de jetons668 Compteur de jetons
663</h4>669</h4>
664 670
665Incrémenté après chaque demande d'API.671Incrémenté après chaque demande API.
666 672
667**Attributs** :673**Attributs** :
668 674
669* Tous les [attributs standard](#standard-attributes)675* Tous les [attributs standard](#standard-attributes)
670* `type` : (`"input"`, `"output"`, `"cacheRead"`, `"cacheCreation"`)676* `type` : (`"input"`, `"output"`, `"cacheRead"`, `"cacheCreation"`)
671* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)677* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)
672* `query_source` : Catégorie du sous-système qui a émis la demande. L'un de `"main"`, `"subagent"`, ou `"auxiliary"`678* `query_source` : Catégorie du sous-système qui a émis la demande. L'une de `"main"`, `"subagent"`, ou `"auxiliary"`
673* `speed` : `"fast"` lorsque la demande a utilisé le mode rapide. Absent sinon679* `speed` : `"fast"` quand la demande a utilisé le mode rapide. Absent sinon
674* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande. Voir [Compteur de coûts](#cost-counter) pour les détails.680* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande. Voir [Compteur de coût](#cost-counter) pour les détails.
675* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coûts](#cost-counter) pour les définitions et le comportement de masquage.681* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coût](#cost-counter) pour les définitions et le comportement de rédaction.
676 682
677<h4 id="code-edit-tool-decision-counter">683<h4 id="code-edit-tool-decision-counter">
678 Compteur de décisions de l'outil d'édition de code684 Compteur de décision de l'outil d'édition de code
679</h4>685</h4>
680 686
681Incrémenté lorsque l'utilisateur accepte ou rejette l'utilisation de l'outil Edit, Write ou NotebookEdit.687Incrémenté quand l'utilisateur accepte ou rejette l'utilisation de l'outil Edit, Write, ou NotebookEdit.
682 688
683**Attributs** :689**Attributs** :
684 690
685* Tous les [attributs standard](#standard-attributes)691* Tous les [attributs standard](#standard-attributes)
686* `tool_name` : Nom de l'outil (`"Edit"`, `"Write"`, `"NotebookEdit"`)692* `tool_name` : Nom de l'outil (`"Edit"`, `"Write"`, `"NotebookEdit"`)
687* `decision` : Décision de l'utilisateur (`"accept"`, `"reject"`)693* `decision` : Décision de l'utilisateur (`"accept"`, `"reject"`)
688* `source` : Source de la décision. L'un de `"config"`, `"hook"`, `"user_permanent"`, `"user_temporary"`, `"user_abort"`, ou `"user_reject"`. Voir l'[Événement de décision d'outil](#tool-decision-event) pour savoir ce que chaque valeur signifie.694* `source` : D'où provient la décision. L'une de `"config"`, `"hook"`, `"user_permanent"`, `"user_temporary"`, `"user_abort"`, ou `"user_reject"`. Voir l'[événement de décision d'outil](#tool-decision-event) pour ce que chaque valeur signifie.
689* `language` : Langage de programmation du fichier édité, tel que `"TypeScript"`, `"Python"`, `"JavaScript"`, ou `"Markdown"`. Retourne `"unknown"` pour les extensions de fichier non reconnues.695* `language` : Langage de programmation du fichier édité, par exemple `"TypeScript"`, `"Python"`, `"JavaScript"`, ou `"Markdown"`. Retourne `"unknown"` pour les extensions de fichier non reconnues.
690 696
691<h4 id="active-time-counter">697<h4 id="active-time-counter">
692 Compteur de temps actif698 Compteur de temps actif
693</h4>699</h4>
694 700
695Suit le temps réel passé à utiliser activement Claude Code, excluant le temps d'inactivité. Cette métrique est incrémentée lors des interactions utilisateur (saisie, lecture des réponses) et lors du traitement CLI (exécution d'outils, génération de réponses IA).701Suit le temps réel passé à utiliser activement Claude Code, excluant le temps d'inactivité. Cette métrique est incrémentée lors des interactions utilisateur, par exemple la saisie et la lecture des réponses, et lors du traitement CLI, par exemple l'exécution d'outils et la génération de réponses IA.
696 702
697**Attributs** :703**Attributs** :
698 704
703 Événements709 Événements
704</h3>710</h3>
705 711
706Claude Code exporte les événements suivants via les journaux/événements OpenTelemetry (lorsque `OTEL_LOGS_EXPORTER` est configuré) :712Claude Code exporte les événements suivants via les journaux/événements OpenTelemetry (quand `OTEL_LOGS_EXPORTER` est configuré) :
707 713
708<h4 id="event-correlation-attributes">714<h4 id="event-correlation-attributes">
709 Attributs de corrélation d'événements715 Attributs de corrélation d'événements
710</h4>716</h4>
711 717
712Lorsqu'un utilisateur soumet une invite, Claude Code peut effectuer plusieurs appels d'API et exécuter plusieurs outils. L'attribut `prompt.id` vous permet de lier tous ces événements à l'invite unique qui les a déclenchés.718Quand un utilisateur soumet une invite, Claude Code peut effectuer plusieurs appels API et exécuter plusieurs outils. L'attribut `prompt.id` vous permet de lier tous ces événements à l'invite unique qui les a déclenchés.
713 719
714| Attribut | Description |720| Attribut | Description |
715| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |721| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
716| `prompt.id` | Identifiant UUID v4 liant tous les événements produits lors du traitement d'une invite utilisateur unique |722| `prompt.id` | Identifiant UUID v4 liant tous les événements produits lors du traitement d'une invite utilisateur unique |
717| `event.sequence` | Compteur basé sur 0 pour ordonner les événements, compté par processus Claude Code plutôt que par session |723| `event.sequence` | Compteur basé sur 0 pour ordonner les événements, compté par processus Claude Code plutôt que par session |
718| `message.uuid` | UUID du message tel que conservé dans la transcription de session, les fichiers `~/.claude/projects/*/*.jsonl`. Présent sur `assistant_response`, sur `api_response_body`, et sur `user_prompt` sauf pour les dispatches de commande, qui peuvent produire zéro ou plusieurs messages. Sur `assistant_response` et `api_response_body`, c'est l'entrée de transcription finale de la réponse, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur, ou v2.1.274 ou ultérieur sur `api_response_body` |724| `message.uuid` | UUID du message tel que persisté dans la transcription de session, les fichiers `~/.claude/projects/*/*.jsonl`. Présent sur `assistant_response`, sur `api_response_body`, et sur `user_prompt` sauf pour les dispatches de commande, qui peuvent produire zéro ou plusieurs messages. Sur `assistant_response` et `api_response_body`, c'est l'entrée de transcription finale de la réponse, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur, ou v2.1.274 ou ultérieur sur `api_response_body` |
719| `client_request_id` | UUID généré par le client envoyé en tant qu'en-tête de demande `x-client-request-id`. Présent sur `api_request` et `api_error` sur les connexions d'API propriétaires ; absent sur les backends de fournisseurs tiers et lorsque la demande a été retentée via le fallback non-streaming. Associe une demande à sa réponse et reste disponible pour les défaillances telles que les délais d'expiration qui n'ont jamais produit de `request_id` serveur. Correspond au même attribut sur la plage de trace `llm_request`. Nécessite Claude Code v2.1.214 ou ultérieur |725| `client_request_id` | UUID généré par le client envoyé comme en-tête de demande `x-client-request-id`. Présent sur `api_request` et `api_error` sur les connexions API de première partie ; absent sur les backends de fournisseurs tiers et quand la demande a été retentée via le secours non-streaming. Associe une demande à sa réponse et reste disponible pour les défaillances telles que les délais d'expiration qui n'ont jamais produit un `request_id` serveur. Correspond au même attribut sur la plage de trace `llm_request`. Nécessite Claude Code v2.1.214 ou ultérieur |
720 726
721Pour tracer toute l'activité déclenchée par une invite unique, filtrez vos événements par une valeur `prompt.id` spécifique. Cela retourne l'événement user\_prompt, tous les événements api\_request, et tous les événements tool\_result qui se sont produits lors du traitement de cette invite.727Pour tracer toute l'activité déclenchée par une invite unique, filtrez vos événements par une valeur `prompt.id` spécifique. Cela retourne l'événement user\_prompt, tous les événements api\_request, et tous les événements tool\_result qui se sont produits lors du traitement de cette invite.
722 728
723`event.sequence` commence à 0 chaque fois qu'un processus Claude Code démarre et compte jusqu'à la fin de ce processus. Il continue de compter après `/clear`, qui attribue un nouveau `session.id`. Si vous [reprenez une session sans la forker](/docs/fr/how-claude-code-works#resume-or-fork-sessions), la session conserve son `session.id` mais prend ses valeurs `event.sequence` du processus qui l'a reprise, donc au sein d'une session un événement ultérieur peut porter une valeur inférieure à celle d'un événement antérieur, ou en répéter une. Pour ordonner les événements d'une session, triez par `event.timestamp` et utilisez `event.sequence` pour ordonner les événements qui partagent un horodatage.729`event.sequence` commence à 0 chaque fois qu'un processus Claude Code démarre et compte jusqu'à la fin de ce processus. Il continue de compter à travers `/clear`, qui assigne un nouveau `session.id`. Si vous [reprenez une session sans la forker](/docs/fr/how-claude-code-works#resume-or-fork-sessions), la session conserve son `session.id` mais prend ses valeurs `event.sequence` du processus qui l'a reprise, donc dans une session un événement ultérieur peut porter une valeur inférieure à celle d'un événement antérieur, ou en répéter une. Pour ordonner les événements d'une session, triez par `event.timestamp` et utilisez `event.sequence` pour ordonner les événements qui partagent un timestamp.
724 730
725Pour la reconstruction au niveau des messages, chaque classe d'événement porte une clé qui correspond à un champ dans la transcription de session. Le format d'entrée de transcription est [interne à Claude Code](/docs/fr/sessions#where-transcripts-are-stored) et change entre les versions, donc un pipeline qui joint sur ces champs peut se casser à chaque version ; traitez les jointures comme spécifiques à la version plutôt que comme un contrat stable :731Pour la reconstruction au niveau du message, chaque classe d'événement porte une clé qui correspond à un champ dans la transcription de session. Le format d'entrée de transcription est [interne à Claude Code](/docs/fr/sessions#where-transcripts-are-stored) et change entre les versions, donc un pipeline qui se joint sur ces champs peut se casser à chaque version ; traitez les jointures comme spécifiques à la version plutôt que comme un contrat stable :
726 732
727* `message.uuid` sur `user_prompt`, `assistant_response`, et `api_response_body`733* `message.uuid` sur `user_prompt`, `assistant_response`, et `api_response_body`
728* `request_id` sur les événements d'API, conservé comme `requestId` sur les entrées d'assistant de la transcription734* `request_id` sur les événements API, persisté comme `requestId` sur les entrées d'assistant de la transcription
729* `tool_use_id` sur les événements `tool_result` et `tool_decision`735* `tool_use_id` sur les événements `tool_result` et `tool_decision`
730 736
731<h4 id="user-prompt-event">737<h4 id="user-prompt-event">
732 Événement d'invite utilisateur738 Événement d'invite utilisateur
733</h4>739</h4>
734 740
735Enregistré lorsqu'un utilisateur soumet une invite.741Enregistré quand un utilisateur soumet une invite.
736 742
737**Nom de l'événement** : `claude_code.user_prompt`743**Nom de l'événement** : `claude_code.user_prompt`
738 744
740 746
741* Tous les [attributs standard](#standard-attributes)747* Tous les [attributs standard](#standard-attributes)
742* `event.name` : `"user_prompt"`748* `event.name` : `"user_prompt"`
743* `event.timestamp` : Horodatage ISO 8601749* `event.timestamp` : Timestamp ISO 8601
744* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)750* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
745* `prompt_length` : Longueur de l'invite751* `prompt_length` : Longueur de l'invite
746* `prompt` : Contenu de l'invite. Masqué par défaut. Définissez `OTEL_LOG_USER_PROMPTS=1` pour l'inclure752* `prompt` : Contenu de l'invite. Rédacté par défaut. Définissez `OTEL_LOG_USER_PROMPTS=1` pour l'inclure
747* `message.uuid` : UUID du message utilisateur résultant, correspondant à l'entrée de transcription conservée. Absent sur les dispatches de commande, qui peuvent produire zéro ou plusieurs messages. Nécessite Claude Code v2.1.214 ou ultérieur753* `message.uuid` : UUID du message utilisateur résultant, correspondant à l'entrée de transcription persistée. Absent sur les dispatches de commande, qui peuvent produire zéro ou plusieurs messages. Nécessite Claude Code v2.1.214 ou ultérieur
748* `command_name` : Nom de la commande lorsque l'invite en invoque une. Les noms de commandes intégrées et groupées tels que `compact` ou `debug` sont émis tels quels ; les alias tels que `reset` émettent tels que tapés plutôt que le nom canonique. Les noms de commandes personnalisées, de plugin et MCP s'effondrent en `custom` ou `mcp` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini754* `command_name` : Nom de la commande quand l'invite en invoque une. Les noms de commande intégrés et groupés tels que `compact` ou `debug` sont émis tels quels ; les alias tels que `reset` émettent tels que tapés plutôt que le nom canonique. Les noms de commande personnalisés, de plugins et MCP s'effondrent en `custom` ou `mcp` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini
749* `command_source` : Origine de la commande lorsqu'elle est présente : `builtin`, `custom`, ou `mcp`. Les commandes fournies par les plugins signalent comme `custom`755* `command_source` : Origine de la commande quand présente : `builtin`, `custom`, ou `mcp`. Les commandes fournies par les plugins signalent comme `custom`
750 756
751<h4 id="assistant-response-event">757<h4 id="assistant-response-event">
752 Événement de réponse d'assistant758 Événement de réponse d'assistant
753</h4>759</h4>
754 760
755Enregistré après chaque demande d'API qui retourne du contenu textuel du modèle. Seuls les blocs de texte de la réponse sont inclus ; les blocs de réflexion et les blocs d'utilisation d'outil sont exclus. Nécessite Claude Code v2.1.193 ou ultérieur.761Enregistré après chaque demande API qui retourne du contenu textuel du modèle. Seuls les blocs de texte de la réponse sont inclus ; les blocs de réflexion et les blocs d'utilisation d'outils sont exclus. Nécessite Claude Code v2.1.193 ou ultérieur.
756 762
757**Nom de l'événement** : `claude_code.assistant_response`763**Nom de l'événement** : `claude_code.assistant_response`
758 764
760 766
761* Tous les [attributs standard](#standard-attributes)767* Tous les [attributs standard](#standard-attributes)
762* `event.name` : `"assistant_response"`768* `event.name` : `"assistant_response"`
763* `event.timestamp` : Horodatage ISO 8601769* `event.timestamp` : Timestamp ISO 8601
764* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)770* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
765* `response_length` : Longueur du texte de réponse en caractères771* `response_length` : Longueur du texte de réponse en caractères
766* `response` : Texte de réponse, tronqué à la limite de contenu (60 Ko par défaut). Masqué à `<REDACTED>` par défaut. Définissez `OTEL_LOG_ASSISTANT_RESPONSES=1` pour l'inclure. Lorsque `OTEL_LOG_ASSISTANT_RESPONSES` n'est pas défini, `OTEL_LOG_USER_PROMPTS` le contrôle à la place, donc définissez `OTEL_LOG_ASSISTANT_RESPONSES=0` pour garder les réponses masquées tandis que la journalisation des invites est activée772* `response` : Texte de réponse, tronqué à la limite de contenu (60 Ko par défaut). Rédacté à `<REDACTED>` par défaut. Définissez `OTEL_LOG_ASSISTANT_RESPONSES=1` pour l'inclure. Quand `OTEL_LOG_ASSISTANT_RESPONSES` n'est pas défini, `OTEL_LOG_USER_PROMPTS` le contrôle à la place, donc définissez `OTEL_LOG_ASSISTANT_RESPONSES=0` pour garder les réponses rédactées tandis que la journalisation des invites est activée
767* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)773* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)
768* `request_id` : ID de demande d'API Anthropic de l'en-tête `request-id` de la réponse. Présent uniquement lorsque l'API en retourne un774* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse. Présent uniquement quand l'API en retourne un
769* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Une réponse d'API est conservée comme une entrée de transcription par bloc de contenu ; c'est la dernière, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur775* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Une réponse API est persistée comme une entrée de transcription par bloc de contenu ; c'est la dernière, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur
770* `query_source` : Sous-système qui a émis la demande, tel que `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent776* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent
771 777
772<h4 id="tool-result-event">778<h4 id="tool-result-event">
773 Événement de résultat d'outil779 Événement de résultat d'outil
774</h4>780</h4>
775 781
776Enregistré lorsqu'un outil termine son exécution. Non émis si l'appel d'outil a été rejeté ; voir l'[Événement de décision d'outil](#tool-decision-event) pour les rejets.782Enregistré quand un outil termine son exécution. Non émis si l'appel d'outil a été rejeté ; voir l'[événement de décision d'outil](#tool-decision-event) pour les rejets.
777 783
778**Nom de l'événement** : `claude_code.tool_result`784**Nom de l'événement** : `claude_code.tool_result`
779 785
781 787
782* Tous les [attributs standard](#standard-attributes)788* Tous les [attributs standard](#standard-attributes)
783* `event.name` : `"tool_result"`789* `event.name` : `"tool_result"`
784* `event.timestamp` : Horodatage ISO 8601790* `event.timestamp` : Timestamp ISO 8601
785* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)791* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
786* `tool_name` : Nom de l'outil792* `tool_name` : Nom de l'outil
787* `tool_use_id` : Identifiant unique pour cette invocation d'outil. Correspond au `tool_use_id` passé aux hooks, permettant la corrélation entre les événements OTel et les données capturées par les hooks.793* `tool_use_id` : Identifiant unique pour cette invocation d'outil. Correspond au `tool_use_id` passé aux hooks, permettant la corrélation entre les événements OTel et les données capturées par les hooks.
788* `success` : `"true"` ou `"false"`794* `success` : `"true"` ou `"false"`
789* `duration_ms` : Temps d'exécution en millisecondes795* `duration_ms` : Temps d'exécution en millisecondes
790* `error_type` : Chaîne de catégorie d'erreur lorsque l'outil a échoué, telle que `"Error:ENOENT"` ou `"ShellError"`796* `error_type` : Chaîne de catégorie d'erreur quand l'outil a échoué, par exemple `"Error:ENOENT"` ou `"ShellError"`
791* `error` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : Message d'erreur complet lorsque l'outil a échoué797* `error` (quand `OTEL_LOG_TOOL_DETAILS=1`) : Message d'erreur complet quand l'outil a échoué
792* `decision_type` : Toujours `"accept"`, puisque cet événement n'est émis qu'après l'exécution de l'outil. Les appels rejetés ne produisent pas de résultat d'outil798* `decision_type` : Toujours `"accept"`, puisque cet événement n'est émis qu'après l'exécution de l'outil. Les appels rejetés ne produisent pas de résultat d'outil
793* `decision_source` : Source de la décision de permission. L'un de `"config"`, `"hook"`, `"user_permanent"`, ou `"user_temporary"`. Voir l'[Événement de décision d'outil](#tool-decision-event) pour savoir ce que chaque valeur signifie. Les sources de rejet uniquement `"user_abort"` et `"user_reject"` n'apparaissent jamais sur cet événement.799* `decision_source` : D'où provient la décision de permission. L'une de `"config"`, `"hook"`, `"user_permanent"`, ou `"user_temporary"`. Voir l'[événement de décision d'outil](#tool-decision-event) pour ce que chaque valeur signifie. Les sources réservées au rejet `"user_abort"` et `"user_reject"` n'apparaissent jamais sur cet événement.
794* `tool_input_size_bytes` : Taille de l'entrée d'outil sérialisée en JSON en octets800* `tool_input_size_bytes` : Taille de l'entrée d'outil sérialisée en JSON en octets
795* `tool_result_size_bytes` : Taille du résultat de l'outil en octets801* `tool_result_size_bytes` : Taille du résultat d'outil en octets
796* `mcp_server_scope` : Identifiant de portée du serveur MCP (pour les outils MCP)802* `mcp_server_scope` : Identifiant de portée du serveur MCP (pour les outils MCP)
797* `vcs.ref.head.revision`, `vcs.ref.head.name`, `vcs.ref.head.type` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : l'identité du commit d'une exécution `git commit` réussie par l'outil Bash ou PowerShell. `vcs.ref.head.revision` est le SHA du commit, `vcs.ref.head.name` est la branche sur laquelle il a été commité, et `vcs.ref.head.type` est `branch`. Le nom et le type sont omis lorsque le commit a été effectué sur un HEAD détaché. Nécessite Claude Code v2.1.269 ou ultérieur803* `vcs.ref.head.revision`, `vcs.ref.head.name`, `vcs.ref.head.type` (quand `OTEL_LOG_TOOL_DETAILS=1`) : l'identité du commit d'une exécution `git commit` réussie par l'outil Bash ou PowerShell. `vcs.ref.head.revision` est le SHA du commit, `vcs.ref.head.name` est la branche sur laquelle il a été commité, et `vcs.ref.head.type` est `branch`. Le nom et le type sont omis quand le commit a été effectué sur un HEAD détaché. Nécessite Claude Code v2.1.269 ou ultérieur
798* `tool_parameters` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : Chaîne JSON contenant les paramètres spécifiques à l'outil. Pour les serveurs intégrés de Claude Desktop, dans les sessions que Claude Desktop possède, la paire `mcp_server_name`/`mcp_tool_name` est incluse même avec le drapeau désactivé, la même exception créée par l'hôte que l'[Événement de décision d'outil](#tool-decision-event), nécessitant Claude Code v2.1.214 ou ultérieur. Les paramètres varient selon l'outil :804* `tool_parameters` (quand `OTEL_LOG_TOOL_DETAILS=1`) : Chaîne JSON contenant les paramètres spécifiques à l'outil. Pour les serveurs intégrés de Claude Desktop, dans les sessions que Claude Desktop possède, la paire `mcp_server_name`/`mcp_tool_name` est incluse même avec le drapeau désactivé, la même exception créée par l'hôte que l'[événement de décision d'outil](#tool-decision-event), nécessitant Claude Code v2.1.214 ou ultérieur. Les paramètres varient selon l'outil :
799 * Pour l'outil Bash : inclut `bash_command`, `full_command`, `timeout`, `description`, `dangerouslyDisableSandbox`, et `git_commit_id` et `git_branch` lorsqu'une commande `git commit` réussit. `git_commit_id` est le SHA complet du commit lorsque le commit est le HEAD du répertoire de travail de la session, et le SHA abrégé de git sinon. `git_branch` est la branche sur laquelle il a été commité, omis sur un HEAD détaché805 * Pour l'outil Bash : inclut `bash_command`, `full_command`, `timeout`, `description`, et `dangerouslyDisableSandbox`, plus `git_commit_id` et `git_branch` quand une commande `git commit` réussit. `git_commit_id` est le SHA du commit complet quand le commit est le HEAD du répertoire de travail de la session, et le SHA abrégé de git sinon. `git_branch` est la branche sur laquelle il a été commité, omis sur un HEAD détaché
800 * Pour l'outil bash d'espace de travail de l'application de bureau, qui rapporte également `tool_name` comme `Bash` : inclut uniquement `bash_command`, `full_command`, et `timeout`806 * Pour l'outil Bash d'espace de travail de l'application de bureau, qui signale également `tool_name` comme `Bash` : inclut uniquement `bash_command`, `full_command`, et `timeout`
801 * Pour les outils MCP : inclut `mcp_server_name`, `mcp_tool_name`807 * Pour les outils MCP : inclut `mcp_server_name`, `mcp_tool_name`
802 * Pour l'outil Skill : inclut `skill_name`808 * Pour l'outil Skill : inclut `skill_name`
803 * Pour l'outil Agent ou l'outil Task hérité : inclut `subagent_type`809 * Pour l'outil Agent ou l'outil Task hérité : inclut `subagent_type`
804* `tool_input` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : Arguments d'outil sérialisés en JSON. Les valeurs individuelles dépassant 512 caractères sont tronquées, et la charge utile complète est limitée à environ 4 K caractères. S'applique à tous les outils, y compris les outils MCP.810* `tool_input` (quand `OTEL_LOG_TOOL_DETAILS=1`) : Arguments d'outil sérialisés en JSON. Les valeurs individuelles sur 512 caractères sont tronquées, et la charge utile complète est bornée à environ 4 K caractères. S'applique à tous les outils, y compris les outils MCP.
805 811
806<h4 id="api-request-event">812<h4 id="api-request-event">
807 Événement de demande d'API813 Événement de demande API
808</h4>814</h4>
809 815
810Enregistré pour chaque demande d'API à Claude.816Enregistré pour chaque demande API à Claude.
811 817
812**Nom de l'événement** : `claude_code.api_request`818**Nom de l'événement** : `claude_code.api_request`
813 819
815 821
816* Tous les [attributs standard](#standard-attributes)822* Tous les [attributs standard](#standard-attributes)
817* `event.name` : `"api_request"`823* `event.name` : `"api_request"`
818* `event.timestamp` : Horodatage ISO 8601824* `event.timestamp` : Timestamp ISO 8601
819* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)825* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
820* `model` : Modèle utilisé (par exemple, « claude-sonnet-5 »)826* `model` : Modèle utilisé (par exemple, « claude-sonnet-5 »)
821* `cost_usd` : Coût estimé en USD827* `cost_usd` : Coût estimé en USD
822* `cost_usd_micros` : Coût estimé en millionièmes de dollar américain, émis sous forme d'entier828* `cost_usd_micros` : Coût estimé en millionièmes de dollar américain, émis comme un entier
823* `duration_ms` : Durée de la demande en millisecondes829* `duration_ms` : Durée de la demande en millisecondes
824* `input_tokens` : Nombre de jetons d'entrée830* `input_tokens` : Nombre de jetons d'entrée
825* `output_tokens` : Nombre de jetons de sortie831* `output_tokens` : Nombre de jetons de sortie
826* `cache_read_tokens` : Nombre de jetons lus à partir du cache832* `cache_read_tokens` : Nombre de jetons lus du cache
827* `cache_creation_tokens` : Nombre de jetons utilisés pour la création du cache833* `cache_creation_tokens` : Nombre de jetons utilisés pour la création du cache
828* `request_id` : ID de demande d'API Anthropic de l'en-tête `request-id` de la réponse, tel que `"req_011..."`. Présent uniquement lorsque l'API en retourne un.834* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.
829* `client_request_id` : UUID généré par le client envoyé en tant qu'en-tête de demande `x-client-request-id` ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour savoir quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur835* `client_request_id` : UUID généré par le client envoyé comme en-tête de demande `x-client-request-id` ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur
830* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif836* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif
831* `query_source` : Sous-système qui a émis la demande, tel que `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent837* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent
832* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande : `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Absent lorsque le modèle ne supporte pas l'effort.838* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande : `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Absent quand Claude Code n'envoie aucun niveau d'effort, par exemple sur un modèle qui ne supporte pas l'effort.
833* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coûts](#cost-counter) pour les définitions et le comportement de masquage.839* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coût](#cost-counter) pour les définitions et le comportement de rédaction.
834 840
835<h4 id="api-error-event">841<h4 id="api-error-event">
836 Événement d'erreur d'API842 Événement d'erreur API
837</h4>843</h4>
838 844
839Enregistré lorsqu'une demande d'API à Claude échoue.845Enregistré quand une demande API à Claude échoue.
840 846
841**Nom de l'événement** : `claude_code.api_error`847**Nom de l'événement** : `claude_code.api_error`
842 848
844 850
845* Tous les [attributs standard](#standard-attributes)851* Tous les [attributs standard](#standard-attributes)
846* `event.name` : `"api_error"`852* `event.name` : `"api_error"`
847* `event.timestamp` : Horodatage ISO 8601853* `event.timestamp` : Timestamp ISO 8601
848* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)854* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
849* `model` : Modèle utilisé (par exemple, « claude-sonnet-5 »)855* `model` : Modèle utilisé (par exemple, « claude-sonnet-5 »)
850* `error` : Message d'erreur856* `error` : Message d'erreur
851* `status_code` : Code de statut HTTP sous forme de nombre. Absent pour les erreurs non-HTTP telles que les défaillances de connexion.857* `status_code` : Code de statut HTTP en tant que nombre. Absent pour les erreurs non-HTTP telles que les défaillances de connexion.
852* `duration_ms` : Durée de la demande en millisecondes858* `duration_ms` : Durée de la demande en millisecondes
853* `attempt` : Nombre total de tentatives effectuées, y compris la demande initiale (`1` signifie qu'aucune nouvelle tentative ne s'est produite)859* `attempt` : Nombre total de tentatives effectuées, y compris la demande initiale (`1` signifie qu'aucune nouvelle tentative ne s'est produite)
854* `request_id` : ID de demande d'API Anthropic de l'en-tête `request-id` de la réponse, tel que `"req_011..."`. Présent uniquement lorsque l'API en retourne un.860* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.
855* `client_request_id` : UUID généré par le client envoyé en tant qu'en-tête de demande `x-client-request-id`. Disponible même lorsqu'une défaillance telle qu'un délai d'expiration ou une erreur de connexion n'a jamais produit de `request_id` serveur ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour savoir quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur861* `client_request_id` : UUID généré par le client envoyé comme en-tête de demande `x-client-request-id`. Disponible même quand une défaillance telle qu'un délai d'expiration ou une erreur de connexion n'a jamais produit un `request_id` serveur ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur
856* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif862* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif
857* `query_source` : Sous-système qui a émis la demande, tel que `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent863* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent
858* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande. Absent lorsque le modèle ne supporte pas l'effort.864* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande. Absent quand Claude Code n'envoie aucun niveau d'effort, par exemple sur un modèle qui ne supporte pas l'effort.
859* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coûts](#cost-counter) pour les définitions et le comportement de masquage.865* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coût](#cost-counter) pour les définitions et le comportement de rédaction.
860 866
861<h4 id="api-refusal-event">867<h4 id="api-refusal-event">
862 Événement de refus d'API868 Événement de refus API
863</h4>869</h4>
864 870
865Enregistré lorsqu'une demande d'API retourne `stop_reason: "refusal"`. Les refus arrivent sur un flux de réponse réussi plutôt que comme une erreur HTTP, donc l'événement `api_error` ne se déclenche pas pour eux. Cet événement vous permet de suivre la fréquence des refus et de regrouper les refus par les mêmes attributs que `api_request` et `api_error`.871Enregistré quand une demande API retourne `stop_reason: "refusal"`. Les refus arrivent sur un flux de réponse réussi plutôt que comme une erreur HTTP, donc l'événement `api_error` ne se déclenche pas pour eux. Cet événement vous permet de suivre la fréquence des refus et de regrouper les refus par les mêmes attributs que `api_request` et `api_error`.
866 872
867**Nom de l'événement** : `claude_code.api_refusal`873**Nom de l'événement** : `claude_code.api_refusal`
868 874
870 876
871* Tous les [attributs standard](#standard-attributes)877* Tous les [attributs standard](#standard-attributes)
872* `event.name` : `"api_refusal"`878* `event.name` : `"api_refusal"`
873* `event.timestamp` : Horodatage ISO 8601879* `event.timestamp` : Timestamp ISO 8601
874* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)880* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
875* `model` : Identifiant du modèle de la demande881* `model` : Identifiant du modèle de la demande
876* `request_id` : ID de demande d'API Anthropic de l'en-tête `request-id` de la réponse, tel que `"req_011..."`. Présent uniquement lorsque l'API en retourne un.882* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.
877* `query_source` : Sous-système qui a émis la demande, tel que `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent. Voir [`api_request`](#api-request-event) pour les définitions.883* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent. Voir [`api_request`](#api-request-event) pour les définitions.
878* `speed` : Soit `"fast"` lorsque le [Mode rapide](/docs/fr/fast-mode) est actif, soit `"normal"`884* `speed` : Soit `"fast"` quand le [Mode rapide](/docs/fr/fast-mode) est actif, soit `"normal"`
879* `attempt` : Numéro de tentative de nouvelle tentative. La première tentative est `1`.885* `attempt` : Numéro de tentative de nouvelle tentative. La première tentative est `1`.
880* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande. Absent lorsque le modèle ne supporte pas l'effort.886* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande. Absent quand Claude Code n'envoie aucun niveau d'effort, par exemple sur un modèle qui ne supporte pas l'effort.
881* `server_fallback_hop` : `true` lorsque le basculement de modèle côté serveur de l'API a déjà réessayé ce refus sur un modèle différent, donc l'utilisateur n'a pas vu ce refus particulier. `false` lorsque la demande s'est terminée par un refus. Un seul tour peut émettre à la fois un événement `true` hop et un événement final `false` ultérieur lorsque le modèle de secours refuse également.887* `server_fallback_hop` : `true` quand le secours du modèle côté serveur de l'API a déjà retesté ce refus sur un modèle différent, donc l'utilisateur n'a pas vu ce refus particulier. `false` quand la demande s'est terminée par un refus. Un seul tour peut émettre à la fois un événement `true` hop et un événement `false` final ultérieur quand le modèle de secours refuse également.
882* `has_category` : `true` lorsque la réponse de l'API contenait une `stop_details.category` de `"cyber"`, `"bio"`, `"frontier_llm"`, ou `"reasoning_extraction"`. `false` lorsque la réponse ne contenait aucune catégorie ou une valeur en dehors de cet ensemble. Absent lorsque `server_fallback_hop` est `true`, car les blocs hop ne portent pas `stop_details`.888* `has_category` : `true` quand la réponse API portait une `stop_details.category` de `"cyber"`, `"bio"`, `"frontier_llm"`, ou `"reasoning_extraction"`. `false` quand la réponse ne portait aucune catégorie ou une valeur en dehors de cet ensemble. Absent quand `server_fallback_hop` est `true`, car les blocs hop ne portent pas `stop_details`.
883* `has_explanation` : `true` lorsque la réponse de l'API contenait une `stop_details.explanation`, sinon `false`. Absent lorsque `server_fallback_hop` est `true`.889* `has_explanation` : `true` quand la réponse API portait une `stop_details.explanation`, sinon `false`. Absent quand `server_fallback_hop` est `true`.
884* `category` : La valeur `stop_details.category` de la réponse de l'API. L'un de `"cyber"`, `"bio"`, `"frontier_llm"`, ou `"reasoning_extraction"`. Présent uniquement lorsque `OTEL_LOG_TOOL_DETAILS=1` est défini et `has_category` est `true`.890* `category` : La valeur `stop_details.category` de la réponse API. L'une de `"cyber"`, `"bio"`, `"frontier_llm"`, ou `"reasoning_extraction"`. Présent uniquement quand `OTEL_LOG_TOOL_DETAILS=1` est défini et `has_category` est `true`.
885* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coûts](#cost-counter) pour les définitions et le comportement de masquage.891* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name` : Attribution de compétence, plugin, agent et MCP pour la demande. Voir [Compteur de coût](#cost-counter) pour les définitions et le comportement de rédaction.
886 892
887<h4 id="api-request-body-event">893<h4 id="api-request-body-event">
888 Événement de corps de demande d'API894 Événement de corps de demande API
889</h4>895</h4>
890 896
891Enregistré pour chaque tentative de demande d'API lorsque `OTEL_LOG_RAW_API_BODIES` est défini. Un événement est émis par tentative, donc les nouvelles tentatives avec des paramètres ajustés produisent chacune leur propre événement.897Enregistré pour chaque tentative de demande API quand `OTEL_LOG_RAW_API_BODIES` est défini. Un événement est émis par tentative, donc les nouvelles tentatives avec des paramètres ajustés produisent chacune leur propre événement.
892 898
893**Nom de l'événement** : `claude_code.api_request_body`899**Nom de l'événement** : `claude_code.api_request_body`
894 900
896 902
897* Tous les [attributs standard](#standard-attributes)903* Tous les [attributs standard](#standard-attributes)
898* `event.name` : `"api_request_body"`904* `event.name` : `"api_request_body"`
899* `event.timestamp` : Horodatage ISO 8601905* `event.timestamp` : Timestamp ISO 8601
900* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)906* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
901* `body` : Paramètres de demande de l'API Messages sérialisés en JSON, tels que l'invite système, les messages et les outils, tronqués à la limite de contenu (60 Ko par défaut). Le contenu de la réflexion étendue dans les tours d'assistant antérieurs est masqué. Émis uniquement en mode en ligne (`OTEL_LOG_RAW_API_BODIES=1`).907* `body` : Paramètres de demande API Messages sérialisés en JSON, par exemple l'invite système, les messages et les outils, tronqués à la limite de contenu (60 Ko par défaut). Le contenu de réflexion étendue dans les tours d'assistant antérieurs est rédacté. Émis uniquement en mode en ligne (`OTEL_LOG_RAW_API_BODIES=1`).
902* `body_ref` : Chemin absolu vers un fichier `<dir>/<uuid>.request.json` contenant le corps non tronqué. Émis uniquement en mode fichier (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).908* `body_ref` : Chemin absolu vers un fichier `<dir>/<uuid>.request.json` contenant le corps non tronqué. Émis uniquement en mode fichier (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).
903* `body_length` : Longueur du corps non tronqué. Octets UTF-8 lorsque `OTEL_LOG_RAW_API_BODIES=file:<dir>`, ou unités de code UTF-16 lorsque `=1`909* `body_length` : Longueur du corps non tronqué. Octets UTF-8 quand `OTEL_LOG_RAW_API_BODIES=file:<dir>`, ou unités de code UTF-16 quand `=1`
904* `body_truncated` : `"true"` lorsque la troncature en ligne s'est produite. Absent en mode fichier et lorsqu'aucune troncature ne s'est produite.910* `body_truncated` : `"true"` quand la troncature en ligne s'est produite. Absent en mode fichier et quand aucune troncature ne s'est produite.
905* `model` : Identifiant du modèle à partir des paramètres de demande911* `model` : Identifiant du modèle à partir des paramètres de demande
906* `query_source` : Sous-système qui a émis la demande (par exemple, `"compact"`)912* `query_source` : Sous-système qui a émis la demande (par exemple, `"compact"`)
907* `request_body_id` : UUID qui identifie le corps de demande de cette tentative. L'[événement `api_response_body`](#api-response-body-event) pour la tentative qui réussit porte la même valeur, afin que vous puissiez associer une réponse à la demande exacte qui l'a produite. Nécessite Claude Code v2.1.274 ou ultérieur913* `request_body_id` : UUID qui identifie le corps de demande de cette tentative. L'[événement `api_response_body`](#api-response-body-event) pour la tentative qui réussit porte la même valeur, donc vous pouvez associer une réponse à la demande exacte qui l'a produite. Nécessite Claude Code v2.1.274 ou ultérieur
908 914
909<h4 id="api-response-body-event">915<h4 id="api-response-body-event">
910 Événement de corps de réponse d'API916 Événement de corps de réponse API
911</h4>917</h4>
912 918
913Enregistré pour chaque réponse d'API réussie lorsque `OTEL_LOG_RAW_API_BODIES` est défini.919Enregistré pour chaque réponse API réussie quand `OTEL_LOG_RAW_API_BODIES` est défini.
914 920
915En mode fichier (`OTEL_LOG_RAW_API_BODIES=file:<dir>`), Claude Code ajoute également une ligne JSON à `<dir>/index.jsonl` pour chaque réponse réussie, avec les champs `timestamp`, `session_id`, `query_source`, `model`, `request_id`, `message_id`, `message_uuid`, `request_file`, et `response_file`. Lisez-le pour trouver les fichiers de demande et de réponse derrière un message de transcription donné sans interroger votre backend de télémétrie. Le fichier d'index nécessite Claude Code v2.1.274 ou ultérieur.921En mode fichier (`OTEL_LOG_RAW_API_BODIES=file:<dir>`), Claude Code ajoute également une ligne JSON à `<dir>/index.jsonl` pour chaque réponse réussie, avec les champs `timestamp`, `session_id`, `query_source`, `model`, `request_id`, `message_id`, `message_uuid`, `request_file`, et `response_file`. Lisez-le pour trouver les fichiers de demande et de réponse derrière un message de transcription donné sans interroger votre backend de télémétrie. Le fichier d'index nécessite Claude Code v2.1.274 ou ultérieur.
916 922
920 926
921* Tous les [attributs standard](#standard-attributes)927* Tous les [attributs standard](#standard-attributes)
922* `event.name` : `"api_response_body"`928* `event.name` : `"api_response_body"`
923* `event.timestamp` : Horodatage ISO 8601929* `event.timestamp` : Timestamp ISO 8601
924* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)930* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
925* `body` : Réponse de l'API Messages sérialisée en JSON, incluant l'id, les blocs de contenu, l'utilisation et la raison d'arrêt, tronquée à la limite de contenu (60 Ko par défaut). Le contenu de la réflexion étendue est masqué. Émis uniquement en mode en ligne (`OTEL_LOG_RAW_API_BODIES=1`).931* `body` : Réponse API Messages sérialisée en JSON, y compris l'id, les blocs de contenu, l'utilisation et la raison d'arrêt, tronquée à la limite de contenu (60 Ko par défaut). Le contenu de réflexion étendue est rédacté. Émis uniquement en mode en ligne (`OTEL_LOG_RAW_API_BODIES=1`).
926* `body_ref` : Chemin absolu vers un fichier `<dir>/<request_id>.response.json` contenant le corps non tronqué. Émis uniquement en mode fichier (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).932* `body_ref` : Chemin absolu vers un fichier `<dir>/<request_id>.response.json` contenant le corps non tronqué. Émis uniquement en mode fichier (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).
927* `body_length` : Longueur du corps non tronqué. Octets UTF-8 lorsque `OTEL_LOG_RAW_API_BODIES=file:<dir>`, ou unités de code UTF-16 lorsque `=1`933* `body_length` : Longueur du corps non tronqué. Octets UTF-8 quand `OTEL_LOG_RAW_API_BODIES=file:<dir>`, ou unités de code UTF-16 quand `=1`
928* `body_truncated` : `"true"` lorsque la troncature en ligne s'est produite. Absent en mode fichier et lorsqu'aucune troncature ne s'est produite.934* `body_truncated` : `"true"` quand la troncature en ligne s'est produite. Absent en mode fichier et quand aucune troncature ne s'est produite.
929* `model` : Identifiant du modèle935* `model` : Identifiant du modèle
930* `query_source` : Sous-système qui a émis la demande936* `query_source` : Sous-système qui a émis la demande
931* `request_id` : ID de demande d'API Anthropic de l'en-tête `request-id` de la réponse, tel que `"req_011..."`. Présent uniquement lorsque l'API en retourne un.937* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.
932* `request_body_id` : Le `request_body_id` de l'[événement `api_request_body`](#api-request-body-event) auquel cette réponse répond. Nécessite Claude Code v2.1.274 ou ultérieur938* `request_body_id` : Le `request_body_id` de l'[événement `api_request_body`](#api-request-body-event) auquel cette réponse répond. Nécessite Claude Code v2.1.274 ou ultérieur
933* `message.id` : ID de message que l'API a attribué à la réponse, le champ `id` du corps de réponse. Nécessite Claude Code v2.1.274 ou ultérieur939* `message.id` : ID de message que l'API a assigné à la réponse, le champ `id` du corps de réponse. Nécessite Claude Code v2.1.274 ou ultérieur
934* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Avec `request_body_id`, il lie un message de transcription aux corps de demande et de réponse derrière lui. Nécessite Claude Code v2.1.274 ou ultérieur940* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Avec `request_body_id`, il lie un message de transcription aux corps de demande et de réponse derrière lui. Nécessite Claude Code v2.1.274 ou ultérieur
935 941
936<h4 id="tool-decision-event">942<h4 id="tool-decision-event">
937 Événement de décision d'outil943 Événement de décision d'outil
938</h4>944</h4>
939 945
940Enregistré lorsqu'une décision de permission d'outil est prise (accepter/rejeter).946Enregistré quand une décision de permission d'outil est prise (accepter/rejeter).
941 947
942**Nom de l'événement** : `claude_code.tool_decision`948**Nom de l'événement** : `claude_code.tool_decision`
943 949
945 951
946* Tous les [attributs standard](#standard-attributes)952* Tous les [attributs standard](#standard-attributes)
947* `event.name` : `"tool_decision"`953* `event.name` : `"tool_decision"`
948* `event.timestamp` : Horodatage ISO 8601954* `event.timestamp` : Timestamp ISO 8601
949* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)955* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
950* `tool_name` : Nom de l'outil (par exemple, « Read », « Edit », « Write », « NotebookEdit »)956* `tool_name` : Nom de l'outil (par exemple, « Read », « Edit », « Write », « NotebookEdit »)
951* `tool_use_id` : Identifiant unique pour cette invocation d'outil. Correspond au `tool_use_id` passé aux hooks, permettant la corrélation entre les événements OTel et les données capturées par les hooks.957* `tool_use_id` : Identifiant unique pour cette invocation d'outil. Correspond au `tool_use_id` passé aux hooks, permettant la corrélation entre les événements OTel et les données capturées par les hooks.
952* `decision` : Soit `"accept"` soit `"reject"`958* `decision` : Soit `"accept"` soit `"reject"`
953* `tool_source` : Toujours présent. La provenance de l'outil, en tant qu'ensemble fermé de valeurs créées par la CLI. Nécessite Claude Code v2.1.214 ou ultérieur959* `tool_source` : Toujours présent. La provenance de l'outil, comme un ensemble fermé de valeurs créées par l'interface de ligne de commande. Nécessite Claude Code v2.1.214 ou ultérieur
954 * `"builtin"` : les outils propres de la CLI960 * `"builtin"` : les outils de l'interface de ligne de commande elle-même
955 * `"mcp"` : serveurs MCP en général961 * `"mcp"` : serveurs MCP en général
956 * `"sdk_host_builtin_mcp"` : un serveur en processus intégré à Claude Desktop lui-même, dans une session que Claude Desktop possède. Claude Desktop possède une session qu'il a démarrée à partir de l'un de ses propres points d'entrée, `claude-desktop`, `claude-desktop-3p`, ou `local-agent`, lorsque cette session n'est pas un enfant imbriqué ; les sessions imbriquées, y compris les sessions que Claude Code lui-même génère, rapportent ces serveurs comme `"mcp"`962 * `"sdk_host_builtin_mcp"` : un serveur en processus intégré à Claude Desktop lui-même, dans une session que Claude Desktop possède. Claude Desktop possède une session qu'il a démarrée à partir de l'un de ses propres points d'entrée, `claude-desktop`, `claude-desktop-3p`, ou `local-agent`, quand cette session n'est pas un enfant imbriqué ; les sessions imbriquées, y compris les sessions que Claude Code lui-même génère, signalent ces serveurs comme `"mcp"`
957* `source` : Source de la décision :963* `source` : D'où provient la décision :
958 * `"config"` : Décidé automatiquement sans invite, basé sur les paramètres du projet, les règles d'autorisation ou de refus dans les paramètres personnels de l'utilisateur, la politique gérée par l'entreprise, les drapeaux `--allowedTools` ou `--disallowedTools`, le mode de permission actif, une autorisation limitée à la session d'une invite antérieure dans la même session CLI interactive, ou parce que l'outil est intrinsèquement sûr. L'événement n'indique pas laquelle de ces sources a correspondu. Claude Code rapporte également `"config"` lorsque la demande d'invite de permission elle-même échoue, par exemple lorsque le callback [`canUseTool`](/docs/fr/agent-sdk/typescript#canusetool) du SDK Agent ou l'outil [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) retourne un résultat invalide, ou lorsque le flux d'entrée se ferme pendant que la demande est en attente. Avant v2.1.216, Claude Code rapportait ces défaillances comme `"user_reject"`.964 * `"config"` : Décidé automatiquement sans invite, basé sur les paramètres du projet, les règles d'autorisation ou de refus dans les paramètres personnels de l'utilisateur, la politique gérée par l'entreprise, les drapeaux `--allowedTools` ou `--disallowedTools`, le mode de permission actif, une subvention à portée de session d'une invite antérieure dans la même session CLI interactive, ou parce que l'outil est intrinsèquement sûr. L'événement n'indique pas laquelle de ces sources a correspondu. Claude Code signale également `"config"` quand la demande d'invite de permission elle-même échoue, par exemple quand le rappel [`canUseTool`](/docs/fr/agent-sdk/typescript#canusetool) du SDK Agent ou l'outil [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) retourne un résultat invalide, ou quand le flux d'entrée se ferme tandis que la demande est en attente. Avant v2.1.216, Claude Code signalait ces défaillances comme `"user_reject"`.
959 * `"hook"` : Un hook `PreToolUse` ou `PermissionRequest` a retourné la décision.965 * `"hook"` : Un hook `PreToolUse` ou `PermissionRequest` a retourné la décision.
960 * `"user_permanent"` : Émis lorsque l'utilisateur a choisi « Oui, et ne me demande plus pour ... » à une invite de permission, ce qui enregistre une règle d'autorisation dans ses paramètres personnels. Dans la CLI interactive, ceci est émis uniquement pour ce choix lui-même ; les appels ultérieurs qui correspondent à la règle enregistrée émettent `"config"` à la place. Dans le SDK Agent ou les sessions `-p` non-interactives, à la fois le choix initial et les correspondances de règles ultérieures émettent `"user_permanent"`. Traité comme une acceptation.966 * `"user_permanent"` : Émis quand l'utilisateur a choisi « Oui, et ne me demande plus pour ... » à une invite de permission, ce qui enregistre une règle d'autorisation dans ses paramètres personnels. Dans l'interface de ligne de commande interactive, ceci n'est émis que pour ce choix lui-même ; les appels ultérieurs qui correspondent à la règle enregistrée émettent `"config"` à la place. Dans les sessions SDK Agent ou non-interactive `-p`, à la fois le choix initial et les correspondances de règles ultérieures émettent `"user_permanent"`. Traité comme une acceptation.
961 * `"user_temporary"` : Émis lorsque l'utilisateur a choisi « Oui » à une invite de permission pour une approbation unique, ou a choisi une option qui accorde l'accès pour le reste de la session sur une invite d'édition ou de lecture de fichier. Dans la CLI interactive, ceci est émis uniquement pour le choix lui-même ; les appels ultérieurs autorisés par cette autorisation limitée à la session émettent `"config"` à la place. Dans le SDK Agent ou les sessions `-p` non-interactives, à la fois le choix et les correspondances ultérieures émettent `"user_temporary"`. Traité comme une acceptation.967 * `"user_temporary"` : Émis quand l'utilisateur a choisi « Oui » à une invite de permission pour une approbation unique, ou a choisi une option qui accorde l'accès pour le reste de la session sur une invite d'édition ou de lecture de fichier. Dans l'interface de ligne de commande interactive, ceci n'est émis que pour le choix lui-même ; les appels ultérieurs autorisés par cette subvention à portée de session émettent `"config"` à la place. Dans les sessions SDK Agent ou non-interactive `-p`, à la fois le choix et les correspondances ultérieures émettent `"user_temporary"`. Traité comme une acceptation.
962 * `"user_abort"` : Émis lorsque l'utilisateur a fermé l'invite de permission sans répondre. Dans le SDK Agent et les sessions `-p` non-interactives, cela inclut l'interruption du tour pendant qu'une demande de permission `canUseTool` ou `--permission-prompt-tool` est en attente ; avant v2.1.216, Claude Code rapportait cette interruption comme `"user_reject"`. Traité comme un rejet.968 * `"user_abort"` : Émis quand l'utilisateur a fermé l'invite de permission sans répondre. Dans les sessions SDK Agent et non-interactive `-p`, ceci inclut l'interruption du tour tandis qu'une demande de permission `canUseTool` ou `--permission-prompt-tool` est en attente ; avant v2.1.216, Claude Code signalait cette interruption comme `"user_reject"`. Traité comme un rejet.
963 * `"user_reject"` : Émis lorsque l'utilisateur a choisi « Non » lorsqu'il a été invité. Dans la CLI interactive, ceci est émis uniquement pour ce choix lui-même ; les appels qui correspondent à une règle de refus dans les paramètres personnels de l'utilisateur émettent `"config"` à la place. Dans le SDK Agent ou les sessions `-p` non-interactives, les appels qui correspondent à une règle de refus dans les paramètres personnels émettent `"user_reject"`. Traité comme un rejet.969 * `"user_reject"` : Émis quand l'utilisateur a choisi « Non » quand invité. Dans l'interface de ligne de commande interactive, ceci n'est émis que pour ce choix lui-même ; les appels qui correspondent à une règle de refus dans les paramètres personnels de l'utilisateur émettent `"config"` à la place. Dans les sessions SDK Agent ou non-interactive `-p`, les appels qui correspondent à une règle de refus dans les paramètres personnels émettent `"user_reject"`. Traité comme un rejet.
964* `tool_parameters` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : Chaîne JSON contenant les paramètres spécifiques à l'outil. Même forme que l'[Événement de résultat d'outil](#tool-result-event), moins les champs post-exécution tels que `git_commit_id`. Les valeurs peuvent différer de `tool_result` pour un appel accepté si la décision de permission réécrit l'entrée d'outil via `updatedInput`. Utilisez cet attribut pour voir quelle commande a été rejetée lorsque `decision` est `"reject"`.970* `tool_parameters` (quand `OTEL_LOG_TOOL_DETAILS=1`) : Chaîne JSON contenant les paramètres spécifiques à l'outil. Même forme que l'[événement de résultat d'outil](#tool-result-event), moins les champs post-exécution tels que `git_commit_id`. Les valeurs peuvent différer de `tool_result` pour un appel accepté si la décision de permission réécrit l'entrée d'outil via `updatedInput`. Utilisez cet attribut pour voir quelle commande a été rejetée quand `decision` est `"reject"`.
965 * Pour les outils `"sdk_host_builtin_mcp"` : `mcp_server_name` et `mcp_tool_name` sont inclus même lorsque `OTEL_LOG_TOOL_DETAILS` est désactivé, car l'application hôte définit ces noms ; sans eux, un appel rejeté à l'un de ces serveurs intégrés serait non attribuable sur le flux par défaut. Pour les serveurs MCP configurés par l'utilisateur, le `tool_name` de l'événement est toujours le littéral `"mcp_tool"`, et les noms du serveur et de l'outil apparaissent uniquement dans `tool_parameters` avec le drapeau activé ; le contenu des arguments nécessite le drapeau partout. Nécessite Claude Code v2.1.214 ou ultérieur971 * Pour les outils `"sdk_host_builtin_mcp"` : `mcp_server_name` et `mcp_tool_name` sont inclus même quand `OTEL_LOG_TOOL_DETAILS` est désactivé, car l'application hôte définit ces noms ; sans eux, un appel rejeté à l'un de ces serveurs intégrés serait non attribuable sur le flux par défaut. Pour les serveurs MCP configurés par l'utilisateur, le `tool_name` de l'événement est toujours le littéral `"mcp_tool"`, et les noms du serveur et de l'outil n'apparaissent que dans `tool_parameters` avec le drapeau activé ; le contenu des arguments nécessite le drapeau partout. Nécessite Claude Code v2.1.214 ou ultérieur
966 * Pour l'outil Bash : inclut `bash_command`, `full_command`, `timeout`, `description`, `dangerouslyDisableSandbox`. L'outil bash d'espace de travail de l'application de bureau rapporte également `tool_name` comme `Bash`, mais inclut uniquement `bash_command`, `full_command`, et `timeout`972 * Pour l'outil Bash : inclut `bash_command`, `full_command`, `timeout`, `description`, `dangerouslyDisableSandbox`. L'outil bash d'espace de travail de l'application de bureau signale également `tool_name` comme `Bash`, mais inclut uniquement `bash_command`, `full_command`, et `timeout`
967 * Pour les outils MCP : inclut `mcp_server_name`, `mcp_tool_name`973 * Pour les outils MCP : inclut `mcp_server_name`, `mcp_tool_name`
968 * Pour l'outil Skill : inclut `skill_name`974 * Pour l'outil Skill : inclut `skill_name`
969 * Pour l'outil Agent ou l'outil Task hérité : inclut `subagent_type`975 * Pour l'outil Agent ou l'outil Task hérité : inclut `subagent_type`
972 Événement de changement de mode de permission978 Événement de changement de mode de permission
973</h4>979</h4>
974 980
975Enregistré lorsque le mode de permission change, par exemple à partir du cycle Shift+Tab, de la sortie du mode plan ou d'une vérification de porte en mode automatique.981Enregistré quand le mode de permission change, par exemple à partir du cycle Maj+Tab, de la sortie du mode plan, ou d'une vérification de porte en mode automatique.
976 982
977**Nom de l'événement** : `claude_code.permission_mode_changed`983**Nom de l'événement** : `claude_code.permission_mode_changed`
978 984
980 986
981* Tous les [attributs standard](#standard-attributes)987* Tous les [attributs standard](#standard-attributes)
982* `event.name` : `"permission_mode_changed"`988* `event.name` : `"permission_mode_changed"`
983* `event.timestamp` : Horodatage ISO 8601989* `event.timestamp` : Timestamp ISO 8601
984* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)990* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
985* `from_mode` : Le mode de permission précédent, par exemple `"default"`, `"plan"`, `"acceptEdits"`, `"auto"`, ou `"bypassPermissions"`991* `from_mode` : Le mode de permission précédent, par exemple `"default"`, `"plan"`, `"acceptEdits"`, `"auto"`, ou `"bypassPermissions"`
986* `to_mode` : Le nouveau mode de permission992* `to_mode` : Le nouveau mode de permission
987* `trigger` : Ce qui a causé le changement. L'un de `"shift_tab"`, `"exit_plan_mode"`, `"auto_gate_denied"`, ou `"auto_opt_in"`. Absent lorsque la transition provient du SDK ou du pont993* `trigger` : Ce qui a causé le changement. L'une de `"shift_tab"`, `"exit_plan_mode"`, `"auto_gate_denied"`, ou `"auto_opt_in"`. Absent quand la transition provient du SDK ou du pont
988 994
989<h4 id="auth-event">995<h4 id="auth-event">
990 Événement d'authentification996 Événement d'authentification
991</h4>997</h4>
992 998
993Enregistré lorsque `/login` ou `/logout` se termine.999Enregistré quand `/login` ou `/logout` se termine.
994 1000
995**Nom de l'événement** : `claude_code.auth`1001**Nom de l'événement** : `claude_code.auth`
996 1002
998 1004
999* Tous les [attributs standard](#standard-attributes)1005* Tous les [attributs standard](#standard-attributes)
1000* `event.name` : `"auth"`1006* `event.name` : `"auth"`
1001* `event.timestamp` : Horodatage ISO 86011007* `event.timestamp` : Timestamp ISO 8601
1002* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1008* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1003* `action` : `"login"` ou `"logout"`1009* `action` : `"login"` ou `"logout"`
1004* `success` : `"true"` ou `"false"`1010* `success` : `"true"` ou `"false"`
1005* `auth_method` : Méthode d'authentification, telle que `"oauth"`1011* `auth_method` : Méthode d'authentification, par exemple `"oauth"`
1006* `error_category` : Type d'erreur catégorique lorsque l'action a échoué. Le message d'erreur brut n'est jamais inclus1012* `error_category` : Type d'erreur catégorique quand l'action a échoué. Le message d'erreur brut n'est jamais inclus
1007* `status_code` : Code de statut HTTP sous forme de chaîne lorsque l'action a échoué avec une erreur HTTP1013* `status_code` : Code de statut HTTP en tant que chaîne quand l'action a échoué avec une erreur HTTP
1008 1014
1009<h4 id="mcp-server-connection-event">1015<h4 id="mcp-server-connection-event">
1010 Événement de connexion du serveur MCP1016 Événement de connexion du serveur MCP
1011</h4>1017</h4>
1012 1018
1013Enregistré lorsqu'un serveur MCP se connecte, se déconnecte ou échoue à se connecter.1019Enregistré quand un serveur MCP se connecte, se déconnecte, ou échoue à se connecter.
1014 1020
1015**Nom de l'événement** : `claude_code.mcp_server_connection`1021**Nom de l'événement** : `claude_code.mcp_server_connection`
1016 1022
1018 1024
1019* Tous les [attributs standard](#standard-attributes)1025* Tous les [attributs standard](#standard-attributes)
1020* `event.name` : `"mcp_server_connection"`1026* `event.name` : `"mcp_server_connection"`
1021* `event.timestamp` : Horodatage ISO 86011027* `event.timestamp` : Timestamp ISO 8601
1022* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1028* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1023* `status` : `"connected"`, `"failed"`, ou `"disconnected"`1029* `status` : `"connected"`, `"failed"`, ou `"disconnected"`
1024* `transport_type` : Transport du serveur, tel que `"stdio"`, `"sse"`, ou `"http"`1030* `transport_type` : Transport du serveur, par exemple `"stdio"`, `"sse"`, ou `"http"`
1025* `server_scope` : Portée à laquelle le serveur est configuré, telle que `"user"`, `"project"`, ou `"local"`1031* `server_scope` : Portée à laquelle le serveur est configuré, par exemple `"user"`, `"project"`, ou `"local"`
1026* `duration_ms` : Durée de la tentative de connexion en millisecondes1032* `duration_ms` : Durée de la tentative de connexion en millisecondes
1027* `error_code` : Code d'erreur lorsque la connexion a échoué1033* `error_code` : Code d'erreur quand la connexion a échoué
1028* `is_plugin` : `true` lorsque le serveur est fourni par un plugin, `false` sinon1034* `is_plugin` : `true` quand le serveur est fourni par un plugin, `false` sinon
1029* `plugin_id_hash` (lorsque `is_plugin` est `true`) : Hash stable du nom du plugin et de la place de marché, pour regrouper les événements par plugin sans exposer le nom. Claude Code le calcule comme décrit sous l'[événement de plugin chargé](#plugin-loaded-event)1035* `plugin_id_hash` (quand `is_plugin` est `true`) : Hash stable du nom du plugin et de la place de marché, pour regrouper les événements par plugin sans exposer le nom. Claude Code le calcule comme décrit sous l'[événement de plugin chargé](#plugin-loaded-event)
1030* `plugin.name` (lorsque `is_plugin` est `true`) : Nom du plugin qui fournit le serveur. Pour les plugins tiers, ceci est la chaîne littérale `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` ; cela protège les noms de plugins tiers d'apparaître dans les journaux par défaut. Les plugins provenant de sources officielles d'Anthropic sont toujours identifiés par nom. Les attributs `plugin_id_hash` et `plugin.name` circulent vers votre propre backend de surveillance et ne sont pas envoyés à Anthropic1036* `plugin.name` (quand `is_plugin` est `true`) : Nom du plugin qui fournit le serveur. Pour les plugins tiers, c'est la chaîne littérale `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` ; ceci protège les noms de plugins tiers d'apparaître dans les journaux par défaut. Les plugins de sources Anthropic officielles sont toujours identifiés par nom. Les attributs `plugin_id_hash` et `plugin.name` circulent vers votre propre backend de surveillance et ne sont pas envoyés à Anthropic
1031* `server_name` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : Nom du serveur configuré1037* `server_name` (quand `OTEL_LOG_TOOL_DETAILS=1`) : Nom du serveur configuré
1032* `error` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : Message d'erreur complet lorsque la connexion a échoué1038* `error` (quand `OTEL_LOG_TOOL_DETAILS=1`) : Message d'erreur complet quand la connexion a échoué
1033 1039
1034<h4 id="internal-error-event">1040<h4 id="internal-error-event">
1035 Événement d'erreur interne1041 Événement d'erreur interne
1036</h4>1042</h4>
1037 1043
1038Enregistré lorsque Claude Code détecte une erreur interne inattendue. Seul le nom de la classe d'erreur et un code de style errno sont enregistrés. Le message d'erreur et la trace de pile ne sont jamais inclus. Cet événement n'est pas émis lors de l'exécution sur Amazon Bedrock, Google Cloud's Agent Platform, ou Microsoft Foundry, ou lorsque `DISABLE_ERROR_REPORTING` est défini.1044Enregistré quand Claude Code capture une erreur interne inattendue. Seul le nom de la classe d'erreur et un code de style errno sont enregistrés. Le message d'erreur et la trace de pile ne sont jamais inclus. Cet événement n'est pas émis lors de l'exécution contre Amazon Bedrock, la plateforme d'agents de Google Cloud, ou Microsoft Foundry, ou quand `DISABLE_ERROR_REPORTING` est défini.
1039 1045
1040**Nom de l'événement** : `claude_code.internal_error`1046**Nom de l'événement** : `claude_code.internal_error`
1041 1047
1043 1049
1044* Tous les [attributs standard](#standard-attributes)1050* Tous les [attributs standard](#standard-attributes)
1045* `event.name` : `"internal_error"`1051* `event.name` : `"internal_error"`
1046* `event.timestamp` : Horodatage ISO 86011052* `event.timestamp` : Timestamp ISO 8601
1047* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1053* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1048* `error_name` : Nom de la classe d'erreur, tel que `"TypeError"` ou `"SyntaxError"`1054* `error_name` : Nom de la classe d'erreur, par exemple `"TypeError"` ou `"SyntaxError"`
1049* `error_code` : Code errno Node.js tel que `"ENOENT"` lorsqu'il est présent sur l'erreur1055* `error_code` : Code errno Node.js tel que `"ENOENT"` quand présent sur l'erreur
1050 1056
1051<h4 id="plugin-installed-event">1057<h4 id="plugin-installed-event">
1052 Événement de plugin installé1058 Événement de plugin installé
1053</h4>1059</h4>
1054 1060
1055Enregistré lorsqu'un plugin termine l'installation, à partir de la commande CLI `claude plugin install` et de l'interface utilisateur interactive `/plugin`.1061Enregistré quand un plugin termine son installation, à partir à la fois de la commande CLI `claude plugin install` et de l'interface utilisateur interactive `/plugin`.
1056 1062
1057**Nom de l'événement** : `claude_code.plugin_installed`1063**Nom de l'événement** : `claude_code.plugin_installed`
1058 1064
1060 1066
1061* Tous les [attributs standard](#standard-attributes)1067* Tous les [attributs standard](#standard-attributes)
1062* `event.name` : `"plugin_installed"`1068* `event.name` : `"plugin_installed"`
1063* `event.timestamp` : Horodatage ISO 86011069* `event.timestamp` : Timestamp ISO 8601
1064* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1070* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1065* `marketplace.is_official` : `"true"` si la place de marché est une place de marché officielle d'Anthropic, `"false"` sinon1071* `marketplace.is_official` : `"true"` si la place de marché est une place de marché officielle Anthropic, `"false"` sinon
1066* `install.trigger` : `"cli"` ou `"ui"`1072* `install.trigger` : `"cli"` ou `"ui"`
1067* `plugin.name` : Nom du plugin installé. Pour les places de marché tierces, ceci est inclus uniquement lorsque `OTEL_LOG_TOOL_DETAILS=1`1073* `plugin.name` : Nom du plugin installé. Pour les places de marché tiers, ceci n'est inclus que quand `OTEL_LOG_TOOL_DETAILS=1`
1068* `plugin.version` : Version du plugin lorsqu'elle est déclarée dans l'entrée de la place de marché. Pour les places de marché tierces, ceci est inclus uniquement lorsque `OTEL_LOG_TOOL_DETAILS=1`1074* `plugin.version` : Version du plugin quand déclarée dans l'entrée de la place de marché. Pour les places de marché tiers, ceci n'est inclus que quand `OTEL_LOG_TOOL_DETAILS=1`
1069* `marketplace.name` : Place de marché à partir de laquelle le plugin a été installé. Pour les places de marché tierces, ceci est inclus uniquement lorsque `OTEL_LOG_TOOL_DETAILS=1`1075* `marketplace.name` : Place de marché à partir de laquelle le plugin a été installé. Pour les places de marché tiers, ceci n'est inclus que quand `OTEL_LOG_TOOL_DETAILS=1`
1070 1076
1071<h4 id="plugin-loaded-event">1077<h4 id="plugin-loaded-event">
1072 Événement de plugin chargé1078 Événement de plugin chargé
1073</h4>1079</h4>
1074 1080
1075Enregistré une fois par plugin activé au démarrage de la session. Utilisez cet événement pour inventorier les plugins actifs dans votre flotte, en complément de `plugin_installed` qui enregistre l'action d'installation elle-même.1081Enregistré une fois par plugin activé au démarrage de la session. Utilisez cet événement pour inventorier quels plugins sont actifs dans votre flotte, en complément de `plugin_installed` qui enregistre l'action d'installation elle-même.
1076 1082
1077**Nom de l'événement** : `claude_code.plugin_loaded`1083**Nom de l'événement** : `claude_code.plugin_loaded`
1078 1084
1080 1086
1081* Tous les [attributs standard](#standard-attributes)1087* Tous les [attributs standard](#standard-attributes)
1082* `event.name` : `"plugin_loaded"`1088* `event.name` : `"plugin_loaded"`
1083* `event.timestamp` : Horodatage ISO 86011089* `event.timestamp` : Timestamp ISO 8601
1084* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1090* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1085* `plugin.name` : nom du plugin. Pour les plugins en dehors de la place de marché officielle et du bundle intégré, la valeur est `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1`1091* `plugin.name` : nom du plugin. Pour les plugins en dehors de la place de marché officielle et du bundle intégré, la valeur est `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1`
1086* `marketplace.name` : place de marché à partir de laquelle le plugin a été installé, lorsqu'elle est connue. Masquée à `"third-party"` sous la même condition que `plugin.name`1092* `marketplace.name` : place de marché à partir de laquelle le plugin a été installé, quand connue. Rédacté à `"third-party"` sous la même condition que `plugin.name`
1087* `plugin.version` : version du manifeste du plugin. Inclus uniquement lorsque le nom n'est pas masqué et que le manifeste déclare une version1093* `plugin.version` : version du manifeste du plugin. Inclus uniquement quand le nom n'est pas rédacté et que le manifeste déclare une version
1088* `plugin.scope` : catégorie de provenance du plugin : `"official"`, `"community"`, `"org"`, `"user-local"`, ou `"default-bundle"`1094* `plugin.scope` : catégorie de provenance pour le plugin : `"official"`, `"community"`, `"org"`, `"user-local"`, ou `"default-bundle"`
1089* `enabled_via` : comment le plugin en est venu à être activé : `"default-enable"`, `"org-policy"`, `"admin-install"`, `"seed-mount"`, ou `"user-install"`. La valeur `"admin-install"` signifie que le plugin est défini comme obligatoire ou auto-installation pour votre organisation dans [**Paramètres de l'organisation > Plugins**](https://claude.ai/admin-settings/plugins). Avant v2.1.246, Claude Code rapportait ces plugins comme `"user-install"` ou `"seed-mount"`1095* `enabled_via` : comment le plugin en est venu à être activé : `"default-enable"`, `"org-policy"`, `"admin-install"`, `"seed-mount"`, ou `"user-install"`. La valeur `"admin-install"` signifie que le plugin est défini comme obligatoire ou auto-installation pour votre organisation dans [**Paramètres de l'organisation > Plugins et compétences**](https://claude.ai/admin-settings/skills?tab=inventory). Avant v2.1.246, Claude Code signalait ces plugins comme `"user-install"` ou `"seed-mount"`
1090* `plugin_id_hash` : hash déterministe du nom du plugin et de la place de marché, envoyé uniquement à votre exportateur configuré. Vous permet de compter les plugins tiers distincts chargés dans votre flotte sans enregistrer leurs noms. Pour les [plugins synchronisés à partir de claude.ai](/docs/fr/plugins-reference#synced-plugins), Claude Code hache le nom du plugin avec le nom de la place de marché que claude.ai rapporte pour le plugin, ou avec `synced` sinon. Avant v2.1.246, Claude Code n'utilisait pas le nom de la place de marché que claude.ai rapporte dans le hash1096* `plugin_id_hash` : hash déterministe du nom du plugin et de la place de marché, envoyé uniquement à votre exportateur configuré. Vous permet de compter les plugins tiers distincts chargés dans votre flotte sans enregistrer leurs noms. Pour les [plugins synchronisés à partir de claude.ai](/docs/fr/plugins/loading#synced-plugins), Claude Code hache le nom du plugin avec le nom de la place de marché que claude.ai signale pour le plugin, ou avec `synced` sinon. Avant v2.1.246, Claude Code n'utilisait pas le nom de la place de marché que claude.ai signale dans le hash
1091* `has_hooks` : si le plugin contribue des hooks1097* `has_hooks` : si le plugin contribue des hooks
1092* `has_mcp` : si le plugin contribue des serveurs MCP1098* `has_mcp` : si le plugin contribue des serveurs MCP
1093* `host_owned_mcp` : `true` lorsque l'hôte SDK gère les connexions MCP de ce plugin et Claude Code a ignoré la lecture de la configuration du serveur MCP du plugin, `false` sinon. Nécessite Claude Code v2.1.172 ou ultérieur1099* `host_owned_mcp` : `true` quand l'hôte SDK gère les connexions MCP de ce plugin et Claude Code a ignoré la lecture de la configuration du serveur MCP du plugin, `false` sinon. Nécessite Claude Code v2.1.172 ou ultérieur
1094* `skill_path_count` : nombre de répertoires de compétences que le plugin déclare1100* `skill_path_count` : nombre de répertoires de compétences que le plugin déclare
1095* `command_path_count` : nombre de répertoires de commandes que le plugin déclare1101* `command_path_count` : nombre de répertoires de commandes que le plugin déclare
1096* `agent_path_count` : nombre de répertoires d'agents que le plugin déclare1102* `agent_path_count` : nombre de répertoires d'agents que le plugin déclare
1097* `safe_mode` : `"true"` lorsque la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. En mode sûr, cet événement rapporte l'inventaire configuré uniquement ; les commandes, compétences, hooks et serveurs MCP du plugin ne se chargent pas. Nécessite Claude Code v2.1.169 ou ultérieur1103* `safe_mode` : `"true"` quand la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. En mode sûr, cet événement signale uniquement l'inventaire configuré ; les commandes, compétences, hooks et serveurs MCP du plugin ne se chargent pas. Nécessite Claude Code v2.1.169 ou ultérieur
1098 1104
1099<h4 id="skill-activated-event">1105<h4 id="skill-activated-event">
1100 Événement de compétence activée1106 Événement de compétence activée
1101</h4>1107</h4>
1102 1108
1103Enregistré lorsqu'une compétence est invoquée, que Claude l'appelle via l'outil Skill ou que vous l'exécutiez en tant que commande `/`.1109Enregistré quand une compétence est invoquée, que Claude l'appelle via l'outil Skill ou que vous l'exécutiez en tant que commande `/`.
1104 1110
1105**Nom de l'événement** : `claude_code.skill_activated`1111**Nom de l'événement** : `claude_code.skill_activated`
1106 1112
1108 1114
1109* Tous les [attributs standard](#standard-attributes)1115* Tous les [attributs standard](#standard-attributes)
1110* `event.name` : `"skill_activated"`1116* `event.name` : `"skill_activated"`
1111* `event.timestamp` : Horodatage ISO 86011117* `event.timestamp` : Timestamp ISO 8601
1112* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1118* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1113* `skill.name` : Nom de la compétence. Pour les compétences définies par l'utilisateur et les compétences de plugin tiers, la valeur est l'espace réservé `"custom_skill"` sauf si `OTEL_LOG_TOOL_DETAILS=1`1119* `skill.name` : Nom de la compétence. Pour les compétences définies par l'utilisateur et les plugins tiers, la valeur est l'espace réservé `"custom_skill"` sauf si `OTEL_LOG_TOOL_DETAILS=1`
1114* `invocation_trigger` : Comment la compétence a été déclenchée (`"user-slash"`, `"claude-proactive"`, ou `"nested-skill"`)1120* `invocation_trigger` : Comment la compétence a été déclenchée (`"user-slash"`, `"claude-proactive"`, ou `"nested-skill"`)
1115* `skill.source` : D'où la compétence a été chargée (par exemple, `"bundled"`, `"userSettings"`, `"projectSettings"`, `"plugin"`)1121* `skill.source` : D'où la compétence a été chargée (par exemple, `"bundled"`, `"userSettings"`, `"projectSettings"`, `"plugin"`)
1116* `skill.kind` : `"workflow"` lorsque la compétence est une compétence de flux de travail. Absent sinon1122* `skill.kind` : `"workflow"` quand la compétence est une compétence de flux de travail. Absent sinon
1117* `plugin.name` (lorsque `OTEL_LOG_TOOL_DETAILS=1` ou le plugin provient d'une place de marché officielle) : Nom du plugin propriétaire lorsque la compétence est fournie par un plugin1123* `plugin.name` (quand `OTEL_LOG_TOOL_DETAILS=1` ou le plugin provient d'une place de marché officielle) : Nom du plugin propriétaire quand la compétence est fournie par un plugin
1118* `marketplace.name` (lorsque `OTEL_LOG_TOOL_DETAILS=1` ou le plugin provient d'une place de marché officielle) : Place de marché du plugin propriétaire, lorsque la compétence est fournie par un plugin1124* `marketplace.name` (quand `OTEL_LOG_TOOL_DETAILS=1` ou le plugin provient d'une place de marché officielle) : Place de marché à partir de laquelle le plugin propriétaire a été installé, quand la compétence est fournie par un plugin
1119 1125
1120<h4 id="at-mention-event">1126<h4 id="at-mention-event">
1121 Événement de mention @1127 Événement de mention @
1122</h4>1128</h4>
1123 1129
1124Enregistré lorsque Claude Code résout une mention `@` dans une invite. Pas chaque mention n'émet un événement : les chemins de sortie anticipée tels que les refus de permission, les fichiers surdimensionnés, les pièces jointes de référence PDF et les défaillances de listage de répertoires retournent sans enregistrement.1130Enregistré quand Claude Code résout une mention `@` dans une invite. Pas chaque mention n'émet un événement : les chemins de sortie anticipée tels que les refus de permission, les fichiers surdimensionnés, les pièces jointes de référence PDF et les défaillances de listage de répertoires retournent sans journalisation.
1125 1131
1126**Nom de l'événement** : `claude_code.at_mention`1132**Nom de l'événement** : `claude_code.at_mention`
1127 1133
1129 1135
1130* Tous les [attributs standard](#standard-attributes)1136* Tous les [attributs standard](#standard-attributes)
1131* `event.name` : `"at_mention"`1137* `event.name` : `"at_mention"`
1132* `event.timestamp` : Horodatage ISO 86011138* `event.timestamp` : Timestamp ISO 8601
1133* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1139* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1134* `mention_type` : Type de mention (`"file"`, `"directory"`, `"agent"`, `"mcp_resource"`, `"peer"`). La valeur `"peer"` signifie que vous avez mentionné [l'une de vos autres sessions Claude Code](/docs/fr/cross-session-messaging). Nécessite Claude Code v2.1.232 ou ultérieur1140* `mention_type` : Type de mention (`"file"`, `"directory"`, `"agent"`, `"mcp_resource"`, `"peer"`). La valeur `"peer"` signifie que vous avez mentionné [l'une de vos autres sessions Claude Code](/docs/fr/cross-session-messaging). Nécessite Claude Code v2.1.232 ou ultérieur
1135* `success` : Si la mention a été résolue avec succès (`"true"` ou `"false"`)1141* `success` : Si la mention a été résolue avec succès (`"true"` ou `"false"`)
1136 1142
1137<h4 id="api-retries-exhausted-event">1143<h4 id="api-retries-exhausted-event">
1138 Événement de tentatives d'API épuisées1144 Événement de nouvelles tentatives API épuisées
1139</h4>1145</h4>
1140 1146
1141Enregistré une fois lorsqu'une demande d'API échoue après plus d'une tentative. Émis aux côtés de l'événement `api_error` final.1147Enregistré une fois quand une demande API échoue après plus d'une tentative. Émis aux côtés de l'événement `api_error` final.
1142 1148
1143**Nom de l'événement** : `claude_code.api_retries_exhausted`1149**Nom de l'événement** : `claude_code.api_retries_exhausted`
1144 1150
1146 1152
1147* Tous les [attributs standard](#standard-attributes)1153* Tous les [attributs standard](#standard-attributes)
1148* `event.name` : `"api_retries_exhausted"`1154* `event.name` : `"api_retries_exhausted"`
1149* `event.timestamp` : Horodatage ISO 86011155* `event.timestamp` : Timestamp ISO 8601
1150* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1156* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1151* `model` : Modèle utilisé1157* `model` : Modèle utilisé
1152* `error` : Message d'erreur final1158* `error` : Message d'erreur final
1153* `status_code` : Code de statut HTTP sous forme de nombre. Absent pour les erreurs non-HTTP.1159* `status_code` : Code de statut HTTP en tant que nombre. Absent pour les erreurs non-HTTP.
1154* `total_attempts` : Nombre total de tentatives effectuées1160* `total_attempts` : Nombre total de tentatives effectuées
1155* `total_retry_duration_ms` : Temps mural total sur toutes les tentatives1161* `total_retry_duration_ms` : Temps mural total à travers toutes les tentatives
1156* `speed` : `"fast"` ou `"normal"`1162* `speed` : `"fast"` ou `"normal"`
1157 1163
1158<h4 id="hook-registered-event">1164<h4 id="hook-registered-event">
1159 Événement de hook enregistré1165 Événement de hook enregistré
1160</h4>1166</h4>
1161 1167
1162Enregistré une fois par hook configuré au démarrage de la session. Utilisez cet événement pour inventorier les hooks actifs dans votre flotte, en complément des événements `hook_execution_start` et `hook_execution_complete` par exécution.1168Enregistré une fois par hook configuré au démarrage de la session. Utilisez cet événement pour inventorier quels hooks sont actifs dans votre flotte, en complément des événements par exécution `hook_execution_start` et `hook_execution_complete`.
1163 1169
1164**Nom de l'événement** : `claude_code.hook_registered`1170**Nom de l'événement** : `claude_code.hook_registered`
1165 1171
1167 1173
1168* Tous les [attributs standard](#standard-attributes)1174* Tous les [attributs standard](#standard-attributes)
1169* `event.name` : `"hook_registered"`1175* `event.name` : `"hook_registered"`
1170* `event.timestamp` : Horodatage ISO 86011176* `event.timestamp` : Timestamp ISO 8601
1171* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1177* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1172* `hook_event` : type d'événement hook, tel que `"PreToolUse"` ou `"PostToolUse"`1178* `hook_event` : type d'événement hook, par exemple `"PreToolUse"` ou `"PostToolUse"`
1173* `hook_type` : type d'implémentation du hook : `"command"`, `"prompt"`, `"mcp_tool"`, `"http"`, ou `"agent"`1179* `hook_type` : type d'implémentation du hook : `"command"`, `"prompt"`, `"mcp_tool"`, `"http"`, ou `"agent"`
1174* `hook_source` : où le hook est défini : `"userSettings"`, `"projectSettings"`, `"localSettings"`, `"flagSettings"`, `"policySettings"`, ou `"pluginHook"`1180* `hook_source` : où le hook est défini : `"userSettings"`, `"projectSettings"`, `"localSettings"`, `"flagSettings"`, `"policySettings"`, ou `"pluginHook"`
1175* `safe_mode` : `"true"` lorsque la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. Nécessite Claude Code v2.1.169 ou ultérieur1181* `safe_mode` : `"true"` quand la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. Nécessite Claude Code v2.1.169 ou ultérieur
1176* `hook_matcher` (lorsque `OTEL_LOG_TOOL_DETAILS=1`) : la chaîne matcher de la configuration du hook, lorsqu'elle est définie1182* `hook_matcher` (quand `OTEL_LOG_TOOL_DETAILS=1`) : la chaîne de correspondance de la configuration du hook, quand une est définie
1177* `plugin.name` (lorsque `hook_source` est `"pluginHook"`) : nom du plugin contributeur. Pour les plugins en dehors de la place de marché officielle et du bundle intégré, la valeur est `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1`1183* `plugin.name` (quand `hook_source` est `"pluginHook"`) : nom du plugin contributeur. Pour les plugins en dehors de la place de marché officielle et du bundle intégré, la valeur est `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1`
1178* `plugin_id_hash` (lorsque `hook_source` est `"pluginHook"`) : hash déterministe du nom du plugin et de la place de marché, envoyé uniquement à votre exportateur configuré. Vous permet de compter les plugins contributeurs distincts sans enregistrer leurs noms. Claude Code le calcule comme décrit sous l'[événement de plugin chargé](#plugin-loaded-event)1184* `plugin_id_hash` (quand `hook_source` est `"pluginHook"`) : hash déterministe du nom du plugin et de la place de marché, envoyé uniquement à votre exportateur configuré. Vous permet de compter les plugins contributeurs distincts sans enregistrer leurs noms. Claude Code le calcule comme décrit sous l'[événement de plugin chargé](#plugin-loaded-event)
1179 1185
1180<h4 id="hook-execution-start-event">1186<h4 id="hook-execution-start-event">
1181 Événement de démarrage d'exécution de hook1187 Événement de début d'exécution de hook
1182</h4>1188</h4>
1183 1189
1184Enregistré lorsqu'un ou plusieurs hooks commencent à s'exécuter pour un événement de hook.1190Enregistré quand un ou plusieurs hooks commencent à s'exécuter pour un événement hook.
1185 1191
1186**Nom de l'événement** : `claude_code.hook_execution_start`1192**Nom de l'événement** : `claude_code.hook_execution_start`
1187 1193
1189 1195
1190* Tous les [attributs standard](#standard-attributes)1196* Tous les [attributs standard](#standard-attributes)
1191* `event.name` : `"hook_execution_start"`1197* `event.name` : `"hook_execution_start"`
1192* `event.timestamp` : Horodatage ISO 86011198* `event.timestamp` : Timestamp ISO 8601
1193* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1199* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1194* `hook_event` : Type d'événement hook, tel que `"PreToolUse"` ou `"PostToolUse"`1200* `hook_event` : Type d'événement hook, par exemple `"PreToolUse"` ou `"PostToolUse"`
1195* `hook_name` : Nom complet du hook incluant le matcher, tel que `"PreToolUse:Write"`1201* `hook_name` : Nom complet du hook incluant la correspondance, par exemple `"PreToolUse:Write"`
1196* `num_hooks` : Nombre de commandes hook correspondantes1202* `num_hooks` : Nombre de commandes hook correspondantes
1197* `managed_only` : `"true"` lorsque seuls les hooks de politique gérée sont autorisés1203* `managed_only` : `"true"` quand seuls les hooks de politique gérée sont autorisés
1198* `hook_source` : `"policySettings"` ou `"merged"`1204* `hook_source` : `"policySettings"` ou `"merged"`
1199* `safe_mode` : `"true"` lorsque la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. Nécessite Claude Code v2.1.169 ou ultérieur1205* `safe_mode` : `"true"` quand la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. Nécessite Claude Code v2.1.169 ou ultérieur
1200* `hook_definitions` : Configuration du hook sérialisée en JSON. Inclus uniquement lorsque le traçage bêta détaillé et `OTEL_LOG_TOOL_DETAILS=1` sont tous deux activés1206* `hook_definitions` : Configuration du hook sérialisée en JSON. Inclus uniquement quand le traçage bêta détaillé et `OTEL_LOG_TOOL_DETAILS=1` sont tous deux activés
1201 1207
1202<h4 id="hook-execution-complete-event">1208<h4 id="hook-execution-complete-event">
1203 Événement de fin d'exécution de hook1209 Événement de fin d'exécution de hook
1204</h4>1210</h4>
1205 1211
1206Enregistré lorsque tous les hooks pour un événement de hook ont terminé.1212Enregistré quand tous les hooks pour un événement hook ont terminé.
1207 1213
1208**Nom de l'événement** : `claude_code.hook_execution_complete`1214**Nom de l'événement** : `claude_code.hook_execution_complete`
1209 1215
1211 1217
1212* Tous les [attributs standard](#standard-attributes)1218* Tous les [attributs standard](#standard-attributes)
1213* `event.name` : `"hook_execution_complete"`1219* `event.name` : `"hook_execution_complete"`
1214* `event.timestamp` : Horodatage ISO 86011220* `event.timestamp` : Timestamp ISO 8601
1215* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1221* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1216* `hook_event` : Type d'événement hook1222* `hook_event` : Type d'événement hook
1217* `hook_name` : Nom complet du hook incluant le matcher1223* `hook_name` : Nom complet du hook incluant la correspondance
1218* `num_hooks` : Nombre de commandes hook correspondantes1224* `num_hooks` : Nombre de commandes hook correspondantes
1219* `num_success` : Nombre qui se sont terminées avec succès1225* `num_success` : Nombre qui ont terminé avec succès
1220* `num_blocking` : Nombre qui ont retourné une décision de blocage1226* `num_blocking` : Nombre qui ont retourné une décision de blocage
1221* `num_non_blocking_error` : Nombre qui ont échoué sans bloquer1227* `num_non_blocking_error` : Nombre qui ont échoué sans bloquer
1222* `num_cancelled` : Nombre annulé avant la fin1228* `num_cancelled` : Nombre annulé avant la fin
1223* `total_duration_ms` : Durée murale de tous les hooks correspondants1229* `total_duration_ms` : Durée mural de tous les hooks correspondants
1224* `stdout_chars` : Nombre total de caractères de stdout sur les hooks correspondants qui ont réussi. Nécessite Claude Code v2.1.280 ou ultérieur1230* `stdout_chars` : Nombre total de caractères de stdout à travers les hooks correspondants qui ont réussi. Nécessite Claude Code v2.1.280 ou ultérieur
1225* `additional_context_chars` : Nombre total de caractères de `additionalContext` retournés par les hooks correspondants. Nécessite Claude Code v2.1.280 ou ultérieur1231* `additional_context_chars` : Nombre total de caractères de `additionalContext` retournés par les hooks correspondants. Nécessite Claude Code v2.1.280 ou ultérieur
1226* `system_message_chars` : Nombre total de caractères de `systemMessage` retournés par les hooks correspondants. Nécessite Claude Code v2.1.280 ou ultérieur1232* `system_message_chars` : Nombre total de caractères de `systemMessage` retournés par les hooks correspondants. Nécessite Claude Code v2.1.280 ou ultérieur
1227* `initial_user_message_chars` : Nombre total de caractères de `initialUserMessage` retournés par les hooks correspondants. Nécessite Claude Code v2.1.280 ou ultérieur1233* `initial_user_message_chars` : Nombre total de caractères de `initialUserMessage` retournés par les hooks correspondants. Nécessite Claude Code v2.1.280 ou ultérieur
1228* `num_outputs_persisted` : Nombre de sorties de hook au-delà de la [limite de 10 000 caractères](/docs/fr/hooks#json-output) que Claude Code a enregistrées dans un fichier. Nécessite Claude Code v2.1.280 ou ultérieur1234* `num_outputs_persisted` : Nombre de sorties de hook au-delà de la [limite de 10 000 caractères](/docs/fr/hooks#json-output) que Claude Code a enregistrées dans un fichier. Nécessite Claude Code v2.1.280 ou ultérieur
1229* `managed_only` : `"true"` lorsque seuls les hooks de politique gérée sont autorisés1235* `managed_only` : `"true"` quand seuls les hooks de politique gérée sont autorisés
1230* `hook_source` : `"policySettings"` ou `"merged"`1236* `hook_source` : `"policySettings"` ou `"merged"`
1231* `safe_mode` : `"true"` lorsque la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. Nécessite Claude Code v2.1.169 ou ultérieur1237* `safe_mode` : `"true"` quand la session a été démarrée avec [`--safe-mode`](/docs/fr/cli-reference), `"false"` sinon. Nécessite Claude Code v2.1.169 ou ultérieur
1232* `hook_definitions` : Configuration du hook sérialisée en JSON. Inclus uniquement lorsque le traçage bêta détaillé et `OTEL_LOG_TOOL_DETAILS=1` sont tous deux activés1238* `hook_definitions` : Configuration du hook sérialisée en JSON. Inclus uniquement quand le traçage bêta détaillé et `OTEL_LOG_TOOL_DETAILS=1` sont tous deux activés
1233 1239
1234<h4 id="hook-plugin-metrics-event">1240<h4 id="hook-plugin-metrics-event">
1235 Événement de métriques de plugin hook1241 Événement de métriques de plugin de hook
1236</h4>1242</h4>
1237 1243
1238Enregistré lorsqu'un hook de plugin de place de marché officielle émet des métriques par invocation. Seuls les plugins installés à partir d'une place de marché officielle d'Anthropic peuvent émettre ces métriques. Les plugins de place de marché tiers et les hooks configurés par l'utilisateur n'émettent pas vers cet événement. Utilisez cet événement pour surveiller le comportement des plugins tels que les taux de découverte, les coûts et les durées à partir de votre propre pile d'observabilité.1244Enregistré quand un hook de plugin de la place de marché officielle émet des métriques par invocation. Seuls les plugins installés à partir d'une place de marché Anthropic officielle peuvent émettre ceci. Les plugins de place de marché tiers et les hooks configurés par l'utilisateur n'émettent pas vers cet événement. Utilisez cet événement pour surveiller le comportement du plugin, par exemple les taux de découverte, les coûts et les durées à partir de votre propre pile d'observabilité.
1239 1245
1240**Nom de l'événement** : `claude_code.hook_plugin_metrics`1246**Nom de l'événement** : `claude_code.hook_plugin_metrics`
1241 1247
1243 1249
1244* Tous les [attributs standard](#standard-attributes)1250* Tous les [attributs standard](#standard-attributes)
1245* `event.name` : `"hook_plugin_metrics"`1251* `event.name` : `"hook_plugin_metrics"`
1246* `event.timestamp` : Horodatage ISO 86011252* `event.timestamp` : Timestamp ISO 8601
1247* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1253* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1248* `plugin_id` : identifiant du plugin sous la forme `<name>@<marketplace>`1254* `plugin_id` : identifiant du plugin sous la forme `<name>@<marketplace>`
1249* `hook_event` : type d'événement hook qui a émis les métriques1255* `hook_event` : type d'événement hook qui a émis les métriques
1250* Jusqu'à 20 clés de métriques émises par le plugin. Les noms correspondent à `^[a-z][a-z0-9_]{0,39}$`. Les valeurs sont booléennes ou numériques.1256* Jusqu'à 20 clés de métriques émises par le plugin. Les noms correspondent à `^[a-z][a-z0-9_]{0,39}$`. Les valeurs sont booléennes ou numériques.
1253 Événement de compaction1259 Événement de compaction
1254</h4>1260</h4>
1255 1261
1256Enregistré lorsque la compaction de conversation se termine.1262Enregistré quand la compaction de conversation se termine.
1257 1263
1258**Nom de l'événement** : `claude_code.compaction`1264**Nom de l'événement** : `claude_code.compaction`
1259 1265
1261 1267
1262* Tous les [attributs standard](#standard-attributes)1268* Tous les [attributs standard](#standard-attributes)
1263* `event.name` : `"compaction"`1269* `event.name` : `"compaction"`
1264* `event.timestamp` : Horodatage ISO 86011270* `event.timestamp` : Timestamp ISO 8601
1265* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1271* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1266* `trigger` : `"auto"` ou `"manual"`1272* `trigger` : `"auto"` ou `"manual"`
1267* `success` : `"true"` ou `"false"`1273* `success` : `"true"` ou `"false"`
1268* `duration_ms` : Durée de la compaction1274* `duration_ms` : Durée de compaction
1269* `pre_tokens` : Nombre approximatif de jetons avant la compaction1275* `pre_tokens` : Nombre approximatif de jetons avant compaction
1270* `post_tokens` : Nombre approximatif de jetons après la compaction1276* `post_tokens` : Nombre approximatif de jetons après compaction
1271* `error` : Message d'erreur lorsque la compaction a échoué1277* `error` : Message d'erreur quand la compaction a échoué
1272* `precompute_reuse` : Défini uniquement lorsque `trigger` est `"manual"`. La compaction automatique peut préparer un résumé en arrière-plan avant que la fenêtre de contexte ne se remplisse, et cet attribut enregistre si `/compact` a réutilisé ce résumé préparé. `"hit"` signifie qu'il a été réutilisé ; `"miss_custom_instructions"`, `"miss_hook"`, et `"miss_not_ready"` donnent la raison pour laquelle un résumé frais a été calculé à la place. Nécessite Claude Code v2.1.153 ou ultérieur1278* `precompute_reuse` : Défini uniquement quand `trigger` est `"manual"`. La compaction automatique peut préparer un résumé en arrière-plan avant que la fenêtre de contexte se remplisse, et cet attribut enregistre si `/compact` a réutilisé ce résumé préparé. `"hit"` signifie qu'il a été réutilisé ; `"miss_custom_instructions"`, `"miss_hook"`, et `"miss_not_ready"` donnent la raison pour laquelle un résumé frais a été calculé à la place. Nécessite Claude Code v2.1.153 ou ultérieur
1273 1279
1274<h4 id="subagent-completed-event">1280<h4 id="subagent-completed-event">
1275 Événement de sous-agent complété1281 Événement de sous-agent terminé
1276</h4>1282</h4>
1277 1283
1278Enregistré lorsqu'un [sous-agent](/docs/fr/sub-agents) se termine et retourne son résultat à la conversation qui l'a démarré. Utilisez-le pour regrouper l'utilisation d'outils et le temps d'exécution par type de sous-agent ; pour les regroupements de jetons ou de coûts, utilisez le [compteur de jetons](#token-counter) et le [compteur de coûts](#cost-counter) filtrés sur `query_source` `"subagent"`, puisque le `total_tokens` de cet événement couvre uniquement la demande finale. La catégorie `"subagent"` compte également les demandes des hooks basés sur des agents, qui n'émettent aucun événement de sous-agent.1284Enregistré quand un [sous-agent](/docs/fr/sub-agents) se termine et retourne son résultat à la conversation qui l'a démarré. Utilisez-le pour cumuler l'utilisation d'outils et le temps d'exécution par type de sous-agent ; pour les cumuls de jetons ou de coûts, utilisez le [compteur de jetons](#token-counter) et le [compteur de coût](#cost-counter) filtrés sur `query_source` `"subagent"`, puisque le `total_tokens` de cet événement couvre uniquement la demande finale. La catégorie `"subagent"` compte également les demandes des hooks basés sur les agents, qui n'émettent aucun événement de sous-agent.
1279 1285
1280**Nom de l'événement** : `claude_code.subagent_completed`1286**Nom de l'événement** : `claude_code.subagent_completed`
1281 1287
1283 1289
1284* Tous les [attributs standard](#standard-attributes)1290* Tous les [attributs standard](#standard-attributes)
1285* `event.name` : `"subagent_completed"`1291* `event.name` : `"subagent_completed"`
1286* `event.timestamp` : Horodatage ISO 86011292* `event.timestamp` : Timestamp ISO 8601
1287* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1293* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1288* `agent_type` : Le type de sous-agent. Les noms d'agents intégrés et les agents des plugins de place de marché officielle apparaissent textuellement ; les autres noms d'agents sont remplacés par `"custom"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini1294* `agent_type` : Le type de sous-agent. Les noms d'agents intégrés et les agents des plugins de la place de marché officielle apparaissent textuellement ; les autres noms d'agents sont remplacés par `"custom"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini
1289* `agent.source` : D'où la définition d'agent provient : `built-in`, `plugin`, ou la source de paramètres qui a défini un agent personnalisé, telle que `userSettings` ou `projectSettings`1295* `agent.source` : D'où provient la définition de l'agent : `built-in`, `plugin`, ou la source de paramètres qui a défini un agent personnalisé, par exemple `userSettings` ou `projectSettings`
1290* `is_built_in` : Si le sous-agent est un type d'agent intégré1296* `is_built_in` : Si le sous-agent est un type d'agent intégré
1291* `is_async` : Si le sous-agent s'est exécuté en [arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background)1297* `is_async` : Si le sous-agent s'est exécuté en [arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background)
1292* `total_tokens` : L'empreinte de jetons de la demande d'API finale du sous-agent : les jetons d'entrée, de création de cache, de lecture de cache et de sortie de cette seule demande, approximativement la taille du contexte du sous-agent à la fin. Pas une somme sur l'exécution1298* `total_tokens` : L'empreinte de jeton de la demande API finale du sous-agent : les jetons d'entrée, de création de cache, de lecture de cache et de sortie de cette seule demande, à peu près la taille du contexte du sous-agent à la fin. Pas une somme à travers l'exécution
1293* `total_tool_uses` : Nombre d'appels d'outils que le sous-agent a effectués sur toute l'exécution1299* `total_tool_uses` : Nombre d'appels d'outils que le sous-agent a effectués à travers toute l'exécution
1294* `duration_ms` : Temps d'exécution en millisecondes1300* `duration_ms` : Temps d'exécution en millisecondes
1295* `model` : Le modèle auquel le sous-agent a été résolu pour s'exécuter1301* `model` : Le modèle auquel le sous-agent a été résolu pour s'exécuter
1296* `final_model` : Le modèle qui a produit la réponse finale du sous-agent, qui diffère de `model` après un changement en cours d'exécution tel qu'un fallback. Nécessite Claude Code v2.1.212 ou ultérieur1302* `final_model` : Le modèle qui a produit la réponse finale du sous-agent, qui diffère de `model` après un changement en cours d'exécution tel qu'un secours. Nécessite Claude Code v2.1.212 ou ultérieur
1297* `model_swapped` : Si plus d'un modèle a servi les demandes du sous-agent. Nécessite Claude Code v2.1.212 ou ultérieur1303* `model_swapped` : Si plus d'un modèle a servi les demandes du sous-agent. Nécessite Claude Code v2.1.212 ou ultérieur
1298* `plugin_id_hash`, `plugin.name` : Présent pour les agents fournis par des plugins. Les noms de plugins de place de marché officielle apparaissent textuellement ; les autres noms de plugins sont remplacés par `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini1304* `plugin_id_hash`, `plugin.name` : Présent pour les agents fournis par les plugins. Les noms de plugins de la place de marché officielle apparaissent textuellement ; les autres noms de plugins sont remplacés par `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini
1299 1305
1300<h4 id="feedback-survey-event">1306<h4 id="feedback-survey-event">
1301 Événement de sondage de rétroaction1307 Événement d'enquête de rétroaction
1302</h4>1308</h4>
1303 1309
1304Enregistré lorsqu'un sondage de qualité de session est affiché ou auquel il est répondu. Voir [Sondages de qualité de session](/docs/fr/data-usage#session-quality-surveys) pour savoir ce que les sondages collectent et comment les contrôler.1310Enregistré quand une enquête de qualité de session est affichée ou répondue. Voir [Enquêtes de qualité de session](/docs/fr/data-usage#session-quality-surveys) pour ce que les enquêtes collectent et comment les contrôler.
1305 1311
1306**Nom de l'événement** : `claude_code.feedback_survey`1312**Nom de l'événement** : `claude_code.feedback_survey`
1307 1313
1309 1315
1310* Tous les [attributs standard](#standard-attributes)1316* Tous les [attributs standard](#standard-attributes)
1311* `event.name` : `"feedback_survey"`1317* `event.name` : `"feedback_survey"`
1312* `event.timestamp` : Horodatage ISO 86011318* `event.timestamp` : Timestamp ISO 8601
1313* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1319* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1314* `event_type` : Événement du cycle de vie du sondage, par exemple `"appeared"`, `"responded"`, ou `"transcript_prompt_appeared"`1320* `event_type` : Événement du cycle de vie de l'enquête, par exemple `"appeared"`, `"responded"`, ou `"transcript_prompt_appeared"`
1315* `appearance_id` : ID unique liant les événements émis pour une instance de sondage1321* `appearance_id` : ID unique liant les événements émis pour une instance d'enquête
1316* `survey_type` : Quel sondage a produit l'événement. `"session"` est l'invite d'évaluation « Comment Claude se débrouille-t-il ? »1322* `survey_type` : Quelle enquête a produit l'événement. `"session"` est l'invite d'évaluation « Comment Claude se débrouille-t-il ? »
1317* `response` : La sélection de l'utilisateur sur les événements `responded`1323* `response` : La sélection de l'utilisateur sur les événements `responded`
1318* `enabled_via_override` : `true` lorsque [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/docs/fr/env-vars) est défini. Émis en tant que booléen, pas une chaîne. Présent sur les événements de sondage `session`. Filtrez sur cet attribut pour confirmer que le remplacement est appliqué dans votre flotte1324* `enabled_via_override` : `true` quand [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/docs/fr/env-vars) est défini. Émis comme un booléen, pas une chaîne. Présent sur les événements d'enquête `session`. Filtrez sur cet attribut pour confirmer que le remplacement est appliqué dans une flotte
1319 1325
1320<h4 id="retention-sweep-event">1326<h4 id="retention-sweep-event">
1321 Événement de balayage de rétention1327 Événement de balayage de rétention
1322</h4>1328</h4>
1323 1329
1324Enregistré une fois par exécution du balayage de nettoyage de rétention, qui supprime les [transcriptions de session et autres données d'application](/docs/fr/claude-directory#cleaned-up-automatically) plus anciennes que le paramètre [`cleanupPeriodDays`](/docs/fr/settings-reference#cleanupperioddays). Claude Code exécute le balayage en arrière-plan au maximum une fois par session, et une exécution qui ne supprime rien émet toujours l'événement. Si Claude Code a exécuté le balayage dans n'importe quelle session sur la même machine au cours des 24 dernières heures, il retarde le balayage de cette session d'au moins 10 minutes, donc une session qui se termine plus tôt n'émet rien. Lorsque vous exécutez `claude -p` avec `--bare`, Claude Code n'exécute pas le balayage et n'émet rien.1330Enregistré une fois par exécution du balayage de nettoyage de rétention, qui supprime les [transcriptions de session et autres données d'application](/docs/fr/claude-directory#cleaned-up-automatically) plus anciennes que le paramètre [`cleanupPeriodDays`](/docs/fr/settings-reference#cleanupperioddays). Claude Code exécute le balayage en arrière-plan au maximum une fois par session, et une exécution qui ne supprime rien émet quand même l'événement. Si Claude Code a exécuté le balayage dans n'importe quelle session sur la même machine au cours des 24 dernières heures, il retarde le balayage de cette session d'au moins 10 minutes, donc une session qui se termine plus tôt n'émet rien. Quand vous exécutez `claude -p` avec `--bare`, Claude Code n'exécute pas le balayage et n'émet rien.
1325 1331
1326Comme tous les événements OTel sur cette page, il va uniquement au backend de télémétrie que vous configurez. Nécessite Claude Code v2.1.227 ou ultérieur.1332Comme chaque événement OTel sur cette page, il va uniquement au backend de télémétrie que vous configurez. Nécessite Claude Code v2.1.227 ou ultérieur.
1327 1333
1328Lorsque Claude Code ne peut pas déterminer en toute sécurité la période de rétention, il met en pause le balayage et émet l'événement avec `result` défini à `"skipped"` et une `skip_reason`. Lorsque les [paramètres gérés](/docs/fr/server-managed-settings) définissent `cleanupPeriodDays`, la valeur gérée épingle la période de rétention et le balayage s'exécute même lorsqu'un fichier de paramètres dans une portée de priorité inférieure est cassé ou invalide. Lorsque `managed-settings.json` lui-même ne peut pas être lu, Claude Code met toujours en pause le balayage sauf si le [niveau géré](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) fournit `cleanupPeriodDays` d'ailleurs, tels que les paramètres gérés par serveur ou un drop-in `managed-settings.d/` à côté du fichier cassé. Les attributs du compteur de suppression sont présents uniquement lorsque `result` est `"complete"`.1334Quand Claude Code ne peut pas déterminer avec certitude la période de rétention, il met en pause le balayage et émet l'événement avec `result` défini à `"skipped"` et une `skip_reason`. Quand les [paramètres gérés](/docs/fr/server-managed-settings) définissent `cleanupPeriodDays`, la valeur gérée épingle la période de rétention et le balayage s'exécute même quand un fichier de paramètres dans une portée de priorité inférieure est cassé ou invalide. Quand `managed-settings.json` lui-même ne peut pas être lu, Claude Code met quand même en pause le balayage sauf si le [niveau géré](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) fournit `cleanupPeriodDays` d'ailleurs, par exemple les paramètres gérés par le serveur ou une suppression `managed-settings.d/` à côté du fichier cassé. Les attributs du compteur de suppression sont présents uniquement quand `result` est `"complete"`.
1329 1335
1330**Nom de l'événement** : `claude_code.retention_sweep`1336**Nom de l'événement** : `claude_code.retention_sweep`
1331 1337
1333 1339
1334* Tous les [attributs standard](#standard-attributes)1340* Tous les [attributs standard](#standard-attributes)
1335* `event.name` : `"retention_sweep"`1341* `event.name` : `"retention_sweep"`
1336* `event.timestamp` : Horodatage ISO 86011342* `event.timestamp` : Timestamp ISO 8601
1337* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1343* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1338* `result` : `"complete"` lorsque le balayage s'est exécuté, `"skipped"` lorsque Claude Code l'a mis en pause1344* `result` : `"complete"` quand le balayage s'est exécuté, `"skipped"` quand Claude Code l'a mis en pause
1339* `period_days` : La valeur `cleanupPeriodDays` des paramètres fusionnés, en jours, ou `30` lorsqu'aucune source ne la définit. Sur les événements ignorés, la valeur que le balayage aurait utilisée, calculée à partir des sources de paramètres que Claude Code a pu lire1345* `period_days` : La valeur `cleanupPeriodDays` des paramètres fusionnés, en jours, ou `30` quand aucune source ne la définit. Sur les événements ignorés, la valeur que le balayage aurait utilisée, calculée à partir des sources de paramètres que Claude Code a pu lire
1340* `used_default` : `"true"` lorsqu'aucune source de paramètres lisible ne définit `cleanupPeriodDays`, `"false"` sinon. Sur les événements complets, `"true"` signifie que la valeur par défaut de 30 jours s'appliquait1346* `used_default` : `"true"` quand aucune source de paramètres lisible ne définit `cleanupPeriodDays`, `"false"` sinon. Sur les événements complets, `"true"` signifie que la valeur par défaut de 30 jours s'appliquait
1341* `skip_reason` : Pourquoi Claude Code a mis en pause le balayage. Présent uniquement lorsque `result` est `"skipped"` :1347* `skip_reason` : Pourquoi Claude Code a mis en pause le balayage. Présent uniquement quand `result` est `"skipped"` :
1342 * `"user_source_disabled"` : Les paramètres utilisateur sont exclus, par exemple par le drapeau [`--setting-sources`](/docs/fr/cli-reference#cli-flags) ou l'option [`settingSources`](/docs/fr/agent-sdk/typescript#options) du SDK, et aucune source activée ne fournit `cleanupPeriodDays`1348 * `"user_source_disabled"` : Les paramètres utilisateur sont exclus, par exemple par le drapeau [`--setting-sources`](/docs/fr/cli-reference#cli-flags) ou l'option [`settingSources`](/docs/fr/agent-sdk/typescript#options) du SDK, et aucune source activée ne fournit `cleanupPeriodDays`
1343 * `"settings_unknowable"` : Un fichier de paramètres n'a pas pu être lu ou analysé, donc `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` peut être défini à une valeur que Claude Code ne peut pas voir1349 * `"settings_unknowable"` : Un fichier de paramètres n'a pas pu être lu ou analysé, donc `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` peut être défini à une valeur que Claude Code ne peut pas voir
1344 * `"settings_invalid_key_set"` : Les paramètres ont des erreurs de validation et `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` est explicitement défini, donc revenir à la valeur par défaut pourrait supprimer ou conserver des fichiers contre ce paramètre1350 * `"settings_invalid_key_set"` : Les paramètres ont des erreurs de validation et `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` est explicitement défini, donc revenir à la valeur par défaut pourrait supprimer ou conserver des fichiers contre ce paramètre
1345* `transcripts_deleted` : Nombre de transcriptions de session, les fichiers `~/.claude/projects/*/*.jsonl` de niveau supérieur, que le balayage a supprimés1351* `transcripts_deleted` : Nombre de transcriptions de session, les fichiers `~/.claude/projects/*/*.jsonl` de niveau supérieur, que le balayage a supprimés
1346* `transcripts_exempted_desktop` : Nombre de transcriptions au-delà de la période de rétention que le balayage a conservées selon la [règle Claude Desktop et Cowork](/docs/fr/claude-directory#cleaned-up-automatically). Celles-ci ne comptent pas vers `files_past_cutoff`. Nécessite Claude Code v2.1.248 ou ultérieur1352* `transcripts_exempted_desktop` : Nombre de transcriptions au-delà de la période de rétention que le balayage a conservées selon la [règle Claude Desktop et Cowork](/docs/fr/claude-directory#cleaned-up-automatically). Celles-ci ne comptent pas vers `files_past_cutoff`. Nécessite Claude Code v2.1.248 ou ultérieur
1347* `session_files_deleted` : Nombre d'artefacts que le balayage des fichiers de session a supprimés : transcriptions plus fichiers compagnons par session tels que les sidecars, les enregistrements et les résultats d'outils1353* `session_files_deleted` : Nombre d'artefacts que le balayage des fichiers de session a supprimés : transcriptions plus fichiers compagnons par session tels que les barres latérales, les enregistrements et les résultats d'outils
1348* `artifacts_deleted` : Nombre total d'éléments que le balayage a supprimés dans les répertoires de données qu'il couvre, y compris les fichiers de session. Certains balayages comptent un arborescence entière supprimée comme un élément et quelques passes de nettoyage ne contribuent pas au compteur, donc traitez la valeur comme un plancher plutôt qu'un nombre exact1354* `artifacts_deleted` : Nombre total d'éléments que le balayage a supprimés à travers les répertoires de données qu'il couvre, y compris les fichiers de session. Certains balayages comptent un arbre de répertoires supprimé entier comme un élément et quelques passes de nettoyage ne contribuent pas au compteur, donc traitez la valeur comme un plancher plutôt qu'un nombre de fichiers exact
1349* `files_retained_fresh` : Fichiers inspectés et laissés en place car ils sont toujours dans la période de rétention. Seuls les balayages par fichier comptent ceux-ci, donc la valeur est un plancher ; une valeur non nulle est l'état stable normal1355* `files_retained_fresh` : Fichiers inspectés et laissés en place car ils sont toujours dans la période de rétention. Seuls les balayages par fichier comptent ceux-ci, donc la valeur est un plancher ; une valeur non nulle est l'état stable normal
1350* `files_past_cutoff` : Fichiers plus anciens que la période de rétention que le balayage n'a pas pu supprimer, par exemple en raison d'une erreur de permission ou d'un fichier maintenu ouvert. Une valeur supérieure à zéro signifie que les fichiers ont dépassé la période de rétention configurée ; zéro n'est pas la preuve qu'aucun ne l'a fait, car une suppression échouée d'un répertoire entier compte vers `error_count` à la place1356* `files_past_cutoff` : Fichiers plus anciens que la période de rétention que le balayage n'a pas pu supprimer, par exemple en raison d'une erreur de permission ou d'un fichier maintenu ouvert. Une valeur supérieure à zéro signifie que les fichiers ont dépassé la période de rétention configurée ; zéro n'est pas la preuve qu'aucun ne l'a fait, car une suppression échouée d'un répertoire entier compte vers `error_count` à la place
1351* `error_count` : Nombre d'erreurs que le balayage a rencontrées lors de la liste ou de la suppression de fichiers1357* `error_count` : Nombre d'erreurs que le balayage a rencontrées lors de la liste ou de la suppression de fichiers
1354 Événement de paramètres gérés résolus1360 Événement de paramètres gérés résolus
1355</h4>1361</h4>
1356 1362
1357Enregistré avec les [paramètres gérés](/docs/fr/managed-settings) qu'une session a résolus : une fois au démarrage de la session, à nouveau lorsque les paramètres gérés ou l'état de l'[assistant de politique](/docs/fr/managed-settings#compute-the-policy-with-a-helper-program) change pendant la session, et lorsque Claude Code refuse de démarrer ou termine la session pour l'une des raisons que l'attribut `error.type` énumère.1363Enregistré avec les [paramètres gérés](/docs/fr/managed-settings) qu'une session a résolus : une fois au démarrage de la session, à nouveau quand soit les paramètres gérés soit l'état de l'[assistant de politique](/docs/fr/managed-settings#compute-the-policy-with-a-helper-program) change pendant la session, et quand Claude Code refuse de démarrer ou termine la session pour l'une des raisons que l'attribut `error.type` liste.
1358Utilisez cet événement pour trouver les machines exécutées sur une source gérée inattendue, les machines dont l'assistant de politique échoue, et la raison pour laquelle une machine a refusé de démarrer.1364Utilisez cet événement pour trouver les machines exécutées sur une source gérée inattendue, les machines dont l'assistant de politique échoue, et la raison pour laquelle une machine a refusé de démarrer.
1359Nécessite Claude Code v2.1.274 ou ultérieur.1365Nécessite Claude Code v2.1.274 ou ultérieur.
1360 1366
1361Par défaut, l'événement porte les sources gérées et l'état de l'assistant de politique mais pas les paramètres eux-mêmes. Pour ajouter l'attribut `managed_settings.settings` masqué et le digest `managed_settings.resolved_sha256`, définissez `OTEL_LOG_MANAGED_SETTINGS=1` :1367Par défaut, l'événement porte les sources gérées et l'état de l'assistant de politique mais pas les paramètres eux-mêmes. Pour ajouter l'attribut `managed_settings.settings` rédacté et le digest `managed_settings.resolved_sha256`, définissez `OTEL_LOG_MANAGED_SETTINGS=1` :
1362 1368
1363* Définissez-le dans le bloc `env` des paramètres gérés, des paramètres utilisateur, ou `--settings`, ou dans l'environnement avec lequel vous lancez Claude Code. Une valeur dans les paramètres de projet ou locaux ne l'active pas, car un référentiel cloné peut les écrire.1369* Définissez-le dans le bloc `env` des paramètres gérés, des paramètres utilisateur, ou `--settings`, ou dans l'environnement avec lequel vous lancez Claude Code. Une valeur dans les paramètres du projet ou locaux ne l'active pas, car un référentiel cloné peut les écrire.
1364* Les paramètres gérés par serveur peuvent le définir sans afficher la [boîte de dialogue d'approbation de sécurité](/docs/fr/server-managed-settings#security-approval-dialogs), car la variable ajoute uniquement votre propre politique masquée de l'organisation à un événement que votre organisation reçoit déjà.1370* Les paramètres gérés par le serveur peuvent le définir sans afficher la [boîte de dialogue d'approbation de sécurité](/docs/fr/server-managed-settings#security-approval-dialogs), car la variable ajoute uniquement votre propre politique rédactée de l'organisation à un événement que votre organisation reçoit déjà.
1365 1371
1366Dans une session interactive dans un dossier que vous n'avez pas [approuvé](/docs/fr/permissions#what-runs-before-you-trust-a-folder), Claude Code n'exporte pas l'événement de refus, car les paramètres de projet et locaux pourraient pointer l'exportation vers un collecteur différent avant l'approbation.1372Dans une session interactive dans un dossier que vous n'avez pas [approuvé](/docs/fr/permissions#what-runs-before-you-trust-a-folder), Claude Code n'exporte pas l'événement de refus.
1367 1373
1368**Nom de l'événement** : `claude_code.managed_settings_resolved`1374**Nom de l'événement** : `claude_code.managed_settings_resolved`
1369 1375
1371 1377
1372* Tous les [attributs standard](#standard-attributes)1378* Tous les [attributs standard](#standard-attributes)
1373* `event.name` : `"managed_settings_resolved"`1379* `event.name` : `"managed_settings_resolved"`
1374* `event.timestamp` : Horodatage ISO 86011380* `event.timestamp` : Timestamp ISO 8601
1375* `event.sequence` : Compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)1381* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)
1376* `managed_settings.trigger` : `"startup"` pour l'événement de démarrage de session, `"change"` lorsque les paramètres gérés ou l'état de l'assistant de politique ont changé plus tard dans la session, ou `"refused"` lorsqu'une politique de paramètres gérés a arrêté la session. Claude Code envoie un événement `change` uniquement lorsqu'un attribut diffère du dernier événement qu'il a envoyé, et une valeur de paramètre modifiée compte même lorsque `OTEL_LOG_MANAGED_SETTINGS` est désactivé1382* `managed_settings.trigger` : `"startup"` pour l'événement de démarrage de session, `"change"` quand les paramètres gérés ou l'état de l'assistant de politique ont changé plus tard dans la session, ou `"refused"` quand une politique de paramètres gérés a arrêté la session. Claude Code envoie un événement `change` uniquement quand un attribut diffère du dernier événement qu'il a envoyé, et une valeur de paramètre modifiée compte même quand `OTEL_LOG_MANAGED_SETTINGS` est désactivé
1377* `error.type` : pourquoi Claude Code a arrêté la session. Présent uniquement sur les événements `refused` :1383* `error.type` : pourquoi Claude Code a arrêté la session. Présent uniquement sur les événements `refused` :
1378 * `"helper_failed"` : une [exécution d'assistant de politique a échoué](/docs/fr/settings-reference#helper-failures)1384 * `"helper_failed"` : une [exécution d'assistant de politique a échoué](/docs/fr/settings-reference#helper-failures)
1379 * `"policy_invalid"` : les paramètres gérés contiennent une erreur qui empêche Claude Code de démarrer, ou une source d'administration n'a pas pu être chargée, donc Claude Code ne peut pas vérifier l'application de la connexion à l'organisation1385 * `"policy_invalid"` : les paramètres gérés contiennent une erreur qui arrête Claude Code de démarrer, ou une source d'administration n'a pas pu se charger, donc Claude Code ne peut pas vérifier l'application de la connexion de l'organisation
1380 * `"consent_rejected"` : l'utilisateur a rejeté la [boîte de dialogue d'approbation de sécurité](/docs/fr/server-managed-settings#security-approval-dialogs) pour les paramètres gérés par serveur1386 * `"consent_rejected"` : l'utilisateur a rejeté la [boîte de dialogue d'approbation de sécurité](/docs/fr/server-managed-settings#security-approval-dialogs) pour les paramètres gérés par le serveur
1381 * `"force_refresh_failed"` : la récupération de paramètres que [`forceRemoteSettingsRefresh`](/docs/fr/settings-reference#forceremotesettingsrefresh) nécessite a échoué1387 * `"force_refresh_failed"` : l'extraction de paramètres que [`forceRemoteSettingsRefresh`](/docs/fr/settings-reference#forceremotesettingsrefresh) nécessite a échoué
1382 * `"gateway_rejected"` : une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) a répondu au chargement des paramètres gérés avec HTTP 4031388 * `"gateway_rejected"` : une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) a répondu au chargement des paramètres gérés avec HTTP 403
1383 * `"version_below_minimum"` : cette version de Claude Code est inférieure à [`requiredMinimumVersion`](/docs/fr/settings-reference#requiredminimumversion) ou supérieure à [`requiredMaximumVersion`](/docs/fr/settings-reference#requiredmaximumversion)1389 * `"version_below_minimum"` : cette version de Claude Code est en dessous de [`requiredMinimumVersion`](/docs/fr/settings-reference#requiredminimumversion) ou au-dessus de [`requiredMaximumVersion`](/docs/fr/settings-reference#requiredmaximumversion)
1384 * `"_OTHER"` : le chargement des paramètres gérés de la passerelle d'applications Claude a échoué pour une autre raison1390 * `"_OTHER"` : le chargement des paramètres gérés de la passerelle d'applications Claude a échoué pour une autre raison
1385* `managed_settings.sources` : chaque source gérée qui fournit au moins une [clé de politique](/docs/fr/managed-settings#how-claude-code-combines-managed-sources), priorité la plus élevée en premier, y compris les sources dont les clés ne prennent pas effet sous `first-wins`. Les valeurs sont `"remote"`, `"plist"` ou `"hklm"` pour la politique MDM ou au niveau du système d'exploitation, `"file"` pour les fichiers de paramètres gérés et les drop-ins, `"parent"` lorsqu'un [hôte d'intégration](/docs/fr/managed-settings#let-an-embedding-host-add-policy) fournit des paramètres, et `"hkcu"` pour la [valeur de registre Windows HKCU](/docs/fr/managed-settings#where-each-mechanism-stores-the-policy) lorsque Claude Code la [lit](/docs/fr/managed-settings#how-claude-code-combines-managed-sources). Une source qui porte uniquement des clés de contrôle, ou que Claude Code n'a pas pu lire, n'est pas énumérée. Émis en tant que tableau de chaînes, vide lorsqu'aucune source gérée ne fournit une clé de politique1391* `managed_settings.sources` : chaque source gérée qui fournit au moins une [clé de politique](/docs/fr/managed-settings#how-claude-code-combines-managed-sources), priorité la plus élevée en premier, y compris les sources dont les clés ne prennent pas effet sous `first-wins`. Les valeurs sont `"remote"`, `"plist"` ou `"hklm"` pour la politique MDM ou au niveau du système d'exploitation, `"file"` pour les fichiers de paramètres gérés et les suppressions, `"parent"` quand un [hôte d'intégration](/docs/fr/managed-settings#let-an-embedding-host-add-policy) fournit des paramètres, et `"hkcu"` pour la [valeur du registre Windows HKCU](/docs/fr/managed-settings#where-each-mechanism-stores-the-policy) quand Claude Code la [lit](/docs/fr/managed-settings#how-claude-code-combines-managed-sources). Une source qui porte uniquement des clés de contrôle, ou que Claude Code n'a pas pu lire, n'est pas listée. Émis comme un tableau de chaînes, vide quand aucune source gérée ne fournit une clé de politique
1386* `managed_settings.source_behavior` : la valeur [`managedSourcesBehavior`](/docs/fr/settings-reference#managedsourcesbehavior) que Claude Code a lue, `"first-wins"` ou `"merge"`. `"first-wins"` lorsqu'aucune source ne définit la clé1392* `managed_settings.source_behavior` : la valeur [`managedSourcesBehavior`](/docs/fr/settings-reference#managedsourcesbehavior) que Claude Code a lue, `"first-wins"` ou `"merge"`. `"first-wins"` quand aucune source ne définit la clé
1387* `managed_settings.helper.state` : état de l'assistant de politique que la source MDM ou fichier sélectionnée configure :1393* `managed_settings.helper.state` : état de l'assistant de politique que la source MDM ou fichier sélectionnée configure :
1388 * `"ok"` : la sortie de l'assistant sert de paramètres gérés1394 * `"ok"` : la sortie de l'assistant sert de paramètres gérés
1389 * `"bad_path"`, `"not_a_file"`, `"exit_nonzero"`, `"timed_out"`, `"oversize"`, `"parse_failed"`, `"envelope_invalid"`, ou `"schema_rejected"` : la dernière exécution de l'assistant a échoué. Les [défaillances d'assistant](/docs/fr/settings-reference#helper-failures) décrivent les cas1395 * `"bad_path"`, `"not_a_file"`, `"exit_nonzero"`, `"timed_out"`, `"oversize"`, `"parse_failed"`, `"envelope_invalid"`, ou `"schema_rejected"` : la dernière exécution de l'assistant a échoué. Les [défaillances d'assistant](/docs/fr/settings-reference#helper-failures) décrivent les cas
1390 * `"none"` : aucun assistant n'est configuré, ou la source qui le configure n'est pas une politique MDM ou un fichier de paramètres gérés1396 * `"none"` : aucun assistant n'est configuré, ou la source qui le configure n'est pas une politique MDM ou un fichier de paramètres gérés
1391* `managed_settings.helper.applied` : `"output"` tandis que la sortie propre de l'assistant sert de paramètres gérés, `"none"` lorsqu'elle ne le fait pas1397* `managed_settings.helper.applied` : `"output"` tandis que la propre sortie de l'assistant sert de paramètres gérés, `"none"` quand ce n'est pas le cas
1392* `managed_settings.helper.entry` : `"policyHelper"` lorsque Claude Code a sélectionné un [`policyHelper`](/docs/fr/settings-reference#policyhelper). Absent lorsqu'il n'a sélectionné aucun assistant1398* `managed_settings.helper.entry` : `"policyHelper"` quand Claude Code a sélectionné un [`policyHelper`](/docs/fr/settings-reference#policyhelper). Absent quand il n'a sélectionné aucun assistant
1393* `managed_settings.helper.path` : le [`path`](/docs/fr/settings-reference#policyhelper-path) configuré de l'assistant. Présent chaque fois que Claude Code a sélectionné un assistant, que `OTEL_LOG_MANAGED_SETTINGS` soit défini ou non1399* `managed_settings.helper.path` : le [`path`](/docs/fr/settings-reference#policyhelper-path) configuré de l'assistant. Présent chaque fois que Claude Code a sélectionné un assistant, que `OTEL_LOG_MANAGED_SETTINGS` soit défini ou non
1394* `managed_settings.resolved_sha256` (lorsque `OTEL_LOG_MANAGED_SETTINGS=1`) : SHA-256 des paramètres gérés résolus avant masquage, sérialisés en JSON avec les clés triées récursivement et sans espace blanc. Les machines avec le même digest exécutent la même politique. Claude Code envoie le digest uniquement avec l'opt-in car une politique courte peut être récupérée en hachant des suppositions. Absent lorsqu'aucun paramètre géré n'a été résolu, et sur les événements `refused`1400* `managed_settings.resolved_sha256` (quand `OTEL_LOG_MANAGED_SETTINGS=1`) : SHA-256 des paramètres gérés résolus avant rédaction, sérialisé en JSON avec les clés triées récursivement et sans espace blanc. Les machines avec le même digest exécutent la même politique. Claude Code envoie le digest uniquement avec l'opt-in car une politique courte peut être récupérée en hachant des suppositions. Absent quand aucun paramètre géré n'a été résolu, et sur les événements `refused`
1395* `managed_settings.settings` (lorsque `OTEL_LOG_MANAGED_SETTINGS=1`) : les noms et la forme des paramètres gérés résolus en tant que chaîne JSON, avec les valeurs masquées. Absent sur les événements `refused`. Claude Code le construit à partir de son schéma de paramètres :1401* `managed_settings.settings` (quand `OTEL_LOG_MANAGED_SETTINGS=1`) : les noms et la forme des paramètres gérés résolus sous forme de chaîne JSON, avec les valeurs rédactées. Absent sur les événements `refused`. Claude Code le construit à partir de son schéma de paramètres :
1396 1402
1397 * Un nom de paramètre que le schéma déclare est exporté, et une clé qu'il ne déclare pas est laissée de côté1403 * Un nom de paramètre que le schéma déclare est exporté, et une clé qu'il ne déclare pas est laissée de côté
1398 * Les booléens, les nombres et les valeurs de chaîne que le schéma restreint à un ensemble fixe d'options, tels que `permissions.defaultMode`, sont exportés tels quels. `sandbox.network.httpProxyPort` et `sandbox.network.socksProxyPort` sont exportés en tant que `"[REDACTED]"`1404 * Les booléens, les nombres et les valeurs de chaîne que le schéma restreint à un ensemble fixe d'options, par exemple `permissions.defaultMode`, sont exportés tels quels. `sandbox.network.httpProxyPort` et `sandbox.network.socksProxyPort` sont exportés comme `"[REDACTED]"`
1399 * Chaque autre chaîne, telle que `model`, `apiKeyHelper`, chaque valeur `env`, chaque URL et chaque commande, est exportée en tant que `"[REDACTED]"`1405 * Chaque autre chaîne, par exemple `model`, `apiKeyHelper`, chaque valeur `env`, chaque URL et chaque commande, est exportée comme `"[REDACTED]"`
1400 * Les noms d'entrée des cartes, tels que les noms de variables `env` et les ID de plugins, sont exportés tels quels. Un paramètre dont les entrées le schéma ne tape pas, tels que `vimInsertModeRemaps`, est exporté en tant que `"[REDACTED]"` unique, et `sandbox.ignoreViolations` est exporté en tant que liste de ses listes de chemins sans les motifs de commande1406 * Les noms d'entrée des cartes, par exemple les noms de variables `env` et les ID de plugins, sont exportés tels quels. Un paramètre dont les entrées le schéma ne tape pas, par exemple `vimInsertModeRemaps`, est exporté comme un seul `"[REDACTED]"`, et `sandbox.ignoreViolations` est exporté comme une liste de ses listes de chemins sans les modèles de commande
1401 * Une liste conserve sa longueur, avec chaque entrée masquée par les mêmes règles1407 * Une liste conserve sa longueur, avec chaque entrée rédactée par les mêmes règles
1402 * Une règle `permissions.allow`, `permissions.deny`, ou `permissions.ask` est exportée en tant que son nom d'outil avec le contenu masqué, telle que `Read([REDACTED])`, lorsque l'outil est intégré à cette version de Claude Code ou est une référence `mcp__` telle que `mcp__jira__create_issue`. Toute autre règle est exportée en tant que `"[REDACTED]"`1408 * Une règle `permissions.allow`, `permissions.deny`, ou `permissions.ask` est exportée comme son nom d'outil avec le contenu rédacté, par exemple `Read([REDACTED])`, quand l'outil est intégré à cette version de Claude Code ou est une référence `mcp__` telle que `mcp__jira__create_issue`. Toute autre règle est exportée comme `"[REDACTED]"`
1403 * Les hooks suivent les mêmes règles, donc les champs d'option fixe et numériques tels que `type` et `timeout` s'affichent, tandis que chaque commande, URL, `matcher`, et condition `if` est exportée en tant que `"[REDACTED]"`1409 * Les hooks suivent les mêmes règles, donc les champs à option fixe et numériques tels que `type` et `timeout` s'affichent, tandis que chaque commande, URL, `matcher`, et condition `if` est exportée comme `"[REDACTED]"`
1404 1410
1405 Par exemple, les paramètres gérés avec `apiKeyHelper`, deux variables `env`, et une règle de refus sont exportés en tant que `{"apiKeyHelper":"[REDACTED]","env":{"HTTPS_PROXY":"[REDACTED]","CLAUDE_CODE_ENABLE_TELEMETRY":"[REDACTED]"},"permissions":{"deny":["Read([REDACTED])"]}}`.1411 Par exemple, les paramètres gérés avec `apiKeyHelper`, deux variables `env`, et une règle de refus sont exportés comme `{"apiKeyHelper":"[REDACTED]","env":{"HTTPS_PROXY":"[REDACTED]","CLAUDE_CODE_ENABLE_TELEMETRY":"[REDACTED]"},"permissions":{"deny":["Read([REDACTED])"]}}`.
1406 1412
1407 Claude Code coupe la valeur à 8 Ko d'UTF-8, et la valeur coupée n'est pas un JSON valide1413 Claude Code coupe la valeur à 8 Ko d'UTF-8, et la valeur coupée n'est pas du JSON valide
1408* `managed_settings.settings_truncated` (lorsque `managed_settings.settings` est présent) : `true` lorsque Claude Code a coupé `managed_settings.settings` à 8 Ko, `false` sinon. Émis en tant que booléen, pas une chaîne.1414* `managed_settings.settings_truncated` (quand `managed_settings.settings` est présent) : `true` quand Claude Code a coupé `managed_settings.settings` à 8 Ko, `false` sinon. Émis comme un booléen, pas une chaîne
1409 1415
1410<h2 id="interpret-metrics-and-events-data">1416<h2 id="interpret-metrics-and-events-data">
1411 Interpréter les données de métriques et d'événements1417 Interpréter les données de métriques et d'événements