MCP Tools Reference: monitoring.googleapis.com

Alat: get_alert

Gunakan ini sebagai alat utama untuk mendapatkan informasi tentang pemberitahuan tertentu. Peringatan adalah representasi pelanggaran kebijakan pemberitahuan. Hal ini berguna untuk memahami detail notifikasi tertentu.

Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP get_alert.

Permintaan Curl
curl --location 'https://monitoring.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "get_alert",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Skema Input

Permintaan GetAlert.

GetAlertRequest

Representasi JSON
{
  "name": string
}
Kolom
name

string

Wajib. Nama pemberitahuan.

Formatnya adalah:

projects/[PROJECT_ID_OR_NUMBER]/alerts/[ALERT_ID]

[ALERT_ID] adalah ID unik yang ditetapkan sistem untuk pemberitahuan.

Skema Output

Peringatan adalah representasi pelanggaran kebijakan pemberitahuan. Ini adalah resource hanya baca yang tidak dapat diubah oleh API yang disertakan.

Pemberitahuan

Representasi JSON
{
  "name": string,
  "state": enum (State),
  "openTime": string,
  "closeTime": string,
  "resource": {
    object (MonitoredResource)
  },
  "metadata": {
    object (MonitoredResourceMetadata)
  },
  "metric": {
    object (Metric)
  },
  "log": {
    object (LogMetadata)
  },
  "policy": {
    object (PolicySnapshot)
  }
}
Kolom
name

string

ID. Nama pemberitahuan.

Formatnya adalah:

projects/[PROJECT_ID_OR_NUMBER]/alerts/[ALERT_ID]

[ALERT_ID] adalah ID unik yang ditetapkan sistem untuk pemberitahuan.

state

enum (State)

Hanya output. Status pemberitahuan saat ini.

openTime

string (Timestamp format)

Waktu saat pemberitahuan dibuka.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

closeTime

string (Timestamp format)

Waktu ketika pemberitahuan ditutup.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

resource

object (MonitoredResource)

Jenis resource yang dimonitor dan label resource yang dimonitor yang dipertahankan dari kondisi yang memicu insiden.

metadata

object (MonitoredResourceMetadata)

Metadata resource yang dimonitor.

metric

object (Metric)

Jenis metrik dan label metrik apa pun yang dipertahankan dari kondisi yang menyebabkan insiden.

log

object (LogMetadata)

Informasi log yang terkait dengan pemberitahuan. Kolom ini hanya diisi untuk pemberitahuan berbasis log.

policy

object (PolicySnapshot)

Snapshot kebijakan pemberitahuan yang menghasilkan pemberitahuan ini.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

MonitoredResource

Representasi JSON
{
  "type": string,
  "labels": {
    string: string,
    ...
  }
}
Kolom
type

string

Wajib. Jenis resource yang dimonitor. Kolom ini harus cocok dengan kolom type objek MonitoredResourceDescriptor. Misalnya, jenis instance VM Compute Engine adalah gce_instance. Untuk mengetahui daftar jenisnya, lihat Jenis resource Monitoring dan Jenis resource Logging.

labels

map (key: string, value: string)

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

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

LabelsEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

MonitoredResourceMetadata

Representasi JSON
{
  "systemLabels": {
    object
  },
  "userLabels": {
    string: string,
    ...
  }
}
Kolom
systemLabels

object (Struct format)

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 }
userLabels

map (key: string, value: string)

Hanya output. Peta label metadata yang ditentukan pengguna.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

map (key: string, value: value (Value format))

Peta tidak berurutan dari nilai yang diketik secara dinamis.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

Nilai

Representasi JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Kolom
Kolom union kind. Jenis nilai. kind hanya ada berupa salah satu diantara berikut:
nullValue

null

Mewakili JSON null.

numberValue

number

Mewakili angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung dalam JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 besar, karena format JSON umumnya tidak mendukungnya dalam jenis angka.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Mewakili boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

UserLabelsEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

Metrik

Representasi JSON
{
  "type": string,
  "labels": {
    string: string,
    ...
  }
}
Kolom
type

string

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

labels

map (key: string, value: string)

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

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

LabelsEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

LogMetadata

Representasi JSON
{
  "extractedLabels": {
    string: string,
    ...
  }
}
Kolom
extractedLabels

map (key: string, value: string)

Label yang diekstrak dari log.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ExtractedLabelsEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

PolicySnapshot

Representasi JSON
{
  "name": string,
  "displayName": string,
  "severity": enum (Severity),
  "userLabels": {
    string: string,
    ...
  }
}
Kolom
name

string

Nama resource kebijakan pemberitahuan. Dalam bentuk "projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]".

displayName

string

Nama tampilan kebijakan pemberitahuan.

severity

enum (Severity)

Tingkat keparahan kebijakan pemberitahuan.

userLabels

map (key: string, value: string)

Label pengguna untuk kebijakan pemberitahuan.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

UserLabelsEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

Negara Bagian

Enumerasi kemungkinan status untuk notifikasi.

Enum
STATE_UNSPECIFIED Status pemberitahuan tidak ditentukan.
OPEN Pemberitahuan terbuka.
CLOSED Pemberitahuan ditutup.

NullValue

Mewakili JSON null.

NullValue adalah sentinel, menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom berjenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memancarkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, dan akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

Keparahan

Enumerasi kemungkinan tingkat keparahan untuk kebijakan pemberitahuan.

Enum
SEVERITY_UNSPECIFIED Tingkat keparahan tidak ditentukan. Ini adalah nilai defaultnya.
CRITICAL Ini adalah tingkat keparahan tertinggi. Gunakan opsi ini jika masalah dapat menyebabkan kerusakan atau gangguan yang signifikan.
ERROR Ini adalah tingkat keparahan sedang. Gunakan ini jika masalah dapat menyebabkan kerusakan ringan atau waktu istirahat.
WARNING Ini adalah tingkat keparahan terendah. Gunakan opsi ini jika masalah tidak menyebabkan kerusakan atau periode nonaktif, tetapi berpotensi menimbulkan masalah di masa mendatang.

Anotasi Alat

Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk ini dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim ke pengguna.

Selain string judul, petunjuk boolean berikut ditentukan sebagai berikut:

  • readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: false.
  • destructiveHint: Jika benar (true), alat dapat melakukan tindakan merusak. Jika salah (false), alat hanya dapat melakukan tindakan tambahan. Default: true.
  • idempotentHint: Jika benar (true), memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.
  • openWorldHint: Jika benar, alat dapat berinteraksi dengan 'dunia terbuka' entitas eksternal. Jika salah (false), alat hanya dapat berinteraksi dengan entitas internal. Misalnya, alat penelusuran web akan menjadi open world, sedangkan alat memori tidak akan menjadi open world.

Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ✅ | Petunjuk Hanya Baca: ✅ | Petunjuk Dunia Terbuka: ❌