Mengambil data SLO

Data SLO disimpan dalam deret waktu. Anda dapat mengambil deret waktu SLO dengan menentukan pemilih deret waktu dalam parameter filter ke metode timeSeries.list atau dengan menggunakan mode filter langsung di Metrics Explorer.

Kebijakan pemberitahuan berbasis SLO

Jika membuat kebijakan pemberitahuan menggunakan Cloud Monitoring API, Anda menentukan filter menggunakan pemilih deret waktu sebagai kolom dalam kondisi nilai minimum kebijakan. Untuk informasi tentang cara membuat kebijakan pemberitahuan berbasis SLO menggunakan Monitoring API, lihat Membuat kebijakan pemberitahuan.

Hanya sebagian selektor 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 sepasang jenis metrik dan resource yang dimonitor.

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_, dan memerlukan satu atau dua argumen:

  • Argumen pertama ke 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.

    Untuk mengetahui informasi tentang cara menemukan nilai untuk kolom SERVICE_ID dan SLO_ID untuk project Google Cloud Anda, lihat Menggunakan API.

  • Argumen kedua, jika didukung, adalah periode lihat balik. Lihat Jenis pemberitahuan anggaran error untuk mengetahui 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 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 API Explorer di halaman referensi metode timeSeries.list. Untuk informasi tentang alat ini, lihat APIs Explorer.

Misalnya, untuk mengambil informasi tentang anggaran SLO, isi kolom berikut di alat API Explorer:

  • name: 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 dijalankan, data deret waktu berikut akan ditampilkan:

Cuplikan dari deret waktu yang diambil

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 semua peristiwa tersebut didukung dalam kebijakan pemberitahuan.

select_slo_burn_rate

Sintaksis: select_slo_burn_rate(SLO_NAME, LOOKBACK_PERIOD)

Pemilih deret waktu “laju pengeluaran” menampilkan rasio tingkat kegagalan saat ini (tingkat permintaan buruk dalam interval lihat balik) terhadap tingkat kegagalan yang berkelanjutan untuk SLO. Tingkat kegagalan berkelanjutan adalah tingkat pencapaian SLO yang 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 rasio kegagalan melebihi rasio yang berkelanjutan. Makin tinggi nilainya, makin cepat SLO tidak mematuhi kebijakan.
  • Nilai kurang dari satu berarti tingkat kegagalan saat ini kurang dari tingkat yang berkelanjutan.

Sebaiknya gunakan dua kebijakan pemberitahuan untuk memantau burn rate: kebijakan burn rate cepat untuk memberi tahu Anda tentang lonjakan burn rate, dan kebijakan burn rate lambat untuk memberi tahu 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 menggunakan konsol Google Cloud menggunakan pemilih ini untuk mengambil data SLO.

select_slo_health

Sintaksis: select_slo_health(SLO_NAME)

Deret waktu “Status SLO” menjawab pertanyaan, “Selama periode penyelarasan tertentu, berapa rasio permintaan yang baik terhadap total permintaan?” SLI untuk layanan menentukan apa yang dianggap sebagai permintaan yang baik. Untuk informasi selengkapnya tentang SLI, lihat Ringkasan.

Deret waktu ini mengukur performa layanan: jika setiap permintaan ke layanan bagus, titik data dalam deret waktu ini akan memiliki nilai 1. Saat jumlah permintaan buruk meningkat, nilai titik data akan menurun.

select_slo_compliance

Sintaksis: select_slo_compliance(SLO_NAME)

Deret waktu “Kepatuhan SLO” menjawab pertanyaan, “Berapa rasio unit yang baik terhadap total unit sejak awal periode kepatuhan?” SLO menentukan periode kepatuhan sebagai periode bergulir atau rentang waktu kalender. Unit dapat berupa permintaan atau jangka waktu. Untuk informasi selengkapnya, lihat Kepatuhan dalam SLO berbasis permintaan dan periode.

Deret waktu ini memberi Anda gambaran umum tentang seberapa baik layanan memenuhi SLO. Sinyal 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 dapat diukur dalam permintaan atau menit, dan jumlah yang tersisa dihitung berdasarkan apakah periode kepatuhan diukur dalam waktu kalender atau sebagai periode bergulir. Untuk mengetahui informasi selengkapnya, lihat Anggaran error.

Deret waktu ini mengukur risiko dalam keandalan layanan. Jika anggaran error menjadi kurang dari nol, Anda mungkin tidak dapat memenuhi SLO untuk periode saat ini. Kegagalan dalam memenuhi SLO mungkin memiliki konsekuensi nyata bagi lingkungan produksi organisasi, bergantung pada cara organisasi mengelola keandalan.

Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.

select_slo_budget_fraction

Sintaksis: select_slo_budget_fraction(SLO_NAME)

Deret waktu “Pecahan anggaran SLO” menjawab pertanyaan, “Berapa banyak anggaran error, sebagai pecahan dari negatif tak terhingga hingga 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 “Total anggaran SLO” menjawab pertanyaan, “Berapa total anggaran error (dalam permintaan atau menit) yang diperkirakan akan tersedia saat ini, berdasarkan perilaku layanan sejak awal periode kepatuhan?” SLO menentukan periode kepatuhan sebagai periode 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 yang baik dan buruk?” Pemilih ini menyediakan deret waktu yang mencatat kondisi umum dan cocok untuk diserap ke dalam sistem penyimpanan jangka panjang.

Jangan gunakan pemilih deret waktu ini dalam kebijakan pemberitahuan.