Halaman ini memberikan informasi untuk membantu Anda memantau dan men-debug alur kerja Dataproc.
Alur kerja listingan
WorkflowTemplate yang dibuat instance-nya disebut "alur kerja" dan dimodelkan sebagai "operasi".
Jalankan perintah gcloud
berikut untuk mencantumkan alur kerja project Anda:
gcloud dataproc operations list \ --region=region \ --filter="operationType = WORKFLOW"
... OPERATION_NAME DONE projects/.../operations/07282b66-2c60-4919-9154-13bd4f03a1f2 True projects/.../operations/1c0b0fd5-839a-4ad4-9a57-bbb011956690 True
Berikut adalah contoh permintaan untuk mencantumkan semua alur kerja yang dimulai dari template "terasort":
gcloud dataproc operations list \ --region=region \ --filter="labels.goog-dataproc-workflow-template-id=terasort"
... OPERATION_NAME DONE projects/.../07282b66-2c60-4919-9154-13bd4f03a1f2 True projects/.../1c0b0fd5-839a-4ad4-9a57-bbb011956690 True
Perhatikan bahwa hanya bagian UUID OPERATION_NAME
yang digunakan dalam kueri
berikutnya.
Menggunakan WorkflowMetadata
Kolom operation.metadata
menyediakan informasi untuk membantu Anda mendiagnosis
kegagalan alur kerja.
Berikut ini contoh
WorkflowMetadata
,
termasuk grafik node (tugas), yang disematkan dalam operasi:
{ "name": "projects/my-project/regions/us-central1/operations/671c1d5d-9d24-4cc7-8c93-846e0f886d6e", "metadata": { "@type": "type.googleapis.com/google.cloud.dataproc.v1.WorkflowMetadata", "template": "terasort", "version": 1, "createCluster": { "operationId": "projects/my-project/regions/us-central1/operations/8d472870-4a8b-4609-9f7d-48daccb028fc", "Done": true }, "graph": { "nodes": [ { "stepId": "teragen", "jobId": "teragen-vtrprwcgepyny", "state": "COMPLETED" }, { "stepId": "terasort", "prerequisiteStepIds": [ "teragen" ], "jobId": "terasort-vtrprwcgepyny", "state": "FAILED", "error": "Job failed" }, { "stepId": "teravalidate", "prerequisiteStepIds": [ "terasort" ], "state": "FAILED", "error": "Skipped, node terasort failed" } ] }, "deleteCluster": { "operationId": "projects/my-project/regions/us-central1/operations/9654c67b-2642-4142-a145-ca908e7c81c9", "Done": true }, "state": "DONE", "clusterName": "terasort-cluster-vtrprwcgepyny" }, "done": true, "error": { "message": "Workflow failed" } } Done!
Mengambil template
Seperti ditunjukkan pada contoh sebelumnya, metadata
berisi ID dan versi template.
"template": "terasort", "version": 1,
Jika template tidak dihapus, versi template yang dibuat instance-nya dapat diambil melalui permintaan deskripsi dengan versi.
gcloud dataproc workflow-templates describe terasort \ --region=region \ --version=1
Menampilkan daftar operasi cluster yang dimulai oleh template:
gcloud dataproc operations list \ --region=region \ --filter="labels.goog-dataproc-workflow-instance-id = 07282b66-2c60-4919-9154-13bd4f03a1f2"
... OPERATION_NAME DONE projects/.../cf9ce692-d6c9-4671-a909-09fd62041024 True projects/.../1bbaefd9-7fd9-460f-9adf-ee9bc448b8b7 True
Berikut adalah contoh permintaan untuk mencantumkan tugas yang dikirim dari template:
gcloud dataproc jobs list \ --region=region \ --filter="labels.goog-dataproc-workflow-template-id = terasort"
... JOB_ID TYPE STATUS terasort2-ci2ejdq2ta7l6 pyspark DONE terasort2-ci2ejdq2ta7l6 pyspark DONE terasort1-ci2ejdq2ta7l6 pyspark DONE terasort3-3xwsy6ubbs4ak pyspark DONE terasort2-3xwsy6ubbs4ak pyspark DONE terasort1-3xwsy6ubbs4ak pyspark DONE terasort3-ajov4nptsllti pyspark DONE terasort2-ajov4nptsllti pyspark DONE terasort1-ajov4nptsllti pyspark DONE terasort1-b262xachbv6c4 pyspark DONE terasort1-cryvid3kreea2 pyspark DONE terasort1-ndprn46nesbv4 pyspark DONE terasort1-yznruxam4ppxi pyspark DONE terasort1-ttjbhpqmw55t6 pyspark DONE terasort1-d7svwzloplbni pyspark DONE
Cantumkan tugas yang dikirim dari instance alur kerja:
gcloud dataproc jobs list \ --region=region \ --filter="labels.goog-dataproc-workflow-instance-id = 07282b66-2c60-4919-9154-13bd4f03a1f2"
... JOB_ID TYPE STATUS terasort3-ci2ejdq2ta7l6 pyspark DONE terasort2-ci2ejdq2ta7l6 pyspark DONE terasort1-ci2ejdq2ta7l6 pyspark DONE
Waktu tunggu alur kerja
Anda dapat menetapkan waktu tunggu alur kerja yang akan membatalkan alur kerja jika tugas alur kerja tidak selesai dalam periode waktu tunggu. Periode waktu tunggu berlaku untuk DAG (Directed Acyclic Graph) tugas dalam alur kerja (urutan tugas dalam alur kerja), bukan untuk seluruh operasi alur kerja. Periode waktu tunggu dimulai saat tugas alur kerja pertama dimulai. Periode ini tidak termasuk waktu yang dibutuhkan untuk membuat cluster terkelola. Jika ada tugas yang berjalan pada akhir periode waktu tunggu, semua tugas yang sedang berjalan akan dihentikan, alur kerja akan berakhir, dan jika alur kerja berjalan pada cluster terkelola, cluster akan dihapus.
Manfaat: Gunakan fitur ini agar tidak perlu mengakhiri alur kerja yang tidak selesai secara manual karena tugas yang macet.
Menyetel waktu tunggu template alur kerja
Anda dapat menetapkan periode waktu tunggu template alur kerja saat membuat template alur kerja. Anda juga dapat menambahkan waktu tunggu alur kerja ke template alur kerja yang ada dengan memperbarui template alur kerja.
gcloud
Untuk menetapkan waktu tunggu alur kerja pada template baru, gunakan tanda --dag-timeout
dengan perintah gcloud dataproc Workflow-templates create. Anda dapat menggunakan akhiran "s", "m", "h", dan "d"
untuk menetapkan nilai durasi detik, menit, jam, dan hari secara berurutan. Durasi waktu tunggu
harus dari 10 menit ("10 mnt") hingga 24 jam ("24 jam" atau "1 hari").
gcloud dataproc workflow-templates create template-id (such as "my-workflow") \ --region=region \ --dag-timeout=duration (from "10m" to "24h" or "1d"") \ ... other args ...
API
Untuk menetapkan waktu tunggu alur kerja, lengkapi kolom WorkflowTemplate
dagTimeout
sebagai bagian dari permintaan workflowTemplates.create.
Konsol
Saat ini, konsol Google Cloud tidak mendukung pembuatan template alur kerja.
Memperbarui waktu tunggu template alur kerja
Anda dapat memperbarui template alur kerja yang ada untuk mengubah, menambahkan, atau menghapus waktu tunggu alur kerja.
gcloud
Menambahkan atau mengubah waktu tunggu alur kerja
Untuk menambahkan atau mengubah waktu tunggu alur kerja pada template yang sudah ada, gunakan flag --dag-timeout
dengan perintah gcloud dataproc Workflow-templates set-dag-timeout. Anda dapat menggunakan akhiran "s", "m", "h", dan "d" untuk menetapkan nilai durasi detik, menit, jam, dan hari secara berurutan. Durasi waktu tunggu harus dari
10 menit ("10 mnt") hingga 24 jam ("24 jam").
gcloud dataproc workflow-templates set-dag-timeout template-id (such as "my-workflow") \ --region=region \ --dag-timeout=duration (from "10m" to "24h" or "1d")
Menghapus waktu tunggu alur kerja
Untuk menghapus waktu tunggu alur kerja dari template yang ada, gunakan perintah gcloud dataproc Workflow-templates remove-dag-timeout.
gcloud dataproc workflow-templates remove-dag-timeout template-id (such as "my-workflow") \ --region=region
API
Menambahkan atau mengubah waktu tunggu alur kerja
Untuk menambahkan atau mengubah waktu tunggu alur kerja pada template yang ada,
perbarui template alur kerja
dengan mengisi kolom
dagTimeout
template dengan nilai waktu tunggu baru atau yang telah diubah.
Menghapus waktu tunggu alur kerja
Untuk menghapus waktu tunggu alur kerja dari template yang ada,
perbarui template alur kerja
dengan menghapus kolom
dagTimeout
template.
Konsol
Saat ini, konsol Google Cloud tidak mendukung update template alur kerja.