Package google.devtools.cloudprofiler.v2

Indeks

ExportService

Layanan memungkinkan pelanggan Cloud Profiler yang sudah ada mengekspor data profil mereka dari Google Cloud.

ListProfiles

rpc ListProfiles(ListProfilesRequest) returns (ListProfilesResponse)

Mencantumkan profil yang telah dikumpulkan sejauh ini dan yang izin lihatnya dimiliki pemanggil.

Cakupan otorisasi

Memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/monitoring
  • https://www.googleapis.com/auth/monitoring.write
  • https://www.googleapis.com/auth/cloud-platform

Untuk informasi selengkapnya, lihat Ringkasan Autentikasi.

ProfilerService

Mengelola pengumpulan data pembuatan profil berkelanjutan yang disediakan oleh agen pembuatan profil yang berjalan di cloud atau oleh penyedia data pembuatan profil offline.

API yang tercantum dalam layanan ini hanya ditujukan untuk digunakan dalam agen profiler kami.

CreateOfflineProfile

rpc CreateOfflineProfile(CreateOfflineProfileRequest) returns (Profile)

CreateOfflineProfile membuat resource profil baru dalam mode offline. Klien menyediakan profil yang akan dibuat bersama dengan byte profil, dan server akan mencatatnya.

Penggunaan langsung API ini tidak disarankan, harap gunakan agen profiler yang didukung untuk pengumpulan profil.

Cakupan otorisasi

Memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/monitoring
  • https://www.googleapis.com/auth/monitoring.write
  • https://www.googleapis.com/auth/cloud-platform

Untuk informasi selengkapnya, lihat Ringkasan Autentikasi.

CreateProfile

rpc CreateProfile(CreateProfileRequest) returns (Profile)

CreateProfile akan membuat resource profil baru dalam mode online.

Penggunaan langsung API ini tidak disarankan, harap gunakan agen profiler yang didukung untuk pengumpulan profil.

Server memastikan bahwa profil baru dibuat dengan kecepatan konstan per deployment, sehingga permintaan pembuatan mungkin tertunda selama beberapa waktu hingga sesi profil berikutnya tersedia.

Permintaan mungkin gagal dengan error ABORTED jika pembuatan tidak tersedia dalam waktu ~1 mnt, respons akan menunjukkan durasi backoff yang harus dilakukan klien sebelum mencoba membuat profil lagi. Durasi backoff ditampilkan di ekstensi google.rpc.RetryInfo pada status respons. Untuk klien gRPC, ekstensi akan ditampilkan sebagai proto yang diserialisasi biner di item metadata di akhir yang bernama "google.rpc.retryinfo-bin".

Cakupan otorisasi

Memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/monitoring
  • https://www.googleapis.com/auth/monitoring.write
  • https://www.googleapis.com/auth/cloud-platform

Untuk informasi selengkapnya, lihat Ringkasan Autentikasi.

UpdateProfile

rpc UpdateProfile(UpdateProfileRequest) returns (Profile)

UpdateProfile memperbarui byte dan label profil pada resource profil yang dibuat dalam mode online. Memperbarui byte untuk profil yang dibuat dalam mode offline saat ini tidak didukung: konten profil harus disediakan pada saat pembuatan profil.

Penggunaan langsung API ini tidak disarankan, harap gunakan agen profiler yang didukung untuk pengumpulan profil.

Cakupan otorisasi

Memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/monitoring
  • https://www.googleapis.com/auth/monitoring.write
  • https://www.googleapis.com/auth/cloud-platform

Untuk informasi selengkapnya, lihat Ringkasan Autentikasi.

CreateOfflineProfileRequest

CreateOfflineProfileRequest mendeskripsikan permintaan pembuatan offline resource profil.

Kolom
parent

string

Project induk tempat profil akan dibuat.

Otorisasi memerlukan izin IAM berikut pada resource parent yang ditentukan:

  • cloudprofiler.profiles.create
profile

Profile

Konten profil yang akan dibuat.

CreateProfileRequest

CreateProfileRequest menjelaskan permintaan pembuatan online resource profil. Kolom deployment harus diisi. profile_type menentukan daftar jenis profil yang didukung oleh agen. Panggilan pembuatan akan ditangguhkan hingga profil dari salah satu jenis ini perlu dikumpulkan.

Kolom
parent

string

Project induk tempat profil akan dibuat.

Otorisasi memerlukan izin IAM berikut pada resource parent yang ditentukan:

  • cloudprofiler.profiles.create
deployment

Deployment

Detail deployment.

Otorisasi memerlukan izin IAM berikut pada resource deployment yang ditentukan:

  • cloudprofiler.profiles.create
profile_type[]

ProfileType

Satu atau beberapa jenis profil yang dapat diberikan oleh agen.

Deployment

Deployment berisi informasi identifikasi deployment.

Kolom
project_id

string

Project ID adalah ID dari project cloud. Ekspresi reguler validasi: ^[a-z][-a-z0-9:.]{4,61}[a-z0-9]$.

target

string

Target adalah nama layanan yang digunakan untuk mengelompokkan deployment terkait: * Nama layanan untuk App Engine Flex / Standar. * Nama cluster dan container untuk GKE. * String yang ditentukan pengguna untuk pembuatan profil Compute Engine langsung (misalnya Java). * Nama tugas untuk Dataflow. Ekspresi reguler validasi: ^[a-z0-9]([-a-z0-9_.]{0,253}[a-z0-9])?$.

labels

map<string, string>

Label mengidentifikasi deployment dalam lingkup pengguna dan target yang sama. Ekspresi reguler validasi untuk nama label: ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$. Nilai untuk masing-masing label harus <= 512 byte, ukuran total semua nama label dan nilai harus <= 1024 byte.

Label bernama "language" dapat digunakan untuk merekam bahasa pemrograman deployment yang dibuatkan profil. Pilihan standar untuk nilai ini mencakup "java", "go", "python", "ruby", "nodejs", "php", "dotnet".

Untuk deployment yang berjalan di Google Cloud Platform, label "zona" atau "region" harus ada yang menjelaskan lokasi deployment. Contoh zona adalah "us-central1-a", contoh region adalah "us-central1" atau "us-central".

ListProfilesRequest

ListProfilesRequest berisi parameter permintaan untuk profil listingan bagi deployment dalam project yang izin lihatnya dapat dilihat pengguna.

Kolom
parent

string

Wajib. Induk, yang memiliki kumpulan profil ini. Format: projects/{user_project_id}

Otorisasi memerlukan izin IAM berikut pada resource parent yang ditentukan:

  • cloudprofiler.profiles.list
page_size

int32

Opsional. Jumlah maksimum item untuk ditampilkan. page_size default adalah 1.000. Batas maksimumnya adalah 1.000.

page_token

string

Opsional. Token untuk melanjutkan penomoran halaman dan mendapatkan profil dari halaman tertentu. Saat melakukan penomoran halaman, semua parameter lain yang disediakan ke ListProfiles harus cocok dengan panggilan yang disediakan token halaman.

ListProfilesResponse

ListProfileResponse berisi daftar profil yang dikumpulkan untuk deployment dalam project yang izin lihatnya dapat dilihat pengguna.

Kolom
profiles[]

Profile

Daftar profil yang diambil.

next_page_token

string

Token untuk menerima halaman hasil berikutnya. Kolom ini mungkin kosong jika tidak ada lagi profil yang dapat diambil.

skipped_profiles

int32

Jumlah profil yang dilewati di halaman saat ini karena tidak berhasil diambil. Biasanya harus nol. Nilai bukan nol dapat menunjukkan kegagalan sementara, dalam hal ini jika angkanya terlalu tinggi untuk kasus penggunaan Anda, panggilan dapat dicoba lagi.

Profil

Resource profil.

Kolom
name

string

Hanya output. ID unik yang tidak jelas, ditetapkan server, untuk profil ini.

profile_type

ProfileType

Jenis profil. Untuk mode offline, nilai ini harus ditentukan saat membuat profil. Untuk mode online, atribut ini ditetapkan dan ditampilkan oleh server.

deployment

Deployment

Deployment yang sesuai dengan profil ini.

duration

Duration

Durasi sesi pembuatan profil. Input (untuk mode offline) atau output (untuk mode online). Kolom ini mewakili durasi pembuatan profil yang diminta. Ini mungkin sedikit berbeda dari durasi pembuatan profil yang efektif, yang direkam dalam data profil, apabila pembuatan profil tidak dapat dihentikan segera (misalnya, jika menghentikan pembuatan profil akan ditangani secara asinkron).

profile_bytes

bytes

Hanya input. Byte profil, sebagai proto serial yang dikompresi dengan gzip, formatnya adalah https://github.com/google/pprof/blob/master/proto/profile.proto.

labels

map<string, string>

Hanya input. Label yang terkait dengan profil spesifik ini. Label ini akan digabungkan dengan label deployment untuk set data akhir. Lihat dokumentasi tentang label deployment untuk mengetahui batas dan aturan validasi.

start_time

Timestamp

Hanya output. Waktu mulai untuk profil. Output ini hanya ada sebagai respons dari metode ListProfiles.

ProfileType

ProfileType adalah jenis data pembuatan profil. CATATAN: nama anggota enumerasi digunakan (dalam huruf kecil) sebagai ID string unik untuk jenis profil, sehingga nama tersebut tidak boleh diganti.

Enum
PROFILE_TYPE_UNSPECIFIED Jenis profil belum ditentukan.
CPU Pengambilan sampel waktu CPU thread.
WALL Pengambilan sampel waktu Wallclock. Lebih mahal karena menghentikan semua thread.
HEAP Profil heap yang sedang digunakan. Mewakili snapshot alokasi yang aktif pada saat pembuatan profil.
THREADS Kumpulan satu sesi dari semua stack thread.
CONTENTION Profil pertentangan sinkronisasi.
PEAK_HEAP Profil heap puncak.
HEAP_ALLOC Profil alokasi heap. Sub-atribut ini mewakili agregasi semua alokasi yang dibuat selama durasi profil. Semua alokasi disertakan, termasuk yang mungkin telah dibebaskan pada akhir interval pembuatan profil. Profil ini secara khusus berguna untuk bahasa pembersihan sampah memori guna memahami bagian kode mana yang paling banyak menghasilkan tekanan pembersihan sampah memori untuk melihat apakah hal itu dapat dioptimalkan.

UpdateProfileRequest

UpdateProfileRequest berisi profil yang akan diperbarui.

Kolom
profile

Profile

Profil untuk diperbarui.

Otorisasi memerlukan izin IAM berikut pada resource profile yang ditentukan:

  • cloudprofiler.profiles.update
update_mask

FieldMask

Mask kolom digunakan untuk menentukan kolom yang akan ditimpa. Saat ini, hanya kolom profile_bytes dan label yang didukung oleh UpdateProfile, sehingga hanya kolom tersebut yang dapat ditentukan di mask. Jika tidak ada mask yang disediakan, semua kolom akan ditimpa.