Package google.api

Indeks

Distribusi

Distribution berisi statistik ringkasan untuk populasi nilai. Secara opsional, kolom ini berisi histogram yang merepresentasikan distribusi nilai tersebut di seluruh set bucket.

Statistik ringkasan adalah jumlah, rata-rata, jumlah kuadrat deviasi dari rata-rata, minimum, dan maksimum dari kumpulan nilai populasi. Histogram didasarkan pada urutan bucket dan memberikan jumlah nilai yang termasuk dalam setiap bucket. Batas bucket diberikan secara eksplisit atau dengan rumus untuk bucket dengan lebar tetap atau meningkat secara eksponensial.

Meskipun tidak dilarang, umumnya tidak disarankan untuk menyertakan nilai non-hingga (tak hingga atau NaN) dalam populasi nilai, karena hal ini akan membuat kolom mean dan sum_of_squared_deviation tidak bermakna.

Kolom
count

int64

Jumlah nilai dalam populasi. Tidak boleh negatif. Nilai ini harus sama dengan jumlah nilai dalam bucket_counts jika histogram disediakan.

mean

double

Rata-rata aritmetika nilai dalam populasi. Jika count adalah nol, kolom ini harus nol.

sum_of_squared_deviation

double

Jumlah kuadrat selisih dari rata-rata nilai dalam populasi. Untuk nilai x_i, ini adalah:

Sum[i=1..n]((x_i - mean)^2)

Knuth, "The Art of Computer Programming", Vol. 2, halaman 232, edisi ke-3 menjelaskan metode Welford untuk mengakumulasi jumlah ini dalam satu kali proses.

Jika count adalah nol, kolom ini harus nol.

range

Range

Jika ditentukan, berisi rentang nilai populasi. Kolom tidak boleh ada jika count adalah nol.

bucket_options

BucketOptions

Menentukan batas bucket histogram. Jika distribusi tidak berisi histogram, hapus kolom ini.

bucket_counts[]

int64

Jumlah nilai dalam setiap bucket histogram, seperti yang dijelaskan dalam bucket_options. Jika distribusi tidak memiliki histogram, hapus kolom ini. Jika ada histogram, maka jumlah nilai dalam bucket_counts harus sama dengan nilai dalam kolom count distribusi.

Jika ada, bucket_counts harus berisi N nilai, dengan N adalah jumlah bucket yang ditentukan dalam bucket_options. Jika Anda memberikan kurang dari N nilai, nilai yang tersisa dianggap 0.

Urutan nilai dalam bucket_counts mengikuti skema penomoran bucket yang dijelaskan untuk tiga jenis bucket. Nilai pertama harus berupa jumlah untuk bucket underflow (angka 0). N-2 nilai berikutnya adalah jumlah untuk bucket terbatas (angka 1 hingga N-2). Nilai ke-N dalam bucket_counts adalah jumlah untuk bucket overflow (angka N-1).

exemplars[]

Exemplar

Harus dalam urutan menaik kolom value.

BucketOptions

BucketOptions menjelaskan batas bucket yang digunakan untuk membuat histogram untuk distribusi. Bucket dapat berupa urutan linear, urutan eksponensial, atau setiap bucket dapat ditentukan secara eksplisit. BucketOptions tidak menyertakan jumlah nilai di setiap bucket.

Bucket memiliki batas bawah inklusif dan batas atas eksklusif untuk nilai yang dihitung untuk bucket tersebut. Batas atas bucket harus lebih besar daripada batas bawah. Urutan N bucket untuk distribusi terdiri dari bucket underflow (angka 0), nol atau beberapa bucket terbatas (angka 1 hingga N - 2), dan bucket overflow (angka N - 1). Bucket berdekatan: batas bawah bucket i (i > 0) sama dengan batas atas bucket i - 1. Bucket mencakup seluruh rentang nilai terbatas: batas bawah bucket underflow adalah -infinity dan batas atas bucket overflow adalah +infinity. Bucket terbatas disebut demikian karena kedua batasnya terbatas.

Kolom
Kolom union options. Tepatnya salah satu dari tiga kolom ini harus disetel. options hanya ada berupa salah satu diantara berikut:
linear_buckets

Linear

Bucket linear.

exponential_buckets

Exponential

Bucket eksponensial.

explicit_buckets

Explicit

Bucket eksplisit.

Eksplisit

Menentukan kumpulan bucket dengan lebar arbitrer.

Ada size(bounds) + 1 (= N) bucket. Bucket i memiliki batas berikut:

Batas atas (0 <= i < N-1): bounds[i] Batas bawah (1 <= i < N); bounds[i - 1]

Kolom bounds harus berisi setidaknya satu elemen. Jika bounds hanya memiliki satu elemen, tidak ada bucket terbatas, dan satu elemen tersebut adalah batas umum bucket overflow dan underflow.

Kolom
bounds[]

double

Nilai harus meningkat secara monoton.

Eksponensial

Menentukan urutan eksponensial bucket yang memiliki lebar yang proporsional dengan nilai batas bawah. Setiap bucket mewakili ketidakpastian relatif konstan pada nilai tertentu dalam bucket.

Ada num_finite_buckets + 2 (= N) bucket. Bucket i memiliki batas berikut:

Batas atas (0 <= i < N-1): skala * (faktor_pertumbuhan ^ i).

Batas bawah (1 <= i < N): scale * (growth_factor ^ (i - 1)).

Kolom
num_finite_buckets

int32

Harus lebih besar dari 0.

growth_factor

double

Harus lebih besar dari 1.

scale

double

Harus lebih besar dari 0.

Linear

Menentukan urutan bucket linear yang semuanya memiliki lebar yang sama (kecuali bucket overflow dan underflow). Setiap bucket mewakili ketidakpastian absolut konstan pada nilai tertentu dalam bucket.

Ada num_finite_buckets + 2 (= N) bucket. Bucket i memiliki batas berikut:

Batas atas (0 <= i < N-1): offset + (width * i).

Batas bawah (1 <= i < N): offset + (width * (i - 1)).

Kolom
num_finite_buckets

int32

Harus lebih besar dari 0.

width

double

Harus lebih besar dari 0.

offset

double

Batas bawah bucket pertama.

Contoh

Contoh adalah titik contoh yang dapat digunakan untuk memberi anotasi pada nilai distribusi gabungan. Metadata ini memberikan informasi tentang nilai tertentu yang ditambahkan ke bucket Distribusi, seperti ID aktivitas yang aktif saat nilai ditambahkan. File ini dapat berisi informasi lebih lanjut, seperti nilai dan stempel waktu contoh, asal, dll.

Kolom
value

double

Nilai titik contoh. Nilai ini menentukan bucket tempat contoh berada.

timestamp

Timestamp

Waktu pengamatan (sampling) nilai di atas.

attachments[]

Any

Informasi kontekstual tentang nilai contoh. Contohnya adalah:

Trace: type.googleapis.com/google.monitoring.v3.SpanContext

String literal: type.googleapis.com/google.protobuf.StringValue

Label yang dihapus selama penggabungan: type.googleapis.com/google.monitoring.v3.DroppedLabels

Hanya boleh ada satu lampiran dari jenis pesan tertentu dalam satu contoh, dan hal ini diterapkan oleh sistem.

Rentang

Rentang nilai populasi.

Kolom
min

double

Nilai minimum populasi.

max

double

Nilai maksimum populasi.

HttpBody

Pesan yang merepresentasikan bagian isi HTTP arbitrer. Pesan ini hanya boleh digunakan untuk format payload yang tidak dapat direpresentasikan sebagai JSON, seperti biner mentah atau halaman HTML.

Pesan ini dapat digunakan baik dalam metode API streaming maupun non-streaming pada permintaan dan juga pada respons.

Kolom ini dapat digunakan sebagai kolom permintaan tingkat atas, yang praktis jika seseorang ingin mengekstrak parameter dari template HTTP atau URL ke dalam kolom permintaan dan juga menginginkan akses ke isi HTTP mentah.

Contoh:

message GetResourceRequest {
  // A unique request id.
  string request_id = 1;

  // The raw HTTP body is bound to this field.
  google.api.HttpBody http_body = 2;

}

service ResourceService {
  rpc GetResource(GetResourceRequest)
    returns (google.api.HttpBody);
  rpc UpdateResource(google.api.HttpBody)
    returns (google.protobuf.Empty);

}

Contoh dengan metode streaming:

service CaldavService {
  rpc GetCalendar(stream google.api.HttpBody)
    returns (stream google.api.HttpBody);
  rpc UpdateCalendar(stream google.api.HttpBody)
    returns (stream google.api.HttpBody);

}

Penggunaan jenis ini hanya mengubah cara penanganan isi permintaan dan respons; semua fitur lainnya tetap berfungsi tanpa perubahan.

Kolom
content_type

string

Nilai header HTTP Content-Type yang menentukan jenis konten pada bagian isi.

data

bytes

Isi permintaan/respons HTTP sebagai biner mentah.

extensions[]

Any

Metadata respons khusus aplikasi. Harus ditetapkan dalam respons pertama untuk API streaming.

Metrik

Metrik tertentu, yang diidentifikasi dengan menentukan nilai untuk semua label MetricDescriptor.

Kolom
type

string

Jenis metrik yang ada, lihat google.api.MetricDescriptor. Contoh, custom.googleapis.com/invoice/paid/amount.

labels

map<string, string>

Kumpulan nilai label yang secara unik mengidentifikasi metrik ini. Semua label yang tercantum dalam MetricDescriptor harus diberi nilai.

MetricDescriptor

Jenis ini tidak memiliki kolom.

Menentukan jenis metrik dan skemanya. Setelah deskriptor metrik dibuat, menghapus atau mengubahnya akan menghentikan pengumpulan data dan membuat data yang ada untuk jenis metrik tidak dapat digunakan.

MetricKind

Jenis pengukuran. Menjelaskan cara data dilaporkan. Untuk mengetahui informasi tentang cara menyetel waktu mulai dan waktu berakhir berdasarkan MetricKind, lihat TimeInterval.

Enum
METRIC_KIND_UNSPECIFIED Jangan gunakan nilai default ini.
GAUGE Pengukuran nilai sesaat.
DELTA Perubahan nilai selama interval waktu.
CUMULATIVE Nilai yang terakumulasi selama interval waktu. Pengukuran kumulatif dalam deret waktu harus memiliki waktu mulai yang sama dan waktu berakhir yang meningkat, hingga suatu peristiwa mereset nilai kumulatif ke nol dan menetapkan waktu mulai baru untuk titik-titik berikutnya.

ValueType

Jenis nilai metrik.

Enum
VALUE_TYPE_UNSPECIFIED Jangan gunakan nilai default ini.
BOOL Nilainya adalah boolean. Jenis nilai ini hanya dapat digunakan jika jenis metriknya adalah GAUGE.
INT64 Nilainya adalah bilangan bulat 64-bit yang telah ditandai.
DOUBLE Nilainya adalah angka floating point presisi ganda.
STRING Nilainya adalah string teks. Jenis nilai ini hanya dapat digunakan jika jenis metriknya adalah GAUGE.
DISTRIBUTION Nilainya adalah Distribution.
MONEY Nilainya adalah uang.

MonitoredResource

Objek yang merepresentasikan resource yang dapat digunakan untuk pemantauan, logging, penagihan, atau tujuan lainnya. Contohnya mencakup instance mesin virtual, database, dan perangkat penyimpanan seperti disk. Kolom type mengidentifikasi objek MonitoredResourceDescriptor yang menjelaskan skema resource. Informasi di kolom labels mengidentifikasi resource sebenarnya dan atributnya sesuai dengan skema. Misalnya, instance VM Compute Engine tertentu dapat diwakili oleh objek berikut, karena MonitoredResourceDescriptor untuk "gce_instance" memiliki label "project_id", "instance_id", dan "zone":

{ "type": "gce_instance",
  "labels": { "project_id": "my-project",
              "instance_id": "12345678901234",
              "zone": "us-central1-a" }}
Kolom
type

string

Wajib. Jenis resource yang dipantau. Kolom ini harus cocok dengan kolom type objek MonitoredResourceDescriptor. Misalnya, jenis instance VM Compute Engine adalah gce_instance. Beberapa deskriptor menyertakan nama layanan dalam jenisnya; misalnya, jenis aliran Datastream adalah datastream.googleapis.com/Stream.

labels

map<string, string>

Wajib. Nilai untuk semua label yang tercantum dalam deskriptor resource yang dipantau terkait. Misalnya, instance VM Compute Engine menggunakan label "project_id", "instance_id", dan "zone".

MonitoredResourceMetadata

Metadata tambahan untuk objek MonitoredResource. Objek MonitoredResource berisi kumpulan informasi minimum untuk mengidentifikasi instance resource yang dipantau secara unik. Ada beberapa metadata tambahan lain yang berguna. Monitoring dan Logging menggunakan pipeline penyerapan untuk mengekstrak metadata untuk resource cloud dari semua jenis, dan menyimpan metadata dalam pesan ini.

Kolom
system_labels

Struct

Hanya output. Nilai untuk label metadata sistem yang telah ditentukan sebelumnya. Label sistem adalah jenis metadata yang diekstrak oleh Google, termasuk "machine_image", "vpc", "subnet_id", "security_group", "name", dll. Nilai label sistem hanya dapat berupa string, nilai Boolean, atau daftar string. Contoh:

{ "name": "my-test-instance",
  "security_group": ["a", "b", "c"],
  "spot_instance": false }
user_labels

map<string, string>

Hanya output. Peta label metadata yang ditentukan pengguna.