Vai al contenuto principale Passa a contenuto complementare

Esecuzione di un profilo

Availability-noteBeta

In questo scenario, si utilizzano le Talend API per eseguire un profilo al fine di migliorare la qualità del progetto.

Informazioni su questa attività

Ecco alcuni dettagli sulla chiamata API:

Method: POST
endpoint: api/v1/projects/quality/profiles/{id}/executions
payload:
    {
  "repository": "string",
  "authentication": {
    "username": "string",
    "passcode": "string"
  },
  "branch": "string",
  "workspace": "string",
  "client": "UI"
    }

L'endpoint utilizza un ID profilo come parametro contenente un elenco di specifiche da eseguire sul Talend Progetto.

Procedura

  1. Chiamare l'endpoint GET api/v1/projects/quality/profiles per ottenere l'ID del profilo che si desidera eseguire.
  2. Annotare l'ID del profilo che si desidera eseguire.
  3. Chiamare l'endpoint POST api/v1/projects/quality/profiles/{id}/executions per eseguire un profilo. Aggiungi l'ID del profilo che vuoi eseguire come parametro.
  4. Nell'area Body, inserisci le seguenti informazioni:
    Nome parametroValore
    repositoryInserisci il nome del repository.
    nome utenteInserisci il tuo nome utente.
    codice di accessoInserisci il tuo codice di accesso.
    ramoInserisci il nome del ramo.
    Area di lavoroImmettere il nome dell'area di lavoro.
    clientImmettere il nome del client.

    Esempio:

     {
      "repository": "GIT",
      "authentication": {
        "username": "******",
        "passcode": "*************"
      },
      "branch": "master",
      "workspace": "PROJECT_73",
      "client": "UI"
    }
  5. Fare clic su Esegui per effettuare la chiamata.

Risultati

Ecco un esempio di risposta:
{
  "id": "67",
  "status": "FAILED",
  "startTimestamp": "2023-10-13 17:36",
  "duration": "2s",
  "specifications": [
    {
      "id": "69",
      "specification": {
        "id": "2",
        "name": "best-practice",
        "description": "This specification contains rules related to best practices",
        "operator": "is_Equal_to",
        "threshold": 100,
        "thresholdType": "PERCENTAGE",
        "createdBy": "system"
      },
      "status": "FAILED",
      "rules": [
        {
          "id": "77",
          "rule": {
            "id": "4",
            "name": "Active-tLogRow",
            "description": "Identify jobs with tLogRow components",
            "category": "COMPONENT",
            "severity": "MINOR",
            "operator": "is_less_than_or_Equal",
            "threshold": "5",
            "thresholdType": "PERCENTAGE",
            "createdBy": "system"
          },
          "result": "30",
          "status": "FAILED"
        },
        {
          "id": "78",
          "rule": {
            "id": "5",
            "name": "JavaLogs",
            "description": "Identify jobs that contain java logs.",
            "category": "COMPONENT",
            "severity": "INFO",
            "operator": "is_less_than_or_Equal",
            "threshold": "50",
            "thresholdType": "PERCENTAGE",
            "createdBy": "system"
          },
          "result": "4.56",
          "status": "PASSED"
        }
      ],
      "duration": "1s"
    }
  ],
  "sourceProvider": {
    "providerType": "LOCAL",
    "workspace": "D:\\Talend_Studio\\studio\\workspaces\\qtcmt_test",
    "project": "PROJECT_73"
  },
  "info": {
    "version": "7.3.1",
    "label": "PROJECT_73",
    "description": "Project imported from TalendPS organization",
    "productVersion": "Talend Real-time Big Data Platform-7.3.1.20221115_1012-patch",
    "type": "DQ",
    "bigData": false,
    "local": false
  },
  "inventory": {
    "total_artifact_assets": 258,
    "context_group": 11,
    "standard_job": 210,
    "standard_job_versions": 211,
    "standard_joblet": 24,
    "standard_joblet_versions": 24,
    "resource": 2,
    "resource_versions": 24,
    "bd_batch": 1,
    "bd_batch_versions": 1,
    "bd_batch_joblet": 0,
    "bd_batch_joblet_versions": 0,
    "bd_streaming": 1,
    "bd_streaming_versions": 1,
    "bd_streaming_joblet": 0,
    "bd_streaming_joblet_versions": 0,
    "route": 46,
    "route_versions": 46,
    "routelet": 1,
    "routelet_versions": 1
  },
  "commits": [
    {
      "id": "24b228d45561e0a741a0409195ef492437bf3",
      "date": "Tue Feb 21 01:29:11 2023 +0000",
      "author": "talend <talend@3bed803c5b79>",
      "message": "\tCreate Project: PRJ_731\n"
    }
  ]
}
In questo esempio, la regola Active-tLogRow cerca i Job con i componenti tLogRow. Come definito nella condizione, il numero totale di risorse identificate deve essere inferiore al valore massimo della soglia, che è 5 qui.

Il risultato in questo esempio è 30. Il controllo di qualità della regola non è riuscito. Lo stato della regola è Non riuscito. Lo stato di ogni regola viene valutato in base al confronto tra il risultato e la soglia.

La qualità complessiva del progetto è determinata dallo stato della specifica. Lo stato della specifica è convalidato dal risultato cumulativo o dallo stato di tutte le regole. In questo esempio, la soglia è impostata su 100%. Qui, anche se una singola condizione o regola fallisce, la specifica fallisce e lo stato viene impostato su Fallito.

La soglia, il tipo di soglia e l'operatore possono essere aggiornati in base all'impatto delle regole e delle specifiche sulla qualità del tuo progetto Talend.

Quando tutte le specifiche vengono eseguite, lo stato dell'esecuzione viene impostato in base alla seguente condizione:
  • Superato: Stato se tutte le specifiche sono state superate.
  • Non riuscito: Stato se una qualsiasi specifica non è riuscita.
  • Annullato: Stato se l'esecuzione è annullata.
  • In esecuzione: Stato se l'esecuzione è in corso.
Le esecuzioni sono accessibili utilizzando un endpoint GET /api/v1/projects/quality/profiles/executions. Le esecuzioni possono essere filtrate in base a diversi criteri: lo stato dell'esecuzione da un determinato orario di inizio o il nome del progetto.
API selezionata per ottenere tutte le esecuzioni.
Le esecuzioni possono anche essere eliminate tramite i loro ID di esecuzione o tramite il loro stato, l'ora di inizio o il nome del progetto.
API per eliminare tutte le esecuzioni.

Visit the discussion forum at community.qlik.com

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – ti pregiamo di farcelo sapere!