Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
È una buona pratica assicurarsi che il codice Node.js aggiunto a un proxy funzioni prima di eseguirne il deployment su Edge. Questo argomento descrive i modi per eseguire il debug e risolvere i problemi dei proxy che includono applicazioni Node.js dopo il deployment.
Aumentare le dimensioni del pool di connessioni per migliorare le prestazioni
Se noti prestazioni lente, potresti risolvere il problema aumentando le dimensioni predefinite del pool di connessioni Node.js con maxSockets o disattivando completamente il pool di socket. Per ulteriori informazioni e codice di esempio, consulta Node.js Suggerimenti per le prestazioni: pool di socket nella community Apigee.
Visualizzare i log di Node.js
Per visualizzare le informazioni di log sulla tua applicazione Node.js:
- Nella pagina principale dei proxy API, fai clic sul proxy che vuoi visualizzare.
- Nella pagina di riepilogo del proxy selezionato, fai clic su Log di Node.js sul lato destro della barra degli strumenti.
Nella pagina Log, puoi selezionare un intervallo di tempo dei log da visualizzare, come mostrato di seguito. I log registrano le chiamate ai metodi HTTP, l'esito positivo o negativo delle chiamate, i messaggi console.log e così via. Inserisci una stringa di ricerca nel campo di ricerca per visualizzare tutte le voci di log che contengono la stringa.

Utilizzare lo strumento di traccia
Lo strumento di traccia è utile per il debug generale dei proxy. Per informazioni dettagliate sull'utilizzo dello strumento di traccia, consulta Utilizzare lo strumento di traccia.
Stampare l'output della console
Puoi incorporare le istruzioni console.log nel codice Node.js e visualizzare l'output nello strumento di traccia. Ad esempio, la seguente istruzione stampa il valore della variabile config.user:
console.log('Logging in as %s', config.username);

Per visualizzare l'output dei messaggi console.log nello strumento di traccia, chiama la tua API nello strumento di traccia e fai clic su Output di tutte le transazioni per aprire il riquadro di output:

Supponendo di aver eseguito il seguente codice...
var http = require('http'); console.log('node.js application starting...'); var svr = http.createServer(function(req, resp) { resp.end('Hello, World!'); }); svr.listen(9000, function() { console.log('Node HTTP server is listening'); });
... le istruzioni della console vengono visualizzate nel riquadro:

Configurare le impostazioni di timeout della destinazione Nginx
Se utilizzi Nginx come proxy e visualizzi errori "Bad Gateway", prova ad aumentare la configurazione del timeout del proxy Nginx come spiegato qui:
Ad esempio:
proxy_connect_timeout 60; proxy_read_timeout 120;
Il tempo di risposta del server può determinare le configurazioni di timeout ideali. Ad esempio, un timeout di lettura di 45-60 secondi potrebbe essere ideale per fornire un buffer ragionevole.
Configurare le impostazioni di timeout della destinazione Apigee
Puoi anche configurare i valori di timeout predefiniti di Apigee nell'elemento HttpTargetConnection in TargetEndpoint. I valori predefiniti sono:
connect.timeout.millis - 60 seconds io.timeout.millis - 120 seconds
<HTTPTargetConnection> <Properties> <Property name="connect.timeout.millis">5000</Property> <Property name="io.timeout.millis">5000</Property> </Properties> <URL>http://www.google.com</URL> </HTTPTargetConnection>
Vedi anche Riferimento per le proprietà degli endpoint.
Per ulteriori informazioni
Per saperne di più sul debug, consulta:
- Utilizzare lo strumento di traccia
- Utilizzo delle metriche relative alle prestazioni
- Risoluzione dei problemi introduzione
- Audit: cronologia di API, prodotti e organizzazioni
Passaggi successivi
Per informazioni sul supporto dei moduli Node.js in Apigee Edge, incluse informazioni sul supporto per HTTP/HTTPS, TLS e altri argomenti avanzati, consulta Informazioni sul supporto di Edge per i moduli Node.js.