hands-on lab

Investigate Application Code in Production With Google Cloud Debugger

This lab is currently under maintenance and unavailable. We are actively working to resolve this issue and we apologize for any inconvenience.

Warning Google Cloud Debugger has been shut down. This lab has been deprecated and cannot be recovered.

Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.
Lab description


In this lab, you will be profiling a Java Spring Application that you will create in a Compute Engine IDE. The application has a couple of APIs. One contains a long-running operation creating a performance bottleneck. There are a few Google Cloud Services that can help you to monitor the application performance. This lab is the last in a series of three that focuses on Cloud Debugger. You are encouraged to complete the lab on Cloud Profiler before performing this lab.

Application performance should be regularly optimized to minimize latency issues. Users often find it difficult to monitor the performance or latency issues. Google Cloud provides a suite of tools to help you overcome application performance management issues. These tools provide insights on how your code performs and allows you to take defensive actions to fix any problems. You will investigate the following tools in the context of the sample Java application to understand how they work first-hand in a series of labs:

  • Cloud Trace helps you analyze the latency of applications. It shows a summarised view of the APIs and the time taken to execute in near real-time.
  • Cloud Profiler helps you analyze performance issues, CPU utilization, and memory usage. It helps your application to perform better by optimizing intensive function calls and code.
  • Cloud Debugger helps you debug your production code by loading the production code in Google Cloud. As a developer, there are certain times when you notice issues in production. To debug the issues without taking the application offline or disturbing the user latency, you can use Cloud Debugger.

Learning Objectives

Upon completion of this lab you will be able to:

  • Use the Cloud Debugger Java agent for Google Compute Engine to debug applications
  • Create snapshots of applications to view call stacks and variable state of running applications
  • Instrument logs in applications without modifying the application source code

Intended Audience

  • Software developers
  • QA engineers
  • Anyone interested in debugging
  • Monitoring teams


You should possess:

  • A basic understanding of Java
  • A basic understanding of the Spring Boot framework is helpful but not required
Environment before
Environment after
About the author
Logan Rakai, opens in a new tab
Lead Content Developer - Labs
Learning paths

Logan has been involved in software development and research since 2007 and has been in the cloud since 2012. He is an AWS Certified DevOps Engineer - Professional, AWS Certified Solutions Architect - Professional, Microsoft Certified Azure Solutions Architect Expert, MCSE: Cloud Platform and Infrastructure, Google Cloud Certified Associate Cloud Engineer, Certified Kubernetes Security Specialist (CKS), Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), and Certified OpenStack Administrator (COA). He earned his Ph.D. studying design automation and enjoys all things tech.

LinkedIn, Twitter, GitHub

Covered topics
Lab steps
Signing In to the Google Cloud Console
Configuring the Cloud Debugger Agent and Debugging an Application in Production