NGINX-Debug-Logs auf den Routern aktivieren

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

<ph type="x-smartling-placeholder">

Bei Apigee sind die Router so konfiguriert, dass sie in den Fehlerprotokolldateien nur die Fehlermeldungen protokollieren. Standardeinstellung. Es kann jedoch viele Situationen geben, in denen Sie weitere Informationen benötigen, um zu ermitteln, warum ein Fehler aufgetreten ist. Eine Möglichkeit dazu besteht darin, den Router so zu konfigurieren, im Debug-Modus arbeiten, um Debugging-Protokolle zu erhalten, die Ihnen helfen können, über den Fehler informieren und ihn schneller beheben können.

In diesem Dokument wird erläutert, wie Sie Debugging-Logs auf dem Router von Apigee Edge für die Anfragen auf einem bestimmter virtueller Hosts. Die Debuggingprotokollierung kann aktiviert werden, um mehr Informationen zu erfassen, wenn wie eine fehlerhafte Anfrage, <ph type="x-smartling-placeholder"></ph> „400 Bad Request - SSL Certificate Error“ („400 Bad Request - SSL Certificate Error“) auf der Richtung Norden (zwischen der Clientanwendung und dem Router).

<ph type="x-smartling-placeholder">

Hinweis

  • Wenn Sie mit den NGINX-Fehlerprotokollen und -Protokollierungsebenen nicht vertraut sind, lesen Sie die Dokumentation zu NGINX-Fehlerprotokollen
  • Erfassen Sie die Organisations-, Umgebungs- und virtuellen Hostnamen der API-Anfragen, für die benötigen Sie Informationen zur Fehlerbehebung.

NGINX-Fehlerbehebungsprotokolle auf den Routern aktivieren

In diesem Abschnitt wird erläutert, wie Sie Fehlerbehebungsprotokolle auf den Edge Routern aktivieren.

<ph type="x-smartling-placeholder">

Relevante Konfigurationsdatei für virtuelle Hosts identifizieren

In den folgenden Schritten wird beschrieben, wie Sie die entsprechende Konfigurationsdatei für den virtuellen Host auf dem Router finden:

  1. Wenn Sie den Organisationsnamen, den Umgebungsnamen und den virtuellen Host für die jeweilige API kennen für die Sie eine Fehlerbehebung durchführen möchten, Bestimmen Sie die Konfigurationsdatei für den virtuellen Host wie folgt: <ph type="x-smartling-placeholder">
      </ph>
    1. Wechseln Sie zum Verzeichnis /opt/nginx/conf.d/.
    2. Nach Datei ORG_NAME_ENV_NAME_VIRTUALHOST.conf suchen im Verzeichnis conf.d mit dem folgenden Befehl:
      ls -ltrh | grep "ORG_NAME_ENV_NAME_VIRTUALHOST_NAME"
      
  2. Wenn Sie den Organisationsnamen nicht kennen, können Sie die Konfiguration des virtuellen Hosts identifizieren. -Datei unter Verwendung des Host-Aliasnamens, der in der API-Anfrage wie folgt verwendet wird:

    Wechseln Sie zum Verzeichnis /opt/nginx/conf.d/ und suchen Sie nach hostalias, mit dem die Anfrage mit dem folgenden Befehl gestellt wurde:

    ls -ltrh | grep -r 'HOST_ALIAS_NAME'
    

    Beispielausgabe:

    Angenommen, der Hostname lautet opdk.cert-test.com. Wenn Sie den ls -ltrh verwenden, sehen Sie die Ausgabe so:

    <ph type="x-smartling-placeholder">

Debugging-Logging für einen bestimmten virtuellen Host auf dem Router aktivieren

In den folgenden Schritten wird beschrieben, wie Sie Debugging-Logs auf den Apigee-Routern für eine bestimmte virtueller Host.

  1. Öffnen Sie die folgende Datei auf dem Routercomputer in einem Editor: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf Beispiel:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
    
  2. Ändern Sie die folgende Zeile:
    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
    

    zu

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
    
  3. Speichern Sie die Änderungen.
  4. Führen Sie den Befehl NGINX erneut aus. Beispiel:
    sudo /opt/nginx/scripts/apigee-nginx reload
    
  5. In der folgenden Datei werden jetzt debug-Protokolle erfasst:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
    
  6. Wenn Sie Debugging-Protokolle auf mehr als einem Router erfassen möchten, wiederholen Sie diese Schritte auf jedem die Router.

Prüfen, ob Informationen zur Fehlerbehebung in der NGINX-Fehlerprotokolldatei protokolliert werden

  1. Sobald Clients API-Anfragen auf dem Host-Alias und Port stellen, die mit dem virtuellen Host verknüpft sind werden Debug-Protokolle in der folgenden Datei erfasst:

    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log

  2. Überprüfen Sie, ob Sie Informationen zur Fehlerbehebung für die API-Anfragen sehen, wie im folgenden Beispiel gezeigt:

    Beispielinformationen zur Fehlerbehebung:

    2021/01/27 02:48:40 [warn] 27624#27624: *3777 a client request body is buffered to a temporary file /opt/apigee/var/log/edge-router/nginx/client_temp/0000000001, client: XX.XX.XX.XX, server: XX.XX.XX.XX, request: "POST /post-no-target HTTP/1.1", host: "XX.XX.XX.XX:443"
    

    Die oben angezeigten Informationen werden erfasst, wenn der Client eine POST-Anfrage mit mit einer großen Nutzlast. Dieses Protokoll wird nur angezeigt, wenn die Debuggingprotokollierung aktiviert ist.

  3. Wenn du keine zusätzlichen Informationen zur Fehlerbehebung siehst, überprüfe, ob du alle unter Aktivieren Sie das Debugging-Logging für einen bestimmten virtuellen Host auf dem Router korrekt. Wenn Sie einen Schritt verpasst haben, wiederholen Sie alle Schritte erneut richtig.
  4. Wenn Sie die Informationen zur Fehlerbehebung immer noch nicht abrufen können, wenden Sie sich an den Apigee Edge-Support.

Fehlerbehebungsprotokolle für einen bestimmten virtuellen Host auf dem Router deaktivieren

In diesem Abschnitt wird erläutert, wie Sie die Fehlerbehebungsprotokolle unter Router für einen bestimmten virtuellen Host deaktivieren.

  1. Öffnen Sie die folgende Datei auf dem Routercomputer in einem Editor: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf Hier einige Beispiele:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
    
  2. Ändern Sie die folgende Zeile:

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
    

    zu

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
    
  3. Speichern Sie die Änderungen.
  4. Führen Sie den Befehl NGINX erneut aus. Beispiel:
    /opt/nginx/scripts/apigee-nginx reload
    
  5. Die folgende Datei erfasst jetzt nur error-Logs:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
    
  6. Wenn Sie Debugging-Protokolle auf mehr als einem Router beenden möchten, wiederholen Sie diese Schritte auf jedem Router.

Es wird geprüft, ob in der NGINX-Fehlerprotokolldatei nur Fehlerinformationen protokolliert werden.

  1. API-Anfragen an den Hostalias und den Port senden, die mit dem jeweiligen virtuellen Host verknüpft sind oder warten Sie, bis die Clients die Anfragen senden.
  2. Überprüfen Sie die folgende Datei: /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  3. Vergewissern Sie sich, dass nur die Fehler- und Debug-Informationen angezeigt werden. für die Anfragen protokolliert.
  4. Wenn immer noch zusätzliche Debug-Informationen protokolliert werden, überprüfe, ob du alle Schritte befolgt haben in Deaktivieren Sie die Fehlerbehebungsprotokolle für einen bestimmten virtuellen Host auf dem Router korrekt. Wenn Sie einen Schritt verpasst haben, wiederholen Sie alle Schritte erneut richtig.
  5. Wenn du die Informationen zur Fehlerbehebung immer noch nicht abrufen kannst, wende dich an Apigee Edge-Unterstützung