Gå till huvudinnehåll Gå till ytterligare innehåll

Kör en profil

Availability-noteBeta

I det här scenariot använder du Talend API:er för att köra en profil för att förbättra projektkvaliteten.

Om den här uppgiften

Här är några detaljer om API-anropet:

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

Slutpunkten använder ett profil-ID som en parameter som innehåller en lista med specifikationer att köra på Talend Projektet.

Procedur

  1. Anropa GET api/v1/projects/quality/profiles slutpunkten för att hämta ID:t för den profil du vill köra.
  2. Anteckna ID:t för den profil du vill köra.
  3. Anropa POST api/v1/projects/quality/profiles/{id}/executions slutpunkten för att köra en profil. Lägg till ID för profilen du vill köra som en parameter.
  4. I Brödtext-området, ange följande information:
    ParameternamnVärde
    databasAnge namnet på databasen.
    användarnamnAnge ditt användarnamn.
    lösenkodAnge din lösenkod.
    grenAnge grennamnet.
    arbetsområdeAnge namnet på arbetsområdet.
    klientAnge klientnamnet.

    Exempel:

     {
      "repository": "GIT",
      "authentication": {
        "username": "******",
        "passcode": "*************"
      },
      "branch": "master",
      "workspace": "PROJECT_73",
      "client": "UI"
    }
  5. Klicka på Kör för att utfärda ditt anrop.

Resultat

Här är ett exempel på ett svar:
{
  "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"
    }
  ]
}
I det här exemplet söker Active-tLogRow-regeln efter jobb med tLogRow-komponenterna. Enligt villkoret ska det totala antalet identifierade tillgångar vara mindre än det maximala tröskelvärdet, vilket är 5 här.

Resultatet i det här exemplet är 30. Regelns kvalitetskontroll misslyckades. Regelns status är Misslyckades. Statusen för varje regel utvärderas baserat på jämförelsen mellan resultatet och tröskeln.

Projektets övergripande kvalitet bestäms av specifikationens status. Specifikationens status valideras av det kumulativa resultatet eller statusen för alla regler. I det här exemplet är tröskeln inställd på 100 %. Här, även om ett enda villkor eller en regel misslyckas, misslyckas specifikationen och statusen ställs in på Misslyckades.

Tröskeln, tröskeltypen och operatorn kan uppdateras baserat på reglernas och specifikationernas inverkan på kvaliteten på ditt Talend projekt.

När alla specifikationer har körts, ställs körningens status in baserat på följande villkor:
  • Godkänd: Status om alla specifikationer har godkänts.
  • Misslyckades: Status om någon specifikation misslyckades.
  • Avbruten: Status om körningen avbryts.
  • Körs: Status om körningen pågår.
Körningarna kan nås med en GET /api/v1/projects/quality/profiles/executions slutpunkt. Körningarna kan filtreras efter flera kriterier: körningens status från en viss starttid eller projektnamnet.
API valt för att hämta alla körningar.
Exekveringar kan också tas bort med deras exekverings-ID:n eller med deras status, starttid eller projektnamn.
API för att ta bort alla exekveringar.

Visit the discussion forum at community.qlik.com

Var den här sidan till hjälp för dig?

Om du stöter på några problem med den här sidan eller innehållet på den, t.ex. ett stavfel, ett saknat steg eller ett tekniskt fel – meddela oss!