Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verfolgen von Auftragsstatus- und Abschluss
Mit S3 Batch Operations können Sie den Auftragsstatus anzeigen und aktualisieren, Benachrichtigungen und Protokollierung hinzufügen, Auftragsfehler verfolgen und Abschlussberichte erstellen.
Themen
Auftragsstatuses
Nachdem Sie einen Auftrag erstellt und ausgeführt haben, durchläuft dieser eine Reihe von Status. In der folgenden Tabelle werden der Status und die möglichen Übergänge zwischen ihnen beschrieben.
Status | Beschreibung | Übergänge |
---|---|---|
New |
Ein Auftrag beginnt nach der Erstellung mit dem Status New . |
Ein Auftrag wechselt automatisch in den Status Preparing , sobald Amazon S3 mit der Verarbeitung des Manifestobjekts beginnt. |
Preparing |
Amazon S3 verarbeitet das Manifestobjekt und andere Auftragsparameter, um den Auftrag einzurichten und auszuführen. | Ein Auftrag wechselt automatisch in den Status Ready , sobald Amazon S3 die Verarbeitung des Manifests und anderer Parameter abschließt. Der Job ist dann bereit, mit der Ausführung des angegebenen Vorgangs für die im Manifest aufgelisteten Objekte zu beginnen.Wenn der Auftrag vor der Ausführung bestätigt werden muss, wie dies bei der Erstellung eines Auftrags mit der Amazon-S3-Konsole der Fall ist, wechselt der Auftrag von |
Suspended |
Der Job muss bestätigt werden, aber Sie haben noch nicht bestätigt, dass Sie ihn ausführen möchten. Nur Aufträge, die mit der Amazon-S3-Konsole erstellt wurden, benötigen eine Bestätigung. Ein Job, der mit der Konsole erstellt wurde, wechselt unmittelbar danach in den Suspended StatusPreparing . Nachdem Sie die Ausführung des Auftrags bestätigen und der Auftrag in den Status Ready wechselt, kehrt er nicht wieder in den Status Suspended zurück. |
Nachdem Sie die Ausführung des Auftrags bestätigen, wechselt der Status zu Ready . |
Ready |
Amazon S3 ist bereit, die angeforderten Objekt-Vorgänge auszuführen. | Ein Auftrag wechselt automatisch in den Status Active , sobald Amazon S3 mit dessen Ausführung beginnt. Der Zeitraum, den ein Auftrag im Status Ready verbringt, hängt davon ab, ob bereits Aufträge mit einer höheren Priorität ausgeführt werden und wie lange es dauert, diese Aufträge abzuschließen. |
Active |
Amazon S3 führt die angeforderte Operation an den im Manifest aufgeführten Objekten aus. Während ein Auftrag ausgeführt wirdActive , können Sie seinen Fortschritt mit der Amazon S3 S3-Konsole oder den DescribeJob Vorgang über REST API AWS CLI, oder überwachen AWS SDKs. |
Ein Job verlässt den Active Status, in dem für den Job keine Operationen mehr an Objekten ausgeführt werden. Dieses Verhalten kann automatisch auftreten, z. B. wenn ein Job erfolgreich abgeschlossen wird oder fehlschlägt. Dieses Verhalten kann auch als Folge von Benutzeraktionen auftreten, z. B. durch das Abbrechen eines Jobs. Der neue Status des Auftrags hängt vom Grund für den Übergang ab. |
Pausing |
Der Auftrag wechselt von Paused zu einem anderen Status über. |
Ein Auftrag wechselt automatisch in den Status Paused , wenn die Stufe Pausing abgeschlossen ist. |
Paused |
Ein Auftrag wechselt in den Status Paused , wenn ein anderer Auftrag mit einer höheren Priorität abgesendet wird, während der aktuelle Auftrag ausgeführt wird. |
Ein Auftrag mit dem Status Paused kehrt automatisch in den Status Active zurück, nachdem alle Aufträge mit einer höheren Priorität, die die Ausführung des Auftrag blockierten, abgeschlossen, fehlgeschlagen oder gesperrt sind. |
Complete |
Der Auftrag hat die Ausführung der angeforderten Operation an allen Objekten abgeschlossen. Die Operation kann bei den einzelnen Objekten entweder erfolgreich abgeschlossen oder fehlgeschlagen sein. Wenn Sie den Auftrag so konfiguriert haben, dass ein Abschlussbericht generiert werden soll, dann ist der Bericht sofort verfügbar, nachdem der Auftrag in den Status gewechselt is Complete . |
Complete ist ein Beendigungsstatus. Sobald ein Job erreicht istComplete , wechselt er nicht mehr in einen anderen Status. |
Cancelling |
Der Auftrag wechselt in den Status Cancelled . |
Ein Auftrag wechselt automatisch in den Status Cancelled , wenn die Stufe Cancelling abgeschlossen ist. |
Cancelled |
Sie haben beantragt, dass der Job storniert wird, und S3 Batch Operations hat den Job erfolgreich storniert. Der Job sendet keine neuen Anfragen an Amazon S3. | Cancelled ist ein Beendigungsstatus. Sobald ein Job erreicht istCancelled , wird er nicht in einen anderen Status übergehen. |
Failing |
Der Auftrag wechselt in den Status Failed . |
Ein Auftrag wechselt automatisch in den Status Failed , nachdem die Stufe Failing abgeschlossen ist. |
Failed |
Der Auftrag ist fehlgeschlagen und wird nicht länger ausgeführt. Weitere Informationen zu Auftragsfehlern finden Sie unter Nachverfolgung von Auftragsfehlern. | Failed ist ein Beendigungsstatus. Sobald ein Job das Land erreicht hatFailed , wird er nicht mehr in einen anderen Status übergehen. |
Auftragsstatus wird aktualisiert
Im Folgenden AWS CLI und in den AWS SDK for Java Beispielen wird der Status eines Batch Operations-Jobs aktualisiert. Weitere Informationen zur Verwendung der Amazon S3 S3-Konsole zur Verwaltung von Batch Operationsaufträgen finden Sie unterVerwenden der Amazon-S3-Konsole zum Verwalten Ihrer S3-Batch-Vorgangsaufträge.
Um die folgenden Beispielbefehle zu verwenden, ersetzen Sie den
mit Ihren eigenen Informationen. Platzhalter für Benutzereingaben
-
Wenn Sie den
--no-confirmation-required
Parameter in Ihremcreate-job
Befehl nicht angegeben haben, bleibt der Job so lange unterbrochen, bis Sie den Job bestätigen, indem Sie seinen Status auf setzenReady
. Amazon S3 erlaubt dann die Ausführung des Auftrags.aws s3control update-job-status \ --region
us-west-2
\ --account-id123456789012
\ --job-id00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c
\ --requested-job-status 'Ready' -
Brechen Sie den Auftrag ab, indem Sie den Auftragsstatus auf einstelle
Cancelled
.aws s3control update-job-status \ --region
us-west-2
\ --account-id123456789012
\ --job-id00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c
\ --status-update-reason "No longer needed
" \ --requested-job-status Cancelled
Das folgende Beispiel aktualisiert den Status eines S3 Batch Operations-Jobs mithilfe von AWS SDK for Java.
Weitere Informationen zum Auftragsstatus finden Sie unter Verfolgen von Auftragsstatus- und Abschluss.
package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.s3control.AWSS3Control; import com.amazonaws.services.s3control.AWSS3ControlClient; import com.amazonaws.services.s3control.model.UpdateJobStatusRequest; import static com.amazonaws.regions.Regions.US_WEST_2; public class UpdateJobStatus { public static void main(String[] args) { String accountId = "Account ID"; String jobId = "00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c"; try { AWSS3Control s3ControlClient = AWSS3ControlClient.builder() .withCredentials(new ProfileCredentialsProvider()) .withRegion(US_WEST_2) .build(); s3ControlClient.updateJobStatus(new UpdateJobStatusRequest() .withAccountId(accountId) .withJobId(jobId) .withRequestedJobStatus("Ready")); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
Benachrichtigungen und Protokollierung
Sie können nicht nur Abschlussberichte anfordern, sondern auch die Aktivitäten von Batch Operations erfassen, überprüfen und prüfen, indem Sie AWS CloudTrail Da Batch Operations bestehende Amazon S3 API S3-Operationen zur Ausführung von Aufgaben verwendet, geben diese Aufgaben auch dieselben Ereignisse aus, als würden Sie sie direkt aufrufen. Daher können Sie den Fortschritt Ihres Auftrags und all seiner Aufgaben verfolgen und aufzeichnen, indem Sie dieselben Tools und Prozesse für Benachrichtigungen, Protokollierung und Prüfung verwenden, die Sie bereits mit Amazon S3 verwenden. Weitere Informationen finden Sie in den Beispielen in den folgenden Abschnitten.
Anmerkung
Batch Operations generiert CloudTrail während der Auftragsausführung sowohl Verwaltungs- als auch Datenereignisse. Das Volumen dieser Ereignisse hängt von der Anzahl der Schlüssel im Manifest der einzelnen Jobs ab. Weitere Informationen finden Sie auf der Seite mit den CloudTrail Preisen
Weitere Informationen über Amazon-S3-Ereignisse finden Sie unter Amazon-S3-Ereignis-Benachrichtigungen.
Nachverfolgung von Auftragsfehlern
Wenn bei einem S3-Batch-Vorgangsauftrag ein Problem auftritt, das die erfolgreiche Ausführung verhindert, schlägt der Auftrag fehl. Dies ist beispielsweise der Fall, wenn das angegebene Manifest nicht gelesen werden kann. Wenn ein Auftrag fehlschlägt, generiert er einen oder mehrere Fehlercodes oder Fehlergründe. S3 Batch Operations speichert die Fehlercodes und Gründe zusammen mit dem Job, sodass Sie sie einsehen können, indem Sie die Auftragsdetails anfordern. Wenn Sie einen Abschlussbericht für den Auftrag angefordert haben, sind die Fehlercodes und -ursachen auch darin enthalten.
Um zu verhindern, dass zu viele Vorgänge fehlschlagen, wendet Amazon S3 einen Schwellenwert für fehlgeschlagene Aufträge auf jeden Batch-Vorgangsauftrag an. Wenn ein Job mindestens 1.000 Aufgaben ausgeführt hat, überwacht Amazon S3 die Rate der Aufgabenausfälle. Wenn die Fehlerrate (also die Anzahl fehlgeschlagener Aufgaben im Verhältnis zur Gesamtzahl ausgeführter Aufgaben) zu einem beliebigen Zeitpunkt 50 Prozent überschreitet, schlägt der Auftrag fehl. Wenn Ihr Auftrag fehlschlägt, weil er den Schwellenwert für fehlgeschlagene Aufträge überschritten hat, können Sie die Ursache der Fehler identifizieren. Beispielsweise könnte der Fehler darin liegen, dass Sie versehentlich Objekte in das Manifest aufgenommen haben, die im angegebenen Bucket nicht vorhanden sind. Nach dem Beheben der Fehler können Sie den Auftrag erneut übermitteln.
Anmerkung
S3 Batch Operations arbeitet asynchron und die Aufgaben werden nicht unbedingt in der Reihenfolge ausgeführt, in der die Objekte im Manifest aufgeführt sind. Daher können Sie anhand der Reihenfolge im Manifest nicht feststellen, welche Objektaufgaben erfolgreich ausgeführt wurden und welche fehlgeschlagen sind. Stattdessen können Sie den Abschlussbericht des Auftrags (falls Sie einen angefordert haben) oder Ihre AWS CloudTrail Ereignisprotokolle einsehen, um die Ursache der Fehler zu ermitteln.
Abschlussberichte
Wenn Sie einen Auftrag erstellen, können Sie einen Abschlussbericht anfordern. Solange S3 Batch Operations erfolgreich mindestens eine Aufgabe aufruft, generiert Amazon S3 einen Abschlussbericht, nachdem der Job laufende Aufgaben abgeschlossen hat, fehlschlägt oder abgebrochen wurde. Sie können den Abschlussbericht so konfigurieren, dass er alle oder nur fehlgeschlagene Aufgaben enthält.
Der Abschlussbericht enthält die Auftragskonfiguration, den Status und Informationen für jede Aufgabe, einschließlich Objektschlüssel und Version, Status, Fehlercodes und Beschreibungen aller Fehler. Abschlussberichte bieten eine einfache Möglichkeit, die Ergebnisse von Aufgaben in einem konsolidierten Format ohne zusätzliche Einrichtung anzuzeigen. Abschlussberichte werden mithilfe serverseitiger Verschlüsselung mit verwalteten Amazon S3 S3-Schlüsseln (SSE-S3) verschlüsselt. Ein Beispiel für einen Abschlussbericht finden Sie unter Beispiele: Abschlussberichte zu S3-BatchVorgänge.
Wenn Sie keinen Abschlussbericht konfigurieren, können Sie Ihren Job und seine Aufgaben trotzdem mithilfe von Amazon überwachen CloudTrail und prüfen CloudWatch. Weitere Informationen finden Sie unter den folgenden Themen: