Sie sehen sich die Dokumentation zu Apigee Edge an.
Sehen Sie sich die Apigee X-Dokumentation an. info
Version 1.2.0
Sie können Einträge in Stackdriver Logging-Protokolle schreiben.
Dieser Artikel enthält eine Referenz zum Konfigurieren und Verwenden dieser Erweiterung.
Vorbereitung
Bevor Sie diese Erweiterung über einen API-Proxy verwenden können, müssen Sie Folgendes tun:
Weisen Sie in IAM dem Projektmitglied, das Ihre Erweiterung im Stackdriver Logging-System repräsentiert, die Berechtigung „Logging > Logs Writer“ zu. Eine Anleitung zum Zuweisen von Rollen finden Sie unter Einem Dienstkonto Rollen für bestimmte Ressourcen zuweisen. Weitere Informationen zu Logging-Rollen finden Sie im Leitfaden für die Zugriffssteuerung.
Erstellen Sie mit der GCP Console einen Schlüssel für das Dienstkonto.
Verwenden Sie den Inhalt der resultierenden JSON-Schlüsseldatei, wenn Sie die Erweiterung mithilfe der Konfigurationsreferenz hinzufügen und konfigurieren.
Stackdriver Logging
Stackdriver Logging ist Teil der Stackdriver-Produktsuite in der Google Cloud Platform (GCP). Dazu gehören ein Speicher für Logs, eine Benutzeroberfläche namens „Loganzeige“ sowie eine API für die programmatische Verwaltung von Logs. Mit Stackdriver Logging können Sie Logeinträge lesen und schreiben, Logs suchen und filtern, Logs exportieren und logbasierte Messwerte erstellen.
Diese Erweiterung schreibt derzeit Einträge in das Protokoll.
Weitere Informationen finden Sie in der Stackdriver Logging-Dokumentation.
Beispiele
In den folgenden Beispielen wird gezeigt, wie Sie die Unterstützung für Stackdriver Logging-Erweiterungsaktionen mithilfe der ExtensionCallout-Richtlinie konfigurieren.
Globaler Log
Die folgende Richtlinie schreibt die Nachricht „Das ist ein Test“ in ein Protokoll namens „beispiel-log“ in der globalen Stackdriver-Ressource. Bei der tatsächlichen Verwendung sollte die Nachricht wahrscheinlich in einer Ablaufvariablen enthalten sein, deren Wert Sie an anderer Stelle im API-Proxy festlegen.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Logging-Extension">
<DisplayName>Logging Connector</DisplayName>
<Connector>stackdriver-extension-sample</Connector>
<Action>log</Action>
<Input><![CDATA[{
"logName": "example-log",
"metadata": {
"resource": {
"type": "global",
"labels": {
"project_id": "my-test"
}
}
},
"message": "This is a test"
}]]></Input>
</ConnectorCallout>
Dieser Artikel enthält eine Referenz zum Konfigurieren und Verwenden dieser Erweiterung. Eine Anleitung zum Konfigurieren einer Erweiterung mit der Apigee Console finden Sie unter Erweiterung hinzufügen und konfigurieren.
Aktionen
log
Schreibt eine Nachricht in das Protokoll.
Durch diese Aktion wird ein Stackdriver-Logeintrag geschrieben. Logeinträge bestehen aus Metadaten und den Eintragsdaten. Weitere Informationen zu Logeinträgen finden Sie in der Referenz zu Einträgen. Informationen zum Inhalt der Property metadata
finden Sie im Abschnitt zum Objekt LogEntry in der Stackdriver Logging-Dokumentation.
Syntax
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : JSON-structured-metadata,
"message" : "data-to-log-as-entry"
}]]></Input>
Beispiel
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : { "resource" : { "type" : "global" } },
"message" : "data-to-log-as-entry"
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
logName | Der Name des Logs, zu dem dieser Eintrag gehört. | String | Keine. | Ja. |
Metadaten | Metadaten zum Logeintrag. Weitere Informationen und Optionen zum Festlegen von type und labels in metadata finden Sie unter MonitoredResource. |
JSON | Keine. | Nein. |
Nachricht | Daten, die als Wert für diesen Logeintrag verwendet werden sollen. | String | Keine. | Ja. |
Antwort
„–“, wenn die Nachricht in das Protokoll geschrieben wurde. Andernfalls wird bei der Anfrage ein Fehler zurückgegeben. Weitere Informationen finden Sie unter Erweiterungen debuggen.
Konfigurationsreferenz
Beachten Sie Folgendes, wenn Sie diese Erweiterung für die Verwendung in API-Proxys konfigurieren und bereitstellen.
Gängige Erweiterungseigenschaften
Für jede Erweiterung sind die folgenden Eigenschaften vorhanden.
Attribut | Beschreibung | Standard | Erforderlich |
---|---|---|---|
name |
Der Name, den Sie dieser Konfiguration der Erweiterung zuweisen. | – | Ja |
packageName |
Name des Erweiterungspakets, wie von Apigee Edge angegeben. | – | Ja |
version |
Versionsnummer für das Erweiterungspaket, von dem Sie eine Erweiterung konfigurieren. | – | Ja |
configuration |
Konfigurationswert speziell für die Erweiterung, die Sie hinzufügen. Weitere Informationen finden Sie unter Eigenschaften für dieses Erweiterungspaket. | – | Ja |
Properties für dieses Erweiterungspaket
Geben Sie Werte für die folgenden Konfigurationseigenschaften an, die für diese Erweiterung spezifisch sind.
Attribut | Beschreibung | Standard | Erforderlich |
---|---|---|---|
projectId | Die GCP-Projekt-ID, in der Protokolle erstellt werden sollen. | Keine. | Ja. |
Anmeldedaten | Wenn Sie diesen Wert in die Apigee Edge-Konsole eingeben, entspricht er dem Inhalt Ihrer Dienstkonto-Schlüsseldatei. Wenn er über die Verwaltungs-API gesendet wird, ist er ein Base64-codierter Wert, der aus der Dienstkonto-Schlüsseldatei generiert wird. | Keine. | Ja. |