Saltar al contenido principal

Agente Node.js de API Monitor APM 🚀

El agente oficial de API Monitor APM para Node.js (newinntech-apimonitor-sdk) permite instrumentar y monitorear de forma automática y transparente tus servidores, recolectando trazas, métricas de host físicas y logs correlacionados bajo el estándar universal de OpenTelemetry.


📥 Instalación

Instala el SDK en la raíz de tu proyecto de Node.js corriendo:

npm install newinntech-apimonitor-sdk

Todas las dependencias necesarias de OpenTelemetry se descargarán e instalarán automáticamente de manera transparente como sub-dependencias.


🚀 Modos de Inicialización

Puedes inicializar el agente en tu servidor utilizando cualquiera de estos dos métodos:

Método 1: Inicialización Estándar (Recomendado)

Agrega esta línea en la primerísima línea de tu archivo de arranque (ej: index.js, server.js o local.js), incluso antes de importar Express, base de datos o cualquier otra dependencia:

require('newinntech-apimonitor-sdk').init();

Método 2: Precarga sin cambiar código (Zero-Code Preloading) 🌟

Si no deseas modificar archivos de código de tu repositorio (ideal para entornos de producción, Docker, Kubernetes o despliegues CI/CD), puedes precargar el SDK directamente en el comando de arranque de Node usando la bandera -r:

node -r newinntech-apimonitor-sdk/register server.js

🎛️ Variables de Entorno de Configuración

El SDK se configura de forma transparente leyendo las siguientes variables de entorno de tu contenedor o servidor:

VariableTipoPor DefectoDescripción
OTEL_ENABLEDBooleanfalseActiva (true) o desactiva (false) globalmente el reporte de telemetría.
OTEL_API_KEYStringundefinedTu clave de API única (API Key) obtenida desde el panel de API Monitor.
OTEL_SERVICE_NAMEStringmy-node-serviceEl nombre con el que se identificará tu microservicio en el Dashboard.
OTEL_ENVIRONMENTStringproductionEl entorno o ambiente lógico (production, quality, development).
OTEL_EXPORTER_OTLP_ENDPOINTStringhttp://localhost/api/otlp/v1La URL base del colector OTLP de tu SaaS.

🎯 Características Enterprise Incluidas de forma Nativa:

  1. Detección Automática de Errores (Gobernanza Nativa): El SDK intercepta de forma automatizada las peticiones HTTP y marca automáticamente como ERROR cualquier traza completa que retorne un código de estado HTTP mayor o igual a 400 (ej: 400, 401, 403, 500), disparando alertas en tu panel de incidentes sin codificación manual.
  2. Correlación Automática de Logs: El SDK intercepta tus funciones de console.log e inyecta dinámicamente el trace_id de la transacción activa en el mensaje, permitiéndote correlacionar logs y APM de forma impecable en tu dashboard.
  3. Métricas Físicas de Host: Captura automáticamente métricas de consumo de CPU de la máquina, memoria RAM de sistema, disco físico, y bytes de red del host.