

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Exécutez des métriques pour les flux de travail privés
<a name="monitoring-run-metrics"></a>

HealthOmics publie des mesures d'utilisation des ressources en temps quasi réel pour vos exécutions et vos tâches sur Amazon CloudWatch. Ces statistiques vous donnent une visibilité sur la progression de vos courses au fur et à mesure de leur exécution. Vous pouvez utiliser ces indicateurs pour :
+ Identifiez les goulots d'étranglement de l'unité centrale (CPU) ou de l'unité de traitement graphique (GPU) alors que les tâches sont toujours en cours d'exécution.
+ Détectez la pression de la mémoire ou l'épuisement de l'espace de stockage avant qu'une tâche n'échoue.
+ Right-size les configurations de calcul et de stockage pour vos flux de travail.
+ Construire CloudWatch tableaux de bord et alarmes, ou intégrez-les à des outils d'observabilité tiers.
+ Déboguez une exécution lente ou échouée, ainsi que l'enregistrement d'exécution, les enregistrements de tâches et les journaux. Pour plus d’informations, consultez [Débogage d'un HealthOmics exécution du flux de travail](workflows-run-debug.md).

Les métriques d'exécution sont disponibles pour les flux de travail privés et partagés.

HealthOmics commercialise ces indicateurs dans le cadre du `cloudwatch.aws/omics` portée à votre guise CloudWatch compte.

Ces métriques sont émises à l'aide de CloudWatch OpenTelemetry Norme de métriques compatible avec (OTel). Cela signifie que vous pouvez les intégrer à OTel-compatible outils d'observabilité et outils natifs CloudWatch tableaux de bord et alarmes. Interrogez les métriques OTel à l'aide du langage de requête Prometheus (ProMQL) pour afficher et analyser les données. Pour plus d'informations, voir [CloudWatch OpenTelemetry indicateurs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/metrics-otel-overview.html).

**Disponibilité dans les Régions**  
Les métriques d'exécution sont disponibles dans tous [prise en charge HealthOmics Régions](https://docs.aws.amazon.com/general/latest/gr/healthomics-quotas.html), à l'exception de la région d'Israël (Tel Aviv) (`il-central-1`).

## Activation des métriques pour une course
<a name="monitoring-run-metrics-enabling"></a>

Pour publier ces statistiques, Gestion des identités et des accès AWS Le rôle (IAM) que vous utilisez pour votre exécution doit être autorisé à écrire des métriques dans CloudWatch. Ajoutez l'autorisation suivante à votre rôle d'exécution du flux de travail :

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "cloudwatch:PutMetricData",
      "Resource": "*"
    }
  ]
}
```

Pour en savoir plus sur les autorisations, consultez [Rôles de service pour AWS HealthOmics](permissions-service.md). Pour plus d'informations sur le démarrage d'une course, voir [Commencez une course HealthOmics](starting-a-run.md).

**CloudWatch `PutMetricData` quota**  
CloudWatch a une valeur par défaut `PutMetricData` quota de 500 requêtes par seconde (transactions par seconde). Ce quota par défaut est suffisant pour afficher les mesures pour un maximum de 15 000 données simultanées HealthOmics tâches. Pour afficher les statistiques de plus de 15 000 données simultanées HealthOmics tâches, demandez une augmentation de la limite pour CloudWatch `PutMetricData` quota. Pour plus d’informations, consultez [Quotas de service CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html).

## Métriques disponibles
<a name="monitoring-run-metrics-available"></a>

**Disponibilité des métriques**  
HealthOmics émet des mesures en fonction du type de flux de travail. Toutes les métriques ne sont pas émises pour chaque flux de travail.

Le tableau suivant répertorie les mesures qui HealthOmics des distributeurs automatiques pour chaque course. Les statistiques sont disponibles dans CloudWatch Query Studio. Les unités suivent les OpenTelemetry convention : `By` est en octets, `{cpu}` est un vCPU, `{operation}` ses opérations, et `%` est un pourcentage.


**HealthOmics exécuter des métriques**  

| Nom des métriques | Description | Unit | Type | Frequency (Fréquence) | Disponibilité | 
| --- | --- | --- | --- | --- | --- | 
| aws.omics.run.filesystem.usage | Stockage utilisé sur le système de fichiers partagé de l'exécution. | By | gauge | 30 secondes | Pour chaque course. | 
| aws.omics.run.filesystem.limit | Capacité totale du système de fichiers partagé de l'exécution. | By | gauge | 30 secondes | Uniquement pour les courses qui utilisent STATIC exécuter le type de stockage. | 
| aws.omics.task.cpu.usage | vCPU utilisés par la tâche de flux de travail. | {cpu} | gauge | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.cpu.limit | vCPU réservés à la tâche du flux de travail en fonction de la définition du flux de travail ou des valeurs par défaut. | {cpu} | gauge | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.memory.usage | Mémoire utilisée par la tâche du flux de travail. | By | gauge | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.memory.limit | Mémoire réservée à la tâche du flux de travail. | By | gauge | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.network.io | Nombre d'octets transmis et reçus par la tâche de flux de travail. Divisé par network.io.direction (receive, transmit). | By | sum | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.filesystem.io | Nombre d'octets du système de fichiers transférés par la tâche du flux de travail. Divisé par filesystem.io.direction (read, write). | By | sum | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.filesystem.operations | Le nombre d'opérations sur le système de fichiers effectuées par la tâche de flux de travail. Divisé par filesystem.io.direction (read, write). | {operation} | sum | 30 secondes | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.filesystem.scratch.storage.usage | Stockage Scratch utilisé par la tâche de flux de travail. | By | gauge | 30 secondes (LOCAL mode) ou 20 minutes (SHARED mode) | Pour chaque tâche en cours d'exécution. | 
| aws.omics.task.filesystem.scratch.storage.limit | Capacité totale de stockage temporaire disponible pour la tâche de flux de travail. | By | gauge | 30 secondes | Pour chaque tâche d'une course qui définit scratchStorageMode pour LOCAL. | 
| aws.omics.task.gpu.utilization | Utilisation du processeur graphique pour la tâche de flux de travail. Un point de données par GPU, identifié par gpu.id. | % | gauge | 30 secondes | Uniquement pour les tâches utilisant des accélérateurs. | 
| aws.omics.task.gpu.memory.usage | Mémoire GPU utilisée par la tâche du flux de travail. Un point de données par GPU, identifié par gpu.id. | By | gauge | 30 secondes | Uniquement pour les tâches utilisant des accélérateurs. | 
| aws.omics.task.gpu.memory.limit | Mémoire GPU disponible pour la tâche du flux de travail. Un point de données par GPU, identifié par gpu.id. | By | gauge | 30 secondes | Uniquement pour les tâches utilisant des accélérateurs. | 

Pour plus d'informations sur les accélérateurs, voir [Ressources de tâches dans un HealthOmics définition du flux de travail](task-resources.md).

Pour plus d'informations sur le stockage éphémère, voir [Stockage éphémère pour HealthOmics les tâches de flux de travail](workflows-ephemeral-storage.md).

### Attributs communs
<a name="monitoring-run-metrics-common-attributes"></a>

Chaque HealthOmics run metric contient un ensemble commun d'étiquettes de ressources qui identifient la source du point de données.


**Étiquettes de ressources**  
<a name="monitoring-run-metrics-common-attributes-table"></a>
<table>
<thead>
  <tr><th>Étiquette</th><th>Description</th><th>Exemple de valeur</th><th></th><th></th><th></th></tr>
  <tr><th colspan="3">Étiquettes de ressources communes</th><th></th><th></th><th></th></tr>
  <tr><th colspan="3">Libellés des ressources de tâches</th><th></th><th></th><th></th></tr>
</thead>
<tbody>
  <tr><td><code>@resource.cloud.provider</code></td><td>Le fournisseur de cloud qui a publié la métrique.</td><td><code>aws</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.cloud.account.id</code></td><td>Le AWS compte auquel appartient la course.</td><td><code>123456789012</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.cloud.region</code></td><td>Le AWS Région dans laquelle la course s'est déroulée.</td><td><code>us-west-2</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.cloud.resource_id</code></td><td>L'ARN de la course.</td><td><code>arn:aws:omics:us-west-2:123456789012:run/1234567</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.service.name</code></td><td>Le service qui a publié la métrique.</td><td><code>omics</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.aws.omics.workflow.id</code></td><td>L'ID du flux de travail utilisé par l'exécution.</td><td><code>1122334</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.aws.omics.run.id</code></td><td>L'identifiant de la course.</td><td><code>1234567</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.aws.omics.storage.type</code></td><td>Le type de stockage en cours d'exécution.</td><td><code>DYNAMIC</code></td><td></td><td></td><td></td></tr>
  <tr><td><code>@resource.aws.omics.task.id</code></td><td>ID de la tâche à laquelle le point de données est destiné. Seul le <code>aws.omics.task.*</code> les métriques portent cette étiquette.</td><td><code>1245938</code></td><td></td><td></td><td></td></tr>
</tbody>
</table>


### Attributs supplémentaires
<a name="monitoring-run-metrics-additional-attributes"></a>

Certaines métriques d'exécution comportent des attributs de point de données supplémentaires qui divisent la métrique en séries chronologiques distinctes. Vous pouvez utiliser ces attributs pour filtrer une requête ProMQL.


**Attributs de mesure supplémentaires**  

| Attribut supplémentaire | Métriques | Description | Valeurs | 
| --- | --- | --- | --- | 
| gpu.id | aws.omics.task.gpu.utilization, aws.omics.task.gpu.memory.usage, aws.omics.task.gpu.memory.limit | L'indice de base zéro du GPU sur l'instance. | 0, 1, 2, ou 3 | 
| scratch.storage.mode | aws.omics.task.filesystem.scratch.storage.usage, aws.omics.task.filesystem.scratch.storage.limit | Où la tâche écrit ses données scratch, en fonction de la valeur effective scratchStorageMode. | LOCAL ou SHARED | 
| network.io.direction | aws.omics.task.network.io | Direction du transfert réseau. | receive ou transmit | 
| filesystem.io.direction | aws.omics.task.filesystem.io, aws.omics.task.filesystem.operations | Direction du fonctionnement du système de fichiers. | read ou write | 

## Interrogation HealthOmics exécuter des métriques
<a name="monitoring-run-metrics-viewing"></a>

Vous pouvez consulter le HealthOmics exécutez des métriques dans le CloudWatch console en exécutant une requête ProMQL dans Query Studio.

**Pour visionner HealthOmics exécuter des métriques (CloudWatch console)**

1. Vérifiez que votre course a commencé avec `cloudwatch:PutMetricData` autorisation.

1. Connectez-vous à AWS Management Console et ouvrez la [console CloudWatch ](https://console.aws.amazon.com/cloudwatch/home).

1. Dans le volet de navigation, choisissez **Query Studio**.

1. Dans l'éditeur de requêtes, choisissez **ProMQL** dans la liste déroulante.

1. Dans **Constructeur** mode, parcourez et sélectionnez un nom de métrique et ses libellés. Ou, dans **Rédacteur** mode, entrez une requête ProMQL.

1. Choisissez une plage de temps à l'aide du sélecteur de plage de temps.

1. Choisissez **Courez** pour afficher les résultats sous forme de graphique chronologique. Pour modifier la façon dont le graphique s'affiche, choisissez **Personnalisez**.

Par exemple, la requête suivante renvoie les processeurs virtuels utilisés par chaque tâche au cours d'une exécution. Remplacer {{runID}} avec l'identifiant de la piste que vous souhaitez inspecter.

```
{"aws.omics.task.cpu.usage", "@resource.aws.omics.run.id"="{{runID}}"}
```

Pour étiqueter chaque série chronologique avec son identifiant d'exécution et son identifiant de tâche, vous pouvez choisir **Étiquette personnalisée** et saisissez ce qui suit.

```
{@resource.aws.omics.run.id="${@resource.aws.omics.run.id}",@resource.aws.omics.task.id="${@resource.aws.omics.task.id}"}
```

**Pour interroger HealthOmics exécuter des métriques (API)**  
CloudWatch fournit Prometheus-compatible API et points de terminaison pour interroger les données métriques. Pour plus d'informations sur l'interrogation de métriques à l'aide de ces API, consultez [Prometheus-compatible API](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-PromQL-APIs.html).

## Création d'une alarme à l'aide de CloudWatch
<a name="monitoring-run-metrics-alarm"></a>

Vous pouvez créer un CloudWatch alarme à partir d'une requête ProMQL afin que CloudWatch vous avertit lorsqu'une métrique dépasse un seuil. L'alarme peut envoyer une notification à une rubrique Amazon Simple Notification Service (Amazon SNS) ou déclencher une autre action lorsque l'alarme change d'état.

**Pour créer une alarme à partir d'une requête ProMQL (CloudWatch console)**

1. Connectez-vous à AWS Management Console et ouvrez la [console CloudWatch ](https://console.aws.amazon.com/cloudwatch/home).

1. Dans le volet de navigation, choisissez **Query Studio**.

1. Choisissez **ProMQL**, entrez votre requête, vérifiez le graphique, puis choisissez **Créer une alarme** bouton.

## Ajouter HealthOmics exécuter des métriques vers un CloudWatch tableau de bord
<a name="monitoring-run-metrics-dashboard"></a>

Vous pouvez ajouter une requête ProMQL à CloudWatch tableau de bord sous forme de widget afin que vous puissiez surveiller HealthOmics l'utilisation des ressources parallèlement à vos autres indicateurs.

**Pour ajouter HealthOmics exécuter des métriques vers un CloudWatch tableau de bord (CloudWatch console)**

1. Connectez-vous à AWS Management Console et ouvrez la [console CloudWatch ](https://console.aws.amazon.com/cloudwatch/home).

1. Dans le volet de navigation, choisissez **Query Studio**.

1. Choisissez **ProMQL**, saisissez votre requête, puis vérifiez le graphique.

1. Choisissez **Action**, puis choisissez **Ajouter au tableau de bord**.

1. Choisissez un tableau de bord existant ou créez-en un nouveau, puis enregistrez le widget.

Pour un tableau de bord, vous n'avez pas à créer widget par widget, HealthOmics fournit un exemple open source. Le [HealthOmics Exécuter Dashboard](https://github.com/awslabs/aws-healthomics-tools#healthomics-run-dashboard) sur le **alvéoles** GitHub cartes du site CPU, mémoire, système de fichiers I/O, réseau I/O, l'utilisation du système de fichiers partagé et le stockage temporaire pour chaque flux de travail que vous nommez. Vous pouvez le déployer avec son outil de ligne de commande ou en un clic AWS CloudFormation empiler.

## Analyser les métriques de course à l'aide du HealthOmics Serveur MCP
<a name="monitoring-run-metrics-mcp"></a>

Vous pouvez utiliser le HealthOmics Serveur MCP (Model Context Protocol) permettant de récupérer les métriques d'exécution et d'étudier les échecs d'exécution sur plusieurs dimensions de données à l'aide d'un modèle d'IA. Vous pouvez utiliser le serveur MCP via Kiro CLI, Claude Code ou tout autre MCP-compatible client agentique. Pour plus d'informations, voir [AWS HealthOmics Serveur MCP](https://awslabs.github.io/mcp/servers/aws-healthomics-mcp-server) et [outils d'agence pris en charge](https://github.com/aws-samples/sample-healthomics-agentic-setup).

## Alertes
<a name="monitoring-run-metrics-callouts"></a>
+ HealthOmics commence à émettre des métriques d'exécution une fois qu'une tâche atteint le `RUNNING` état, et arrête de les émettre une fois que la tâche atteint le `COMPLETED` statut. Pour plus d'informations sur les statuts des tâches, voir [Valeurs d'état des tâches](workflow-run-tasks.md#task-status-values).
+ Les premiers points de données apparaissent après un court délai d'environ 30 secondes.
+ Les tâches exécutées pendant moins de 30 secondes peuvent ne pas comporter de métriques.
+ Lorsque le type de stockage de l'exécution est `DYNAMIC`, `aws.omics.run.filesystem.usage` peut connaître un retard de plus de 30 minutes, il est donc possible qu'il ne soit pas disponible pour les courses de moins de 30 minutes.
+ Quand `scratchStorageMode` est `SHARED`, `aws.omics.task.filesystem.scratch.storage.usage` peut ne pas être disponible pour les tâches qui créent un grand nombre de fichiers temporaires. HealthOmics mesure l'utilisation dans ce mode à l'aide d'une analyse récursive du répertoire temporaire de la tâche, et l'analyse ne se termine pas toujours dans les délais impartis lorsque le nombre de fichiers est élevé.
+ Les mesures du processeur et de la mémoire peuvent différer des valeurs du manifeste d'exécution car les deux mesures utilisent une portée différente. Les métriques d'exécution reflètent plus fidèlement la consommation réelle de votre tâche.
+ Les métriques d'exécution ne sont disponibles que dans AWS compte qui possède le rôle de service et démarre l'exécution.

## Facturation
<a name="monitoring-run-metrics-billing"></a>

AWS HealthOmics ne vous facture pas les métriques d'exécution. Les statistiques sont publiées sur Amazon CloudWatch dans votre compte, et CloudWatch vous facture directement l'activité associée. Les frais sont basés sur le volume de données métriques ingérées. Pour les prix dans un domaine spécifique AWS Région, voir [Amazon CloudWatch tarification](https://aws.amazon.com/cloudwatch/pricing/). Le tableau suivant décrit comment CloudWatch frais pour les métriques d'exécution.


**Comment CloudWatch frais pour les métriques d'exécution**  

| Activité | Comment vous êtes facturé | 
| --- | --- | 
| Publication OpenTelemetry indicateurs | Par Go de données ingérées. Comprend 15 mois de stockage, sans frais distincts pour le stockage ou pour le nombre de séries métriques uniques. | 
| Exécution de requêtes ProMQL dans CloudWatch console, y compris Query Studio et tableaux de bord | Aucuns frais. | 
| Exécution de requêtes ProMQL avec CloudWatch API | Par million d'échantillons scannés. | 
| Alarmes qui évaluent une requête ProMQL | Des frais d'alarme standard, auxquels s'ajoutent des frais de requête pour les échantillons scannés à chaque évaluation. | 

## Désabonnement
<a name="monitoring-run-metrics-opting-out"></a>

Par défaut, HealthOmics publie des métriques d'exécution chaque fois que le rôle de service pour une exécution possède le `cloudwatch:PutMetricData` autorisation. Pour vous désinscrire et arrêter les frais futurs, vous pouvez omettre cette autorisation dans le rôle de service à chaque niveau d'exécution. Pour arrêter la publication même lorsqu'une autre politique accorde l'autorisation, ajoutez un refus explicite au rôle :

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": "cloudwatch:PutMetricData",
      "Resource": "*"
    }
  ]
}
```

Une autre méthode de désinscription consiste à désactiver la journalisation d'une exécution en réglant `LogLevel = OFF` dans le **StartRun** demande. Lorsque vous définissez `LogLevel` pour `OFF`, HealthOmics ne publie pas de métriques d'exécution.