Estás viendo la documentación de Apigee Edge.
Ir a la documentación de
Apigee X. info
Se recomienda asegurarse de que cualquier código de Node.js que agregues a un proxy funcione antes de implementarlo en Edge. En este tema, se analizan formas de depurar y solucionar problemas de proxies que incluyen aplicaciones de Node.js después de que se implementan.
Aumentar el tamaño del grupo de conexiones para mejorar el rendimiento
Si notas un rendimiento lento, es posible que puedas resolver el problema aumentando el tamaño predeterminado del grupo de conexiones de Node.js con maxSockets o inhabilitando por completo el grupo de sockets. Para obtener más información y ejemplos de código, consulta Sugerencias de rendimiento de Node.js: Agrupación de sockets en la comunidad de Apigee.
Cómo ver los registros de Node.js
Para ver la información de registro sobre tu aplicación de Node.js, haz lo siguiente:
- En la página principal de proxies de API, haz clic en el proxy que deseas ver.
- En la página de resumen del proxy seleccionado, haz clic en Registros de Node.js en el lado derecho de la barra de herramientas.
En la página Logs, puedes seleccionar un período de registros para ver, como se muestra a continuación. En los registros, se registran las llamadas a métodos HTTP, el éxito o el fracaso de las llamadas, los mensajes de console.log, etcétera. Ingresa una cadena de búsqueda en el campo de búsqueda para mostrar todas las entradas de registro que contengan la cadena.

Cómo usar la herramienta de seguimiento
La herramienta de seguimiento es útil para la depuración general del proxy. Para obtener información detallada sobre el uso de la herramienta de seguimiento, consulta Usa la herramienta de seguimiento.
Cómo imprimir el resultado de la consola
Puedes incorporar instrucciones console.log en tu código de Node.js y ver el resultado en la herramienta de seguimiento. Por ejemplo, la siguiente instrucción imprime el valor de la variable config.user:
console.log('Logging in as %s', config.username);

Para ver el resultado de los mensajes console.log en la herramienta Trace, llama a tu API en la herramienta Trace y haz clic en Resultado de todas las transacciones para abrir el panel de resultados:

Supongamos que ejecutaste el siguiente código…
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'); });
… las instrucciones de la consola aparecen en el panel:

Configura los parámetros de configuración de tiempo de espera del destino de Nginx
Si usas Nginx como proxy y ves errores de "Bad Gateway", intenta aumentar la configuración de tiempo de espera del proxy de Nginx como se explica aquí:
Por ejemplo:
proxy_connect_timeout 60; proxy_read_timeout 120;
El tiempo que tarda el servidor en responder puede determinar la configuración de tiempo de espera ideal. Por ejemplo, un tiempo de espera de lectura de entre 45 y 60 segundos podría ser ideal para proporcionar un búfer razonable.
Configura los parámetros de configuración de tiempo de espera del destino de Apigee
También puedes configurar los valores de tiempo de espera predeterminados de Apigee en el elemento HttpTargetConnection del TargetEndpoint. Los valores predeterminados son los siguientes:
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>
Consulta también Referencia de propiedades de extremos.
Más información
Para obtener más información sobre la depuración, consulta los siguientes recursos:
- Usa la herramienta de Trace
- Usa métricas de rendimiento
- Introducción a la solución de problemas
- Auditorías: historial de la API, el producto y la organización
Próximos pasos
Para obtener información sobre la compatibilidad con módulos de Node.js en Apigee Edge, incluida la compatibilidad con HTTP/HTTPS, TLS y otros temas avanzados, consulta Información sobre la compatibilidad de Edge con módulos de Node.js.