Obtén una instantánea

En este ejemplo, se recupera información sobre una instantánea.

Muestra de código

Go

Antes de probar esta muestra, sigue las instrucciones de configuración de Go en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Go de Compute Engine.

Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

import (
	"context"
	"fmt"
	"io"

	compute "cloud.google.com/go/compute/apiv1"
	computepb "google.golang.org/genproto/googleapis/cloud/compute/v1"
)

// getSnapshot prints a name of a disk snapshot in the specified project.
func getSnapshot(w io.Writer, projectID, snapshotName string) error {
	// projectID := "your_project_id"
	// snapshotName := "your_snapshot_name"

	ctx := context.Background()
	snapshotsClient, err := compute.NewSnapshotsRESTClient(ctx)
	if err != nil {
		return fmt.Errorf("NewSnapshotsRESTClient: %w", err)
	}
	defer snapshotsClient.Close()

	reqSnapshot := &computepb.GetSnapshotRequest{
		Project:  projectID,
		Snapshot: snapshotName,
	}

	snapshot, err := snapshotsClient.Get(ctx, reqSnapshot)
	if err != nil {
		return fmt.Errorf("unable to get snapshot: %w", err)
	}

	fmt.Fprintf(w, "Found snapshot: %s\n", snapshot.GetName())

	return nil
}

Java

Antes de probar esta muestra, sigue las instrucciones de configuración de Java en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Java de Compute Engine.

Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.


package compute.disks;

import com.google.cloud.compute.v1.Snapshot;
import com.google.cloud.compute.v1.SnapshotsClient;
import java.io.IOException;

public class GetSnapshot {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    // Project ID or project number of the Cloud project you want to use.
    String projectId = "YOUR_PROJECT_ID";

    // Name of the snapshot to look up.
    String snapshotName = "YOUR_SNAPSHOT_NAME";

    getSnapshot(projectId, snapshotName);
  }

  // Get information about a snapshot.
  public static void getSnapshot(String projectId, String snapshotName) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the `snapshotsClient.close()` method on the client to safely
    // clean up any remaining background resources.
    try (SnapshotsClient snapshotsClient = SnapshotsClient.create()) {
      Snapshot snapshot = snapshotsClient.get(projectId, snapshotName);
      System.out.printf("Retrieved the snapshot: %s", snapshot.getName());
    }
  }
}

Python

Antes de probar esta muestra, sigue las instrucciones de configuración de Python en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Python de Compute Engine.

Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

from google.cloud import compute_v1

def get_snapshot(project_id: str, snapshot_name: str) -> compute_v1.Snapshot:
    """
    Get information about a Snapshot.

    Args:
        project_id: project ID or project number of the Cloud project you want to use.
        snapshot_name: the name of the snapshot you want to look up.

    Returns:
        A Snapshot object.
    """

    snapshot_client = compute_v1.SnapshotsClient()

    return snapshot_client.get(project=project_id, snapshot=snapshot_name)

¿Qué sigue?

Para buscar y filtrar muestras de código para otros productos de Google Cloud, consulta el navegador de muestra de Google Cloud.