Data SLO disimpan dalam deret waktu. Anda dapat mengambil deret waktu SLO dengan menentukan pemilih deret waktu di parameter filter
ke metode timeSeries.list
atau dengan menggunakan mode filter langsung di Metrics Explorer.
Kebijakan pemberitahuan berbasis SLO
Jika Anda membuat kebijakan pemberitahuan menggunakan Cloud Monitoring API, tentukan filter menggunakan pemilih deret waktu sebagai kolom dalam kondisi nilai minimum kebijakan. Untuk mengetahui informasi tentang cara membuat kebijakan pemberitahuan berbasis SLO menggunakan Monitoring API, lihat Membuat kebijakan pemberitahuan.
Hanya sebagian pemilih deret waktu yang tersedia untuk SLO yang dapat digunakan dalam kebijakan pemberitahuan.
Selain itu, kebijakan pemberitahuan berbasis SLO yang dibuat dengan Konsol Google Cloud selalu menggunakan pemilih select_slo_burn_rate
.
Menggunakan pemilih deret waktu dalam filter
Untuk mengambil data deret waktu untuk SLO, filter Anda harus menentukan pemilih deret waktu. Data SLO tidak disimpan dengan jenis metrik dan tidak dapat diambil dengan filter yang menentukan pasangan metrik dan jenis resource yang dipantau.
Nama dan argumen
Pemilih deret waktu memiliki salah satu bentuk berikut:
SELECTOR_NAME(SLO_NAME) SELECTOR_NAME(SLO_NAME, LOOKBACK_PERIOD)
Pemilih memiliki nama yang diawali dengan select_slo_
, serta menggunakan satu atau
dua argumen:
Argumen pertama untuk pemilih adalah nama resource untuk SLO, yang terlihat seperti ini:
projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID
Ekspresi sebelumnya berisi tiga variabel:
- PROJECT_ID: Nama atau nomor project Google Cloud.
- SERVICE_ID: Nama layanan.
- SLO_ID: ID untuk SLO yang ditentukan untuk layanan.
Guna mengetahui cara menemukan nilai untuk kolom SERVICE_ID dan SLO_ID untuk project Google Cloud Anda, lihat Bekerja dengan API.
Argumen kedua, jika didukung, adalah periode lihat balik. Lihat Jenis notifikasi anggaran error untuk mendapatkan informasi tentang periode lihat balik. Satuan waktu yang valid adalah "ns", "us" "ms", "s", "m", "h".
Misalnya, pemilih select_slo_budget
menggunakan argumen SLO_NAME,
sehingga filter yang menggunakan pemilih ini akan terlihat seperti berikut:
select_slo_budget("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID")
Sebaliknya, pemilih select_slo_burn_rate
memerlukan
argumen SLO_NAME dan LOOKBACK_PERIOD,
sehingga filter yang menggunakan pemilih ini akan terlihat seperti berikut:
select_slo_burn_rate("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID", "3600s")
Untuk daftar dan deskripsi semua pemilih, lihat Pemilih deret waktu.
Mengambil data dengan pemilih
Salah satu cara untuk membuat kueri data deret waktu adalah dengan menggunakan alat APIs Explorer di halaman referensi metode timeSeries.list
.
Untuk mengetahui informasi tentang alat ini, lihat APIs Explorer.
Misalnya, untuk mengambil informasi tentang anggaran SLO, lengkapi kolom berikut di alat APIs Explorer:
- nama:
projects/PROJECT_ID
- filter:
select_slo_budget("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID")
- interval.startTime:
2021-10-07T13:00:20-04:00
- interval.endTime:
2021-10-08T13:00:20-04:00
Untuk satu sistem, setelah variabel seperti PROJECT_ID diganti dengan nilai dan metode tersebut dieksekusi, data deret waktu berikut akan ditampilkan:
Pemilih deret waktu
Bagian ini mencantumkan pemilih deret waktu yang tersedia untuk SLO dan menjelaskan apa yang diwakilinya. Semua pemilih dapat digunakan dalam filter dengan
metode timeSeries.list
untuk mengambil data deret waktu. Tidak semuanya didukung dalam kebijakan pemberitahuan.
select_slo_burn_rate
Sintaksis: select_slo_burn_rate(SLO_NAME, LOOKBACK_PERIOD)
Pemilih deret waktu “burn-rate” menampilkan rasio tingkat kegagalan saat ini (tingkat permintaan buruk dalam interval lihat balik) dengan tingkat kegagalan berkelanjutan untuk SLO. Tingkat kegagalan berkelanjutan adalah tingkat saat SLO terpenuhi secara tepat.
Nilai dalam deret waktu ini dapat berkisar dari 0 hingga tak terbatas:
- Nilai satu menunjukkan bahwa layanan menunjukkan tingkat kegagalan yang ideal: tidak terlalu berisiko, tidak terlalu konservatif.
- Nilai yang lebih besar dari satu berarti tingkat kegagalan melebihi tingkat berkelanjutan. Semakin tinggi nilainya, semakin cepat SLO tidak mematuhi persyaratan.
- Nilai kurang dari satu berarti tingkat kegagalan saat ini kurang dari tingkat berkelanjutan.
Sebaiknya gunakan dua kebijakan pemberitahuan untuk memantau laju pengeluaran: kebijakan pembakaran cepat untuk memperingatkan Anda tentang lonjakan laju pengeluaran, dan kebijakan pembakaran lambat untuk memperingatkan Anda tentang peningkatan bertahap.
Anda dapat membuat dan mengedit kebijakan pemberitahuan berdasarkan pemilih deret waktu ini menggunakan API atau Konsol Google Cloud.
Semua kebijakan pemberitahuan berbasis SLO yang dibuat dengan menggunakan Konsol Google Cloud menggunakan pemilih ini untuk mengambil data SLO.
select_slo_health
Sintaksis: select_slo_health(SLO_NAME)
Deret waktu “SLO Health” menjawab pertanyaan, “Selama periode penyelarasan tertentu, berapa rasio permintaan baik terhadap total permintaan?” SLI untuk layanan menentukan apa yang dianggap sebagai permintaan yang baik. Untuk mengetahui informasi selengkapnya tentang SLI, lihat Ringkasan.
Deret waktu ini mengukur performa layanan: jika setiap permintaan ke layanan baik, titik data dalam deret waktu ini akan memiliki nilai 1. Seiring meningkatnya jumlah permintaan buruk, nilai titik data akan turun.
select_slo_compliance
Sintaksis: select_slo_compliance(SLO_NAME)
Deret waktu “Kepatuhan SAO” menjawab pertanyaan, “Berapa rasio unit baik terhadap unit total sejak awal periode kepatuhan?” SLO mendefinisikan periode kepatuhan sebagai periode yang berkelanjutan atau rentang waktu kalender. Unit dapat berupa permintaan atau jangka waktu. Untuk mengetahui informasi selengkapnya, baca bagian Kepatuhan dalam SLO berbasis permintaan dan jendela.
Deret waktu ini memberi Anda gambaran umum tentang seberapa baik layanan memenuhi SLO. Layanan ini tidak menghasilkan sinyal yang mendesak secara operasional.
Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.
select_slo_budget
Sintaksis: select_slo_budget(SLO_NAME)
Deret waktu "Anggaran SLO" menjawab pertanyaan, "Berapa banyak anggaran error yang tersisa pada saat pengukuran?" Anggaran error mungkin diukur dalam permintaan atau menit, dan jumlah yang tersisa dihitung berdasarkan apakah periode kepatuhan diukur dalam waktu kalender atau sebagai periode yang berkelanjutan. Untuk informasi selengkapnya, lihat Anggaran error.
Deret waktu ini mengukur risiko dalam keandalan layanan. Jika anggaran error menjadi kurang dari nol, SLO mungkin tidak dapat dipenuhi untuk periode saat ini. Kegagalan dalam memenuhi SLO mungkin memiliki konsekuensi nyata terhadap lingkungan produksi organisasi, bergantung pada cara organisasi mengatur keandalan.
Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.
select_slo_budget_fraction
Sintaksis: select_slo_budget_fraction(SLO_NAME)
Deret waktu “Bagian anggaran SPM” menjawab pertanyaan, “Berapa banyak anggaran error, sebagai pecahan dari tak terhingga negatif ke satu, yang tersisa saat ini?”
Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.
select_slo_budget_total
Sintaksis: select_slo_budget_total(SLO_NAME)
Deret waktu “SLO total budget” menjawab pertanyaan, “Berapa total anggaran error (dalam permintaan atau menit) yang diproyeksikan akan tersedia saat ini, berdasarkan perilaku layanan sejak awal periode kepatuhan?” SLO menentukan periode kepatuhan sebagai periode yang bergulir atau rentang waktu kalender.
Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.
select_slo_counts
Sintaksis: select_slo_counts(SLO_NAME)
Deret waktu "Jumlah SLO" menjawab pertanyaan, "Selama periode penyelarasan tertentu, berapa jumlah permintaan baik dan buruk?" Pemilih ini memberikan deret waktu yang mencatat kesehatan umum dan cocok untuk penyerapan ke dalam sistem penyimpanan jangka panjang.
Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.