

Pemberitahuan akhir dukungan: Pada 13 November 2025, AWS akan menghentikan dukungan untuk Amazon Elastic Transcoder. Setelah 13 November 2025, Anda tidak akan lagi dapat mengakses konsol Elastic Transcoder atau sumber daya Elastic Transcoder.

Untuk informasi lebih lanjut tentang transisi ke AWS Elemental MediaConvert, kunjungi [posting blog](https://aws.amazon.com/blogs/media/how-to-migrate-workflows-from-amazon-elastic-transcoder-to-aws-elemental-mediaconvert/) ini.

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

# Kesalahan Penanganan di Elastic Transcoder
<a name="error-handling"></a>

**Topics**
+ [Kode Kesalahan API (Kesalahan Klien dan Server)](#api-error-codes)
+ [Kesalahan Selama Job Processing](#job-processing-errors)
+ [Menangkap Kesalahan](#catching-errors)
+ [Pengulangan Kesalahan dan Backoff Eksponensial](#api-retries)

Ketika Anda mengirim permintaan ke dan mendapatkan tanggapan dari Elastic Transcoder API, Anda mungkin menemukan dua jenis kesalahan API:
+ **Kesalahan klien:** Kesalahan klien ditunjukkan oleh kode respons HTTP 4xx. Kesalahan klien menunjukkan bahwa Elastic Transcoder menemukan masalah dengan permintaan klien, seperti kegagalan otentikasi atau parameter yang diperlukan hilang. Perbaiki masalah di aplikasi klien sebelum mengirimkan permintaan lagi.
+ **Kesalahan server:** Kesalahan server ditunjukkan oleh kode respons HTTP 5xx, dan perlu diselesaikan oleh Amazon. Anda dapat mengirimkan ulang/mencoba kembali permintaan hingga berhasil.

Untuk setiap kesalahan API, Elastic Transcoder mengembalikan nilai berikut: 
+ Kode status, misalnya, `400`
+ Kode kesalahan, misalnya, `ValidationException`
+ Pesan kesalahan, misalnya, `Supplied AttributeValue is empty, must contain exactly one of the supported datatypes`

Untuk daftar kode kesalahan yang Elastic Transcoder kembalikan untuk kesalahan klien dan server, lihat. [Kode Kesalahan API (Kesalahan Klien dan Server)](#api-error-codes)

Selain itu, Anda mungkin mengalami kesalahan saat Elastic Transcoder memproses pekerjaan Anda. Untuk informasi selengkapnya, lihat [Kesalahan Selama Job Processing](#job-processing-errors).

## Kode Kesalahan API (Kesalahan Klien dan Server)
<a name="api-error-codes"></a>

Kode status HTTP menunjukkan apakah suatu operasi berhasil atau tidak. 

Kode respons `200` menunjukkan operasi berhasil. Kode kesalahan lainnya menunjukkan kesalahan klien (4xx) atau kesalahan server (5xx).

Tabel berikut mencantumkan kesalahan yang dikembalikan oleh Elastic Transcoder. Beberapa kesalahan diselesaikan jika Anda hanya mencoba lagi permintaan yang sama. Tabel menunjukkan kesalahan mana yang kemungkinan akan diselesaikan dengan percobaan ulang berturut-turut. Jika nilai kolom Coba Ulang adalah:
+ **Ya:** Kirim permintaan yang sama lagi.
+ **Tidak:** Perbaiki masalah di sisi klien sebelum mengirimkan permintaan baru. 

Untuk informasi selengkapnya tentang mencoba kembali permintaan, lihat[Pengulangan Kesalahan dan Backoff Eksponensial](#api-retries).


| Kode Status HTTP | Kode kesalahan | Pesan | Penyebab | Coba lagi | 
| --- | --- | --- | --- | --- | 
| 400 | Pengecualian Gagal Pemeriksaan Bersyarat | Permintaan bersyarat gagal.  | Contoh: Nilai yang diharapkan tidak sesuai dengan apa yang disimpan dalam sistem.  | Tidak | 
| 400 | Pengecualian Tanda Tangan Tidak Lengkap | Tanda tangan yang diminta tidak sesuai dengan standar AWS.  | Tanda tangan dalam permintaan tidak mencakup semua komponen yang diperlukan. Lihat [Konten Header HTTP](making-http-requests.md#http-request-header). | Tidak | 
| 403 | Pengecualian Token Otentikasi Hilang | Permintaan harus berisi ID Kunci Akses AWS (terdaftar) yang valid. | Permintaan tidak termasuk yang diperlukanx-amz-security-token. Lihat [Membuat Permintaan HTTP ke Elastic Transcoder](making-http-requests.md). | Tidak | 
| 400 | Pengecualian Validasi | Beragam.  | Satu atau lebih nilai dalam permintaan hilang atau tidak valid; misalnya, nilai kosong atau lebih besar dari nilai valid maksimum. | Tidak | 
| 403 | AccessDenied Pengecualian |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/elastictranscoder/latest/developerguide/error-handling.html)  |  Anda mencoba menghapus preset sistem, tanda tangan dalam panggilan ke Elastic Transcoder API tidak valid, atau pengguna tidak berwenang untuk melakukan operasi.  | Tidak | 
| 404 | ResourceNot Pengecualian Ditemukan  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/elastictranscoder/latest/developerguide/error-handling.html)  | Contoh: Pipeline yang Anda coba tambahkan pekerjaan tidak ada atau masih dibuat. | Tidak | 
| 409 |  InUse Pengecualian Sumber Daya |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/elastictranscoder/latest/developerguide/error-handling.html)  | Contoh: Anda mencoba menghapus pipeline yang sedang digunakan. | Tidak | 
| 429 | Batas Terlampaui Pengecualian  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/elastictranscoder/latest/developerguide/error-handling.html)  | Akun AWS saat ini telah melampaui batas pada objek Elastic Transcoder. Untuk informasi selengkapnya, lihat [Batas Jumlah Pipa Elastic Transcoder, Pekerjaan, dan Preset](limits.md).  |  | 
| 429 | Throughput yang Disediakan Melebihi Pengecualian | Anda melebihi throughput penyediaan maksimum yang diizinkan. |  Contoh: Tingkat permintaan Anda terlalu tinggi. AWS SDKs for Elastic Transcoder secara otomatis mencoba ulang permintaan yang menerima pengecualian ini. Permintaan Anda akhirnya berhasil kecuali antrian coba ulang Anda terlalu besar untuk diselesaikan. Kurangi frekuensi permintaan. Untuk informasi selengkapnya, lihat [Pengulangan Kesalahan dan Backoff Eksponensial](#api-retries).  Jika Anda melakukan polling untuk menentukan status permintaan, pertimbangkan untuk menggunakan notifikasi untuk menentukan status. Untuk informasi selengkapnya, lihat [Pemberitahuan Status Job](notifications.md).  | Ya | 
| 429 | Pengecualian Pelambatan | Tingkat permintaan melebihi throughput yang diizinkan. |  Anda mengirimkan permintaan terlalu cepat; misalnya, permintaan untuk menciptakan pekerjaan baru. Jika Anda melakukan polling untuk menentukan status permintaan, pertimbangkan untuk menggunakan notifikasi untuk menentukan status. Untuk informasi selengkapnya, lihat [Pemberitahuan Status Job](notifications.md).  | Ya | 
| 500 | Kegagalan Internal | Server mengalami kesalahan internal saat mencoba memenuhi permintaan.  | Server mengalami kesalahan saat memproses permintaan Anda. | Ya | 
| 500 | Kesalahan Server Internal | Server mengalami kesalahan internal saat mencoba memenuhi permintaan.  | Server mengalami kesalahan saat memproses permintaan Anda. | Ya | 
| 500 | Pengecualian Layanan Internal |  | Layanan mengalami pengecualian yang tidak terduga saat mencoba memenuhi permintaan.  | Ya | 
| 500 | Layanan Pengecualian Tidak Tersedia  | Layanan saat ini tidak tersedia atau sibuk. | Ada kesalahan tak terduga di server saat memproses permintaan Anda. | Ya | 

### Respons Kesalahan Sampel
<a name="sample-http-error-response"></a>

Berikut ini adalah respon HTTP yang menunjukkan bahwa nilai untuk `inputBucket` adalah null, yang bukan nilai yang valid. 

```
HTTP/1.1 400 Bad Request
x-amzn-RequestId: b0e91dc8-3807-11e2-83c6-5912bf8ad066
x-amzn-ErrorType: ValidationException
Content-Type: application/json
Content-Length: 124
Date: Mon, 26 Nov 2012 20:27:25 GMT

{"message":"1 validation error detected: Value null at 'inputBucket' failed to satisfy constraint: Member must not be null"}
```

## Kesalahan Selama Job Processing
<a name="job-processing-errors"></a>

Ketika Elastic Transcoder mengalami kesalahan saat memproses pekerjaan Anda, Elastic Transcoder melaporkan kesalahan dalam dua cara:
+ **Status Pekerjaan dan Status Output:** Elastic Transcoder mengatur `Job:Status` objek dan objek untuk output `Outputs:Status` yang gagal. `Error` Selain itu, Elastic Transcoder menetapkan `Outputs:StatusDetail` objek JSON untuk output yang gagal ke nilai yang menjelaskan kegagalan.
+ **Notifikasi SNS:** Jika Anda mengonfigurasi pipeline untuk mengirim notifikasi SNS saat Elastic Transcoder mengalami kesalahan selama pemrosesan, Elastic Transcoder menyertakan objek JSON dalam notifikasi dalam format berikut:

  ```
  {
     "state" : "PROGRESSING|COMPLETED|WARNING|ERROR",
     "errorCode" : "the code of any error that occurred",
     "messageDetails" : "the notification message you created in Amazon SNS",
     "version" : "API version that you used to create the job",
     "jobId" : "value of Job:Id object that Elastic Transcoder 
               returns in the response to a Create Job request",
     "pipelineId" : "value of PipelineId object 
                    in the Create Job request",
     "input" : {
        job Input settings
     },
     "outputKeyPrefix" : "prefix for file names in Amazon S3 bucket",
     "outputs": [
        {
           applicable job Outputs settings,
           "status" : "Progressing|Complete|Warning|Error"
        },
        {...}
     ],
     "playlists": [
        {
           applicable job playlists settings
        }
     ],
     "userMetadata": {
        "metadata key": "metadata value"
     }
  }
  ```


| Nilai dari `errorCode` | Nilai dari `messageDetails` | Penyebab | 
| --- | --- | --- | 
| 1000 | Kesalahan Validasi | Saat memproses pekerjaan, Elastic Transcoder menentukan bahwa satu atau lebih nilai dalam permintaan tidak valid. | 
| 1001 | Kesalahan Ketergantungan | Elastic Transcoder tidak dapat menghasilkan daftar putar karena mengalami kesalahan dengan satu atau lebih dependensi daftar putar. | 
| 2000 | Tidak Dapat Mengambil Peran | Elastic Transcoder tidak dapat mengambil AWS Identity and Access Management peran yang ditentukan dalam objek dalam pipa Role untuk pekerjaan ini. | 
| 3000 | Kesalahan Penyimpanan Tidak Diklasifikasikan |  | 
| 3001 | Input Tidak Ada | Tidak ada file dengan nama yang Anda tentukan dalam Input:Key objek untuk pekerjaan ini. File harus ada di bucket Amazon S3 yang ditentukan dalam InputBucket objek dalam pipeline untuk pekerjaan ini. | 
| 3002 | Output Sudah Ada | Sebuah file sudah ada dengan nama yang Anda tentukan dalam objek Outputs:Key (atauOutput:Key) untuk pekerjaan ini. File tidak dapat ada di bucket Amazon S3 yang ditentukan dalam OutputBucket objek dalam pipeline untuk pekerjaan ini. | 
| 3003 | Tidak Memiliki Izin Baca | Peran IAM yang ditentukan dalam Role objek dalam pipeline yang Anda gunakan untuk pekerjaan ini tidak memiliki izin untuk membaca dari bucket Amazon S3 yang berisi file yang ingin Anda transkode. | 
| 3004 | Tidak Memiliki Izin Menulis | Peran IAM yang ditentukan dalam Role objek dalam pipeline yang Anda gunakan untuk pekerjaan ini tidak memiliki izin untuk menulis ke bucket Amazon S3 tempat Anda ingin menyimpan file transkode atau file thumbnail. | 
| 3005 | Bucket Tidak Ada | Bucket S3 yang ditentukan tidak ada: bucket= \$11\$1. | 
| 3006 | Tidak Memiliki Izin Menulis | Elastic Transcoder tidak dapat menulis kunci= \$11\$1 ke bucket= \$12\$1, karena kuncinya tidak berada di wilayah yang sama dengan bucket | 
| 4000 | File Masukan Buruk | File yang Anda tentukan dalam Input:Key objek untuk pekerjaan ini dalam format yang saat ini tidak didukung oleh Elastic Transcoder.  | 
| 4001 | File Masukan Buruk | Lebar x tinggi file yang Anda tentukan dalam Input:Key objek untuk pekerjaan ini melebihi lebar maksimum yang diizinkan x tinggi.  | 
| 4002 | File Masukan Buruk | Ukuran file file yang Anda tentukan dalam Input:Key objek untuk pekerjaan ini melebihi ukuran maksimum yang diizinkan.  | 
| 4003 | File Masukan Buruk | Elastic Transcoder tidak dapat menafsirkan file yang Anda tentukan di salah satu objek untuk pekerjaan Outputs:Watermarks:InputKey ini. | 
| 4004 | File Masukan Buruk | Lebar x tinggi file yang Anda tentukan di salah satu Outputs:Watermarks:InputKey objek untuk pekerjaan ini melebihi lebar maksimum x tinggi yang diizinkan.  | 
| 4005 | File Masukan Buruk | Ukuran file yang Anda tentukan untuk salah satu objek \$11\$1 melebihi ukuran maksimum yang diizinkan: bucket= \$12\$1, key= \$13\$1, size \$14\$1, max size= \$15\$1. | 
| 4006 | File Masukan Buruk | Elastic Transcoder tidak dapat mentranskode file input karena formatnya tidak didukung. | 
| 4007 | File Input Tidak Tertangani | Elastic Transcoder menemukan jenis file yang umumnya didukung, tetapi tidak dapat memproses file dengan benar. Kesalahan ini secara otomatis membuka kasus dukungan, dan kami sudah mulai meneliti penyebab masalah. | 
| 4008 | File Masukan Buruk |  Penyebab mendasar dari ini adalah ketidakcocokan antara preset dan file input. Contohnya termasuk: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/elastictranscoder/latest/developerguide/error-handling.html)  | 
| 4009 | File Masukan Buruk | Elastic Transcoder tidak dapat memasukkan semua seni album Anda ke dalam file output karena Anda melebihi jumlah maksimum aliran karya seni. | 
| 4010 | File Masukan Buruk | Elastic Transcoder tidak dapat menafsirkan file grafik yang Anda tentukan. AlbumArt:Artwork:InputKey | 
| 4011 | File Masukan Buruk | Elastic Transcoder mendeteksi aliran karya seni yang disematkan, tetapi tidak dapat menafsirkannya. | 
| 4012 | File Masukan Buruk | Gambar yang Anda tentukan AlbumArt:Artwork melebihi lebar maksimum x tinggi yang diizinkan: 4096 x 3072. | 
| 4013 | File Masukan Buruk | Lebar x tinggi karya seni yang disematkan melebihi lebar maksimum x tinggi yang diizinkan: 4096 x 3072. | 
| 4014 | Masukan Buruk | Nilai yang Anda tentukan untuk waktu mulai klip adalah setelah akhir file input. Elastic Transcoder tidak dapat membuat file output. | 
| 4015 | Masukan Buruk | Elastic Transcoder tidak dapat menghasilkan file manifes karena segmen yang dihasilkan tidak cocok. | 
| 4016 | Masukan Buruk | Elastic Transcoder tidak dapat mendekripsi file input dari \$11\$1 menggunakan \$12\$1. | 
| 4017 | Masukan Buruk | Kunci AES dienkripsi dengan kunci enkripsi \$12\$1 -bit. AES hanya mendukung kunci enkripsi 128-, 192-, dan 256-bit. MD5= \$11\$1. | 
| 4018 | Masukan Buruk | Elastic Transcoder tidak dapat mendekripsi kunci sandi dengan = \$11\$1 MD5 | 
| 4019 | Masukan Buruk | Elastic Transcoder tidak dapat menghasilkan kunci data menggunakan kunci KMS ARN \$10\$1. | 
| 4020 | Masukan Buruk | Kunci Anda harus 128 bit untuk enkripsi AES-128. MD5= \$11\$1, \$12\$1 bit. | 
| 4021 | Masukan Buruk | Kunci Anda harus 128 bit untuk PlayReady DRM. MD5= \$11\$1, kekuatan = \$12\$1 bit. | 
| 4022 | Masukan Buruk | Ukuran gabungan dari file media yang ditentukan \$11\$1 melebihi ukuran maksimum yang diizinkan: bucket= \$12\$1, size= \$13\$1. | 
| 4023 | Masukan Buruk | File input \$11\$1 yang ditentukan untuk penggabungan tidak akan membuat output dengan resolusi yang konsisten dengan preset yang ditentukan. Gunakan preset dengan MaxHeight pengaturan yang berbeda PaddingPolicySizingPolicy,MaxWidth, dan. | 
| 4024 | Masukan Buruk | File input \$11\$1 yang ditentukan untuk penggabungan tidak akan membuat thumbnail dengan resolusi yang konsisten dengan preset yang ditentukan. Gunakan preset dengan thumbnailPaddingPolicy,, SizingPolicyMaxWidth, dan pengaturan yang berbeda. MaxHeight | 
| 4025 | Masukan Buruk | Setidaknya satu file media (input \$1 \$11\$1) tidak cocok dengan yang lain. Semua file media harus memiliki video atau tidak ada video. | 
| 4026 | Masukan Buruk | Setidaknya satu file media (input \$1 \$11\$1) tidak cocok dengan yang lain. Semua file media harus memiliki audio atau tanpa audio. | 
| 4100 | File Masukan Buruk | Elastic Transcoder mendeteksi trek teks yang disematkan tetapi tidak dapat menafsirkannya. | 
| 4101 | File Masukan Buruk | Elastic Transcoder tidak dapat menafsirkan file caption yang ditentukan untuk Amazon S3 bucket= \$11\$1, key= \$12\$1. | 
| 4102 | File Masukan Buruk | Elastic Transcoder tidak dapat menafsirkan file teks yang ditentukan karena tidak dikodekan UTF-8: Amazon S3 bucket= \$11\$1, key= \$12\$1. | 
| 4103 | File Masukan Buruk | Elastic Transcoder tidak dapat memproses semua trek teks Anda karena Anda melebihi \$11\$1, jumlah maksimum trek teks.  | 
| 4104 | File Masukan Buruk | Elastic Transcoder tidak dapat menghasilkan playlist master karena output yang diinginkan berisi \$11\$1 teks tertanam, ketika maksimum adalah 4. | 
| 4105 | File Masukan Buruk | Elastic Transcoder tidak dapat menyematkan trek teks Anda karena frame rate \$11\$1 tidak didukung untuk CEA-708 - hanya frame rate [29,97, 30] yang didukung. | 
| 4106 | File Masukan Buruk | Elastic Transcoder tidak dapat menyematkan track caption Anda karena format \$11\$1 hanya mendukung \$12\$1 track caption (s). | 
| 9000 | Kesalahan Layanan Internal |  | 
| 9001 | Kesalahan Layanan Internal |  | 
| 9999 | Kesalahan Layanan Internal |  | 

## Menangkap Kesalahan
<a name="catching-errors"></a>

Agar aplikasi Anda berjalan dengan lancar, Anda perlu membangun logika untuk menangkap dan merespons kesalahan. Salah satu pendekatan tipikal adalah menerapkan permintaan Anda dalam `try` blok atau `if-then` pernyataan.

AWS SDKs melakukan percobaan ulang dan pemeriksaan kesalahan mereka sendiri. Jika Anda mengalami kesalahan saat menggunakan salah satu AWS SDKs, Anda akan melihat kode kesalahan dan deskripsi. Anda juga harus melihat `Request ID` nilai. `Request ID`Nilai dapat membantu memecahkan masalah dengan dukungan Elastic Transcoder.

Contoh berikut menggunakan AWS SDK for Java untuk menghapus item dalam `try` blok dan menggunakan `catch` blok untuk merespons kesalahan. Dalam hal ini, ia memperingatkan bahwa permintaan gagal. Contoh menggunakan `AmazonServiceException` kelas untuk mengambil informasi tentang kesalahan operasi apa pun, termasuk. `Request ID` Contoh ini juga menggunakan `AmazonClientException` kelas jika permintaan tidak berhasil karena alasan lain.

```
try {
   DeleteJobRequest request = new DeleteJobRequest(jobId);
   DeleteJobResult result = ET.deleteJob(request);
   System.out.println("Result: " + result);
   // Get error information from the service while trying to run the operation	
   }  catch (AmazonServiceException ase) {
      System.err.println("Failed to delete job " + jobId);
      // Get specific error information
      System.out.println("Error Message:    " + ase.getMessage());
      System.out.println("HTTP Status Code: " + ase.getStatusCode());
      System.out.println("AWS Error Code:   " + ase.getErrorCode());
      System.out.println("Error Type:       " + ase.getErrorType());
      System.out.println("Request ID:       " + ase.getRequestId());
   // Get information in case the operation is not successful for other reasons	
   }  catch (AmazonClientException ace) {
      System.out.println("Caught an AmazonClientException, which means"+
      " the client encountered " +
      "an internal error while trying to " +
      "communicate with Elastic Transcoder, " +
      "such as not being able to access the network.");
      System.out.println("Error Message: " + ace.getMessage());
   }
```

## Pengulangan Kesalahan dan Backoff Eksponensial
<a name="api-retries"></a>

Banyak komponen di jaringan, seperti server DNS, sakelar, penyeimbang beban, dan lainnya dapat menghasilkan kesalahan di mana pun selama permintaan tertentu.

Teknik biasa untuk menangani respons kesalahan ini dalam lingkungan jaringan adalah dengan menerapkan percobaan ulang dalam aplikasi klien. Teknik ini meningkatkan keandalan aplikasi dan mengurangi biaya operasional bagi developer.

Setiap AWS SDK yang mendukung Elastic Transcoder mengimplementasikan logika coba ulang otomatis. AWS SDK for Java secara otomatis mencoba ulang permintaan, dan Anda dapat mengonfigurasi pengaturan coba lagi menggunakan kelas. `ClientConfiguration` Misalnya, dalam beberapa kasus, seperti halaman web yang membuat permintaan dengan latensi minimal dan tidak ada percobaan ulang, Anda mungkin ingin mematikan logika coba lagi. Gunakan kelas `ClientConfiguration` dan berikan nilai `maxErrorRetry` `0` untuk mematikan percobaan ulang. 

Jika Anda tidak menggunakan AWS SDK, Anda harus mencoba kembali permintaan asli yang menerima kesalahan server (5xx). Namun, kesalahan klien (4xx, selain a `ThrottlingException` atau a`ProvisionedThroughputExceededException`) menunjukkan Anda perlu merevisi permintaan itu sendiri untuk memperbaiki masalah sebelum mencoba lagi. 

**catatan**  
Jika Anda melakukan polling untuk menentukan status permintaan, dan jika Elastic Transcoder mengembalikan kode status HTTP 429 dengan `Provisioned Throughput Exceeded Exception` kode `Throttling Exception` kesalahan atau, pertimbangkan untuk menggunakan notifikasi alih-alih polling untuk menentukan status. Untuk informasi selengkapnya, lihat [Pemberitahuan Status Job](notifications.md).

Selain percobaan ulang sederhana, sebaiknya gunakan algoritma backoff eksponensial untuk kontrol aliran yang lebih baik. Ide di balik backoff eksponensial adalah menggunakan waktu tunggu yang semakin lama antara percobaan ulang untuk respons kesalahan yang berurutan. Misalnya, Anda mungkin membiarkan satu detik berlalu sebelum percobaan ulang pertama, empat detik sebelum percobaan ulang kedua, 16 detik sebelum percobaan ulang ketiga, dan seterusnya. Namun, jika permintaan tidak berhasil setelah satu menit, masalahnya mungkin batas sulit dan bukan tingkat permintaan. Misalnya, Anda mungkin telah mencapai jumlah pipa maksimum yang diizinkan. Tetapkan jumlah maksimum percobaan ulang untuk berhenti sekitar satu menit.

Berikut ini adalah alur kerja yang menunjukkan logika coba lagi. Logika alur kerja pertama menentukan apakah kesalahan adalah kesalahan server (5xx). Kemudian, jika kesalahannya adalah kesalahan server, kode mencoba ulang permintaan asli.

```
currentRetry = 0
DO
  set retry to false

  execute Elastic Transcoder request

  IF Exception.errorCode = ProvisionedThroughputExceededException
    set retry to true
  ELSE IF Exception.httpStatusCode = 500
    set retry to true
  ELSE IF Exception.httpStatusCode = 400
    set retry to false 
    fix client error (4xx)

  IF retry = true  
    wait for (2^currentRetry * 50) milliseconds
    currentRetry = currentRetry + 1

WHILE (retry = true AND currentRetry < MaxNumberOfRetries)  // limit retries
```