Below you will find pages that utilize the taxonomy term “Googleapis”
Posts
Gnarly Protocol Buffers compilation
This Stackoverflow question piqued my interest:
retry policy configuration for grpc not working
Service Config in gRPC is new to me but, my initial suspicion (albeit incorrect) was that the JSON types were incorrect.
I decided to try using the Protocol Buffer source service_config.proto to verify the JSON.
To do so I needed to compile the source…. it was gnarly.
There are 2 repos used:
googleapis grpc-proto The service_config.proto includes options for java_package but no go_package.
read more
Posts
Listing Cloud Logging log-based metrics using gRPC
Referring to Accessing Google Services using gRPC, I wanted to query a project’s Cloud Logging for log-based metrics using gRPC.
In summary:
ENDPOINT="logging.googleapis.com:443" ROOT="/path/to/googleapis" # https://github.com/googleapis/googleapis PACKAGE="google/logging/v2" # NB Not logging.proto PROTO="${ROOT}/${PACKAGE}/logging_metrics.proto" TOKEN=$(gcloud auth print-access-token) PROJECT="..." PACKAGE="google.logging.v2" SERVICE="MetricsServiceV2" METHOD="${PACKAGE}.${SERVICE}/ListLogMetrics" # ListLogMetricsRequest fields PARENT="projects/${PROJECT}" grpcurl \ --import-path=${ROOT} \ --proto=${PROTO} \ -H "Authorization: Bearer ${TOKEN}" \ -d "{\"parent\": \"${PARENT}\"}" \ ${ENDPOINT} ${METHOD} From APIs Explorer, Cloud Logging API v2, instead of the REST reference, browse the gRPC reference specifically the package google.
read more
Posts
Access Google Services using gRPC
Google publishes interface definitions of Google APIs (services) that support REST and gRPC in a repo called Google APIs. Google’s SDKs uses gRPC to access these services but, how to do this using e.g. gRPCurl?
I wanted to debug Cloud Profiler and its agent makes UpdateProfile RPCs to cloudprofiler.googleapis.com. Cloud Profiler is more challenging service to debug because (a) it’s publicly “write-only”; and (b) it has complex messages. UpdateProfile sends UpdateProfileRequest messages that include Profile messages that include profile_bytes which are gzip compressed serialized protos of pprof’s Profile.
read more