Mengelola operasi yang berjalan lama

Halaman ini menjelaskan cara mengelola siklus proses operasi jangka panjang (LRO) Cloud Life Sciences API.

Operasi yang berjalan lama ditampilkan saat panggilan metode mungkin memerlukan waktu lama untuk diselesaikan. Cloud Life Sciences API membuat LRO setiap kali Anda memanggil projects.locations.pipelines.run atau gcloud beta lifesciences pipelines run. LRO melacak status pipeline.

Anda dapat menggunakan API operasi yang disediakan Cloud Life Sciences API untuk memeriksa status LRO. Anda juga dapat mencantumkan, melakukan polling, atau membatalkan LRO.

Saat memanggil Cloud Life Sciences API secara langsung, LRO dikelola di tingkat project dan lokasi Google Cloud. Saat membuat permintaan ke LRO secara langsung, sertakan project Google Cloud dan lokasi tempat LRO berjalan.

Jika Anda telah menyiapkan gcloud CLI, saat Anda memanggil Cloud Life Sciences API menggunakan gcloud CLI, permintaan Anda ke LRO hanya perlu berisi ID operasi. Project ID Google Cloud dan lokasi tempat LRO berjalan disertakan dari ID operasi.

Anda dapat mengelola LRO Cloud Life Sciences menggunakan konsol Google Cloud, Google Cloud CLI, atau dengan memanggil API secara langsung. Konsol Google Cloud tidak berisi semua detail tentang LRO yang tersedia saat menggunakan gcloud CLI dan memanggil Cloud Life Sciences API secara langsung.

Data LRO disimpan selama sekitar 30 hari setelah LRO selesai, yang berarti Anda tidak dapat melihat atau mencantumkan LRO setelah titik tersebut.

Mendapatkan detail tentang operasi yang berjalan lama

Contoh berikut menunjukkan cara mendapatkan detail tentang LRO.

Konsol

  1. Di konsol Google Cloud, buka halaman Life Sciences Pipelines.

    Buka halaman Pipeline Ilmu Hayati

  2. Daftar LRO dan statusnya akan ditampilkan. Temukan LRO yang Anda cari dan lihat statusnya. Nilai yang mungkin untuk kolom Status adalah Berjalan, Selesai, dan Gagal.

gcloud

Misalkan Anda menerima respons berikut setelah memanggil gcloud beta lifesciences pipelines run:

Running [projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID].

Respons menunjukkan bahwa Cloud Life Sciences API membuat LRO dengan ID operasi.

Untuk mendapatkan detail tentang LRO, jalankan perintah gcloud beta lifesciences operations describe, yang menentukan ID operasi.

gcloud beta lifesciences operations describe OPERATION_ID

Anda juga dapat mengambil ID operasi dengan mencantumkan operasi database yang berjalan lama.

Jika permintaan berhasil, command prompt akan menampilkan detail operasi. Output yang ditampilkan di sini diambil dari operasi pipeline di Panduan Memulai.

API

Untuk mendapatkan status dan melihat detail tentang LRO, panggil metode projects.locations.operations.get.

REST

Misalkan Anda menerima respons berikut setelah memanggil projects.locations.pipelines.run:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID"
}

Nilai name dalam respons menunjukkan bahwa Cloud Life Sciences API membuat LRO bernama projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID.

Anda juga dapat mengambil nama LRO dengan mencantumkan operasi yang berjalan lama.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID Google Cloud Anda
  • LOCATION: lokasi tempat LRO berjalan
  • OPERATION_ID: ID untuk LRO

Metode HTTP dan URL:

GET https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID" | Select-Object -Expand Content

APIs Explorer

Buka halaman referensi metode. Panel API Explorer terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.

Anda akan menerima respons JSON yang mirip dengan berikut ini. Output yang ditampilkan di sini diambil dari operasi pipeline di Panduan Memulai.

Mencantumkan operasi yang berjalan lama

Contoh berikut menunjukkan cara mencantumkan LRO di project dan lokasi Google Cloud.

Konsol

  1. Di konsol Google Cloud, buka halaman Life Sciences Pipelines.

    Buka halaman Pipeline Ilmu Hayati

  2. Daftar LRO dan statusnya akan ditampilkan. Nilai yang mungkin untuk kolom Status adalah Berjalan, Selesai, dan Gagal.

gcloud

Untuk mencantumkan LRO di project dan lokasi Google Cloud, jalankan perintah gcloud beta lifesciences operations list.

gcloud beta lifesciences operations list

Jika permintaan berhasil, command prompt akan mencantumkan LRO:

ID                    LOCATION     DONE
OPERATION_ID          LOCATION       {TRUE|FALSE}
...

API

Untuk mencantumkan LRO di project dan lokasi Google Cloud, panggil metode projects.locations.operations.list.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID Google Cloud Anda
  • LOCATION: lokasi tempat satu atau beberapa LRO berjalan

Metode HTTP dan URL:

GET https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations" | Select-Object -Expand Content

APIs Explorer

Buka halaman referensi metode. Panel API Explorer terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.

Anda akan melihat respons JSON seperti berikut:

{
  "operations": [
    {
      "name": "PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.lifesciences.v2beta.Metadata",
        "pipeline": {
          ...
        }
        "createTime": "CREATE_TIME",
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      },
      "done": true,
      "response": {
        "@type": "type.googleapis.com/cloud.lifesciences.pipelines.RunPipelineResponse"
      }
    },
    ...
  ]
}

Melakukan polling operasi yang berjalan lama

Contoh berikut menunjukkan cara melakukan polling status LRO.

Konsol

  1. Di konsol Google Cloud, buka halaman Life Sciences Pipelines.

    Buka halaman Pipeline Ilmu Hayati

  2. Daftar LRO dan statusnya akan ditampilkan. Klik ikon Refresh untuk melihat status terbaru LRO.

gcloud

Setelah memulai pipeline, Anda dapat melakukan polling LRO dengan menjalankan perintah gcloud beta lifesciences operations wait.

gcloud beta lifesciences operations wait OPERATION_ID

Jika permintaan berhasil, command prompt akan menampilkan hal berikut:

Waiting for [projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID] to complete...

Setelah operasi selesai, command prompt akan menampilkan hal berikut:

Waiting for [projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID] to complete...done.

API

Untuk melakukan polling pada LRO, panggil metode projects.locations.operations.get berulang kali hingga operasi selesai. Gunakan backoff di antara setiap permintaan polling, seperti 10 detik.

Sebelum menggunakan salah satu data permintaan di bawah, lakukan penggantian berikut:

  • PROJECT_ID: project ID Google Cloud Anda
  • LOCATION: lokasi tempat LRO berjalan
  • OPERATION_ID: ID untuk LRO

Metode HTTP dan URL:

GET https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut untuk melakukan polling status LRO setiap 10 detik:

while true; \
    do curl -X GET \
    -H "Authorization: Bearer "$(gcloud auth print-access-token) \
    "https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"; \
    sleep 10; \
    done

Anda akan menerima respons JSON yang mirip dengan berikut ini. Output yang ditampilkan di sini diambil dari operasi pipeline di Panduan Memulai. Setelah operasi selesai, respons akan berisi "done": true dan nilai di kolom endTime.

PowerShell

Jalankan perintah berikut untuk melakukan polling status LRO setiap sepuluh detik:

$cred = gcloud auth print-access-token
$headers = @{ Authorization = "Bearer $cred" }

Do {
  Invoke-WebRequest `
    -Method Get `
    -Headers $headers `
    -Uri "https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID" | Select-Object -Expand Content
sleep 10
}

while ($true)

Anda akan menerima respons JSON yang mirip dengan berikut ini. Output yang ditampilkan di sini diambil dari operasi pipeline di Panduan Memulai. Setelah operasi selesai, respons akan berisi "done": true dan nilai di kolom endTime.

Membatalkan operasi yang berjalan lama

Contoh berikut menunjukkan cara membatalkan LRO saat sedang berjalan.

Konsol

  1. Di konsol Google Cloud, buka halaman Life Sciences Pipelines.

    Buka halaman Pipeline Ilmu Hayati

  2. Klik ID LRO yang ingin Anda batalkan.
  3. Klik ikon Cancel.

gcloud

Untuk membatalkan LRO, jalankan perintah gcloud beta lifesciences operations cancel.

gcloud beta lifesciences operations cancel OPERATION_ID

Jika permintaan berhasil, perintah pembatalan akan ditampilkan:

Operation [OPERATION_ID] will be canceled.

Do you want to continue (Y/n)?  Y

Untuk mengonfirmasi, ketik Y. Setelah Anda mengonfirmasi pembatalan, respons akan menampilkan isi kosong.

Operation [OPERATION_ID] will be canceled.

Do you want to continue (Y/n)?  Y

{}

API

Untuk membatalkan LRO, panggil metode projects.locations.operations.cancel.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID Google Cloud Anda
  • LOCATION: lokasi tempat LRO berjalan
  • OPERATION_ID: ID untuk LRO

Metode HTTP dan URL:

POST https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID:cancel

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID:cancel"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID:cancel" | Select-Object -Expand Content

APIs Explorer

Buka halaman referensi metode. Panel API Explorer terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.

Anda akan melihat respons JSON seperti berikut:

{}