Batch-Jobs mit Voice Agent Tester konfigurieren
Sie können Batch-Jobs erstellen, um mehrere aktuelle Jobs zu starten und zu verwalten. Nachdem Sie mehrere Jobs gleichzeitig gestartet haben, können Sie die Jobs stoppen, anhalten und wiederaufnehmen.
-
Erstellen Sie einen Batch-Job für einen bestimmten Worker, indem Sie eine POST-Anforderung ähnlich dem folgenden Beispiel absetzen:
POST /voice-agent-tester/v1/worker/<Worker-ID>/batchJob?concurrent=<Zu_startende_Jobs>&jobsPerSecond=<Pro_Sekunde_zu_startende_Jobs>- Der Wert für
concurrentist eine ganze Zahl, die angibt, wie viele Jobs gestartet werden sollen. -
Der Wert für
jobsPerSecondist eine ganze Zahl, die die Anzahl der zu startenden Jobs pro Sekunde angibt. Wenn fürjobsPerSecondkein Wert angegeben ist, werden alle Jobs gleichzeitig gestartet.Ein Batch-Job gruppiert die Jobs nach Größe und der Anzahl, die als Wert für die Jobs pro Sekunde angegeben wurde. Die Gruppen werden im Sekundentakt gestartet.
- Der Wert für
-
Rufen Sie den Jobsstatus ab, indem Sie eine GET-Anforderung ähnlich dem folgenden Beispiel absetzen:
GET /voice-agent-tester/v1/worker/<Worker-ID>/batchJob/<Job-ID>
Das JSON-Objekt, das für eine Stapeljobanforderung zurückgegeben wird, ähnelt dem folgenden Beispiel:
{
"id": "guid",
"startTime": "timestamp",
"stopTime": "timestamp",
"status": "running",
"concurrentJobs":1,
"percentComplete": 45,
"subJobs": [
{
"id": "guid",
"status": "running",
"failures": 0
}
]
}
Batch-Job-Struktur
In der folgenden Tabelle wird die Batch-Job-Struktur beschrieben:
| Schlüssel | Beschreibung |
|---|---|
| ID | Gibt die GUID für den Batch-Job an. |
| status | Gibt den aktuellen Batch-Job-Status an. |
| startTime | Gibt die Zeitmarke an, zu der der Batch-Job mit der Ausführung begonnen hat. |
| stopTime | Gibt die Zeitmarke an, zu der der Batch-Job beendet wurde, unabhängig davon, ob er erfolgreich beendet wurde oder fehlgeschlagen ist. |
| concurrentJobs | Gibt die Anzahl gleichzeitig ablaufender Jobs an, die für den Batch-Job ausgeführt werden. |
| percentComplete | Gibt den Fortschritte der Batch-Job-Auführung in Prozent an. Wenn Sie unendliche Iterationen ausführen, sind diese Informationen nicht enthalten. |
| subJobs | Gibt ein Array von JSON-Objekten an, die eine Zusammenfassung der Jobs enthalten, die vom Batch-Job verwaltet werden. Sie können die vollständigen Details des Jobs abrufen, indem Sie eine GET-Anforderung für den Job absetzen und dabei die ID des Jobs in der GET-Anforderung angeben. Sie können den Job jedoch nicht starten, stoppen, anhalten, wiederaufnehmen oder löschen. Der Job muss über den Batch-Job verwaltet werden. |
Batch-Job-Status
In der folgenden Tabelle werden die möglichen Status eines Batch-Jobs beschrieben:
| Status | Beschreibung |
|---|---|
| created | Gibt an, dass der Batch-Job erstellt wurde. |
| starting | Gibt an, dass der Batch-Job startet. |
| re-starting | Gibt an, dass der Batch-Job ausgeführt wird und dass er bei entsprechender Möglichkeit gestartet wird. |
| running | Gibt an, dass der Batch-Job aktiv ist. |
| completed | Gibt an, dass der Batch-Job erfolgreich ausgeführt wurde. |
| failed | Gibt an, dass der Batch-Job die maximal zulässige Anzahl zu ignorierender Fehler gemäß der Definition im Schlüssel failuresToIgnore für den Worker überschritten hat. |
| paused | Gibt an, dass der Batch-Job angehalten wurde. |
| pausing | Gibt an, dass der Batch-Job gerade angehalten wird. |
| stopped | Gibt an, dass der Batch-Job gestoppt ist. |
| stopping | Gibt an, dass der Batch-Job gestoppt wird. |
| invalid | Gibt an, dass der für den Batch-Job verwendete Worker nicht zulässig ist, oder dass beim Anruf ein Fehler aufgetreten ist, als der Batch-Job ausgeführt wurde. Möglicherweise wurde ein im Worker verwendete Testfall gelöscht. |
-
Aktiven Batch-Job ändern, ohne den Batch-Job zu löschen.
Sie können einen aktiven Batch-Job starten, stoppen, anhalten oder wiederaufnehmen, ohne den Batch-Job zu löschen.
-
Batch-Job, einschließlich der Anzahl der Jobs, die pro Sekunde gestartet werden sollen, starten
Setzen Sie eine PUT-Anforderung mit der Startanweisung ab, ähnlich dem folgenden Beispiel:
PUT /voice-agent-tester/v1/worker/<Worker-ID>/batchJob/<Job-ID>/start?jobsPerSecond=<Zu_startende_Jobs_pro_Sekunde> -
Batch-Job stoppen
Setzen Sie eine PUT-Anforderung mit der Stoppanweisung ab, ähnlich wie im folgenden Beispiel:
PUT /voice-agent-tester/v1/worker/<Worker-ID>/batchJob/<Job-ID>/stop -
Job anhalten
Setzen Sie eine PUT-Anforderung mit der Anweisung zum Anhalten ab, ähnlich wie im folgenden Beispiel:
PUT /voice-agent-tester/v1/worker/<Worker-ID>/batchJob/<Job-ID>/pause -
Batch-Job, einschließlich der Anzahl der Jobs, die pro Sekunde gestartet werden sollen, wiederaufnehmen
Setzen Sie eine PUT-Anforderung mit der Anweisung für die Wiederaufnahme ab, ähnlich wie im folgenden Beispiel:
PUT /voice-agent-tester/v1/worker/<Worker-ID>/batchJob/<Job-ID>/unpause?jobsPerSecond=<Zu_startende_Jobs_pro_Sekunde>In der folgenden Tabelle werden die Anweisungen beschrieben, die Sie zum Ändern eines aktiven Batch-Jobs verwenden können:
-
| Anweisung | Beschreibung |
|---|---|
| stop | Gibt an, dass der aktiv ausgeführte Test für alle Unterjobs gestoppt wurde und die aktuellen Daten zurückgesetzt wurden. |
| start | Gibt an, dass bei einem inaktiven Batch-Job die Ergebnisse für die Unterjobs gelöscht werden, und nur die Unterjobs von Anfang an gestartet werden. Bei einem aktiven Batch-Job werden die Ergebnisse für den Unterjob ebenfalls gelöscht und alle
Unterjobs werden von Anfang an gestartet. Sie können den Wert jobsPerSecond in der Startanweisung angeben. Wenn die Unterjobs jedoch ausgeführt werden, hat der Wert jobsPerSecond keine Wirkung. |
| pause | Gibt an, dass der momentan aktive Test für alle Unterjobs beendet wird. Anschließend werden die Unterjobs angehalten, bevor der nächste Testfall ausgeführt wird. |
| unpause | Gibt an, dass alle Unterjobs an der Stelle im Testfall und mit der Iteration wiederaufgenommen werden, an der sie angehalten wurden. Wenn Sie einen Wert für jobsPerSecond angeben, nimmt der Batch-Job im Sekundentakt die Subjobs
wieder auf. Diese Unterjobs werden gruppiert basierend auf der Größe der Unterjobs und des Werts für jobsPerSecond. |
-
Löschen Sie alle Unterjobs des Batch-Jobs, indem Sie eine DELETE-Anforderung ähnlich dem folgenden Beispiel absetzen:
DELETE /voice-agent-tester/v1/worker/<Worker-ID>/batchJob/<Job-ID>Wichtig Alle aufgelaufenen Jobdaten werden gelöscht und können nicht wiederhergestellt werden.
-
Löschen Sie alle Batch-Job, die einem bestimmten Worker zugeordnet sind, indem Sie eine DELETE-Anforderung ähnlich dem folgenden Beispiel absetzen:
DELETE /voice-agent-tester/v1/worker/<Worker-ID>/batchJobWichtig Alle aufgelaufenen Jobdaten werden gelöscht und können nicht wiederhergestellt werden.