Saat produsen layanan menawarkan layanan kepada konsumen layanannya, produsen layanan harus
memastikan bahwa berbagai prasyarat terpenuhi, seperti apakah:
Service Control API menyediakan metode
services.check
sederhana untuk memeriksa prasyarat tersebut. Layanan terkelola harus memanggil metode ini secara rutin untuk memastikan prasyarat terpenuhi. Aktivitas antara
produsen layanan dan konsumen layanan diwakili oleh
Operation.
Metode services.check melakukan pemeriksaan berikut pada operasi:
Project produsen layanan sudah aktif dan dalam kondisi baik.
Project konsumen layanan aktif dan dalam status responsif.
Layanan terkelola diaktifkan di project konsumen layanan.
Kunci API valid.
Penggunaan kunci API memenuhi batasan yang terkait dengan kunci API,
seperti pembatasan perujuk IP atau HTTP.
Metode services.check biasanya dipanggil dari server yang benar-benar
menerapkan layanan. Untuk tujuan keamanan dan privasi,
Service Control API menggunakan Identity and Access Management untuk memverifikasi
pemanggil memiliki izin yang sesuai untuk memanggil metode. Untuk mengetahui detailnya, lihat
Kontrol Akses Service Control API.
Memeriksa status
Setelah meluncurkan layanan terkelola, Anda dapat memanggil
metode services.check di layanan tanpa konfigurasi tambahan. Lihat referensi
services.check
untuk mengetahui detailnya.
Untuk bereksperimen dengan metode ini dengan cepat, Anda dapat menggunakan perintah gcurl untuk memanggil
metode services.check. Lihat
Mulai Menggunakan Service Control API
untuk mengetahui langkah-langkah penyiapan awal.
Respons dari metode pemeriksaan menunjukkan apakah semua pemeriksaan berhasil atau
beberapa pemeriksaan gagal. Keberhasilan ditunjukkan dengan tidak adanya
kolom
checkErrors. Jika tidak, kolom checkErrors akan mencantumkan pemeriksaan yang gagal.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-08-11 UTC."],[],[],null,["# Checking Status\n\nThis page describes how to use Service Infrastructure for checking\nstatus on [managed services](/service-infrastructure/docs/glossary#managed),\n[service producers](/service-infrastructure/docs/glossary#producer),\n[service consumers](/service-infrastructure/docs/glossary#consumer), and API keys.\n\nWhen a service producer offers a service to its service consumers, it needs to\nensure that various preconditions are met, such as whether:\n\n- A service consumer has been deleted.\n- The service consumer has [enabled](/service-infrastructure/docs/glossary#enabled) the service.\n- An API key is valid.\n\nThe Service Control API provides a simple\n[`services.check`](/service-infrastructure/docs/service-control/reference/rest/v1/services/check)\nmethod to check such preconditions. A managed service should call this method on\na regular basis to ensure the preconditions are met. The activity between the\nservice producer and the service consumer is represented by an\n[`Operation`](/service-infrastructure/docs/service-control/reference/rest/v1/Operation).\nThe `services.check` method performs the following checks on the operation:\n\n- The service producer project is live and in a healthy state.\n- The service consumer project is live and in a healthy state.\n- The managed service is enabled on the service consumer project.\n- The API key is valid.\n- The use of the API key satisfies restrictions associated with the API key, such as IP or HTTP referrer restrictions.\n\nThe `services.check` method is typically called from the servers that actually\nimplement the service. For security and privacy purposes,\nthe Service Control API uses [Identity and Access Management](/iam) to verify the\ncaller has the proper permission to call the method. For details, see\n[Service Control API Access Control](/service-infrastructure/docs/service-control/access-control).\n\nChecking status\n---------------\n\nAfter you [roll out](/service-infrastructure/docs/glossary#rollout) a managed service, you can call the\n`services.check` method on the service without additional configuration. See the\n[`services.check`](/service-infrastructure/docs/service-control/reference/rest/v1/services/check)\nreference for details.\n\nTo quickly experiment with the method, you can use the `gcurl` command to call\nthe `services.check` method. See\n[Getting Started with the Service Control API](/service-infrastructure/docs/service-control/getting-started)\nfor the initial setup steps. \n\n```\ngcurl -d '{\n \"operation\": {\n \"operationId\": \"123e4567-e89b-12d3-a456-426655440000\",\n \"consumerId\": \"project:endpointsapis-consumer\",\n \"startTime\":\"2016-07-31T05:20:00Z\",\n \"operationName\":\"google.example.hello.v1.HelloService.GetHello\"\n }\n}' https://servicecontrol.googleapis.com/v1/services/endpointsapis.appspot.com:check\n{\n \"operationId\": \"123e4567-e89b-12d3-a456-426655440000\"\n}\n```\n\nThe response from the check method indicates whether all checks succeeded or\nsome checks failed. Success is indicated by the absence of\n[`checkErrors`](/service-infrastructure/docs/service-control/reference/rest/v1/services/check#CheckError)\nfield. Otherwise, the `checkErrors` field lists the failed checks."]]