Abilitazione dei log di debug NGINX sui router

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

Su Apigee, i router sono configurati in modo da registrare solo i messaggi di errore nei file di log degli errori predefinito. Tuttavia, potrebbero esservi molte situazioni in cui potrebbe essere necessario raccogliere più informazioni per determinare il motivo per cui si è verificato un errore specifico. Un modo per farlo è configurare il router operare in modalità di debug in modo da poter ottenere i log di debug, che possono aiutarti a ottenere maggiori informazioni dall'errore e risolverlo più velocemente.

Questo documento spiega come abilitare i log di debug sul router Apigee Edge per le richieste su un un host virtuale specifico. Il logging di debug può essere abilitato per acquisire maggiori informazioni, se presenti ad esempio richieste in formato non corretto, 400 Bad Request - SSL Certificate Error, nella In direzione nord (tra l'applicazione client e il router).

Prima di iniziare

  • Se non hai familiarità con i log degli errori NGINX e i livelli di registrazione, fai riferimento alle Documentazione relativa al log degli errori NGINX.
  • Raccogliere l'organizzazione, l'ambiente e i nomi host virtuali delle richieste API per le quali devi raccogliere le informazioni di debug.

Abilitazione dei log di debug NGINX sui router

Questa sezione spiega come abilitare i log di debug sui router perimetrali.

Identificazione del file di configurazione dell'host virtuale pertinente

I seguenti passaggi descrivono come individuare il file di configurazione dell'host virtuale pertinente sul router:

  1. Se conosci il nome dell'organizzazione, il nome dell'ambiente e l'host virtuale per l'API specifica eseguire il debug, determina il file di configurazione dell'host virtuale come segue:
    1. Vai alla directory /opt/nginx/conf.d/.
    2. Cerca il file ORG_NAME_ENV_NAME_VIRTUALHOST.conf nella directory conf.d utilizzando il seguente comando:
      ls -ltrh | grep "ORG_NAME_ENV_NAME_VIRTUALHOST_NAME"
      
  2. Se non conosci il nome dell'organizzazione, puoi identificare la configurazione dell'host virtuale utilizzando il nome dell'alias host usato nella richiesta API, in questo modo:

    Vai alla directory /opt/nginx/conf.d/ e cerca hostalias con cui è stata effettuata la richiesta utilizzando il seguente comando:

    ls -ltrh | grep -r 'HOST_ALIAS_NAME'
    

    Esempio di output:

    Supponiamo che l'alias host sia opdk.cert-test.com. Quando esegui il comando ls -ltrh, vedrai l'output come mostrato di seguito:

Abilitazione del logging di debug per un host virtuale specifico sul router

I passaggi seguenti spiegano come abilitare i log di debug sui router Apigee per uno specifico l'host virtuale.

  1. Apri il seguente file sul computer router in un editor: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf. Ad esempio:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
    
  2. Modifica la riga seguente:
    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
    

    a

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
    
  3. Salva le modifiche.
  4. Esegui il comando di ricaricamento NGINX. Ad esempio:
    sudo /opt/nginx/scripts/apigee-nginx reload
    
  5. Il seguente file ora acquisirà i log di debug:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
    
  6. Se desideri acquisire i log di debug su più router, ripeti questi passaggi su ogni i router.

La verifica delle informazioni di debug viene registrata nel file di log degli errori NGINX

  1. Dopo che i client effettuano richieste API sull'alias host e sulla porta associati all'host virtuale i log di debug verranno acquisiti nel seguente file:

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

  2. Verifica che vengano visualizzate le informazioni di debug per le richieste API, come mostrato nell'esempio seguente:

    Esempi di informazioni di debug:

    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"
    

    Le informazioni mostrate sopra verranno acquisite quando il client invia una richiesta POST con di grandi dimensioni. Questo log viene visualizzato solo quando il logging di debug è abilitato.

  3. Se non vedi ulteriori informazioni di debug, verifica di aver seguito tutte le passaggi descritti in Abilitazione corretta del logging di debug per uno specifico host virtuale sul router. Se disponi hai saltato un passaggio, ripeti tutti i passaggi correttamente.
  4. Se non riesci ancora a ottenere le informazioni di debug, contatta l'assistenza Apigee Edge.

Disabilitazione dei log di debug per un host virtuale specifico sul router

Questa sezione spiega come disabilitare i log di debug sul router per un host virtuale specifico.

  1. Apri il seguente file sul computer router in un editor: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf Ad esempio:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
    
  2. Modifica la riga seguente:

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

    a

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
    
  3. Salva le modifiche.
  4. Esegui il comando di ricaricamento NGINX. Ad esempio:
    /opt/nginx/scripts/apigee-nginx reload
    
  5. Il seguente file ora acquisirà solo i log degli errori:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
    
  6. Se desideri interrompere i log di debug su più router, ripeti questi passaggi su ogni Router.

La verifica solo delle informazioni sull'errore viene registrata nel file di log degli errori NGINX

  1. Effettuare alcune richieste API sull'alias host e sulla porta associati all'host virtuale specifico configurazione o attendere che i client effettuino le richieste.
  2. Controlla il seguente file: /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  3. Verifica che vengano visualizzate solo le informazioni sull'errore e che le informazioni di debug non siano più registrato per le richieste.
  4. Se noti ancora che vengono registrate ulteriori informazioni di debug, verifica di aver abbia seguito tutti i passaggi descritti in Disabilitazione corretta dei log di debug per uno specifico host virtuale sul router. Se disponi hai saltato un passaggio, ripeti tutti i passaggi correttamente.
  5. Se ancora non riesci a ottenere le informazioni di debug, contatta Assistenza Apigee Edge.