Benachrichtigungen mit Feeds zu Metadatenänderungen erhalten

Mit Feeds für Metadatenänderungen in Knowledge Catalog (ehemals Dataplex Universal Catalog) können Sie über Pub/Sub nahezu in Echtzeit Benachrichtigungen erhalten, wenn Metadaten erstellt, aktualisiert oder gelöscht werden. Sie können diese Feeds erstellen, ansehen, auflisten, aktualisieren und löschen und Benachrichtigungen nutzen, um nachgelagerte ereignisgesteuerte Workflows auszulösen.

Weitere Informationen finden Sie unter Metadaten-Änderungsfeeds.

Hinweis

Machen Sie sich mit Pub/Sub und der Dataplex API vertraut.

  1. Aktivieren Sie die Dataplex API und die Pub/Sub APIs, falls sie noch nicht aktiviert sind.

    Erforderliche Rollen zum Aktivieren von APIs

    Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Inhaberrolle (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen

    APIs aktivieren

  2. Erstellen Sie ein Pub/Sub-Thema, um Benachrichtigungen zu erhalten. Weitere Informationen finden Sie unter Thema erstellen.

  3. Installieren Sie gcloud. Achten Sie darauf, dass der Kurzalias von gcloud festgelegt ist.

  4. Legen Sie den Alias gcurl fest. Dadurch wird eine Verknüpfung erstellt, die Ihr Authentifizierungstoken enthält und den JSON-Inhaltstyp für API-Anfragen festlegt:

    alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'
    
  5. Legen Sie die Variable DATAPLEX_API fest.

    DATAPLEX_API="dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION"
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: Ihre Projekt-ID, in der die Dataplex API aktiviert ist
    • LOCATION: der Standort, an dem der Job ausgeführt wird, z. B. us-central1, europe-west3 oder asia-south1

Erforderliche Rollen und Berechtigungen

Wenn Sie Änderungsfeeds für Metadaten konfigurieren möchten, müssen Sie und das Knowledge Catalog-Dienstkonto die erforderlichen IAM-Rollen und -Berechtigungen haben.

Nutzerrollen und Berechtigungen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt oder die Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Exportieren von Metadaten und zum Zugriff auf Nachrichten zu Metadatenänderungsfeeds benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Exportieren von Metadaten und zum Zugriff auf Nachrichten zu Metadatenänderungsfeeds erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um Metadaten zu exportieren und auf Nachrichten zu Metadatenänderungsfeeds zuzugreifen:

  • Metadaten exportieren:
    • dataplex.metadataFeeds.create für das Projekt
    • dataplex.entryGroups.export für die Ressource, die den Bereich des Feeds definiert (Organisation, Projekt oder Eintraggruppe)
    • resourcemanager.projects.get für das Projekt
    • resourcemanager.projects.list für das Projekt
  • Auf Nachrichten zu Metadatenänderungsfeeds zugreifen:
    • pubsub.subscriptions.consume für das Abo
    • pubsub.topics.attachSubscription zum Thema

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Rollen und Berechtigungen für Knowledge Catalog-Dienstkonten

Bitten Sie Ihren Administrator, dem Knowledge Catalog-Dienstkonto die IAM-Rollen „Pub/Sub-Publisher“ (roles/pubsub.publisher) und „Pub/Sub-Betrachter“ (roles/pubsub.viewer) für das Pub/Sub-Thema zuzuweisen, damit das Knowledge Catalog-Dienstkonto die erforderliche Berechtigung zum Veröffentlichen von Nachrichten zu Metadatenänderungsfeeds hat.

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen pubsub.topics.publish und pubsub.topics.get, die zum Veröffentlichen von Nachrichten zu Metadatenänderungsfeeds erforderlich sind.

Ihr Administrator kann dem Knowledge Catalog-Dienstkonto möglicherweise auch diese Berechtigung mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erteilen.

Berechtigungen für das Knowledge Catalog-Dienstkonto gewähren

Der Dienst-Agent in Knowledge Catalog wird erstellt, wenn Sie die Dataplex API aktivieren. Sie können den Dienst-Agent anhand seiner E-Mail-ID identifizieren:

service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com

Dabei ist PROJECT_NUMBER die Projektnummer des Projekts, in dem Sie die Dataplex API aktiviert haben.

Das Knowledge Catalog-Dienstkonto benötigt die Berechtigung, Nachrichten in Ihrem Pub/Sub-Thema zu veröffentlichen und Themenmetadaten abzurufen. Weisen Sie dem Dienstkonto die Rolle Pub/Sub-Publisher (roles/pubsub.publisher) und die Rolle Pub/Sub-Betrachter (roles/pubsub.viewer) für das Pub/Sub-Thema zu, um diese Berechtigungen zu gewähren:

gcloud

Führen Sie den Befehl gcloud pubsub topics add-iam-policy-binding aus:

gcloud pubsub topics add-iam-policy-binding TOPIC_ID \
    --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \
    --role="roles/pubsub.publisher"

gcloud pubsub topics add-iam-policy-binding TOPIC_ID \
    --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \
    --role="roles/pubsub.viewer"

Ersetzen Sie Folgendes:

  • TOPIC_ID: die ID Ihres Pub/Sub-Themas, in dem die Nachrichten des Metadatenänderungsfeeds veröffentlicht werden.
  • PROJECT_NUMBER: die Projektnummer Ihres Knowledge Catalog-Projekts, in dem sich das Dienstkonto befindet.

Console

  1. Öffnen Sie in der Google Cloud Console die Pub/Sub-Seite Themen.

    Themen aufrufen

  2. Wählen Sie das Thema aus, das Sie für Benachrichtigungen zum Metadatenfeed verwenden, und klicken Sie bei Bedarf auf Infofeld ansehen.

  3. Klicken Sie auf dem Tab Berechtigungen auf Hauptkonto hinzufügen.

  4. Geben Sie im Feld Neue Hauptkonten das Knowledge Catalog-Dienstkonto ein: service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com.

  5. Wählen Sie im Feld Rollen zuweisen die Option Pub/Sub-Publisher aus.

  6. Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie Pub/Sub-Betrachter aus.

  7. Klicken Sie auf Speichern.

Metadaten-Änderungsfeed erstellen

Wenn Sie festlegen möchten, welche Änderungen Benachrichtigungen generieren, können Sie einen Feed für Metadatenänderungen konfigurieren, um bestimmte Ressourcen zu überwachen. Dazu geben Sie einen Bereich an, z. B. Ihre gesamte Organisation, bestimmte Projekte oder bestimmte Eintraggruppen. Mit dem Bereich können Sie festlegen, welche Ressourcen überwacht werden sollen. Mit Filtern können Sie weiter verfeinern, wann Knowledge Catalog Benachrichtigungen sendet.

Weitere Informationen finden Sie unter Änderungsfeed für Metadaten.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using Google.LongRunning;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for CreateMetadataFeed</summary>
    /// <remarks>
    /// 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://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CreateMetadataFeedRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        CreateMetadataFeedRequest request = new CreateMetadataFeedRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            MetadataFeed = new MetadataFeed(),
            MetadataFeedId = "",
            ValidateOnly = false,
        };
        // Make the request
        Operation<MetadataFeed, OperationMetadata> response = catalogServiceClient.CreateMetadataFeed(request);

        // Poll until the returned long-running operation is complete
        Operation<MetadataFeed, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        MetadataFeed result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<MetadataFeed, OperationMetadata> retrievedResponse = catalogServiceClient.PollOnceCreateMetadataFeed(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            MetadataFeed retrievedResult = retrievedResponse.Result;
        }
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

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 := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CreateMetadataFeedRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateMetadataFeedRequest.
	}
	op, err := c.CreateMetadataFeed(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.CreateMetadataFeedRequest;
import com.google.cloud.dataplex.v1.LocationName;
import com.google.cloud.dataplex.v1.MetadataFeed;

public class SyncCreateMetadataFeed {

  public static void main(String[] args) throws Exception {
    syncCreateMetadataFeed();
  }

  public static void syncCreateMetadataFeed() throws Exception {
    // 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://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      CreateMetadataFeedRequest request =
          CreateMetadataFeedRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setMetadataFeed(MetadataFeed.newBuilder().build())
              .setMetadataFeedId("metadataFeedId1633421160")
              .setValidateOnly(true)
              .build();
      MetadataFeed response = catalogServiceClient.createMetadataFeedAsync(request).get();
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * 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.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the parent location, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}`
 */
// const parent = 'abc123'
/**
 *  Required. The metadata job resource.
 */
// const metadataFeed = {}
/**
 *  Optional. The metadata job ID. If not provided, a unique ID is generated
 *  with the prefix `metadata-job-`.
 */
// const metadataFeedId = 'abc123'
/**
 *  Optional. The service validates the request without performing any
 *  mutations. The default is false.
 */
// const validateOnly = true

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callCreateMetadataFeed() {
  // Construct request
  const request = {
    parent,
    metadataFeed,
  };

  // Run request
  const [operation] = await dataplexClient.createMetadataFeed(request);
  const [response] = await operation.promise();
  console.log(response);
}

callCreateMetadataFeed();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# 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://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_create_metadata_feed():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    metadata_feed = dataplex_v1.MetadataFeed()
    metadata_feed.pubsub_topic = "pubsub_topic_value"

    request = dataplex_v1.CreateMetadataFeedRequest(
        parent="parent_value",
        metadata_feed=metadata_feed,
    )

    # Make the request
    operation = client.create_metadata_feed(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

Verwenden Sie zum Erstellen eines Metadaten-Änderungsfeeds die Methode projects.locations.metadataFeeds.create.

Organisationsbereich

Führen Sie den folgenden Befehl aus, um einen Änderungsfeed für Metadaten zu erstellen, der die gesamte Organisation überwacht:

gcurl -X POST -d "$(cat <<EOF
{
  "scope": {
    "organizationLevel": true
  },
  "pubsubTopic": "projects/PROJECT_ID_PUBSUB/topics/TOPIC_ID"
}
EOF
)" "https://${DATAPLEX_API}/metadataFeeds?metadataFeedId=FEED_ID"

Ersetzen Sie Folgendes:

  • PROJECT_ID_PUBSUB: die Projekt-ID, in der sich das Pub/Sub-Thema befindet, z. B. example-project
  • TOPIC_ID: die Pub/Sub-Themen-ID, in der die Nachrichten des Metadaten-Änderungsfeeds veröffentlicht werden, z. B. example-topic
  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie erstellen möchten, z. B. example-feed

Projektumfang

Führen Sie den folgenden Befehl aus, um einen Änderungsfeed für Metadaten zu erstellen, der bestimmte Projekte überwacht:

gcurl -X POST -d "$(cat <<EOF
{
  "scope": {
    "projects": [
      "projects/PROJECT_ID_1",
      "projects/PROJECT_ID_2"
    ]
  },
  "pubsubTopic": "projects/PROJECT_ID_PUBSUB/topics/TOPIC_ID"
}
EOF
)" "https://${DATAPLEX_API}/metadataFeeds?metadataFeedId=FEED_ID"

Ersetzen Sie Folgendes:

  • PROJECT_ID_PUBSUB: die Projekt-ID, in der sich das Pub/Sub-Thema befindet, z. B. example-project
  • TOPIC_ID: die Pub/Sub-Themen-ID, in der die Nachrichten des Metadaten-Änderungsfeeds veröffentlicht werden, z. B. example-topic
  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie erstellen möchten, z. B. example-feed

Bereich der Eintragsgruppe

Führen Sie den folgenden Befehl aus, um einen Änderungsfeed für Metadaten zu erstellen, der bestimmte Eintragstypen überwacht:

gcurl -X POST -d "$(cat <<EOF
{
  "scope": {
    "entryGroups": [
      "projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID_1",
      "projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID_2"
    ]
  },
  "pubsubTopic": "projects/PROJECT_ID_PUBSUB/topics/TOPIC_ID"
}
EOF
)" "https://${DATAPLEX_API}/metadataFeeds?metadataFeedId=FEED_ID"

Ersetzen Sie Folgendes:

  • PROJECT_ID_PUBSUB: die Projekt-ID, in der sich das Pub/Sub-Thema befindet, z. B. example-project
  • LOCATION: der Standort, an dem Sie den Feed erstellen möchten, z. B. us-central1
  • ENTRY_GROUP_ID: die zu überwachende ID der Eintraggruppe, z. B. example-entry-group
  • TOPIC_ID: die Pub/Sub-Themen-ID, in der die Nachrichten des Metadaten-Änderungsfeeds veröffentlicht werden, z. B. example-topic
  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie erstellen möchten, z. B. example-feed

Mit Filtern

Systemeintragstypen werden in einem von Google verwalteten Projekt mit der Projektnummer 655216118709 gespeichert. Führen Sie den folgenden Befehl aus, um einen Änderungsfeed für Metadaten zu erstellen, der nach dem Systemeintragstyp bigquery-table filtert:

gcurl -X POST -d "$(cat <<EOF
{
  "scope": {
    "projects": [
      "projects/PROJECT_ID_1",
      "projects/PROJECT_ID_2"
    ]
  },
  "filters": {
    "entryTypes": [
      "projects/655216118709/locations/global/entryTypes/bigquery-table"
    ]
  },
  "pubsubTopic": "projects/PROJECT_ID_PUBSUB/topics/TOPIC_ID"
}
EOF
)" "https://${DATAPLEX_API}/metadataFeeds?metadataFeedId=FEED_ID"

Ersetzen Sie Folgendes:

  • PROJECT_ID_1 und PROJECT_ID_2: die IDs der Projekte, die Sie überwachen möchten, z. B. example-project-1 und example-project-2
  • PROJECT_ID_PUBSUB: die Projekt-ID, in der sich das Pub/Sub-Thema befindet, z. B. example-project
  • TOPIC_ID: die Pub/Sub-Themen-ID, in der die Nachrichten des Metadaten-Änderungsfeeds veröffentlicht werden, z. B. example-topic
  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie erstellen möchten, z. B. example-feed

Response:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.dataplex.v1.OperationMetadata",
    "createTime": "2023-10-02T15:01:23Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/metadataFeeds/FEED_ID",
    "verb": "create",
    "apiVersion": "v1"
  },
  "done": false
}

Metadaten-Änderungsfeed ansehen

Sie können die Details eines Metadaten-Änderungsfeeds aufrufen.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for GetMetadataFeed</summary>
    /// <remarks>
    /// 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://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void GetMetadataFeedRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        GetMetadataFeedRequest request = new GetMetadataFeedRequest
        {
            MetadataFeedName = MetadataFeedName.FromProjectLocationMetadataFeed("[PROJECT]", "[LOCATION]", "[METADATA_FEED]"),
        };
        // Make the request
        MetadataFeed response = catalogServiceClient.GetMetadataFeed(request);
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

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 := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.GetMetadataFeedRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#GetMetadataFeedRequest.
	}
	resp, err := c.GetMetadataFeed(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.GetMetadataFeedRequest;
import com.google.cloud.dataplex.v1.MetadataFeed;
import com.google.cloud.dataplex.v1.MetadataFeedName;

public class SyncGetMetadataFeed {

  public static void main(String[] args) throws Exception {
    syncGetMetadataFeed();
  }

  public static void syncGetMetadataFeed() throws Exception {
    // 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://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      GetMetadataFeedRequest request =
          GetMetadataFeedRequest.newBuilder()
              .setName(MetadataFeedName.of("[PROJECT]", "[LOCATION]", "[METADATA_FEED]").toString())
              .build();
      MetadataFeed response = catalogServiceClient.getMetadataFeed(request);
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * 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.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the metadata feed, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}/MetadataFeeds/{metadata_feed_id}`.
 */
// const name = 'abc123'

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callGetMetadataFeed() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await dataplexClient.getMetadataFeed(request);
  console.log(response);
}

callGetMetadataFeed();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# 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://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_get_metadata_feed():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.GetMetadataFeedRequest(
        name="name_value",
    )

    # Make the request
    response = client.get_metadata_feed(request=request)

    # Handle the response
    print(response)

REST

Verwenden Sie die Methode projects.locations.metadataFeeds.get, um einen Änderungsfeed für Metadaten aufzurufen.

Führen Sie dazu diesen Befehl aus:

gcurl "https://${DATAPLEX_API}/metadataFeeds/FEED_ID"

Ersetzen Sie Folgendes:

  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie aufrufen möchten, z. B. example-feed

Feeds mit Metadatenänderungen auflisten

Sie können die Metadatenänderungsfeeds in einem Projekt und an einem Standort auflisten.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Api.Gax;
using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using System;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for ListMetadataFeeds</summary>
    /// <remarks>
    /// 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://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void ListMetadataFeedsRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        ListMetadataFeedsRequest request = new ListMetadataFeedsRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            Filter = "",
            OrderBy = "",
        };
        // Make the request
        PagedEnumerable<ListMetadataFeedsResponse, MetadataFeed> response = catalogServiceClient.ListMetadataFeeds(request);

        // Iterate over all response items, lazily performing RPCs as required
        foreach (MetadataFeed 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 (ListMetadataFeedsResponse page in response.AsRawResponses())
        {
            // Do something with each page of items
            Console.WriteLine("A page of results:");
            foreach (MetadataFeed 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<MetadataFeed> 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 (MetadataFeed 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

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
	"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 := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

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

		// If you need to access the underlying RPC response,
		// you can do so by casting the `Response` as below.
		// Otherwise, remove this line. Only populated after
		// first call to Next(). Not safe for concurrent access.
		_ = it.Response.(*dataplexpb.ListMetadataFeedsResponse)
	}
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.ListMetadataFeedsRequest;
import com.google.cloud.dataplex.v1.LocationName;
import com.google.cloud.dataplex.v1.MetadataFeed;

public class SyncListMetadataFeeds {

  public static void main(String[] args) throws Exception {
    syncListMetadataFeeds();
  }

  public static void syncListMetadataFeeds() throws Exception {
    // 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://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      ListMetadataFeedsRequest request =
          ListMetadataFeedsRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .setFilter("filter-1274492040")
              .setOrderBy("orderBy-1207110587")
              .build();
      for (MetadataFeed element : catalogServiceClient.listMetadataFeeds(request).iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * 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.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the parent location, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}`
 */
// const parent = 'abc123'
/**
 *  Optional. The maximum number of metadata feeds to return. The service
 *  might return fewer feeds than this value. If unspecified, at most 10 feeds
 *  are returned. The maximum value is 1,000.
 */
// const pageSize = 1234
/**
 *  Optional. The page token received from a previous `ListMetadataFeeds` call.
 *  Provide this token to retrieve the subsequent page of results. When
 *  paginating, all other parameters that are provided to the
 *  `ListMetadataFeeds` request must match the call that provided the
 *  page token.
 */
// const pageToken = 'abc123'
/**
 *  Optional. Filter request. Filters are case-sensitive.
 *  The service supports the following formats:
 *  * `labels.key1 = "value1"`
 *  * `labels:key1`
 *  * `name = "value"`
 *  You can combine filters with `AND`, `OR`, and `NOT` operators.
 */
// const filter = 'abc123'
/**
 *  Optional. The field to sort the results by, either `name` or `create_time`.
 *  If not specified, the ordering is undefined.
 */
// const orderBy = 'abc123'

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callListMetadataFeeds() {
  // Construct request
  const request = {
    parent,
  };

  // Run request
  const iterable = dataplexClient.listMetadataFeedsAsync(request);
  for await (const response of iterable) {
      console.log(response);
  }
}

callListMetadataFeeds();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# 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://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_list_metadata_feeds():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.ListMetadataFeedsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_metadata_feeds(request=request)

    # Handle the response
    for response in page_result:
        print(response)

REST

Verwenden Sie die Methode projects.locations.metadataFeeds.list, um Feeds mit Metadatenänderungen aufzulisten.

Führen Sie dazu diesen Befehl aus:

gcurl "https://${DATAPLEX_API}/metadataFeeds"

Feed für Metadatenänderungen aktualisieren

Sie können den Bereich oder die Filter eines vorhandenen Änderungsfeeds für Metadaten aktualisieren.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for UpdateMetadataFeed</summary>
    /// <remarks>
    /// 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://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void UpdateMetadataFeedRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        UpdateMetadataFeedRequest request = new UpdateMetadataFeedRequest
        {
            MetadataFeed = new MetadataFeed(),
            UpdateMask = new FieldMask(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<MetadataFeed, OperationMetadata> response = catalogServiceClient.UpdateMetadataFeed(request);

        // Poll until the returned long-running operation is complete
        Operation<MetadataFeed, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        MetadataFeed result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<MetadataFeed, OperationMetadata> retrievedResponse = catalogServiceClient.PollOnceUpdateMetadataFeed(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            MetadataFeed retrievedResult = retrievedResponse.Result;
        }
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

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 := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.UpdateMetadataFeedRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#UpdateMetadataFeedRequest.
	}
	op, err := c.UpdateMetadataFeed(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.MetadataFeed;
import com.google.cloud.dataplex.v1.UpdateMetadataFeedRequest;
import com.google.protobuf.FieldMask;

public class SyncUpdateMetadataFeed {

  public static void main(String[] args) throws Exception {
    syncUpdateMetadataFeed();
  }

  public static void syncUpdateMetadataFeed() throws Exception {
    // 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://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      UpdateMetadataFeedRequest request =
          UpdateMetadataFeedRequest.newBuilder()
              .setMetadataFeed(MetadataFeed.newBuilder().build())
              .setUpdateMask(FieldMask.newBuilder().build())
              .setValidateOnly(true)
              .build();
      MetadataFeed response = catalogServiceClient.updateMetadataFeedAsync(request).get();
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * 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.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. Update description.
 *  Only fields specified in `update_mask` are updated.
 */
// const metadataFeed = {}
/**
 *  Optional. Mask of fields to update.
 */
// const updateMask = {}
/**
 *  Optional. Only validate the request, but do not perform mutations.
 *  The default is false.
 */
// const validateOnly = true

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callUpdateMetadataFeed() {
  // Construct request
  const request = {
    metadataFeed,
  };

  // Run request
  const [operation] = await dataplexClient.updateMetadataFeed(request);
  const [response] = await operation.promise();
  console.log(response);
}

callUpdateMetadataFeed();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# 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://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_update_metadata_feed():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    metadata_feed = dataplex_v1.MetadataFeed()
    metadata_feed.pubsub_topic = "pubsub_topic_value"

    request = dataplex_v1.UpdateMetadataFeedRequest(
        metadata_feed=metadata_feed,
    )

    # Make the request
    operation = client.update_metadata_feed(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

Verwenden Sie die Methode projects.locations.metadataFeeds.patch, um einen Änderungsfeed für Metadaten zu aktualisieren.

Führen Sie den folgenden Befehl aus, um die Eintragstypfilter aus einem Änderungsfeed für Metadaten zu entfernen. Mit updateMask wird die Aktualisierung auf filters.entryTypes beschränkt, sodass die anderen Filter des Feeds unverändert bleiben. Der Anfragetext muss auch die aktuellen Werte für scope und pubsubTopic des Feeds enthalten:

gcurl -X PATCH -d "$(cat <<EOF
{
  "scope": {
    "projects": [
      "projects/PROJECT_ID"
    ]
  },
  "filters": {
    "entryTypes": []
  },
  "pubsubTopic": "projects/PROJECT_ID_PUBSUB/topics/TOPIC_ID"
}
EOF
)" "https://${DATAPLEX_API}/metadataFeeds/FEED_ID?updateMask=filters.entryTypes"

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts im aktuellen Bereich des Feeds, z. B. example-project
  • PROJECT_ID_PUBSUB: die Projekt-ID, in der sich das Pub/Sub-Thema des Feeds befindet, z. B. example-project
  • TOPIC_ID: die aktuelle Pub/Sub-Themen-ID des Feeds, z. B. example-topic
  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie aktualisieren möchten, z. B. example-feed

Metadaten-Änderungsfeed löschen

Sie können einen Änderungsfeed für Metadaten löschen, wenn Sie keine Benachrichtigungen mehr erhalten möchten.

Wenn Sie einen Metadatenänderungsfeed löschen, werden keine neuen Metadatenänderungen mehr in Ihrem Pub/Sub-Thema veröffentlicht. Das mit dem Feed verknüpfte Thema oder Abo wird jedoch nicht gelöscht. Sie müssen sie manuell löschen, wenn sie nicht mehr benötigt werden.

Bevor Sie den Feed oder das Abo löschen, müssen Sie dafür sorgen, dass Ihre Abonnentenanwendungen alle ausstehenden Nachrichten im Pub/Sub-Abo verarbeitet haben.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for DeleteMetadataFeed</summary>
    /// <remarks>
    /// 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://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void DeleteMetadataFeedRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        DeleteMetadataFeedRequest request = new DeleteMetadataFeedRequest
        {
            MetadataFeedName = MetadataFeedName.FromProjectLocationMetadataFeed("[PROJECT]", "[LOCATION]", "[METADATA_FEED]"),
        };
        // Make the request
        Operation<Empty, OperationMetadata> response = catalogServiceClient.DeleteMetadataFeed(request);

        // Poll until the returned long-running operation is complete
        Operation<Empty, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        Empty result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<Empty, OperationMetadata> retrievedResponse = catalogServiceClient.PollOnceDeleteMetadataFeed(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            Empty retrievedResult = retrievedResponse.Result;
        }
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

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 := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.DeleteMetadataFeedRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#DeleteMetadataFeedRequest.
	}
	op, err := c.DeleteMetadataFeed(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	err = op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.DeleteMetadataFeedRequest;
import com.google.cloud.dataplex.v1.MetadataFeedName;
import com.google.protobuf.Empty;

public class SyncDeleteMetadataFeed {

  public static void main(String[] args) throws Exception {
    syncDeleteMetadataFeed();
  }

  public static void syncDeleteMetadataFeed() throws Exception {
    // 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://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      DeleteMetadataFeedRequest request =
          DeleteMetadataFeedRequest.newBuilder()
              .setName(MetadataFeedName.of("[PROJECT]", "[LOCATION]", "[METADATA_FEED]").toString())
              .build();
      catalogServiceClient.deleteMetadataFeedAsync(request).get();
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * 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.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the metadata feed, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}/MetadataFeeds/{metadata_feed_id}`.
 */
// const name = 'abc123'

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callDeleteMetadataFeed() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const [operation] = await dataplexClient.deleteMetadataFeed(request);
  const [response] = await operation.promise();
  console.log(response);
}

callDeleteMetadataFeed();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# 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://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_delete_metadata_feed():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.DeleteMetadataFeedRequest(
        name="name_value",
    )

    # Make the request
    operation = client.delete_metadata_feed(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

Verwenden Sie die Methode projects.locations.metadataFeeds.delete, um einen Änderungsfeed für Metadaten zu löschen.

Führen Sie dazu diesen Befehl aus:

gcurl -X DELETE \
"https://${DATAPLEX_API}/metadataFeeds/FEED_ID"

Ersetzen Sie Folgendes:

  • FEED_ID: die ID des Metadaten-Änderungsfeeds, den Sie löschen möchten, z. B. example-feed

Benachrichtigungen nutzen

Nachdem Sie einen Änderungsfeed für Metadaten konfiguriert haben, veröffentlicht Knowledge Catalog Nachrichten im angegebenen Pub/Sub-Thema, wenn Metadatenänderungen auftreten. Wenn Sie diese Nachrichten nutzen möchten, erstellen Sie ein Pub/Sub-Abo für das Thema.

Sie können beispielsweise ein Pull-Abo erstellen und die Google Cloud CLI verwenden, um Nachrichten aufzurufen:

  1. Abo erstellen:

    gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic=TOPIC_ID
    

    Ersetzen Sie Folgendes:

    • SUBSCRIPTION_ID: die Abo-ID, die Sie erstellen möchten
    • TOPIC_ID: die Pub/Sub-Themen-ID, in der die Nachrichten des Metadaten-Änderungsfeeds veröffentlicht werden.
  2. Rufen Sie die Nachrichten des Abos ab:

    gcloud pubsub subscriptions pull SUBSCRIPTION_ID --auto-ack --limit=10
    

    Ersetzen Sie Folgendes:

    • SUBSCRIPTION_ID: die Abo-ID, aus der Sie Nachrichten abrufen möchten

Weitere Informationen zur Verarbeitung von Pub/Sub-Nachrichten finden Sie unter Nachrichten von einem Pull-Abo empfangen. Informationen zum Nachrichtenformat finden Sie unter Datennutzlast.

Nächste Schritte