Ausführen eines Profils
In diesem Szenario verwenden Sie Talend-APIs zum Ausführen eines Profils, um die Projektqualität zu verbessern.
Warum und wann dieser Vorgang ausgeführt wird
Im Folgenden finden Sie einige Informationen zum API-Aufruf:
Method: POST
endpoint: api/v1/projects/quality/profiles/{id}/executions
payload:
{
"repository": "string",
"authentication": {
"username": "string",
"passcode": "string"
},
"branch": "string",
"workspace": "string",
"client": "UI"
}
Der Endpunkt verwendet eine Profil-ID als Parameter, der eine Liste der Spezifikationen enthält, welche im Talend-Projekt ausgeführt werden sollen.
Prozedur
Ergebnisse
{
"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\\tcmp_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"
}
]
}
Das Ergebnis in diesem Beispiel ist 30. Die Qualitätsprüfung der Regel ist fehlgeschlagen. Der Status der Regel ist Failed (Fehlgeschlagen). Der Status jeder Regel wird basierend auf dem Vergleich zwischen dem Ergebnis und dem Schwellenwert ausgewertet.
Die Gesamtqualität des Projekts wird durch den Status der Spezifikation bestimmt. Der Status der Spezifikation wird durch das kumulative Ergebnis oder den Status aller Regeln validiert. In diesem Beispiel wird der Schwellenwert auf 100% festgelegt. Wenn hier eine einzige Bedingung oder Regel fehlschlägt, schlägt die Spezifikation fehl, und der Status wird auf Failed (Fehlgeschlagen) gesetzt.
Der Schwellenwert, der Schwellenwerttyp und der Operator können basierend auf der Auswirkung der Regeln und Spezifikationen auf die Qualität Ihres Talend-Projekts aktualisiert werden.
- Passed (Bestanden): Status, wenn alle Spezifikationen bestanden haben.
- Failed (Fehlgeschlagen): Status, wenn fehlgeschlagene Spezifikationen vorliegen.
- Canceled (Abgebrochen): Status, wenn die Ausführung abgebrochen wurde.
- Running (Wird ausgeführt): Status, wenn die Ausführung läuft.