Google Professional Cloud DevOps Engineer Question 157
Select 3Google Cloud PlatformYour team manages a microservices-based application running on Google Kubernetes Engine (GKE). Recently, you noticed that the application has experienced intermittent latency and failures, but the root cause is unclear. You suspect there might be observability issues in your monitoring setup. Which actions should you take to improve observability and identify the root cause?
- A
Ensure all services emit structured logs with correlation IDs for tracing requests across services.
- B
Enable Kubernetes audit logging to track all API requests made to the Kubernetes API server.
- C
Configure distributed tracing to follow request flows through different microservices.
- D
Increase the retention period of Stackdriver Monitoring metrics to allow for long-term trend analysis.
- E
Set up synthetic monitoring to test application endpoints periodically and detect availability issues.
Show answer and explanation
Correct answers: A, C, E
Explanation
Improving observability in a microservices-based architecture requires tools and techniques that enable tracing requests across services and proactively monitoring application health. Structured logs with correlation IDs and distributed tracing help diagnose request latency and failures, while synthetic monitoring provides additional insights into endpoint availability. Kubernetes audit logs and metric retention are valuable for other use cases but do not directly address observability gaps in this scenario.
- A. Correct.
Structured logs with correlation IDs allow you to trace requests across distributed services, making it easier to identify issues in communication between microservices. This is critical for debugging latency and failures in a microservices architecture.
- B. Incorrect.
Kubernetes audit logging tracks API server interactions, which is useful for diagnosing security or infrastructure issues, but it does not directly help with identifying latency or failures in application requests.
- C. Correct.
Distributed tracing is essential in a microservices architecture to visualize request paths and identify bottlenecks or failing services. This directly addresses the observability gap in diagnosing latency and failures.
- D. Incorrect.
Increasing the retention period of metrics helps with historical analysis but does not directly improve observability or assist in real-time debugging of latency and failures.
- E. Correct.
Synthetic monitoring provides proactive insights by testing application endpoints periodically, which can help detect and analyze intermittent failures or availability issues.