View a markdown version of this page

Status pekerjaan dan eksekusi pekerjaan - AWS IoT Core

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Status pekerjaan dan eksekusi pekerjaan

Bagian berikut menjelaskan siklus hidup AWS IoT pekerjaan dan siklus hidup pelaksanaan pekerjaan.

Status pekerjaan

Diagram berikut menunjukkan status AWS IoT pekerjaan yang berbeda.

Gambar yang menunjukkan berbagai status AWS IoT pekerjaan.

Pekerjaan yang Anda buat menggunakan AWS IoT Pekerjaan dapat berada di salah satu status berikut:

  • DIJADWALKAN

    Selama pembuatan pekerjaan awal atau template pekerjaan menggunakan AWS IoT konsol, CreateJob API, atau CreateJobTemplate API, Anda dapat memilih konfigurasi penjadwalan opsional di AWS IoT konsol atau SchedulingConfig di CreateJob API atau CreateJobTemplate API. Saat Anda memulai pekerjaan terjadwal yang berisistartTime,endTime, danendBehavior, status pekerjaan diperbarui keSCHEDULED. Ketika pekerjaan mencapai jendela pemeliharaan yang Anda pilih startTime atau jendela pemeliharaan berikutnya (jika Anda memilih peluncuran pekerjaan selama jendela pemeliharaan), status akan diperbarui dari SCHEDULED ke IN_PROGRESS dan mulai peluncuran dokumen pekerjaan ke semua perangkat dalam kelompok target. startTime

  • IN_PROGRESS

    Saat Anda membuat pekerjaan menggunakan AWS IoT konsol atau CreateJob API, status pekerjaan diperbarui keIN_PROGRESS. Selama penciptaan AWS IoT pekerjaan, Jobs mulai meluncurkan eksekusi pekerjaan ke perangkat dalam kelompok target Anda. Setelah semua eksekusi pekerjaan diluncurkan, AWS IoT Jobs menunggu perangkat untuk menyelesaikan tindakan jarak jauh.

    Untuk informasi tentang konkurensi dan batasan yang berlaku untuk pekerjaan yang sedang berjalan, lihat. AWS IoT Batas pekerjaan

    catatan

    Ketika IN_PROGRESS pekerjaan mencapai akhir jendela pemeliharaan saat ini, peluncuran dokumen pekerjaan akan berhenti. Pekerjaan akan diperbarui SCHEDULED hingga jendela startTime pemeliharaan berikutnya.

  • DISELESAIKAN

    Pekerjaan berkelanjutan ditangani dengan salah satu cara berikut:

    • Untuk pekerjaan berkelanjutan tanpa konfigurasi penjadwalan opsional yang dipilih, itu selalu dalam proses dan terus berjalan untuk setiap perangkat baru yang ditambahkan ke grup target. Itu tidak akan pernah mencapai statusCOMPLETED.

    • Untuk pekerjaan berkelanjutan dengan konfigurasi penjadwalan opsional yang dipilih, berikut ini benar:

      • Jika endTime diberikan, pekerjaan berkelanjutan akan mencapai COMPLETED status ketika endTime telah lulus dan semua eksekusi pekerjaan telah mencapai status status terminal.

      • Jika an endTime tidak disediakan dalam konfigurasi penjadwalan opsional, pekerjaan berkelanjutan akan terus melakukan peluncuran dokumen pekerjaan.

    Untuk pekerjaan snapshot, status pekerjaan berubah menjadi COMPLETED ketika semua eksekusi pekerjaannya memasuki status terminal, seperti,SUCCEEDED,FAILED, TIMED_OUTREMOVED, atauCANCELED.

  • DIBATALKAN

    Saat Anda membatalkan pekerjaan menggunakan AWS IoT konsol, CancelJob API, atauKonfigurasi pembatalan tugas, status pekerjaan berubah menjadiCANCELED. Selama pembatalan pekerjaan, AWS IoT Jobs mulai membatalkan eksekusi pekerjaan yang dibuat sebelumnya.

    Untuk informasi tentang konkurensi dan batasan yang berlaku untuk pekerjaan yang sedang dibatalkan, lihatAWS IoT Batas pekerjaan.

  • PENGHAPUSAN DALAM PROSES

    Saat Anda menghapus pekerjaan menggunakan AWS IoT konsol atau DeleteJob API, status pekerjaan berubah menjadiDELETION_IN_PROGRESS. Selama penghapusan pekerjaan, AWS IoT Jobs mulai menghapus eksekusi pekerjaan yang dibuat sebelumnya. Setelah semua eksekusi pekerjaan dihapus, pekerjaan menghilang dari AWS akun Anda.

Status eksekusi pekerjaan

Tabel berikut menunjukkan berbagai status eksekusi AWS IoT pekerjaan dan apakah perubahan status diprakarsai oleh perangkat atau oleh AWS IoT Jobs.

Status dan sumber eksekusi pekerjaan
Status eksekusi pekerjaan Diprakarsai oleh perangkat? Diprakarsai oleh AWS IoT Jobs? Status terminal? Bisa dicoba lagi?
QUEUED Tidak Ya Tidak Tidak berlaku
IN_PROGRESS Ya Tidak Tidak Tidak berlaku
SUCCEEDED Ya Tidak Ya Tidak berlaku
FAILED Ya Tidak Ya Ya
TIMED_OUT Tidak Ya Ya Ya
REJECTED Ya Tidak Ya Tidak
REMOVED Tidak Ya Ya Tidak
CANCELED Tidak Ya Ya Tidak

Bagian berikut menjelaskan lebih lanjut tentang status eksekusi pekerjaan yang diluncurkan saat Anda membuat pekerjaan dengan AWS IoT Jobs.

  • DIANTREKAN

    Saat AWS IoT Jobs meluncurkan eksekusi pekerjaan untuk perangkat target, status eksekusi pekerjaan disetel keQUEUED. Eksekusi pekerjaan tetap di QUEUED negara bagian sampai:

    • Perangkat Anda menerima eksekusi pekerjaan dan memanggil operasi Jobs API dan melaporkan statusnya sebagai. IN_PROGRESS

    • Anda membatalkan pekerjaan atau eksekusi pekerjaan, atau ketika kriteria pembatalan yang Anda tentukan terpenuhi, dan status berubah menjadiCANCELED.

    • Perangkat Anda dihapus dari grup target dan statusnya berubah menjadiREMOVED.

    Gambar yang menunjukkan bagaimana eksekusi pekerjaan yang antri mengubah status menjadi IN_PROGRESS dan bagaimana pekerjaan bisa DITOLAK jika perangkat tidak menerima permintaan pembuatan pekerjaan.
  • IN_PROGRESS

    Jika perangkat IoT Anda berlangganan reservasi Topik pekerjaan $notify dan$notify-next, dan perangkat Anda memanggil StartNextPendingJobExecution API atau UpdateJobExecution API dengan statusIN_PROGRESS, AWS IoT Jobs akan menyetel status eksekusi pekerjaan ke. IN_PROGRESS

    UpdateJobExecutionAPI dapat dipanggil beberapa kali dengan status. IN_PROGRESS Anda dapat menentukan detail tambahan tentang langkah-langkah eksekusi menggunakan statusDetails objek.

    catatan

    Jika Anda membuat beberapa pekerjaan untuk setiap perangkat, AWS IoT Jobs dan protokol MQTT tidak menjamin urutan pengiriman.

  • SUCCEEDED

    Ketika perangkat Anda berhasil menyelesaikan operasi jarak jauh, perangkat harus memanggil UpdateJobExecution API dengan status SUCCEEDED untuk menunjukkan bahwa eksekusi pekerjaan berhasil. AWS IoT Jobs kemudian memperbarui dan mengembalikan status eksekusi pekerjaan sebagaiSUCCEEDED.

    Gambar yang menunjukkan bagaimana eksekusi pekerjaan yang sedang berlangsung dapat gagal dan cara mencoba lagi eksekusi.
  • FAILED

    Ketika perangkat Anda gagal menyelesaikan operasi jarak jauh, perangkat harus memanggil UpdateJobExecution API dengan status Failed untuk menunjukkan bahwa eksekusi pekerjaan gagal. AWS IoT Jobs kemudian memperbarui dan mengembalikan status eksekusi pekerjaan sebagaiFailed. Anda dapat mencoba lagi eksekusi pekerjaan ini untuk perangkat menggunakan. Konfigurasi percobaan ulang pelaksanaan tugas

    Gambar yang menunjukkan bagaimana eksekusi pekerjaan yang sedang berlangsung dapat gagal dan cara mencoba lagi eksekusi.
  • TIMED_OUT

    Ketika perangkat Anda gagal menyelesaikan langkah pekerjaan saat statusnya adaIN_PROGRESS, atau ketika gagal menyelesaikan operasi jarak jauh dalam durasi batas waktu pengatur waktu yang sedang berlangsung, AWS IoT Jobs menyetel status eksekusi pekerjaan ke. TIMED_OUT Anda juga memiliki penghitung waktu langkah untuk setiap langkah pekerjaan dari pekerjaan yang sedang berlangsung dan hanya berlaku untuk eksekusi pekerjaan. Durasi pengatur waktu yang sedang berlangsung ditentukan menggunakan inProgressTimeoutInMinutes properti dariKonfigurasi batas waktu pelaksanaan tugas. Anda dapat mencoba lagi eksekusi pekerjaan ini untuk perangkat menggunakan. Konfigurasi percobaan ulang pelaksanaan tugas

    Gambar yang menunjukkan bagaimana eksekusi pekerjaan yang sedang berlangsung dapat habis waktu dan cara mencoba lagi eksekusi.
  • DITOLAK

    Ketika perangkat Anda menerima permintaan yang tidak valid atau tidak kompatibel, perangkat harus memang UpdateJobExecution gil API dengan statusREJECTED. AWS IoT Jobs kemudian memperbarui dan mengembalikan status eksekusi pekerjaan sebagaiREJECTED.

  • DIHAPUS

    Ketika perangkat Anda tidak lagi menjadi target yang valid untuk eksekusi pekerjaan, seperti saat dilepaskan dari grup benda dinamis, AWS IoT Jobs menetapkan status eksekusi pekerjaan menjadiREMOVED. Anda dapat melampirkan kembali hal tersebut ke grup target Anda dan memulai ulang eksekusi pekerjaan untuk perangkat.

  • DIBATALKAN

    Saat Anda membatalkan pekerjaan atau membatalkan eksekusi pekerjaan menggunakan konsol atau CancelJobExecution API, CancelJob atau ketika kriteria pembatalan yang ditentukan menggunakan Konfigurasi pembatalan tugas dipenuhi, AWS IoT Jobs membatalkan pekerjaan dan menetapkan status eksekusi pekerjaan menjadiCANCELED.