Activer les journaux de débogage NGINX sur les routeurs

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

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

Sur Apigee, les routeurs sont configurés pour consigner uniquement les messages d'erreur dans les fichiers journaux d'erreurs en par défaut. Toutefois, dans de nombreuses situations, vous devrez peut-être recueillir davantage d'informations déterminer pourquoi une erreur spécifique s’est produite. L'une des façons de le faire est de configurer le routeur pour fonctionner en mode débogage afin d'obtenir des journaux de débogage qui vous aident à obtenir plus d'informations. l'erreur et la résoudre plus rapidement.

Ce document explique comment activer les journaux de débogage sur le routeur d'Apigee Edge pour les requêtes envoyées à un un hôte virtuel spécifique. Vous pouvez activer la journalisation des données de débogage pour capturer plus d'informations comme une demande incorrecte, <ph type="x-smartling-placeholder"></ph> "400 Bad Request - SSL Certificate Error", sur la page Direction Nord (entre l'application cliente et le routeur).

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

Avant de commencer

  • Si vous ne connaissez pas bien les journaux d'erreurs NGINX et les niveaux de journalisation, veuillez consulter Documentation sur le journal d'erreurs NGINX
  • Rassemblez les noms d'organisation, d'environnement et d'hôte virtuel des requêtes API pour lesquelles vous devez collecter des informations de débogage.

Activer les journaux de débogage NGINX sur les routeurs

Cette section explique comment activer les journaux de débogage sur les routeurs Edge.

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

Identifier le fichier de configuration d'hôte virtuel approprié

Les étapes suivantes décrivent comment localiser le fichier de configuration d'hôte virtuel approprié sur le routeur:

  1. Si vous connaissez le nom de l'organisation, le nom de l'environnement et l'hôte virtuel pour l'API concernée que vous souhaitez déboguer, puis déterminez le fichier de configuration de l'hôte virtuel comme suit: <ph type="x-smartling-placeholder">
      </ph>
    1. Accédez au répertoire /opt/nginx/conf.d/.
    2. Rechercher le fichier ORG_NAME_ENV_NAME_VIRTUALHOST.conf dans le répertoire conf.d à l'aide de la commande suivante:
      ls -ltrh | grep "ORG_NAME_ENV_NAME_VIRTUALHOST_NAME"
      
  2. Si vous ne connaissez pas le nom de l'organisation, vous pouvez identifier la configuration d'hôte virtuel à l'aide du nom d'alias d'hôte utilisé dans la requête API, comme suit:

    Accédez au répertoire /opt/nginx/conf.d/ et recherchez hostalias avec lequel la requête a été effectuée à l'aide de la commande suivante:

    ls -ltrh | grep -r 'HOST_ALIAS_NAME'
    

    Exemple de résultat :

    Imaginons que le nom de l'alias d'hôte soit opdk.cert-test.com. Lorsque vous exécutez la commande ls -ltrh, vous obtenez le résultat suivant:

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

Activer la journalisation de débogage pour un hôte virtuel spécifique sur le routeur

Les étapes suivantes décrivent comment activer les journaux de débogage sur les routeurs Apigee pour un hôte virtuel.

  1. Ouvrez le fichier suivant sur la machine du routeur dans un éditeur: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf Par exemple,
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
    
    .
  2. Modifiez la ligne suivante:
    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
    

    pour

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
    
  3. Enregistrez les modifications.
  4. Exécutez la commande d'actualisation NGINX. Par exemple :
    sudo /opt/nginx/scripts/apigee-nginx reload
    
  5. Le fichier suivant va à présent capturer les journaux de débogage:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
    
  6. Si vous souhaitez capturer les journaux de débogage sur plusieurs routeurs, répétez ces étapes sur chacun des les routeurs.

Vérifier que les informations de débogage sont consignées dans le fichier journal des erreurs NGINX

  1. Une fois que les clients effectuent des requêtes API sur l'alias d'hôte et le port associés à l'hôte virtuel configuration, les journaux de débogage seront capturés dans le fichier suivant:

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

  2. Vérifiez que vous voyez les informations de débogage pour les requêtes API, comme illustré dans l'exemple suivant:

    Exemple d'informations de débogage:

    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"
    

    Les informations affichées ci-dessus seront capturées lorsque le client enverra une requête POST avec une charge utile volumineuse. Ce journal ne s'affiche que lorsque la journalisation de débogage est activée.

  3. Si aucune information de débogage supplémentaire ne s'affiche, vérifiez que vous avez bien suivi toutes les les étapes décrites dans la section activer correctement la journalisation de débogage pour un hôte virtuel spécifique sur le routeur. Si vous avez avez manqué une étape, répétez toutes les étapes correctement.
  4. Si vous ne parvenez toujours pas à obtenir les informations de débogage, veuillez contacter l'assistance Apigee Edge.

Désactiver les journaux de débogage pour un hôte virtuel spécifique sur le routeur

Cette section explique comment désactiver les journaux de débogage au niveau du routeur pour un hôte virtuel spécifique.

  1. Ouvrez le fichier suivant sur la machine du routeur dans un éditeur: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf Par exemple:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
    
  2. Modifiez la ligne suivante:

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

    pour

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
    
  3. Enregistrez les modifications.
  4. Exécutez la commande d'actualisation NGINX. Par exemple :
    /opt/nginx/scripts/apigee-nginx reload
    
  5. Désormais, le fichier suivant ne capturera que les journaux d'erreurs:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
    
  6. Si vous souhaitez arrêter les journaux de débogage sur plusieurs routeurs, répétez ces étapes sur chacun des les routeurs Cloud Router.

Vérifier que seules les informations sur les erreurs sont consignées dans le fichier journal des erreurs NGINX

  1. Effectuer des requêtes API sur l'alias d'hôte et le port associés à l'hôte virtuel spécifique configuration ou attendre que les clients effectuent les requêtes.
  2. Vérifiez le fichier suivant: /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  3. Vérifiez que vous ne voyez plus que les informations sur l'erreur et les informations de débogage. consignés pour les requêtes.
  4. Si des informations de débogage supplémentaires sont toujours en cours de journalisation, vérifiez que vous avez suivi toutes les étapes décrites dans la section Désactiver correctement les journaux de débogage pour un hôte virtuel spécifique sur le routeur Si vous avez avez manqué une étape, répétez toutes les étapes correctement.
  5. Si vous ne parvenez toujours pas à obtenir les informations de débogage, veuillez contacter Assistance Apigee Edge