Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Debug langkah yang disempurnakan
Jika langkah Amazon EMR gagal dan Anda mengirimkan pekerjaan Anda menggunakan operasi API langkah dengan AMI versi 5.x atau yang lebih baru, Amazon EMR dapat mengidentifikasi dan mengembalikan akar masalah kegagalan langkah dalam beberapa kasus, bersama dengan nama berkas log yang relevan dan sebagian dari jejak tumpukan aplikasi melalui API. Misalnya, kegagalan berikut dapat diidentifikasi:
-
Kesalahan Hadoop umum seperti direktori output sudah ada, direktori input tidak ada, atau aplikasi kehabisan memori.
-
Kesalahan Java seperti aplikasi yang dikompilasi dengan versi Java yang tidak kompatibel atau dijalankan dengan kelas utama yang tidak ditemukan.
-
Masalah mengakses objek yang disimpan di Amazon S3.
Informasi ini tersedia menggunakan operasi DescribeStepdan ListStepsAPI. FailureDetailsBidang yang StepSummarydikembalikan oleh operasi tersebut. Untuk mengakses FailureDetails informasi, gunakan AWS CLI, konsol, atau AWS SDK.
Kami telah mendesain ulang konsol EMR Amazon agar lebih mudah digunakan. Lihat Konsol Amazon EMR untuk mempelajari tentang perbedaan antara pengalaman konsol lama dan baru.
- New console
-
Konsol EMR Amazon baru tidak menawarkan langkah debugging. Namun, Anda dapat melihat detail terminasi cluster dengan langkah-langkah berikut.
- Old console
-
Untuk melihat detail kegagalan dengan konsol lama
Arahkan ke konsol EMR Amazon baru dan pilih Beralih ke konsol lama dari navigasi samping. Untuk informasi selengkapnya tentang apa yang diharapkan saat beralih ke konsol lama, lihat Menggunakan konsol lama.
-
Pilih Daftar Klaster dan pilih sebuah klaster.
-
Pilih ikon panah di samping setiap langkah untuk melihat detail lainnya. Jika langkah telah gagal dan Amazon EMR dapat mengidentifikasi akar masalah, Anda melihat detail kegagalan.
- CLI
-
Untuk melihat detail kegagalan dengan AWS CLI
-
Untuk mendapatkan detail kegagalan untuk langkah dengan AWS CLI, gunakan describe-step
perintah.
aws emr describe-step --cluster-id j-1K48XXXXXHCB --step-id s-3QM0XXXXXM1W
Output akan terlihat serupa dengan yang berikut ini:
{
"Step": {
"Status": {
"FailureDetails": {
"LogFile": "s3://myBucket/logs/j-1K48XXXXXHCB/steps/s-3QM0XXXXXM1W/stderr.gz",
"Message": "org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory s3://myBucket/logs/beta already exists",
"Reason": "Output directory already exists."
},
"Timeline": {
"EndDateTime": 1469034209.143,
"CreationDateTime": 1469033847.105,
"StartDateTime": 1469034202.881
},
"State": "FAILED",
"StateChangeReason": {}
},
"Config": {
"Args": [
"wordcount",
"s3://myBucket/input/input.txt",
"s3://myBucket/logs/beta"
],
"Jar": "s3://myBucket/jars/hadoop-mapreduce-examples-2.7.2-amzn-1.jar",
"Properties": {}
},
"Id": "s-3QM0XXXXXM1W",
"ActionOnFailure": "CONTINUE",
"Name": "ExampleJob"
}
}