Introduction
Cloud Debugger is also known as Stackdriver Debugger. It lets the user inspect the state of a running cloud application at any code location without stopping or slowing it down. It's safe for use with the production apps. When a debug snapshot is captured by the Java debugger agent, it adds less than 10ms to the request latency. This blog will discuss the advanced concepts that are used in Cloud Debugger.
Must Recommended Topic, Types of Agents in Artificial Intelligence.
Cloud Debugger API
It allows the application to interact with the backend of the Google Cloud Debugger. It provides two different interfaces: The Debugger Interface and The Controller Interface. The debugger interface allows the user to implement a cloud debugger client that gives the user the ability to set and delete breakpoints at which the state data is collected, as well as read the data that is captured. Whereas the controller interface allows the user to implement an agent that sends state data.
Protocols
The following mentioned protocols are supported by the cloud debugger API:
- REST: It allows the user to interact with the backend of the Cloud Debugger using JSON over HTTP.
- RPC: It allows the user to interact with the backends using gRPC. At the moment, this API doesn't provide any gRPC client libraries.
Authorization
OAuth 2.0 is used by the Cloud Debugger API for user authorization. As a result of which, the user must set up web application credentials in the Google Cloud console for the project and, similarly, implement an OAuth 2.0 authorization flow in the client application in order to use the API.
Service: clouddebugger.googleapis.com
If the user wishes to call this service, then it is recommended to use Google-provided client libraries. If the application needs to use its own libraries to call this service, then use the below-mentioned information when an API request is made.
Discovery document
It is a machine-readable specification that is used for describing as well as consuming REST APIs. It is also used to build client libraries, IDE plugins, and many other tools that are used to interact with the Google APIs. It is possible that one service may provide multiple discovery documents. The service mentioned above provides the below-mentioned discovery document.
https://clouddebugger.googleapis.com/$discovery/rest?version=v2
Service endpoint
It is a baseless URL that tells the network address of the API service. It is possible for a service to have multiple service endpoints. The service mentioned above has the below-mentioned service endpoint, and all the relative URLs to this endpoint are mentioned below:
https://clouddebugger.googleapis.com
REST Resource: v2.controller.debuggees

REST Resource: v2.controller.debuggees.breakpoints

REST Resource: v2.debugger.debuggees

REST Resource: v2.debugger.debuggees.breakpoints

Service: clouddebugger.googleapis.com
A service known as clouddebugger.googleapis.com is required to create a RPC client stubs.
google.devtools.cloddebugger.v2.Controller2

google.devtools.cloddebugger.v2.Debugger2









