Obtenir les détails d'exécution d'étape

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Explique comment obtenir des informations sur les nœuds de calcul et les éléments de travail d'une étape.

Exemple de code

C#

using Google.Api.Gax;
using Google.Cloud.Dataflow.V1Beta3;
using Google.Protobuf.WellKnownTypes;
using System;

public sealed partial class GeneratedMetricsV1Beta3ClientSnippets
{
    /// <summary>Snippet for GetStageExecutionDetails</summary>
    /// <remarks>
    /// This snippet has been automatically generated for illustrative purposes only.
    /// It may require modifications to work in your environment.
    /// </remarks>
    public void GetStageExecutionDetailsRequestObject()
    {
        // Create client
        MetricsV1Beta3Client metricsV1Beta3Client = MetricsV1Beta3Client.Create();
        // Initialize request argument(s)
        GetStageExecutionDetailsRequest request = new GetStageExecutionDetailsRequest
        {
            ProjectId = "",
            JobId = "",
            Location = "",
            StageId = "",
            StartTime = new Timestamp(),
            EndTime = new Timestamp(),
        };
        // Make the request
        PagedEnumerable<StageExecutionDetails, WorkerDetails> response = metricsV1Beta3Client.GetStageExecutionDetails(request);

        // Iterate over all response items, lazily performing RPCs as required
        foreach (WorkerDetails item in response)
        {
            // Do something with each item
            Console.WriteLine(item);
        }

        // Or iterate over pages (of server-defined size), performing one RPC per page
        foreach (StageExecutionDetails page in response.AsRawResponses())
        {
            // Do something with each page of items
            Console.WriteLine("A page of results:");
            foreach (WorkerDetails item in page)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
        }

        // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
        int pageSize = 10;
        Page<WorkerDetails> singlePage = response.ReadPage(pageSize);
        // Do something with the page of items
        Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
        foreach (WorkerDetails item in singlePage)
        {
            // Do something with each item
            Console.WriteLine(item);
        }
        // Store the pageToken, for when the next page is required.
        string nextPageToken = singlePage.NextPageToken;
    }
}

Go


package main

import (
	"context"

	dataflow "cloud.google.com/go/dataflow/apiv1beta3"
	"cloud.google.com/go/dataflow/apiv1beta3/dataflowpb"
	"google.golang.org/api/iterator"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataflow.NewMetricsV1Beta3Client(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataflowpb.GetStageExecutionDetailsRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataflow/apiv1beta3/dataflowpb#GetStageExecutionDetailsRequest.
	}
	it := c.GetStageExecutionDetails(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

Étape suivante

Pour rechercher et filtrer des exemples de code pour d'autres produits Google Cloud, consultez l'explorateur d'exemples Google Cloud.