Struktur deret waktu

Halaman ini adalah kelanjutan mendalam dari pembahasan dan contoh yang disajikan dalam Metrik, deret waktu, dan resource serta Komponen model metrik. Untuk mendapatkan hasil maksimal dari halaman ini, baca halaman tersebut terlebih dahulu.

Halaman ini ditujukan bagi pembaca yang ingin memahami deret waktu dan penerapan model metrik Cloud Monitoring secara lebih mendalam, terutama pembaca yang menggunakan Monitoring API. Hal ini mencakup pengguna metrik kustom (buatan pengguna).

  • Halaman ini memetakan model metrik umum ke Cloud Monitoring API, sehingga berguna bagi siapa pun yang menggunakan Monitoring API secara langsung. Pengguna yang interaksi utamanya adalah dengan konsol Google Cloud mungkin tidak memerlukan tingkat detail ini.

  • Hal ini juga berguna bagi siapa saja yang menggunakan integrasi pihak ketiga seperti OpenTelemetry. Saat data dari sumber eksternal mencapai Cloud Monitoring melalui integrasi, data tersebut dipetakan ke model metrik Cloud Monitoring dan diperlakukan seperti data metrik lainnya.

Untuk mengetahui informasi selengkapnya tentang pengumpulan metrik Anda sendiri, lihat Ringkasan metrik yang ditentukan pengguna.

Peninjauan model metrik

Prasyarat untuk memahami struktur deret waktu adalah pemahaman tentang model metrik yang digunakan oleh Cloud Monitoring. Model ini dijelaskan dalam Metrik, deret waktu, dan resource. Bagian ini memberikan ulasan singkat.

Secara umum, data pemantauan dicatat dalam deret waktu. Setiap deret waktu individu mencakup tiga informasi yang relevan dengan pembahasan ini:

  • Kumpulan titik data yang diberi stempel waktu.
  • Referensi ke jenis metrik yang memberi tahu Anda cara menafsirkan titik data.
  • Referensi ke resource yang dipantau tempat data berasal.
Time series:

    Points: [(value1, time1), (value2, time2), ...]
    Metric type information: integer? incremental?
    Monitored resource: project? location? method?

Setiap deret waktu menyimpan pengukuran dari satu sumber fisik atau logis. Jika lingkungan Anda memiliki ratusan resource, setiap resource berkontribusi setidaknya satu deret waktu. Sebenarnya, jika jenis metrik dan jenis resource yang dimonitor memiliki label, Anda akan mendapatkan satu deret waktu per kombinasi nilai label; lihat Kardinalitas untuk mengetahui informasi selengkapnya.

Contoh deret waktu

Deret waktu direpresentasikan sebagai instance objek TimeSeries. Berikut adalah instance lengkap dari satu deret waktu:

    {
      "metric": {
        "labels": {
          "log": "kubelet",
          "severity": "DEFAULT"
        },
        "type": "logging.googleapis.com/log_entry_count"
      },
      "resource": {
        "type": "gce_instance",
        "labels": {
          "instance_id": "5106847938295940291",
          "zone": "us-central1-a",
          "project_id": "a-gcp-project"
        }
      },
      "metricKind": "DELTA",
      "valueType": "INT64",
      "points": [
        {
          "interval": {
            "startTime": "2019-12-20T20:25:38Z",
            "endTime": "2019-12-20T20:26:38Z"
          },
          "value": {
            "int64Value": "20"
          }
        }
      ]
    }

Sebagian besar deret waktu menyertakan lebih banyak titik data; deret waktu ini mencakup interval satu menit. Semua deret waktu memiliki struktur yang sama, dengan kolom berikut:

  • Kolom metric mencatat

    • Nilai metrik-label untuk deret waktu tertentu ini, yang merepresentasikan satu kombinasi nilai label.
    • Jenis metrik yang terkait dengan data. Jenis metrik menentukan label yang tersedia dan menjelaskan apa yang direpresentasikan oleh titik data.

    Informasi dalam kolom ini dijelaskan lebih mendetail di Metrik.

  • Kolom resource mencatat:

    • Nilai resource-label untuk deret waktu tertentu ini, yang merepresentasikan satu kombinasi nilai label.
    • Resource yang dipantau tertentu tempat data dikumpulkan.

    Informasi dalam kolom ini dijelaskan lebih detail di Objek resource yang dipantau.

  • Kolom metricKind dan valueType memberi tahu Anda cara menafsirkan nilai. Untuk mengetahui informasi selengkapnya, lihat Jenis dan jenis metrik.

  • Kolom points adalah array nilai yang diberi stempel waktu. Jenis metrik memberi tahu Anda apa yang diwakili oleh nilai tersebut. Deret waktu sampel memiliki array dengan satu titik data; di sebagian besar deret waktu, array memiliki lebih banyak nilai.

Untuk contoh langsung yang mengambil data deret waktu, lihat Deret waktu: data dari resource yang dipantau.

Bagian selanjutnya dari halaman ini akan membahas informasi di kolom metric dan resource secara lebih mendetail.

Resource yang dipantau

Cloud Monitoring mengumpulkan data dari resource yang dipantau dan mencatatnya dalam deret waktu. Setiap deret waktu yang dibuat mencakup deskripsi resource yang dipantau dari mana data dikumpulkan.

Objek resource yang dipantau

Resource yang dipantau diwakili oleh instance objek MonitoredResource. Resource yang dipantau menjelaskan sumber nilai dalam deret waktu. Objek MonitoredResource disematkan ke dalam deret waktu dan mengidentifikasi instance tertentu dari jenis resource yang dipantau yang diketahui oleh Monitoring: objek ini mengarah ke entitas fisik atau logis.

Misalnya, berikut adalah objek monitored-resource yang menjelaskan instance Compute Engine tertentu, yang diekstrak dari contoh deret waktu:

      "resource": {
        "type": "gce_instance",
        "labels": {
          "instance_id": "5106847938295940291",
          "zone": "us-central1-a",
          "project_id": "a-gcp-project"
        }
      }

Instance resource yang dipantau ini berjenis gce_instance, memiliki nilai instance_id tertentu (5106847938295940291) di project a-gcp-project. Instance berada di Amerika Serikat. Deret waktu lain mungkin berasal dari instance yang berbeda dari resource yang dipantau ini. Setiap kombinasi nilai label mengidentifikasi sumber daya unik tempat data dikumpulkan.

Kumpulan label yang berbeda akan sesuai untuk resource yang berbeda. Kumpulan label untuk resource ditentukan oleh deskriptor monitored-resource untuk jenis tersebut.

Deskripsi resource yang dipantau

Informasi tentang jenis resource yang dimonitor disimpan dalam struktur data yang disebut deskriptor resource yang dimonitor. Untuk mengetahui definisi struktur data ini, lihat MonitoredResourceDescriptor.

Deskriptor resource yang dipantau seperti skema atau spesifikasi untuk struktur catatan. Tidak berisi data tentang instance tertentu dari resource yang dipantau; memberi tahu Anda cara mendeskripsikan resource yang dipantau dari jenis tertentu. Misalnya, berikut deskriptor monitored-resource untuk resource gce_instance:

{
  "type": "gce_instance",
  "displayName": "VM Instance",
  "description": "A virtual machine instance hosted in Compute Engine.",
  "name": "projects/[PROJECT_ID]/monitoredResourceDescriptors/gce_instance"
  "labels": [
    {
      "key": "project_id",
      "description": "The identifier of the GCP project associated with this resource, such as \"my-project\"."
    },
    {
      "key": "instance_id",
      "description": "The numeric VM instance identifier assigned by Compute Engine."
    },
    {
      "key": "zone",
      "description": "The Compute Engine zone in which the VM is running."
    }
  ],
}

Bandingkan deskriptor resource yang dipantau ini dengan instance spesifik resource gce_instance yang ditampilkan dalam Objek resource yang dipantau. Deskriptor ini tidak menjelaskan resource yang dipantau tertentu; sebagai gantinya, deskriptor menentukan label, dan setiap kombinasi nilai label mengidentifikasi resource yang dipantau tertentu.

Anda dapat mengambil deskriptor resource yang dipantau di Google Cloud project menggunakan Cloud Monitoring API. Misalnya, lihat halaman referensi untuk metode monitoredResourceDescriptors.list dan monitoredResourceDescriptors.get.

Contoh langsung: Jika memiliki project Google Cloud , Anda dapat mengambil deskriptor ini menggunakan widget APIs Explorer sebagai berikut:

  1. Buka halaman referensi monitoredResourceDescriptors.list.

  2. Di panel berlabel Try this method, masukkan yang berikut:

    • name: projects/PROJECT_ID/monitoredResourceDescriptors/gce_instance

      Ganti PROJECT_ID dengan ID project Google Cloud Anda.

  3. Klik Jalankan.

Permintaan ini akan menampilkan deskriptor sebelumnya.

Untuk contoh penggunaan metode Monitoring API, lihat Mencantumkan jenis metrik dan resource.

Metrik

Setiap deret waktu yang dibuat oleh Cloud Monitoring mencatat serangkaian titik data serta informasi tentang organisasi dan arti titik data tersebut.

Objek metrik

Setiap deret waktu menyertakan referensi ke deskripsi data yang direkam dalam objek metrik.

Objek metrik yang terdapat dalam deret waktu menentukan jenis pengukuran dan informasi khusus metrik tentang pengukuran tersebut. Untuk mengetahui definisi struktur data objek metrik, lihat Metric. Misalnya, berikut adalah objek metrik yang diekstrak dari deret waktu dalam Contoh deret waktu:

    {
      "metric": {
        "labels": {
          "log": "kubelet",
          "severity": "DEFAULT"
        },
        "type": "logging.googleapis.com/log_entry_count"
      }

Objek ini memberi tahu Anda bahwa deret waktu berisi logging.googleapis.com/log_entry_count pengukuran. Nilai label memberi tahu Anda bahwa deret waktu spesifik ini hanya menghitung entri log dengan tingkat keparahan DEFAULT dalam file log yang disebut kubelet.

Ada satu deret waktu untuk setiap kombinasi nilai label, sehingga entri INFO yang sama ke file log yang sama akan muncul dalam deret waktu yang berbeda.

Kumpulan label yang dikumpulkan dalam objek metrik ditentukan dalam deskriptor untuk jenis metrik tersebut.

Deskriptor metrik

Informasi tentang jenis metrik disimpan dalam struktur data yang disebut deskriptor metrik. Untuk mengetahui definisi struktur data ini, lihat MetricDescriptor.

Deskriptor metrik adalah skema atau spesifikasi untuk struktur data. Tidak berisi data tentang metrik tertentu; melainkan memberi tahu Anda cara menafsirkan data yang terkait dengan jenis metrik tertentu.

Berikut adalah contoh deskriptor metrik:

{
  "type": "logging.googleapis.com/log_entry_count",
  "name": "projects/a-gcp-project/metricDescriptors/logging.googleapis.com/log_entry_count",
  "labels": [
    {
      "key": "log",
      "description": "Name of the log."
    },
    {
      "key": "severity",
      "description": "Severity of the log entry."
    }
  ],
  "metricKind": "DELTA",
  "valueType": "INT64",
  "unit": "1",
  "description": "Number of log entries that contributed to user-defined metrics.",
  "displayName": "Log entries",
  "metadata": {
    "launchStage": "GA",
    "samplePeriod": "60s"
  },
  "launchStage": "GA"
}

Bandingkan deskriptor metrik ini dengan objek metrik yang ditampilkan di Objek metrik. Deskriptor memberi tahu Anda arti nilai label, serta cara menafsirkan nilai titik data.

Anda dapat mengambil deskriptor metrik menggunakan Cloud Monitoring API. Misalnya, lihat halaman referensi untuk metode metricDescriptors.list dan metricDescriptors.get.

Contoh langsung: Jika memiliki project Google Cloud , Anda dapat mengambil deskriptor ini menggunakan widget APIs Explorer sebagai berikut:

  1. Buka halaman referensi metricDescriptors.list.

  2. Di panel berlabel Try this method, masukkan yang berikut:

    • name: projects/PROJECT_ID/metricDescriptors/logging.googleapis.com/log_entry_count Ganti PROJECT_ID dengan ID project Google Cloud Anda.
  3. Klik Jalankan.

Permintaan ini akan menampilkan deskriptor sebelumnya.

Untuk contoh penggunaan metode Monitoring API, lihat Mencantumkan jenis metrik dan resource.

Sebagian besar kolom dalam deskriptor metrik cukup jelas. Dua yang mungkin memerlukan penjelasan lebih lanjut adalah jenis metrik dan jenis nilai, yang dijelaskan lebih lanjut di Jenis dan jenis metrik.

Cloud Monitoring memiliki sekitar 6.500 jenis metrik bawaan; lihat Daftar metrik untuk mengetahui detailnya. Anda juga dapat membuat deskriptor metrik Anda sendiri untuk merekam metrik kustom. Untuk mengetahui informasi selengkapnya, lihat Ringkasan metrik yang ditentukan pengguna.