In diesem Dokument wird beschrieben, wie Sie Ereignisse über das Business Eventing Toolkit für SAP in Cloud Run-Funktionen veröffentlichen.
Vorbereitung
Sie oder Ihre Administratoren müssen die folgenden Voraussetzungen erfüllen:
- Die Cloud Run Functions API wurde aktiviert. Informationen zum Aktivieren von APIs Google Cloud finden Sie unter APIs aktivieren.
- Sie haben einen Clientschlüssel für die Authentifizierung konfiguriert. Informationen zum Einrichten der Authentifizierung in der lokalen oder einer beliebigen Cloud-Version des ABAP SDK for Google Cloud finden Sie unter Authentifizierung.
Das im Clientschlüssel für die Authentifizierung konfigurierte Dienstkonto muss die folgenden Rollen haben:
- Für Cloud Run-Funktionen der 1. Generation: Cloud Functions-Aufrufer (
roles/cloudfunctions.invoker
) - Für Cloud Run-Funktionen der 2. Generation: Cloud Run-Aufrufer (
roles/run.invoker
)
- Für Cloud Run-Funktionen der 1. Generation: Cloud Functions-Aufrufer (
Konfigurieren Sie die Ziel Google Cloud dienste mit den folgenden Details:
- Ereignisverarbeitungsklasse:
/GOOG/CL_PUBLISHER_CLOUDFUNC
- Google Cloud-Schlüsselname: Der Clientschlüssel für die Authentifizierung.
- Ereignisparameter 1: Der Name der Cloud Run-Funktionen.
- Ereignisparameter 2: Der Speicherort der Cloud Run-Funktionen.
- Ereignisparameter 3: Optional. Die verwendete HTTP-Methode. Beispiele:
GET
,POST
Wenn keine Angabe gemacht wird, lautet der StandardwertGET
.
Informationen zum Konfigurieren von Ziel Google Cloud diensten finden Sie unter Ziel Google Cloud dienste konfigurieren.
- Ereignisverarbeitungsklasse:
Termine veröffentlichen
Wenn Sie Ereignisdaten in Cloud Run-Funktionen veröffentlichen möchten, rufen Sie die Methode publish()
auf:
DATA: lt_data TYPE /goog/if_ce_publisher=>tt_messages.
" Write logic to populate LT_DATA.
lt_data = VALUE #( ( data = 'Hello World!' ) ).
/goog/cl_event_publisher=>publish_event(
EXPORTING
iv_event_key = 'EVENT_KEY'
it_data = lt_data
IMPORTING
et_output = DATA(lt_output)
ev_ret_code = DATA(lv_ret_code)
ev_err_text = DATA(lv_err_text)
).
Ersetzen Sie EVENT_KEY
durch den Ereignisschlüssel, der für die Veröffentlichung von Ereignissen in Cloud Run-Funktionen konfiguriert ist.
Wenn Sie ein Ereignis als CloudEvent senden möchten, können Sie den Standardattributschlüssel für CloudEvents konfigurieren und diesen Schlüssel beim Konfigurieren der Ziel Google Cloud dienste an Ihren Ereignisschlüssel anhängen. Das Business Eventing Toolkit für SAP übernimmt dann die Standardattributwerte für das CloudEvent.