Logging zu API-Deployments hinzufügen
Erfahren Sie, wie Sie Logging-Policys zu API-Spezifikationen hinzufügen, die Sie zuvor mit API Gateway erstellt haben.
Nachdem Sie ein API-Gateway erstellt und mindestens eine API darin bereitgestellt haben, kommt es wahrscheinlich zu Fällen, in denen Sie weitere Einzelheiten zum Trafficfluss in das und aus dem API-Gateway erhalten müssen. Beispiel: Möglicherweise möchten Sie Antworten prüfen, die an API-Clients zurückgegeben wurden, oder Fehler beheben. Sie können angeben, dass der API Gateway-Service Informationen zu Anforderungen und Antworten, die über ein API-Gateway geleitet werden, sowie Informationen zur Verarbeitung innerhalb eines API-Gateways als Logs im Oracle Cloud Infrastructure Logging-Service speichert.
- Zugriffslogs, in denen eine Übersicht über jede Anforderung und Antwort aufgezeichnet wird, die über das API-Gateway an ein und von einem API-Deployment geleitet wird. Weitere Informationen zum Inhalt des Zugriffslogs finden Sie unter API-Deployment-Zugriffslog.
- Ausführungslogs, in denen Informationen zur Verarbeitung innerhalb des API-Gateways für ein API-Deployment aufgezeichnet werden. Weitere Informationen zum Inhalt des Ausführungslogs finden Sie unter API-Deployment-Ausführungslog. Sie können eine der folgenden Logebenen für Ausführungslogs angeben:
- Informationen, um eine Übersicht über jede Verarbeitungsphase aufzuzeichnen.
- Warnung, um nur transiente Fehler aufzuzeichnen, die während der Verarbeitung auftreten. Beispiel: Eine zurückgesetzte Verbindung.
- Fehler, um nur persistente Fehler aufzuzeichnen, die während der Verarbeitung auftreten. Beispiel: Ein interner Fehler oder ein Aufruf einer Funktion, die eine 404-Meldung zurückgibt.
Sie können eine Ausführungslogebene für ein API-Deployment festlegen. Sie können auch verschiedene Ausführungslogebenen für einzelne Routen festlegen, um die vom API-Deployment geerbte Ausführungslogebene außer Kraft zu setzen.
Sie können Logging zu einer API-Deployment-Spezifikation hinzufügen, indem Sie:
- die Konsole verwenden
- eine JSON-Datei bearbeiten
Logging mit der Konsole hinzufügen
Logs in Oracle Cloud Infrastructure Logging mit der Konsole konfigurieren und aktivieren
So konfigurieren und aktivieren Sie API-Deployment-Logs mit der Konsole, um Logs in Oracle Cloud Infrastructure Logging zu speichern:
-
Erstellen oder aktualisieren Sie ein API-Deployment mit der Konsole, wählen Sie die Option Völlig neu aus, und geben Sie auf der Seite Basisinformationen Details ein.
Weitere Informationen finden Sie unter API durch das Erstellen eines API-Deployment in einem API-Gateway bereitstellen und API-Gateway aktualisieren.
-
Geben Sie auf der Seite Basisinformationen im Abschnitt API-Logging-Policys eine der folgenden Optionen als Ausführungslogebene an, um Informationen zur Verarbeitung im API-Gateway aufzuzeichnen:
- Informationen: Zeichnen Sie eine Übersicht über jede Verarbeitungsphase auf. Dies ist die Standardoption.
- Warnung: Zeichnen Sie nur transiente Fehler auf, die während der Verarbeitung auftreten. Beispiel: Eine zurückgesetzte Verbindung.
- Fehler: Zeichnen Sie nur persistente Fehler auf, die während der Verarbeitung auftreten. Beispiel: Ein interner Fehler oder ein Aufruf einer Funktion, die eine 404-Meldung zurückgibt.
-
Wählen Sie zweimal Weiter aus, um Details zu einzelnen Routen im API-Deployment auf der Seite Routen einzugeben, und wählen Sie Routenlogging-Policys anzeigen aus.
-
Geben Sie eine der folgenden Optionen als Override für Ausführungslogebene an, der für eine einzelne Route gilt (um die vom API-Deployment geerbte Ausführungslogebene außer Kraft zu setzen):
- Informationen: Zeichnen Sie eine Übersicht über jede Verarbeitungsphase auf.
- Warnung: Zeichnen Sie nur transiente Fehler auf, die während der Verarbeitung auftreten. Beispiel: Eine zurückgesetzte Verbindung.
- Fehler: Zeichnen Sie nur persistente Fehler auf, die während der Verarbeitung auftreten. Beispiel: Ein interner Fehler oder ein Aufruf einer Funktion, die eine 404-Meldung zurückgibt.
- Wählen Sie Weiter aus, um die Details zu prüfen, die Sie für das API-Deployment eingegeben haben.
- Wählen Sie Erstellen oder Änderungen speichern aus, um das API-Deployment zu erstellen oder zu aktualisieren.
Das API-Deployment wird auf der Seite API-Deployment-Details angezeigt.
- Wählen Sie unter Ressourcen die Option Logs aus, und wählen Sie den Schieber Logging aktivieren aus, um ein neues API-Deployment-Log im Oracle Cloud Infrastructure Logging-Service im Eingabebereich Log erstellen zu erstellen und zu aktivieren:
- Compartment: Standardmäßig das aktuelle Compartment.
- Loggruppe: Standardmäßig die erste Loggruppe im Compartment.
- Logkategorie: Wählen Sie Ausführung oder Zugriff aus.
- Logname: Standardmäßig
<deployment-name>_execution
oder<deployment-name>_access
, je nachdem, welche Kategorie Sie auswählen.
Weitere Informationen finden Sie unter Logging für eine Ressource aktivieren.
- Wählen Sie Log aktivieren aus, um das neue Log zu erstellen und zu aktivieren.
JSON-Datei zum Hinzufügen von Logging bearbeiten
JSON-Datei bearbeiten, um die Ausführungslogebene für in Oracle Cloud Infrastructure Logging gespeicherte Logs festzulegen
So bearbeiten Sie die API-Deployment-Spezifikation in einer JSON-Datei, um die Logebene für Ausführungslogs festzulegen, die in Oracle Cloud Infrastructure Logging gespeichert sind:
-
Bearbeiten Sie in Ihrem bevorzugten JSON-Editor die vorhandene API-Deployment-Spezifikation, in der Sie die Loggingebene für in Oracle Cloud Infrastructure Logging gespeicherte Logs festlegen möchten, oder erstellen Sie eine neue API-Deployment-Spezifikation (siehe API-Deployment-Spezifikation erstellen).
Die API-Deployment-Spezifikation beinhaltet zumindest einen
routes
-Abschnitt, der Folgendes enthält:- Einen Pfad. Beispiel:
/hello
- Mindestens eine Methode. Beispiel:
GET
- Eine Definition eines Backends. Beispiel: Eine URL oder die OCID einer Funktion in OCI Functions.
Beispiel: Die folgende Basisspezifikation für das API-Deployment definiert eine einfache serverlose Hello World-Funktion in OCI Functions als einzelnes Backend:
{ "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" } } ] }
- Einen Pfad. Beispiel:
-
(Optional) So legen Sie die Logebene für Ausführungslogs fest, die global für alle Routen in der API-Deployment-Spezifikation gilt:
-
Fügen Sie einen
loggingPolicies
-Abschnitt vor demroutes
-Abschnitt ein. Beispiel:{ "loggingPolicies": {}, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" } } ] }
-
Geben Sie die Detailebene an, mit der die Verarbeitung innerhalb des API-Gateways für alle Routen aufgezeichnet werden soll, indem Sie die
executionLog
-Policy in den AbschnittloggingPolicies
aufnehmen und dielogLevel
-Eigenschaft auf einen der folgenden Werte setzen:INFO
, um eine Übersicht über jede Verarbeitungsphase aufzuzeichnen.WARN
, um nur transiente Fehler aufzuzeichnen, die während der Verarbeitung auftreten. Beispiel: Eine zurückgesetzte Verbindung.ERROR
, um nur persistente Fehler aufzuzeichnen, die während der Verarbeitung auftreten. Beispiel: Ein interner Fehler oder ein Aufruf einer Funktion, die eine 404-Meldung zurückgibt.
Beispiel:
{ "loggingPolicies": { "executionLog": { "logLevel": "INFO" } }, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" } } ] }
-
-
(Optional) So legen Sie die Logebene für Ausführungslogs für eine bestimmte Route fest (und setzen die vom API-Deployment geerbte globale Ausführungslogebene außer Kraft):
-
Fügen Sie einen
loggingPolicies
-Abschnitt nach dembackend
-Abschnitt der Route ein. Beispiel:{ "loggingPolicies": { "executionLog": { "logLevel": "INFO" } }, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" }, "loggingPolicies": {} } ] }
-
Geben Sie die Detailebene an, mit der die Verarbeitung innerhalb des API-Gateways für die Route aufgezeichnet werden soll, indem Sie die
executionLog
-Policy in den AbschnittloggingPolicies
aufnehmen und dielogLevel
-Eigenschaft auf einen der folgenden Werte setzen:INFO
, um eine Übersicht über jede Verarbeitungsphase aufzuzeichnen.WARN
, um nur transiente Fehler aufzuzeichnen, die während der Verarbeitung auftreten. Beispiel: Eine zurückgesetzte Verbindung.ERROR
, um nur persistente Fehler aufzuzeichnen, die während der Verarbeitung auftreten. Beispiel: Ein interner Fehler oder ein Aufruf einer Funktion, die eine 404-Meldung zurückgibt.
Beispiel:
{ "loggingPolicies": { "executionLog": { "logLevel": "INFO" } }, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" }, "loggingPolicies": { "executionLog": { "logLevel": "ERROR" } } } ] }
-
-
Speichern Sie die JSON-Datei, die die API-Deployment-Spezifikation enthält.
-
Verwenden Sie die API-Deployment-Spezifikation, wenn Sie ein API-Deployment wie folgt erstellen oder aktualisieren:
- Durch Angabe der JSON-Datei in der Konsole bei Auswahl der Option Vorhandene API hochladen
- Durch Angabe der JSON-Datei in einer Anforderung an die REST-API von API-Gateway
Weitere Informationen finden Sie unter API durch das Erstellen eines API-Deployments in einem API-Gateway bereitstellen.
- Nachdem Sie die Logebene für Ausführungslogs festgelegt haben, befolgen Sie die Anweisungen unter Logging für eine Ressource aktivieren, um ein neues API-Deployment-Log im Oracle Cloud Infrastructure Logging-Service zu erstellen und zu aktivieren.
Logs anzeigen
Nachdem Sie Logging zu einer API-Deployment-Spezifikation hinzugefügt und die API in einem API-Gateway bereitgestellt haben, schreibt der API Gateway-Service entsprechende Logs.
Logs in Oracle Cloud Infrastructure Logging anzeigen
Sie können den Inhalt eines API-Deployment-Logs in Oracle Cloud Infrastructure Logging auf der Seite API-Deployment-Details anzeigen. Wählen Sie unter Ressourcen die Option Logs aus, und wählen Sie dann den Namen des Logs aus, das Sie anzeigen möchten.
Alternativ können Sie den Inhalt eines API-Deployment-Logs auf der Seite Logsuche von Oracle Cloud Infrastructure Logging anzeigen. Siehe Details eines Logs abrufen.
Weitere Informationen zum Inhalt von Zugriffs- und Ausführungslogs finden Sie unter: