Sie können die Erfassung und Veröffentlichung von Ereignissen aus Google-Quellen für einen bestimmten Eventarc Advanced-Bus aktivieren oder deaktivieren.
Ereignisse aus Google-Quellen werden direkt durch ein nicht vermitteltes Ereignis ausgelöst, z. B. durch die Erstellung einer Cloud Run-Funktion oder eine Statusänderung eines Dataflow-Jobs. Weitere Informationen finden Sie unter Von Eventarc unterstützte Google-Ereignistypen.
Wichtige Hinweise:
- Es gibt ein Limit von einer
GoogleApiSource
Ressource pro Google Cloud Projekt. - Sie können Ereignisse aus Google-Quellen nur im selben Google Cloud Projekt
wie die
GoogleApiSource
-Ressource veröffentlichen. - Sie können Ereignisse in einem Bus veröffentlichen, der sich in einem anderen Google Cloud -Projekt als dem befindet, in dem die
GoogleApiSource
-Ressource vorhanden ist. Sie können dies mit der gcloud CLI oder durch Senden einer Anfrage an die Eventarc API konfigurieren.
Hinweise
Aktivieren Sie die Eventarc API und die Eventarc Publishing API, falls Sie dies noch nicht getan haben.
Console
gcloud
gcloud services enable eventarc.googleapis.com eventarcpublishing.googleapis.com
Ereignisse aus Google-Quellen aktivieren
Wenn Sie Ereignisse aus Google-Quellen veröffentlichen möchten, müssen Sie eine GoogleApiSource
-Ressource erstellen. Diese Ressource stellt ein Abo für Google API-Ereignisse in einem bestimmten Google Cloud Projekt für einen bestimmten Eventarc Advanced-Bus dar.
Sie haben folgende Möglichkeiten, die Veröffentlichung von Ereignissen aus Google-Quellen zu aktivieren:
- In der Google Cloud Console
- Über die Google Cloud CLI in Ihrem Terminal oder in Cloud Shell
Anfrage an die Eventarc API senden
Console
Rufen Sie in der Google Cloud Console die Seite Eventarc > Bus auf.
Sie können einen Bus erstellen. Wenn Sie einen Bus aktualisieren, klicken Sie auf Bearbeiten.
Klicken Sie auf der Seite Bus bearbeiten auf
Quelle hinzufügen, um eine Nachrichtenquelle hinzuzufügen.- Übernehmen Sie im Bereich Nachrichtenquelle hinzufügen für den Google API-Nachrichtenanbieter den Standardwert
google-api-source
oder geben Sie einen anderen Namen für die Nachrichtenquelle ein. - Klicken Sie auf Erstellen.
- Übernehmen Sie im Bereich Nachrichtenquelle hinzufügen für den Google API-Nachrichtenanbieter den Standardwert
Klicken Sie auf Speichern.
gcloud
Öffnen Sie ein Terminalfenster.
Sie können Ereignisse aus Google-Quellen mit dem Befehl
gcloud beta eventarc google-api-sources create
aktivieren:gcloud beta eventarc google-api-source create GOOGLE_API_SOURCE_NAME \ --destination-message-bus=BUS_NAME \ --destination-message-bus-project=BUS_PROJECT_ID
Ersetzen Sie Folgendes:
GOOGLE_API_SOURCE_NAME
: die ID oder der vollständig qualifizierte Bezeichner IhrerGoogleApiSource
-Ressource, die ein Abo für Google API-Ereignisse für einen bestimmten Bus darstelltBUS_NAME
: Die ID oder der voll qualifizierte Bezeichner des Busses, für den Sie Google API-Ereignisse abonnieren möchten.BUS_PROJECT_ID
: die Google Cloud Projekt-ID für den Bus
Optional können Sie auch die folgenden Flags verwenden:
--async
, um sofort vom Befehl zurückzukehren, ohne auf den Abschluss des Vorgangs zu warten.--crypto-key
, um den voll qualifizierten Namen eines vom Kunden verwalteten Verschlüsselungsschlüssels anzugeben. Wenn nicht angegeben, werden Google-owned and managed keys verwendet.--logging-config
zum Konfigurieren der Protokollierungsebene, die eine der folgenden sein muss:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Weitere Informationen finden Sie unterLogSeverity
.
REST API
Verwenden Sie die Methode projects.locations.googleApiSources.create
, um Ereignisse aus Google-Quellen zu aktivieren.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
GOOGLE_API_SOURCE_NAME
: Der Anzeigename derGoogleApiSource
-Ressource, die ein Abo für Google API-Ereignisse für einen bestimmten Bus darstellt, z. B.my_google_source
.LABEL_KEY
undLABEL_VALUE
: Optional. Eine Zuordnung von Label-Schlüssel/Wert-Paaren, mit denen Sie Ihre Google Cloud Ressourcen organisieren können. Weitere Informationen finden Sie unter Was sind Labels?ANNOTATION_KEY
undANNOTATION_VALUE
: Optional. Eine Zuordnung von Schlüssel/Wert-Paaren für Anmerkungen mit Freiformtext. Sie können sie verwenden, um beliebige Informationen anzuhängen, die mit der Ressource verknüpft sind. Weitere Informationen finden Sie unter Annotationen.DESTINATION
: die vollständig qualifizierte Kennung des Eventarc Advanced-Busses, in dem Google-Quellereignisse im Formatprojects/PROJECT_NAME/locations/LOCATION/messageBuses/BUS_NAME
veröffentlicht werden sollen. Weitere Informationen finden Sie unter Bus zum Weiterleiten von Nachrichten erstellen.ENCRYPT_KEY
: Optional. Ein Cloud KMS-Schlüssel, der von derGoogleApiSource
-Ressource für die Datenverschlüsselung verwendet werden soll, im Formatprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
. Weitere Informationen finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel verwenden.PROJECT_ID
: die Google CloudProjekt-ID, in der dieGoogleApiSource
-Ressource erstellt werden soll.LOCATION
: die unterstützte Region, in der dieGoogleApiSource
-Ressource erstellt werden soll, z. B.us-central1
.LOG_SEVERITY
: Optional. Der Mindestschweregrad des im Logeintrag beschriebenen Ereignisses. Eine der folgenden Möglichkeiten:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Der Standardwert istNONE
. Weitere Informationen finden Sie unterLogSeverity
.
JSON-Text der Anfrage:
{ "displayName": "GOOGLE_API_SOURCE_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "destination": "DESTINATION", "cryptoKeyName": "ENCRYPT_KEY", "loggingConfig": {"logSeverity":"LOG_SEVERITY"} }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von Operation
.
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata", "createTime": "2024-01-25T17:17:45.782370139Z", "target": "projects/PROJECT_ID/locations/LOCATION/googleApiSources/GOOGLE_API_SOURCE_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Ereignisse aus Google-Quellen im selben Google Cloud Projekt wie dieGoogleApiSource
-Ressource werden jetzt erfasst und im Bus veröffentlicht.
Ereignisse aus Google-Quellen deaktivieren
Wenn Sie die Veröffentlichung von Ereignissen aus Google-Quellen in einem bestimmtenGoogle Cloud -Projekt in einem Eventarc Advanced-Bus deaktivieren möchten, müssen Sie die GoogleApiSource
-Ressource löschen.
Sie haben folgende Möglichkeiten, die Veröffentlichung von Ereignissen aus Google-Quellen zu deaktivieren:
- In der Google Cloud Console
- Über die gcloud CLI in Ihrem Terminal oder in Cloud Shell
Anfrage an die Eventarc API senden
Console
Rufen Sie in der Google Cloud Console die Seite Eventarc > Bus-Details auf.
Klicken Sie auf
Bearbeiten.Klicken Sie auf der Seite Bus bearbeiten für die Nachrichtenquelle google-api-source (oder den Namen, den Sie ihr gegeben haben) auf
Ressource löschen, um den Google API-Nachrichtenanbieter zu löschen.Klicken Sie bei der Aufforderung Ressource löschen auf Bestätigen.
Klicken Sie auf Speichern.
gcloud
Öffnen Sie ein Terminalfenster.
Mit dem Befehl
gcloud beta eventarc google-api-sources delete
können Sie Ereignisse aus Google-Quellen deaktivieren:gcloud beta eventarc google-api-source delete GOOGLE_API_SOURCE_NAME \ --location=REGION
Ersetzen Sie Folgendes:
GOOGLE_API_SOURCE_NAME
: die ID oder voll qualifizierte Kennzeichnung der RessourceGoogleApiSource
REGION
: der Standort derGoogleApiSource
-Ressource
REST API
Wenn Sie Ereignisse aus Google-Quellen deaktivieren möchten, verwenden Sie die Methode projects.locations.googleApiSources.delete
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID
: die Google Cloud Projekt-ID, in der dieGoogleApiSource
-Ressource erstellt wird.LOCATION
: die Region, in der dieGoogleApiSource
-Ressource erstellt wird, z. B.us-central1
.GOOGLE_API_SOURCE_NAME
: Der Name derGoogleApiSource
-Ressource, die Sie löschen möchten.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von Operation
.
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata", "createTime": "2024-01-25T17:17:45.782370139Z", "target": "projects/PROJECT_ID/locations/LOCATION/googleApiSources/GOOGLE_API_SOURCE_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Ereignisse aus Google-Quellen im selben Google Cloud -Projekt wie die gelöschte GoogleApiSource
-Ressource werden nicht mehr erfasst und veröffentlicht.
Nächste Schritte
- Ereignisse direkt veröffentlichen
- Empfangene Ereignisse formatieren
- Empfangene Ereignisse transformieren