codemart786
codemart786

Reputation: 21

Creating stack-driver monitoring charts to measure application api response latencies and requests counts

I created an application which runs on GKE kubernetes . Now I want to monitor my application apis using the stack driver monitoring . There are certain built-in/default metrics in GCP which are exposed on the stack driver monitoring console . They are pretty confusing . I would like to monitor the 99percentile, 95percentile api latencies and the requests count of each application api received by the system.

  1. Can someone provide help how to achieve this ?
  2. Is it possible using the metrics which are already there in the stack driver(emitted by GKE, istio, GCE etc) or I need to write custom metrics into the code ?

Any help is deeply appreciated :)

Thanks

Expected Result: Monitoring dashboards/charts for -
1. The 50, 90, 95, 99 percentile of the application api latencies. 2. Percentages/Count(s) of api requests which end with 2xx, 4xx, 5xx status codes.

Upvotes: 1

Views: 1015

Answers (1)

Pablo
Pablo

Reputation: 66

Stackdriver does not have application-level metrics natively. The built-in metrics in Stackdriver are limited to GCP, AWS, and some established 3rd parties[1].

In order to monitor latency on your APIs, you would need to either create custom metrics[2], then build your Stackdriver dashboards against those, or use Cloud Endpoints[3]. I believe Cloud Endpoints generates the kind of dashboard you are looking for natively, it might be a better fit for this scenario.

If Endpoints don't meet your requirements, Stackdriver custom metrics give you more control, but both the metrics and the dashboards would need to be defined by you.

[1] https://cloud.google.com/monitoring/api/metrics

[2] https://cloud.google.com/monitoring/custom-metrics/creating-metrics

[3] https://cloud.google.com/endpoints/

Upvotes: 1

Related Questions