This page describes how to capture a screenshot from a virtual machine (VM) instance by using the VM screenshot tool.
Capturing a screenshot from a VM can help you troubleshoot a VM that is not otherwise accessible. For example, a VM might not be accessible if it is booting or has a disk image that is corrupted.
Windows-based operating systems
VM screenshots can help to troubleshoot failed RDP connections to Windows VMs, by identifying if the instance has started successfully. For information about troubleshooting RDP connections, see Troubleshooting RDP.
Privacy considerations with remote desktop clients
The VM screenshot tool uses the display adapter of the VM to capture a screenshot of the local console session through a remote desktop client. Capturing a screenshot through the local console session might capture sensitive information from the user's desktop or browser.
If you are concerned about exposing sensitive information as part of a screenshot, configure your respective remote desktop client in the following way so that it does not use the local console session:
Chrome Remote Desktop: If you are using Chrome Remote Desktop, be sure to enable Curtain mode so that it does not connect to the local console session.
Microsoft RDP: RDP clients connect by using Windows Remote Desktop Services (RDS). Windows RDS lets RDP clients choose whether to start a new console session or connect to the existing one, and because of this, there might be privacy implications. For information about customizing RDS so that it does not connect to the local console session, see Supported Remote Desktop RDP file settings.
Before sharing screenshots with Google Support, make sure to review them for sensitive information.
Before you begin
- If you want to use the command-line examples in this guide, do the following:
- Install or update to the latest version of the Google Cloud CLI.
- Set a default region and zone.
- If you want to use the API examples in this guide, set up API access.
- On your VM, enable the virtual display. To enable the virtual display you do not need to install a virtual display driver for the operating system.
Limitations
The instance must be in the
RUNNING
life cycle state.The maximum rate for capturing screenshots is 20 per second, which is the API rate limit.
You can't initiate a screenshot while one is in progress.
You can capture one screenshot at a time.
Capturing a screenshot from a VM
Use the following procedures to capture a screenshot from a VM.
Console
In the Google Cloud console, go to the VM instances page.
From the VM instances page, click the name of the VM instance to capture a screenshot from.
On the VM instance details page, click the Screenshot tab.
Click Refresh to generate a screenshot from the VM. If you have not enabled a virtual display, the Google Cloud console does not show a screenshot.
gcloud
Capture a screenshot from a VM by using the gcloud compute
instances get-screenshot
command:
gcloud compute instances get-screenshot VM_NAME \ --destination=JPEG_FILENAME \ --zone=ZONE
Replace the following:
VM_NAME
: name of the VM to capture a screenshot from.JPEG_FILENAME
: optional filename of the jpeg for the screenshot output. If you do not specify a filename, the raw jpeg data is sent to standard output (stdout).ZONE
: zone of the VM to capture a screenshot from.
API
With the Compute Engine API, capture a screenshot from a VM by using the
instances.getScreenshot
request:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/zo nes/ZONE/instances/VM_NAME/screenshot
Replace the following:
PROJECT
: ID of the project containing the VM to capture a screenshot from.ZONE
: zone containing the project.VM_NAME
: name of the VM to capture a screenshot from.
Example VM screenshots
The Compute Engine UEFI loading the boot manager
The following screenshot shows a Windows Server VM that is unavailable while the boot manager is loading:
Windows Server 2016 Datacenter performing updates
The following screenshot shows a Windows Server 2016 VM that is unavailable while completing updates:
Windows Server 2016 loading system services
The following screenshot shows a Windows Server 2016 VM that is unavailable while loading system services:
Login screen for Windows Server 2016 Datacenter
The following screenshot shows a Windows Server 2016 VM that has completed startup and is ready to login:
Sysprep process of Windows Server 2019 Core
The following screenshot shows the sysprep process of a Windows Server 2019 Core VM instance:
Blue screen error from Windows Server 2016 Datacenter
The following screenshot shows a blue screen error from a Windows Server 2016 Datacenter VM instance:
What's next
Learn how to collect diagnostic information from a VM.
Learn how to troubleshoot Windows instances.