Untuk mengakses hasil eksekusi alur kerja, klik nama alur kerja untuk membuka halaman Detail alur kerja.
Untuk mengetahui detail tentang eksekusi tertentu, pada tab Executions, klik
ID eksekusi dalam daftar untuk membuka halaman Execution details.
Pada tab Ringkasan, setiap eksekusi memiliki informasi berikut:
ID Eksekusi: ID unik eksekusi alur kerja.
Status eksekusi: menunjukkan status akhir alur kerja, termasuk
langkah alur kerja saat ini atau akhir.
Eksekusi dibuat: saat eksekusi dimulai.
Awal eksekusi: saat eksekusi mulai berjalan dan mengeksekusi langkah-langkah.
Akhir eksekusi: saat eksekusi berakhir.
Durasi eksekusi: total waktu yang berlalu. Hal ini dapat menjadi indikasi
error jaringan atau masalah konektivitas.
Nama alur kerja: nama alur kerja.
Revisi alur kerja: revisi saat ini pada saat eksekusi.
Level log panggilan: level logging panggilan yang diterapkan selama
eksekusi. Untuk mengetahui informasi selengkapnya, lihat
Logging panggilan.
Input: argumen runtime yang diteruskan ke alur kerja, jika ada.
Output: output alur kerja. Jika eksekusi gagal, sertakan pengecualian yang menyebabkan kegagalan eksekusi. Dalam dokumen ini, lihat
Peta error eksekusi.
Untuk melihat histori eksekusi alur kerja sebagai daftar entri langkah, klik tab Steps. Untuk mengetahui informasi selengkapnya, lihat
Melihat histori langkah eksekusi.
Untuk melihat log eksekusi alur kerja, klik tab Logs.
Untuk memfilter log eksekusi, gunakan kolom Filter di bagian atas
tabel. Misalnya, untuk hanya menampilkan upaya eksekusi yang gagal, masukkan
failed di kolom teks filter.
gcloud
Untuk melihat daftar lengkap eksekusi alur kerja, masukkan perintah
berikut:
gcloudworkflowsexecutionslistWORKFLOW_NAME
Ganti WORKFLOW_NAME dengan nama alur kerja Anda.
Salin ID eksekusi dari eksekusi yang Anda minati.
Untuk melihat log eksekusi alur kerja, masukkan perintah berikut:
argument: argumen runtime yang diteruskan ke alur kerja, jika ada
endTime: saat eksekusi berakhir
error: pesan error yang ditampilkan sebagai bagian dari pengecualian yang
mengakibatkan kegagalan eksekusi
name: nama lengkap eksekusi, termasuk nama project, lokasi alur kerja, nama alur kerja, dan ID eksekusi
startTime: saat eksekusi dimulai
state: menunjukkan status akhir alur kerja
status: langkah alur kerja saat ini atau akhir dari eksekusi
workflowRevisionID: revisi saat ini pada saat eksekusi
Peta error eksekusi
Jika alur kerja menampilkan error selama eksekusi yang tidak tertangkap dalam
blok try/except, eksekusi akan gagal, dan peta error (kamus JSON) yang menjelaskan error akan ditampilkan.
Error yang ditampilkan selama eksekusi alur kerja berisi tag untuk membantu Anda mengidentifikasi hal yang menyebabkan error. Misalnya, error yang ditampilkan dari konektor dapat memiliki dua kunci (tags dan message) yang mirip dengan berikut ini:
{'tags': ['SystemError'], 'message': 'an error has occurred'}
Bisa lebih dari satu tag. Untuk memeriksa tag tertentu, Anda dapat menggunakan
ekspresi. Contoh:
${'SystemError' in e.tags}
Data error akses yang ditampilkan sebagai string
Beberapa konektor dan API HTTP akan melakukan serialisasi error sebagai string sebelum menampilkan error. Anda dapat menggunakan fungsi library standar untuk memulihkan payload ke
error asli. Misalnya, untuk mengonversi string error menjadi peta, Anda dapat menggunakan fungsi json.decode dan text.encode:
json.decode(text.encode(ERROR_FROM_API))
Tag error
Tabel berikut menjelaskan arti berbagai tag error.
Tag
Deskripsi
AuthError
Dimunculkan saat pembuatan kredensial untuk permintaan HTTP gagal.
ConnectionError
Dimunculkan saat koneksi berhasil dibuat dengan endpoint, tetapi ada masalah dengan koneksi selama transfer data. Koneksi
dihentikan sebelum respons lengkap diterima dan pesan
mungkin belum dikirim ke endpoint. Percobaan ulang mungkin tidak
idempoten.
ConnectionFailedError
Dimunculkan saat koneksi tidak dibuat dengan endpoint API; misalnya, karena nama domain salah, masalah resolusi DNS, atau masalah jaringan lainnya. Percobaan ulang bersifat idempoten.
Dimunculkan saat beberapa batas resource habis. Jika ditampilkan secara internal,
jenis error ini tidak dapat ditangkap dan menyebabkan kegagalan eksekusi
langsung.
ResponseTypeError
Dimunculkan saat operasi yang berjalan lama menampilkan respons dengan jenis yang salah.
SystemError
Dimunculkan saat penafsir menemukan error internal.
TimeoutError
Dimunculkan saat waktu tunggu fungsi sistem habis di tingkat sistem.
TypeError
Dimunculkan saat operasi atau fungsi diterapkan ke objek
jenis yang tidak kompatibel. Nilai terkait adalah string yang memberikan detail tentang
ketidakcocokan jenis.
UnhandledBranchError
Dimunculkan saat satu atau beberapa cabang atau iterasi mengalami error runtime yang tidak ditangani hingga jumlah maksimum.
ValueError
Dimunculkan saat operasi atau fungsi menerima argumen yang memiliki
jenis yang benar, tetapi nilainya salah, dan situasinya tidak dijelaskan
oleh pengecualian yang lebih akurat, seperti IndexError.
ZeroDivisionError
Dimunculkan saat argumen kedua dari operasi pembagian atau modulo adalah
nol. Nilai terkait adalah string yang menunjukkan jenis
operan dan operasi.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-08-18 UTC."],[],[],null,["# Access workflow execution results\n\nAfter you [execute a workflow](/workflows/docs/executing-workflow), you can\naccess workflow execution results in the Google Cloud console or by using the\nGoogle Cloud CLI. \n\n### Console\n\n1. In the Google Cloud console, go to the **Workflows** page.\n\n\n [Go to Workflows](https://console.cloud.google.com/workflows)\n\n \u003cbr /\u003e\n\n2. To access a workflow's execution results, click the workflow's name to go\n to its **Workflow details** page.\n\n3. For details about a particular execution, on the **Executions** tab, click\n the execution ID in the list to go to its **Execution details** page.\n\n | **Note:** To access the **Execution details** page, you must have a role that contains the `workflows.workflows.get`, `workflows.executions.get`, and `workflows.stepEntries.list` permissions. For more information, see [Workflows roles and\n | permissions](/workflows/docs/access-control) and [Manage access](/iam/docs/granting-changing-revoking-access).\n4. On the **Summary** tab, each execution has the following information:\n\n - **Execution ID**: the unique identifier of the workflow execution.\n - **Execution state**: indicates the workflow's end state, including the current or final workflow step.\n - **Execution created**: when the execution was initiated.\n - **Execution start**: when the execution began running and executing steps.\n - **Execution end**: when the execution ended.\n - **Execution duration**: total time elapsed. This can be an indication of network errors or connectivity problems.\n - **Workflow name**: the workflow name.\n - **Workflow revision**: the current revision at the time of execution.\n - **Call log level** : the level of call logging applied during the execution. For more information, see [Call logging](/workflows/docs/log-workflow#call_logging).\n - **Input**: the runtime arguments passed to the workflow, if any.\n - **Output** : the workflow's output. If the execution failed, includes the exception that led to the execution's failure. In this document, see [Execution error maps](#execution_errors).\n5. To view the workflow execution history as a list of step entries, click the\n **Steps** tab. For more information, see\n [View history of execution steps](/workflows/docs/debug-steps).\n\n6. To view the logs for a workflow execution, click the **Logs** tab.\n\n7. To filter the execution logs, use the **Filter** field at the top of the\n table. For example, to display only failed execution attempts, enter\n `failed` in the filter's text field.\n\n### gcloud\n\n1. To see a full list of a workflow's executions, enter the following\n command:\n\n gcloud workflows executions list \u003cvar translate=\"no\"\u003eWORKFLOW_NAME\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eWORKFLOW_NAME\u003c/var\u003e with your workflow's name.\n Copy the execution ID of the execution you're interested in.\n2. To view a workflow's execution logs, enter the following command:\n\n gcloud workflows executions describe \\\n --workflow=\u003cvar translate=\"no\"\u003eWORKFLOW_NAME\u003c/var\u003e \\\n \u003cvar translate=\"no\"\u003eEXECUTION_ID\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eWORKFLOW_NAME\u003c/var\u003e: the workflow's name\n - \u003cvar translate=\"no\"\u003eEXECUTION_ID\u003c/var\u003e: the execution's unique ID\n\n This command returns output similar to the following: \n\n ```bash\n argument: 'null'\n endTime: '2022-07-19T12:40:07.070039707Z'\n error:\n context: |-\n The argument of 'in' must be a dict or an array; got: null\n in step \"checkSearchTermInInput\", routine \"main\", line: 12\n payload: \"{\"message\":\"The argument of 'in' must be a dict or an array; got: null\"\n\n ,\"tags\":[\"TypeError\"]}\"\n stackTrace:\n elements:\n - position:\n column: '26'\n length: '24'\n line: '12'\n routine: main\n step: checkSearchTermInInput\n name: projects/1051295516635/locations/us-central1/workflows/myFirstWorkflow/executions/17ffc89c-0a27-4d2f-8356-e681d949a3d3\n startTime: '2022-07-19T12:40:07.024823663Z'\n state: FAILED\n status:\n currentSteps:\n - routine: main\n step: checkSearchTermInInput\n workflowRevisionId: 000001-ac2\n ```\n The output contains the following information:\n\n \u003cbr /\u003e\n\n - `argument`: the runtime arguments passed to the workflow, if any\n - `endTime`: when the execution ended\n - `error`: the error message thrown as a part of the exception that resulted in the execution's failure\n - `name`: the full name of the execution, including the name of the project, the location of the workflow, the name of the workflow, and the execution ID\n - `startTime`: when the execution began\n - `state`: indicates the workflow's end state\n - `status`: the current or final workflow step of the execution\n - `workflowRevisionID`: the current revision at the time of the execution\n\n### Execution error maps\n\nWhen a workflow throws an error during execution that isn't caught in a\n[`try/except` block](/workflows/docs/reference/syntax/catching-errors), the\nexecution fails, and an error map (a JSON dictionary) describing the error is\nreturned.\n\nErrors thrown during workflow execution contain tags to help you identify what\ncaused the error. For example, the error returned from a connector can have two\nkeys (`tags` and `message`) similar to the following:\n\n`{'tags': ['SystemError'], 'message': 'an error has occurred'}`\n\nThere can be more than one tag. To check for a specific tag, you can use an\n[expression](/workflows/docs/reference/syntax/expressions). For example:\n\n`${'SystemError' in e.tags}`\n\n### Access error data returned as a string\n\nSome connectors and HTTP APIs will serialize errors as strings before returning\nthe errors. You can use standard library functions to restore a payload to the\noriginal error. For example, to convert an error string to a map, you can use\nthe [`json.decode`](/workflows/docs/reference/stdlib/json/decode)\nand [`text.encode`](/workflows/docs/reference/stdlib/text/encode) functions: \n\n```bash\njson.decode(text.encode(ERROR_FROM_API))\n```\n\n### Error tags\n\nThe following table describes the meaning of different error tags.\n\nYou can also [raise custom errors](/workflows/docs/reference/syntax/raising-errors)\nusing the `raise` syntax.\n\nWhat's next\n-----------\n\n- [Debugging overview](/workflows/docs/debug)\n- [Known issues for Workflows](/workflows/docs/issues)\n- [Send execution logs to Cloud Logging](/workflows/docs/log-workflow)\n- [Troubleshoot issues](/workflows/docs/troubleshooting)"]]