Pengantar Cloud Operations Suite

1. Pengantar

Terakhir diperbarui: 28-07-2023

Apa itu Google Cloud Operations Suite?

Google Cloud Operations Suite adalah platform tempat Anda dapat memantau, memecahkan masalah, dan meningkatkan performa aplikasi di lingkungan Google Cloud. Pilar Utama Cloud Operations Suite meliputi Cloud Monitoring, Cloud Logging, dan Cloud Tracing.

Tonton video ini untuk mendapatkan ringkasan umum tentang Google Cloud Operations.

Yang akan Anda bangun

Dalam codelab ini, Anda akan men-deploy API contoh di Google Cloud. Kemudian, Anda akan mempelajari dan mengonfigurasi beberapa fitur di Cloud Monitoring terhadap API.

Yang akan Anda pelajari

  • Penggunaan Cloud Shell Google Cloud untuk men-deploy aplikasi contoh ke Cloud Run.
  • Penggunaan fitur Google Cloud Monitoring seperti Dasbor, Pemberitahuan, Cek Uptime, Pemantauan SLI/SLO, dan banyak lagi.

Yang Anda butuhkan

  • Chrome versi terbaru (74 atau yang lebih baru)
  • Akun Google Cloud dan Project Google Cloud

2. Penyiapan dan Persyaratan

Penyiapan lingkungan mandiri

Jika belum memiliki Akun Google (Gmail atau Google Apps), Anda harus membuatnya. Login ke Google Cloud Platform console (console.cloud.google.com) dan buat project baru.

b35bf95b8bf3d5d8.png

a99b7ace416376c4.png

c20a9642aaa18d11.png

  • Nama project adalah nama tampilan untuk peserta project ini. String ini adalah string karakter yang tidak digunakan oleh Google API. Anda dapat memperbaruinya kapan saja.
  • Project ID harus unik di semua project Google Cloud dan tidak dapat diubah (tidak dapat diubah setelah ditetapkan). Cloud Console otomatis membuat string unik; biasanya Anda tidak peduli tentang apa itu. Di sebagian besar codelab, Anda harus mereferensikan Project ID (biasanya diidentifikasi sebagai PROJECT_ID). Jika Anda tidak menyukai ID yang dihasilkan, Anda dapat membuat ID acak lainnya. Atau, Anda dapat mencobanya sendiri dan lihat apakah ID tersebut tersedia. ID tidak dapat diubah setelah langkah ini dan akan tetap ada selama durasi project.
  • Sebagai informasi, ada nilai ketiga, Nomor Project yang digunakan oleh beberapa API. Pelajari lebih lanjut ketiga nilai ini di dokumentasi.

Perhatian: Project ID harus unik secara global dan tidak dapat digunakan orang lain setelah Anda memilihnya. Anda adalah satu-satunya pengguna ID tersebut. Meskipun project sudah dihapus, ID tersebut tidak akan dapat digunakan lagi

  1. Selanjutnya, Anda harus mengaktifkan penagihan di Konsol Cloud untuk menggunakan resource/API Cloud. Menjalankan operasi dalam codelab ini seharusnya tidak memerlukan banyak biaya, bahkan mungkin tidak sama sekali. Untuk mematikan resource agar tidak menimbulkan penagihan di luar tutorial ini, Anda dapat menghapus resource yang dibuat atau menghapus seluruh project. Pengguna baru Google Cloud memenuhi syarat untuk mengikuti program Uji Coba Gratis senilai $300 USD.

Penyiapan Google Cloud Shell

Meskipun Google Cloud dan Google Cloud Trace dapat dioperasikan secara jarak jauh dari laptop Anda, dalam codelab ini kita akan menggunakan Google Cloud Shell, yaitu lingkungan command line yang berjalan di Cloud.

Untuk mengaktifkan Cloud Shell dari Konsol Cloud, cukup klik Aktifkan Cloud Shell (hanya perlu waktu beberapa saat untuk melakukan penyediaan dan terhubung ke lingkungan).

30c26f30d17b3d46.pngS

Jika belum pernah memulai Cloud Shell, Anda akan melihat layar perantara (di paruh bawah) yang menjelaskan apa itu Cloud Shell. Jika demikian, klik Lanjutkan (dan Anda tidak akan pernah melihatnya lagi). Berikut tampilan layar sekali-tampil tersebut:

9c92662c6a846a5c.pngS

Perlu waktu beberapa saat untuk penyediaan dan terhubung ke Cloud Shell.

9f0e51b578fecce5.pngS

Mesin virtual ini dimuat dengan semua alat pengembangan yang Anda butuhkan. Layanan ini menawarkan direktori beranda tetap sebesar 5 GB dan beroperasi di Google Cloud, sehingga sangat meningkatkan performa dan autentikasi jaringan. Sebagian besar pekerjaan Anda dalam codelab ini dapat dilakukan hanya dengan browser atau Chromebook.

Setelah terhubung ke Cloud Shell, Anda akan melihat bahwa Anda sudah diautentikasi dan project sudah ditetapkan ke project ID Anda.

Jalankan perintah berikut di Cloud Shell untuk mengonfirmasi bahwa Anda telah diautentikasi:

Setelah terhubung ke Cloud Shell, Anda akan melihat bahwa Anda sudah diautentikasi dan project sudah ditetapkan ke PROJECT_ID.

gcloud auth list

Output perintah

Credentialed accounts:
 - <myaccount>@<mydomain>.com (active)
gcloud config list project

Output perintah

[core]
project = <PROJECT_ID>

Jika, untuk beberapa alasan, project belum disetel, cukup jalankan perintah berikut:

gcloud config set project <PROJECT_ID>

Cloud Shell juga menetapkan beberapa variabel lingkungan secara default, yang mungkin berguna saat Anda menjalankan perintah di masa mendatang.

echo $GOOGLE_CLOUD_PROJECT

Output perintah

<PROJECT_ID>

Aplikasi Sampel

Kami telah memasukkan semua yang Anda perlukan untuk project ini ke dalam repo Git. Repo ini berisi beberapa aplikasi contoh dan Anda dapat memilih untuk menggunakan salah satunya untuk latihan ini.

Link repo Git: https://github.com/rominirani/cloud-code-sample-repository

3. Men-deploy aplikasi API

Apa yang dimaksud dengan aplikasi contoh atau API tersebut?

Aplikasi kita adalah aplikasi Inventory API sederhana yang mengekspos Endpoint REST API dengan beberapa operasi untuk mencantumkan item inventaris dan mendapatkan jumlah inventaris item tertentu.

Setelah kita men-deploy API dan mengasumsikan bahwa API tersebut dihosting di https://&lt;somehost&gt;, kita dapat mengakses endpoint API sebagai berikut:

  • https://&lt;somehost&gt;/inventory

Tindakan ini akan mencantumkan semua item produk dengan tingkat inventaris di tangan.

  • https://&lt;somehost&gt;/inventory/{productid}

Tindakan ini akan memberikan satu data dengan id produk dan tingkat inventaris langsung untuk produk tersebut.

Data respons yang ditampilkan menggunakan format JSON.

Data Contoh dan Permintaan/Respons API

Aplikasi tidak didukung oleh database di backend untuk menyederhanakan semuanya. Contoh ID produk ini berisi 3 contoh ID produk dan tingkat inventarisnya.

ID Produk

Tingkat Inventaris Manual

I-1

10

I-2

20

I-3

30

Contoh Permintaan dan Respons API ditampilkan di bawah ini:

Permintaan API

Respons API

https://&lt;somehost&gt;/inventory

[ { &quot;I-1&quot;: 10, &quot;I-2&quot;: 20, &quot;I-3&quot;: 30 }]

https://&lt;somehost&gt;/inventory/I-1

{ &quot;productid&quot;: &quot;I-1&quot;, &quot;qty&quot;: 10}

https://&lt;somehost&gt;/inventory/I-2

{ &quot;productid&quot;: &quot;I-2&quot;, &quot;qty&quot;: 20}

https://&lt;somehost&gt;/inventory/I-200

{ &quot;productid&quot;: I-200, &quot;qty&quot;: -1}

Membuat Clone Repositori

Meskipun Google Cloud dapat dioperasikan dari jarak jauh menggunakan laptop Anda, dalam codelab ini, Anda akan menggunakan Google Cloud Shell, lingkungan command line yang berjalan di Cloud.

Dari GCP Console, klik ikon Cloud Shell di toolbar kanan atas:

bce75f34b2c53987.png

Hanya perlu waktu beberapa saat untuk penyediaan dan terhubung ke lingkungan. Jika sudah selesai, Anda akan melihat tampilan seperti ini:

f6ef2b5f13479f3a.png

Mesin virtual ini berisi semua alat pengembangan yang Anda perlukan. Layanan ini menawarkan direktori beranda tetap sebesar 5 GB dan beroperasi di Google Cloud, sehingga sangat meningkatkan performa dan autentikasi jaringan. Semua pekerjaan Anda di lab ini dapat dilakukan hanya dengan browser.

Menyiapkan gcloud

Di Cloud Shell, tetapkan project ID Anda dan simpan sebagai variabel PROJECT_ID.

PROJECT_ID=[YOUR-PROJECT-ID]
gcloud config set project $PROJECT_ID

Sekarang, jalankan perintah berikut:

$ git clone https://github.com/rominirani/cloud-code-sample-repository.git 

Tindakan ini akan membuat folder berjudul cloud-code-sample-repository dalam folder ini.

(Opsional) Jalankan aplikasi di Cloud Shell

Anda dapat menjalankan aplikasi secara lokal dengan mengikuti langkah-langkah berikut:

  1. Dari terminal, buka versi Python API melalui perintah berikut:
$ cd cloud-code-sample-repository
$ cd python-flask-api
  1. Di terminal, berikan perintah berikut (Pada saat penulisan, Cloud Shell dilengkapi dengan Python 3.9.x yang terinstal dan kita akan menggunakan versi default-nya. Jika Anda berencana untuk menjalankannya secara lokal di laptop Anda, Anda dapat menggunakan Python 3.8+) :
$ python app.py
  1. Anda dapat menjalankan perintah berikut untuk memulai Server Python secara lokal.

26570f586acaeacf.pngS

  1. Tindakan ini akan memulai server pada port 8080 dan Anda dapat mengujinya secara lokal melalui fitur Pratinjau Web Cloud Shell. Klik tombol Web Preview seperti yang ditunjukkan di bawah ini:

675d9b3097a6209c.pngS

Klik Preview pada port 8080.

  1. Tindakan ini akan membuka jendela browser. Anda akan melihat pesan {i>Error<i} 404 dan itu bukan masalah. Ubah URL dan ubah menjadi hanya berisi /inventory setelah nama host.

Misalnya, di komputer saya, terlihat seperti ini:

https://8080-cs-557561579860-default.cs-asia-southeast1-yelo.cloudshell.dev/inventory

Tindakan ini akan menampilkan daftar item inventaris seperti yang dijelaskan sebelumnya:

ef6afb0184c58870.png

  1. Anda dapat menghentikan server sekarang dengan membuka Terminal dan menekan Ctrl-C

Men-deploy aplikasi

Sekarang kita akan men-deploy aplikasi API ini ke Cloud Run. Proses ini melibatkan penggunaan klien command line glcoud untuk menjalankan perintah guna men-deploy kode ke Cloud Run.

Dari terminal, berikan perintah gcloud berikut:

$ gcloud run deploy --source .

Langkah ini akan mengajukan beberapa pertanyaan (jika diminta untuk memberikan otorisasi, silakan lanjutkan) dan beberapa poinnya disebutkan di bawah ini. Anda mungkin akan mendapatkan semua pertanyaan atau mungkin tidak, bergantung pada konfigurasi dan apakah Anda telah mengaktifkan API tertentu di project Google Cloud Anda.

  1. Nama layanan (python-flask-api): Gunakan setelan default ini atau gunakan my-inventory-api
  2. API [run.googleapis.com] tidak diaktifkan di project [project-number]. Apakah Anda ingin mengaktifkan dan mencoba lagi (proses ini memerlukan waktu beberapa menit)? (y/T)? Y
  3. Tentukan wilayah: Pilih wilayah pilihan Anda dengan memberikan angka.
  4. API [artifactregistry.googleapis.com] tidak diaktifkan pada project [project-number]. Apakah Anda ingin mengaktifkan dan mencoba lagi (proses ini memerlukan waktu beberapa menit)? (y/T)? Y
  5. Men-deploy dari sumber memerlukan repositori Docker Artifact Registry untuk menyimpan container yang dibangun. Repositori bernama [cloud-run-source-deploy] di region [us-west1] akan dibuat.

Ingin melanjutkan (Y/t)? Y

  1. Izinkan pemanggilan yang tidak diautentikasi ke [my-inventory-api] (y/N)? Y

Terakhir, langkah ini akan memulai proses untuk mengambil kode sumber Anda, menyimpannya ke dalam container, mengirimnya ke Artifact Registry, lalu men-deploy layanan + revisi Cloud Run. Anda harus bersabar melalui proses ini (dapat memerlukan waktu 3-4 menit) dan Anda akan melihat proses diselesaikan dengan URL Layanan yang ditunjukkan kepada Anda.

Contoh operasi ditampilkan di bawah ini:

7516696ea5b3004b.pngS

Menguji aplikasi

Setelah kita men-deploy aplikasi ke Cloud Run, Anda dapat mengakses aplikasi API sebagai berikut:

  1. Catat URL Layanan dari langkah sebelumnya. Misalnya, pada penyiapan saya, ditampilkan sebagai https://my-inventory-api-bt2r5243dq-uw.a.run.app. Sebut saja &lt;SERVICE_URL&gt;.
  2. Buka browser dan akses 3 URL berikut untuk endpoint API:
  3. &lt;SERVICE_URL&gt;/inventory
  4. <SERVICE_URL>/inventory/I-1
  5. <SERVICE_URL>/inventory/I-100

Harus sesuai dengan spesifikasi yang telah kami berikan di bagian sebelumnya dengan contoh Permintaan dan Respons API.

Mendapatkan Detail Layanan dari Cloud Run

Kami men-deploy Layanan API ke Cloud Run, lingkungan komputasi serverless. Kita dapat mengunjungi layanan Cloud Run melalui konsol Google Cloud kapan saja.

Dari menu utama, buka Cloud Run. Tindakan ini akan menampilkan daftar layanan yang telah Anda jalankan di Cloud Run. Anda akan melihat layanan yang baru saja di-deploy. Bergantung pada nama yang dipilih, Anda akan melihat sesuatu seperti ini:

10d2c363241d789c.pngS

Klik nama Layanan untuk melihat detailnya. Detail contoh ditampilkan di bawah ini:

1ec2c9e45ff1a2db.pngS

Perhatikan URL ini, yang hanyalah URL layanan yang dapat Anda masukkan ke browser dan mengakses Inventory API yang baru saja di-deploy. Jangan ragu untuk melihat Metrics dan detail lainnya.

Mari kita mulai dan mulai menggunakan Google Cloud Operations Suite sekarang.

4. Menyiapkan Dasbor

Salah satu fitur praktis yang disediakan Cloud Monitoring adalah dasbor Out-of-the-Box (OOTB) di beberapa resource di Google Cloud. Hal ini membuat penyiapan awal Dasbor dengan metrik standar menjadi proses yang cepat dan nyaman.

Mari kita lihat cara melakukannya untuk Layanan API yang baru saja di-deploy ke Cloud Run.

Dasbor Kustom untuk Layanan kami

Karena telah men-deploy layanan API ke Cloud Run, mari kita lihat cara menyiapkan Dasbor yang dapat membantu memvisualisasikan berbagai metrik, beberapa di antaranya menyertakan latensi layanan.

Pertama, dari konsol, buka Monitoring → Overview seperti yang ditunjukkan di bawah ini:

c51a5dda4ab72bbf.png

Ringkasan menampilkan beberapa hal yang akan Anda konfigurasi di Monitoring, seperti Dasbor, Pemberitahuan, Cek uptime, dll.

2758f61f1e7f1dca.pngS

Untuk saat ini, mari kita klik Dashboards dari menu utama samping. Tindakan ini akan membuka layar berikut:

c9110b6f065100da.png

Klik CONTOH KOLEKSI . Tindakan ini akan menampilkan daftar Dasbor Out-Of-The-Box (OOTB) yang tersedia di Google Cloud, di berbagai resource. Secara khusus, scroll ke bawah daftar dan pilih Google Cloud Run seperti yang ditunjukkan di bawah.

ddac4038d4fa91ae.png

Tindakan ini akan menampilkan daftar dasbor standar yang tersedia untuk Google Cloud Run. Kami tertarik dengan hal ini karena kami telah men-deploy layanan di Cloud Run.

Anda akan melihat satu Dasbor untuk Cloud Run Monitoring. Klik link PRATINJAU untuk melihat daftar diagram standar (metrik) yang tersedia untuk Cloud Run Monitoring. Cukup klik IMPOR DASBOR CONTOH untuk mengimpor semua diagram ini ke dasbor kustom. Ini akan menampilkan layar Dasbor dengan nama yang terisi otomatis seperti yang ditunjukkan di bawah ini:

531cb8434b18193a.png

Anda dapat kembali dengan mengklik Panah Kiri , yang berada di sebelah kiri nama Dasbor, tepat di kiri atas. Tindakan ini akan mengarah ke daftar Dasbor, dan Anda akan dapat melihat Dasbor baru yang baru saja Anda buat.

Klik tautan Dasbor tersebut dan Anda dapat memantau beberapa metrik yang tersedia di luar kotak. Metrik ini mencakup metrik Latensi, Jumlah Permintaan, Penampung, dan lainnya.

Anda juga dapat memilih untuk menandai Dasbor mana pun sebagai favorit, cukup dengan memilih ikon bintang seperti yang ditunjukkan di bawah ini:

fc993d1a17415550.png

Ini akan menambahkan Dasbor ke layar Ringkasan Pemantauan dan menjadi cara mudah untuk membuka dasbor yang sering digunakan.

2e8f66e2652c55c5.pngS

1e1dffb5239ab110.pngS

Fantastis! Anda baru saja menambahkan Dasbor Kustom untuk memantau layanan Cloud Run. Bagus!

5. Cek uptime

Di bagian ini, kita akan menyiapkan cek uptime untuk Layanan API yang telah kita deploy. Cek uptime publik dapat mengeluarkan permintaan dari beberapa lokasi di seluruh dunia ke URL yang tersedia secara publik atau resource Google Cloud untuk melihat apakah resource merespons atau tidak.

Resource dalam hal ini adalah Layanan API yang telah kita deploy ke Cloud Run. URL akan menjadi endpoint spesifik yang diekspos oleh Layanan API untuk menunjukkan kondisi layanan.

Dalam contoh kode layanan API, kami telah mengekspos endpoint /healthy yang menampilkan nilai string "All Izz Well". Jadi, yang perlu kita lakukan adalah menentukan cek uptime yang mencapai https://&lt;SERVICE_URL&gt;/healthy dan memeriksa apakah string https://&lt;SERVICE_URL&gt;/healthy ditampilkan atau tidak.

Membuat Saluran Notifikasi

Sebelum kita membuat cek uptime, penting untuk mengonfigurasi saluran notifikasi terlebih dahulu. Saluran notifikasi adalah media di mana Anda akan diberi tahu jika ada insiden/masalah dengan resource yang dipantau. Contoh saluran notifikasi adalah Email dan Anda akan menerima email jika ada Pemberitahuan, dll.

Untuk saat ini, kita akan mengkonfigurasi Saluran Notifikasi Email dan mengonfigurasinya dengan alamat email kita, sehingga kita bisa mendapatkan pemberitahuan jika ada peringatan yang akan dimunculkan oleh sistem dan yang akan kita konfigurasi.

Untuk membuat Saluran Notifikasi, ikuti langkah-langkah berikut:

Buka Monitoring → Alerting dari menu utama di Google Cloud Console, seperti yang ditunjukkan di bawah ini:

9f87859064c63b63.pngS

Tindakan ini akan menampilkan halaman dengan Peringatan, Kebijakan, dan lainnya. Untuk saat ini, Anda akan melihat link di bagian atas berjudul EDIT CHANNEL NOTIFIKASI. Klik tombol tersebut.

5ab54f42e6f7b99.pngS

Ini akan menampilkan daftar berbagai Saluran Notifikasi seperti yang ditampilkan di bawah ini:

cd89b1ca9e1de87c.png

Cari bagian Email dan klik ADD NEW untuk baris tersebut. Tindakan ini akan memunculkan detail Konfigurasi Email seperti yang ditunjukkan di bawah ini:

d6ed98ffd0427fa3.png

Masukkan alamat email Anda dan Nama Tampilan seperti yang ditunjukkan di bawah ini. Klik SAVE.

Langkah ini menyelesaikan pembuatan Saluran Notifikasi Email. Mari kita lanjutkan dan konfigurasikan cek uptime sekarang.

Membuat cek uptime

Buka Monitoring → Uptime checks dari menu utama di Google Cloud Console. Di bagian atas, Anda akan melihat link CREATE UPTIME CHECK. Klik tombol tersebut.

484541aec65e605e.pngS

Perintah ini akan memunculkan serangkaian langkah yang harus Anda selesaikan untuk mengonfigurasi cek uptime.

Langkah pertama adalah menyiapkan detail Target, yaitu informasi tentang layanan Cloud Run yang telah kita deploy. Formulir yang telah diisi ditampilkan di bawah ini:

4e2bb9fe022320f7.pngS

Nilai yang berbeda-beda dapat dipilih sebagai berikut:

  • Protokol : HTTPS
  • Resource Type : Pilih Cloud Run Service. Perhatikan resource lain yang didukungnya dan Anda juga dapat menyiapkan cek uptime pada resource tersebut.
  • Layanan Cloud Run : Pilih my-inventory-api atau nama tertentu yang Anda miliki untuk layanan Cloud Run.
  • Jalurnya adalah /healthy, karena kita menampilkan kembali string "All Izz Well" dan kita ingin memeriksanya.

Klik LANJUTKAN untuk melanjutkan ke langkah berikutnya. Langkah berikutnya adalah langkah Validasi Respons seperti yang ditunjukkan di bawah ini:

a6011ac2ab3e0f10.png

Anda dapat melihat bahwa kami mengaktifkan pemeriksaan "Pencocokan Konten" lalu menyiapkan agar respons yang ditampilkan oleh endpoint /healthy adalah "All Izz Well". Klik CONTINUE untuk melanjutkan ke langkah berikutnya di mana kita akan mengonfigurasi Pemberitahuan dan saluran notifikasi mana yang harus diberitahukan jika pemeriksaan Uptime gagal.

d9738670efcb999f.png

Pada langkah ini, beri nama Pemberitahuan. Saya telah memilihnya sebagai Kegagalan Cek Uptime API Inventaris, tetapi Anda dapat memilih nama Anda. Hal yang penting di sini adalah memilih saluran notifikasi yang benar dari daftar yang telah Anda konfigurasi sebelumnya.

Klik TINJAU untuk langkah terakhir guna meninjau Cek uptime yang telah dikonfigurasi.

Pada langkah terakhir ini, beri nama Cek uptime (misalnya, Cek Uptime API Inventaris), lalu Anda juga dapat menguji apakah cek tersebut dikonfigurasi dengan benar. Klik tombol TEST untuk melakukannya.

80375bfab97fc313.png

Lanjutkan dan selesaikan prosesnya (klik tombol CREATE di sebelah kiri). Google Cloud akan menginstruksikan pemeriksaan cek uptime yang dikonfigurasi di berbagai region untuk melakukan ping ke URL dan respons ini akan dikumpulkan. Buka bagian Monitoring → Uptime checks setelah beberapa menit dan idealnya Anda akan melihat semua sinyal hijau yang menunjukkan bahwa URL dapat dijangkau dari berbagai pemeriksaan yang berbeda.

df17555ddbee1127.png

Jika ada pemeriksaan yang gagal selama jangka waktu tertentu (yang dapat dikonfigurasi), Anda akan mendapatkan Notifikasi Pemberitahuan di saluran email yang telah dikonfigurasi.

Langkah ini melengkapi bagian tentang menyiapkan Cek uptime. Bagus!

6. Metrics Explorer

Cloud Monitoring menampilkan ribuan metrik standar dari berbagai produk Google Cloud. Metrik ini tersedia untuk Anda selidiki, buat kueri, konversi ke Diagram, menambahkan ke Dasbor, memunculkan Notifikasi, dan lainnya.

Tujuan kita di bagian ini adalah:

  1. Pahami cara melihat berbagai metrik, lalu kami akan menyelidiki metrik spesifik (latensi) untuk layanan API kami.
  2. Konversikan metrik tersebut ke dalam Diagram dan Dasbor kustom yang kemudian dapat kita gunakan untuk memvisualisasikan metrik tersebut kapan saja.

Pelajari Metrik Latensi untuk Layanan Inventory API

Buka Monitoring → Metrics Explorer dari menu utama di Konsol Google Cloud. Tindakan ini akan mengarahkan Anda ke layar Metrics Explorer. Klik PILIH METRIK. Sekarang Anda dapat membuka beberapa resource aktif yang metriknya telah dibuat.

Karena kita menangani layanan Cloud Run, klik Cloud Run Revisi , lalu klik kategori dan metrik tertentu yang berjudul Request Latency seperti yang ditunjukkan di bawah ini:

7609d8156c8f1384.pngS

Klik Apply. Tindakan ini akan menampilkan Latensi Permintaan dalam diagram. Anda dapat mengubah Jenis Widget menjadi Diagram Garis dari pengaturan Tampilan di sebelah kanan seperti yang ditunjukkan di bawah ini:

46086ac0a8eaf3d7.pngS

Langkah ini akan menampilkan Diagram Latensi seperti yang ditunjukkan di bawah ini:

ad97f749eeacaa95.png

Membuat Diagram dan Dasbor kustom

Mari kita lanjutkan dan menyimpan Diagram ini. Klik Save Chart dan gunakan detail seperti yang ditunjukkan di bawah ini:

35d1788d5f0cb3c4.pngS

Ingatlah bahwa kita membuat dasbor baru , bukan menyimpannya di dasbor yang ada. Klik tombol SIMPAN. Ini akan menambahkan dasbor yang baru dibuat ke daftar dasbor kami seperti yang ditunjukkan di bawah ini:

c9cdcd63d5823abd.png

Klik dasbor spesifik yang kami buat untuk melihat detailnya.

27354d8310d8a2d7.pngS

Langkah ini melengkapi bagian tentang penyelidikan berbagai metrik melalui Metrics Explorer dan cara membuat dasbor kustom.

7. Cloud Logging

Di bagian ini, kita akan mempelajari Cloud Logging. Cloud Logging dilengkapi dengan antarmuka Logs Explorer yang membantu Anda membuka dan mempelajari log yang dibuat oleh berbagai Layanan Google dan aplikasi Anda sendiri.

Di bagian ini, kita akan mempelajari Logs Explorer dan menyimulasikan beberapa pesan log yang kemudian dapat kita telusuri dan konversi menjadi metrik, melalui fitur yang disebut Metrik berbasis log.

Logs Explorer

Anda dapat membuka Logs Explorer melalui Logging →Logs Explorer dari Konsol Google Cloud utama seperti yang ditunjukkan di bawah:

df05f5b33fd5695a.png

Tindakan ini akan menampilkan antarmuka log tempat Anda dapat secara khusus memilih/membatalkan pilihan berbagai Resource (Project, Resource Google Cloud, nama layanan, dll.) bersama dengan Level log untuk memfilter pesan log sesuai kebutuhan.

e7fa15bcf73f3805.png

Yang ditampilkan di atas adalah daftar log untuk Revisi Cloud Run yaitu layanan Cloud Run yang telah kita deploy. Anda akan melihat beberapa permintaan yang berupa Cek uptime yang mencapai endpoint /healthy yang telah dikonfigurasi.

Telusuri Peringatan

Simulasikan beberapa permintaan yang tidak valid ke Layanan Inventaris dengan memberikan ID produk yang bukan salah satu dari I-1, I-2, dan I-3. Misalnya, permintaan yang salah adalah:

https://&lt;SERVICE_URL&gt;/inventory/I-999

Sekarang kita akan menelusuri semua PERINGATAN yang telah dibuat oleh API, jika ID Produk yang salah diberikan di Kueri.

Di Kotak Kueri, sisipkan parameter kueri berikut:

resource.type=&quot;cloud_run_revision&quot;

textPayload =~ "Permintaan inventaris diterima untuk productid yang salah"

Ini akan terlihat seperti berikut:

b3ee512a0c9c5c7b.png

Klik Run Query. Selanjutnya, semua permintaan yang masuk dan yang bermasalah akan ditampilkan.

5fdbd7c23bf4694f.png

Metrik Berbasis Log

Mari kita buat Metrik Log Kustom untuk melacak error ini. Kami ingin memahami apakah ada jumlah panggilan yang signifikan yang terjadi dengan ID Produk yang salah.

Untuk mengonversi metrik di atas menjadi metrik error, klik tombol Create Metric yang Anda lihat di Logs Explorer.

fa9a5e04922aa412.png

Tindakan ini akan memunculkan formulir untuk membuat definisi metrik. Gunakan Metrik Penghitung dan masukkan detail untuk Nama Metrik (inventory_lookup_errors) dan Deskripsi seperti yang ditunjukkan di bawah lalu klik Buat Metrik.

70b5719b472d4d02.pngS

Tindakan ini akan membuat metrik penghitung dan Anda akan melihat pesan seperti yang ditampilkan di bawah ini:

ab9058028185e4d5.png

Buka Logging → Metrik Berbasis Log dari menu utama dan Anda akan melihat metrik kustom yang telah kita tetapkan dalam daftar Metrik yang ditentukan pengguna seperti yang dijelaskan di bawah:

7d186e90559cf8e1.pngS

Di akhir entri ini, Anda akan menemukan tiga titik vertikal. Klik titik tersebut untuk melihat operasi yang dapat Anda lakukan pada metrik kustom ini. Daftar tersebut seharusnya serupa dengan yang Anda lihat di bawah ini. Klik opsi View in Metrics Explorer.

7586f0789a0bdb41.pngS

Hal ini akan membawa kita ke Metrics Explorer yang akan kita pelajari di bagian sebelumnya, kecuali yang telah diisi sebelumnya untuk kita.

7ee7403d0639ce25.pngS

Klik Save Chart. Gunakan nilai berikut untuk opsi Save Chart:

9009da45f76eb4c5.pngS

Ini sekarang akan membuat Dasbor baru tempat Anda dapat melihat error Penelusuran Inventaris dan akan tersedia di daftar Dasbor.

201ed66957cb64f9.pngS

Bagus! Anda sekarang telah membuat metrik kustom dari log, dan mengubahnya menjadi diagram yang ada di dasbor kustom. Hal ini akan membantu kami melacak jumlah panggilan yang menggunakan ID produk yang salah.

8. Kebijakan Pemberitahuan

Di bagian ini, kita akan menggunakan metrik kustom yang dibuat dan memantau datanya untuk nilai minimum, yaitu jika jumlah error melampaui batas tertentu, kami akan menampilkan pemberitahuan. Dengan kata lain, kita akan menyiapkan kebijakan pemberitahuan.

Membuat Kebijakan Pemberitahuan

Mari kita buka Dasbor Penelusuran Inventaris. Ini akan memunculkan bagan yang kita buat untuk mencatat Error Pencarian Inventaris seperti yang ditunjukkan di bawah ini:

3591a1dd91a8b9fd.pngS

Ini akan memunculkan data metrik saat ini. Pertama-tama, mari kita edit metrik seperti yang ditunjukkan di bawah ini (Klik tombol Edit):

5e76fc20d8387984.png

Langkah ini akan menampilkan detail metrik. Kita akan mengonversi diagram dari menampilkan tingkat kesalahan menjadi jumlah, yaitu jumlah kesalahan. Bidang yang akan diubah ditampilkan di bawah ini:

65ccd1eaca607831.pngS

Klik TERAPKAN di sudut kanan atas dan kita akan kembali ke layar Metrik, tetapi kali ini kita akan dapat melihat jumlah total error dalam periode penyelarasan vs. tingkat error.

Kita akan membuat Kebijakan Pemberitahuan yang dapat memberi tahu kita jika jumlah error melebihi batas. Klik 3 titik di sudut kanan atas diagram dan dari daftar opsi, seperti yang ditunjukkan di atas, klik Convert to alert chart.

cc9eec48b9bfbc92.png

Anda akan melihat layar seperti yang ditunjukkan di bawah ini:

6202ad1e88679a78.pngS

Klik Next , dan nilai Threshold akan muncul yang dapat kita tetapkan. Batas sampel yang kami ambil di sini adalah 5 , tetapi Anda dapat memilih sesuai preferensi.

734f809cc802ab78.pngS

Klik BERIKUTNYA untuk menampilkan formulir Notifikasi

f2d84fb85c2520cb.png

Kita telah memilih Saluran Notifikasi sebagai saluran Email yang kita buat sebelumnya. Anda dapat mengisi detail lainnya seperti Dokumentasi (yang akan diberikan sebagai bagian dari Pemberitahuan yang dilaporkan). Klik BERIKUTNYA untuk melihat ringkasan dan menyelesaikan prosesnya.

c670b29da70c4655.png

Setelah Anda membuat Kebijakan Pemberitahuan ini, Kebijakan tersebut akan terlihat dalam daftar Kebijakan Pemberitahuan seperti yang ditunjukkan di bawah. Anda dapat membuka daftar Kebijakan Pemberitahuan dengan membuka Monitoring → Alerting. Lihat bagian Kebijakan di halaman untuk melihat daftar kebijakan yang telah kita konfigurasi sejauh ini.

154da627959c54f3.pngS

Bagus! Sekarang Anda telah mengonfigurasi Kebijakan Pemberitahuan kustom yang akan memberi tahu Anda jika terjadi peningkatan tingkat error saat mencari Inventory API.

9. Pemantauan Layanan (Opsional)

Di bagian ini, kita akan menyiapkan SLI/SLO untuk layanan sesuai dengan prinsip Site Reliability Engineering (SRE). Anda akan melihat bahwa Cloud Monitoring mempermudah Anda dengan menemukan secara otomatis layanan yang telah di-deploy di Cloud Run dan dapat menghitung SLI utama seperti Ketersediaan, Latensi secara otomatis untuk Anda beserta penghitungan Anggaran Error.

Mari kita lanjutkan dan siapkan SLO Latensi untuk Layanan API kita.

Menyiapkan SLO Latensi untuk Layanan Inventaris

Klik Monitoring → Services dari menu utama di Cloud Console. Langkah ini akan memunculkan daftar layanan yang telah dikonfigurasi untuk Service Monitoring.

Saat ini, kami tidak memiliki layanan apa pun yang disiapkan untuk Pemantauan SLI/SLO, sehingga daftar ini kosong. Klik link DEFINE SERVICE di bagian atas untuk menentukan / mengidentifikasi layanan terlebih dahulu.

42d14515a481213.pngS

Tindakan ini akan otomatis menemukan layanan yang menjadi kandidat untuk Pemantauan SLO. Aplikasi tersebut dapat menemukan layanan Cloud Run sehingga layanan Inventory API kami yang di-deploy ke Cloud Run akan terlihat dalam daftar.

522aaba719f85c54.pngS

Nama tampilan yang Anda lihat mungkin berbeda dan akan bergantung pada pilihan Anda pada saat men-deploy layanan ke Cloud Run. Klik tombol SUBMIT. Ini akan memunculkan layar yang ditunjukkan di bawah ini:

eca08010ab6858a9.png

Anda dapat mengklik CREATE SLO. Dengan begitu, Anda dapat memilih dari SLI yang dihitung secara otomatis untuk Anda.

556e49b10d22e5ac.pngS

Kita pilih Latensi SLI sebagai awal. Klik CONTINUE. Selanjutnya, Anda akan melihat layar yang menunjukkan kinerja layanan saat ini dan latensi yang normal.

a9cc6f6778c13b52.png

Kita memasukkan nilai untuk Threshold, yaitu 300ms , yang ingin kita capai. Anda dapat memilih nilai yang berbeda jika mau, tetapi perhatikan bahwa nilai ini akan memengaruhi anggaran error yang Anda tentukan dengan tepat. Klik CONTINUE.

Sekarang kita menetapkan SLO (jendela Target dan Pengukuran) seperti yang ditunjukkan di bawah ini:

e1fc336d4191c08e.png

Artinya, kita memilih periode Pengukuran sebagai periode Jenis bergulir dan mengukurnya selama 7 hari. Demikian pula untuk target, kami telah memilih sasaran 90%. Yang ingin kami sampaikan di sini adalah 90% permintaan ke layanan API akan selesai dalam waktu 300 md dan ini seharusnya diukur dalam 7 hari.

Klik Lanjutkan. Tindakan ini akan memunculkan layar ringkasan, yang dapat Anda konfirmasi dengan mengklik tombol UPDATE SLO.

f2540173d9f4a4b7.png

Tindakan ini akan menyimpan definisi SLO Anda dan Anggaran Error dihitung secara otomatis.

76393df0e189104.pngS

Beberapa hal yang dapat Anda coba:

  1. Jalankan API melalui beberapa panggilan dan lihat performa layanan serta pengaruhnya terhadap Anggaran Error yang tersisa.
  2. Memodifikasi kode sumber untuk menambahkan beberapa penundaan tambahan (tidur) secara acak di beberapa panggilan. Tindakan ini akan meningkatkan latensi untuk sejumlah panggilan dan akan berdampak buruk pada Anggaran Error.

10. Selamat

Selamat, Anda telah berhasil men-deploy aplikasi contoh ke Google Cloud dan mempelajari cara menggunakan Google Cloud Operations Suite untuk memantau kondisi aplikasi.

Yang telah kita bahas

  • Men-deploy Layanan ke Google Cloud Run.
  • Menyiapkan Dasbor untuk Layanan Google Cloud Run.
  • Cek uptime.
  • Menyiapkan Metrik log kustom dan Dasbor/Diagram berdasarkan metrik tersebut.
  • Menjelajahi Metrics Explorer dan menyiapkan Dasbor/Diagram.
  • Menyiapkan Kebijakan Pemberitahuan.
  • Menyiapkan SLI/SLO untuk Pemantauan Layanan di Google Cloud.

Catatan: Jika Anda telah menjalankan codelab menggunakan akun dan project Google Cloud Anda sendiri, resource yang dialokasikan dapat terus dikenai biaya penagihan. Jadi, hapus Project dan resource setelah Anda menyelesaikan lab.

Apa selanjutnya?

Lihat Quest Cloud Skills Boost ini untuk mempelajari Google Cloud Operations Suite lebih lanjut.

Bacaan lebih lanjut