Utiliser les métriques d'observabilité des composants pour construire des rapports concernant les exécutions des tâches - Cloud

Guide d'utilisation des API Talend Cloud

Version
Cloud
Language
Français
Product
Talend Cloud
Module
Talend API Designer
Talend API Tester
Talend Data Preparation
Talend Data Stewardship
Talend Management Console
Content
Création et développement > Création d'APIs
Création et développement > Test d'API
Utilisez POST sur /monitoring/observability/metrics/component pour construire des rapports concernant les exécutions de tâches.

Procédure

  1. Obtenez l'ID de la tâche à analyser.
    L'ID de la tâche est disponible dans la page Task details (Détails de la tâche) de Talend Cloud Management Console. Si vous devez récupérer cet ID via une API, suivez cet exemple.
  2. Émettez la requête d'API suivante pour trouver l'historique des exécutions de cette tâche au cours d'une période donnée :
    method: GET
    endpoint: 
          https://api.<env>.cloud.talend.com/processing/executables/tasks/{taskId}/executions?from={start_timestamp_ms}&to={end_timestamp_ms}
    headers: {
     "Authorization": "Bearer <personanl_access_token>"
    }
    payload: N/A
    Depuis la réponse, comptez le nombre d'exécutions et trouvez celles en échec, s'il y en a.
  3. Émettez la requête d'API suivante pour trouver la durée d'exécution d'un type spécifique de composant dans chacune des exécutions de tâche :
    method: POST
    endpoint: 
          https://api.<env>.cloud.talend.com/monitoring/observability/metrics/component
    headers: {
     "Authorization": "Bearer <personanl_access_token>"
    }
    payload: {
        "startTime": "job start time", 
        "endTime": "job end time", 
        "environmentId": "environment id value",
        "sortBy": "component_execution_duration_milliseconds",
        "sortOrder": "desc";
        "filters": [
            {
                "field": "task_id ",
                "operator": "in", 
                "value": ["ID_of_the_task_to_analyze"]
            },
            {
                "field": "connector_type ",
                "operator": "in", 
                "value": ["a_component_type_such_as_tMongoDBConnection"]
            }
        ]
    }
  4. Analysez la réponse pour constater combien la durée d'exécution de ce type de composants varie d'une tâche à l'autre.

Résultats

Ce rapport vous permet de comprendre les circonstances dans lequelles un composant modifie son comportement lors des exécutions de tâches.

Voici un exemple de réponse de la requête POST sur /monitoring/observability/metrics/component.
{
  "items": [
    {
      "account_id": "2be59707-2230-45dc-a43d-db7e6d798425",
      "engine_id": "a60bb1c0-7669-407f-9326-138af05da18a",
      "engine_type": "CLOUD",
      "engine_version": "2.10.7",
      "workspace_id": "6093f6a36f01d639680d31cd",
      "task_id": "610d3b7da8abfa32ffb6506b",
      "task_execution_id": "2b252f47-ccfd-4c13-9c4a-d864b599086f",
      "operator": "xxx",
      "operator_type": "HUMAN",
      "process_id": "0329f8d4-1c69-3372-9233-d38ac6ef03a8",
      "job_name": "MainJob",
      "pid": "20210806181617_2Y68h",
      "father_pid": "20210806181617_2Y68h",
      "root_pid": "20210806181617_2Y68h",
      "connector_type": "tMongoDBConnection",
      "connector_label": "tMongoDBConnection_1",
      "connector_id": "tMongoDBConnection_1",
      "component_start_time_seconds": 1628266578
    },
    {
      "account_id": "2be59707-2230-45dc-a43d-db7e6d798425",
      "engine_id": "a60bb1c0-7669-407f-9326-138af05da18a",
      "engine_type": "CLOUD",
      "engine_version": "2.10.7",
      "workspace_id": "6093f6a36f01d639680d31cd",
      "task_id": "610d3b7da8abfa32ffb6506b",
      "task_execution_id": "2b252f47-ccfd-4c13-9c4a-d864b599086f",
      "operator": "xxx",
      "operator_type": "HUMAN",
      "process_id": "0329f8d4-1c69-3372-9233-d38ac6ef03a8",
      "job_name": "MainJob",
      "pid": "20210806181617_2Y68h",
      "father_pid": "20210806181617_2Y68h",
      "root_pid": "20210806181617_2Y68h",
      "connector_type": "tRowGenerator",
      "connector_label": "tRowGenerator_1",
      "connector_id": "tRowGenerator_1",
      "target_connector_type": "tFlowMeter",
      "target_label": "tFlowMeter_row1",
      "target_id": "tFlowMeter_row1",
      "connection_type": "row1",
      "connection_name": "output",
      "component_start_time_seconds": 1628266578,
      "component_connection_rows_total": 5000000,
      "component_execution_duration_milliseconds": 491585
    },
    ...
  ],
  "limit": 50,
  "offset": 0,
  "total": 7
}