Implementing observability practices and troubleshooting issues · Topic 6 of 6

Troubleshooting Infrastructure, Pipeline, App and Latency Issues

Troubleshoot Google Cloud infrastructure, CI/CD pipeline, application, observability and latency issues with the right tool for each kind of symptom.

  • 5 min
In a nutshell
  • Connectivity Tests for network paths; Policy Troubleshooter for IAM denials.
  • Build and rollout logs explain most pipeline failures; check service account roles.
  • Error Reporting groups exceptions; OOMKilled means memory limits.

What it is

Troubleshooting is finding the cause of a symptom quickly. The skill the exam tests is choosing the right tool for the symptom: a network path test for a connection problem, Error Reporting for a new exception, Cloud Profiler for high CPU, the audit log for a permission denial.

Work from the user impact inward, change one thing at a time, and mitigate before deep diagnosis when users are affected.

SymptomScopewhich users, since whenRecent changesdeploys, configSignalsmetrics, logs, tracesHypothesisFix and verify

How it works

Infrastructure issues

SymptomTool or check
VM will not boot or SSH failsSerial port output, gcloud compute instances get-serial-port-output; OS Login and firewall for port 22
VMs cannot reach each other or the internetConnectivity Tests in Network Intelligence Center; firewall rules logging; routes; Cloud NAT
Permission denied calling an APIPolicy Troubleshooter for IAM; audit logs for the denied call; organization policy and VPC Service Controls (Policy Denied logs)
Resource creation failsQuota errors, organization policy constraints, zone resource availability
GKE pods pendingkubectl describe pod events: insufficient CPU, node selector or taint mismatch, autoscaler limits
gcloud compute instances get-serial-port-output web-1 --zone=europe-west1-b
kubectl describe pod web-7d9c6 -n shop

CI/CD pipeline issues

SymptomLikely cause
Trigger does not startBranch or file filter does not match; repository connection broken
Build step permission deniedBuild service account lacks a role on the target resource
Build cannot reach a private hostNot running in a private pool with the right network route
Cloud Deploy render failsSkaffold, Kustomize or Helm config error; read the render logs
Rollout fails or times outImage pull error, failing readiness probes, Binary Authorization denial, verification failure
Terraform apply fails midwayState lock held, drift, API not enabled, missing permission

Read the build or rollout logs first; nearly every pipeline error is stated there.

Application issues

SymptomTool
New exceptions after a releaseError Reporting groups exceptions, shows first seen, count and stack trace
Container keeps restartingContainer logs; OOMKilled in pod status means memory limit too low or a leak
Errors from one dependencyTraces with error status; dependency metrics
Wrong results, no errorsLogs with request context; compare with the previous version

Error Reporting picks up stack traces from logs automatically on many services, so new crash types appear without extra setup.

Observability issues

SymptomLikely cause and fix
VM logs or metrics missingOps Agent not installed or not running; service account lacks Logs Writer or Monitoring Metric Writer
Logs missing in a projectExclusion filter on _Default; a sink routing elsewhere; retention ended
Logs missing in a central bucketSink filter wrong; writer identity has no access to the destination
Alert never firesWrong filter or aligner, duration too long, metric absent so threshold never crossed
Alert fires constantlyThreshold or duration too tight; alert on symptoms with burn rate
Trace broken into piecesContext not propagated between services
Metrics from another project not visibleProject not in the metrics scope

Performance and latency issues

QuestionTool
Is latency rising, and for which endpoint or region?Cloud Monitoring latency metrics, load balancer metrics
Which service or call is slow?Cloud Trace waterfalls
Which code uses the CPU or memory?Cloud Profiler flame graphs, in production with low overhead
Is the network path slow?Network Intelligence Center Performance Dashboard
Is the database the bottleneck?Database insights such as Query Insights for Cloud SQL
Is it a capacity limit?Utilization, autoscaler limits, Cloud Run concurrency and max instances

Cloud Profiler continuously samples CPU and memory use in running code for languages such as Go, Java, Node.js and Python, and shows which functions consume the most.

Gemini Cloud Assist investigations

Gemini Cloud Assist investigations can collect related logs, metrics, configuration changes and errors for an issue and suggest possible causes. Use them to shorten the search, then verify.

A worked example

After a release, a Cloud Run service shows higher p95 latency and higher CPU, with no new errors. Error Reporting confirms no new exceptions.

Cloud Trace shows the time is spent inside the service, not in downstream calls. Cloud Profiler's flame graph shows a new JSON validation library using most of the CPU. The team reverts that change and latency returns to normal.

Latency upError Reportingno new errorsCloud Tracetime inside serviceCloud Profilerhot functionRevert change

How the exam asks about this

  • "Two VMs in different subnets cannot connect, and the firewall rules look correct." Run a Connectivity Test to analyze the path.
  • "CPU usage of a service doubled after a release and you need the responsible function." Use Cloud Profiler.
  • "Application logs stopped appearing for one VM." Check the Ops Agent is running and the service account has the Logs Writer role.

What to remember for the exam

  • Connectivity Tests for network paths; Policy Troubleshooter for IAM denials.
  • Build and rollout logs explain most pipeline failures; check service account roles.
  • Error Reporting groups exceptions; OOMKilled means memory limits.
  • Missing telemetry: agent, service account roles, exclusions, sinks, metrics scope.
  • Latency: metrics to detect, Trace to locate, Profiler to find the code.
Watch out

Checking only the most recent deployment can mislead. Configuration, IAM, quota and dependency changes also cause incidents, so review audit logs for all recent changes.

Common mistakes

Guessing at firewall rules. Connectivity Tests analyze the actual path and show which rule or route blocks it.

Using logs to find hot code. Logs rarely show CPU use per function. Use Cloud Profiler.

Assuming missing logs mean no events. Check the agent, roles, exclusions and sinks before concluding nothing happened.

Check yourself

  • Which tool explains why an IAM permission is denied?

    Policy Troubleshooter, together with the audit log entry for the denied call.

  • What does OOMKilled in a pod status indicate?

    The container exceeded its memory limit, from a limit set too low or a memory leak.

  • How do Cloud Trace and Cloud Profiler differ for latency issues?

    Cloud Trace shows which service or call in a request is slow, while Cloud Profiler shows which functions in the code consume CPU or memory.

Topic 6 of 6 in Implementing observability practices and troubleshooting issues

Test yourself on Implementing observability practices and troubleshooting issues

The full Google Cloud Professional Cloud DevOps Engineer question bank has 751 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by Google Cloud. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.