Integración con OpenTelemetry Estándar 🌐
API Monitor APM es totalmente interoperable y compatible con los colectores y SDKs oficiales de la Cloud Native Computing Foundation (CNCF). Esto significa que si tu backend está escrito en Java, Go, .NET, Python, Rust, PHP u otros lenguajes, puedes conectarlo a nuestro SaaS utilizando las librerías estándares de OpenTelemetry sin necesidad de instalar SDKs propietarios.
⚡ Configuración de Colector OTel Estándar (OTLP/HTTP)
Para enrutar datos de tus microservicios utilizando los exportadores nativos de OpenTelemetry (OTLP/HTTP Exporter), solo debes configurar tus SDKs locales apuntando a los siguientes endpoints y configuraciones de autorización de tu SaaS:
1. Cabecera de Autorización Obligatoria
Todas las peticiones HTTP OTLP que envíes al SaaS deben incluir obligatoriamente tu token de API en la cabecera HTTP:
api-key-newinntech: TU_API_KEY_AQUÍ
2. Endpoints de Enrutamiento OTLP
Configura tus exporters de OpenTelemetry con las siguientes URLs de destino (reemplazando localhost por el host oficial de tu instancia de API Monitor):
- Exportador de Trazas (OTLP Traces):
http://localhost:3000/api/v1/otlp/v1/traces - Exportador de Logs (OTLP Logs):
http://localhost:3000/api/v1/otlp/v1/logs - Exportador de Métricas (OTLP Metrics):
http://localhost:3000/api/v1/otlp/v1/metrics
☕ Ejemplo de Configuración en Java (Java Agent)
Si tienes un microservicio escrito en Java (Spring Boot, Quarkus, etc.), puedes utilizar el agente de instrumentación automático de OpenTelemetry (opentelemetry-javaagent.jar) y configurarlo mediante argumentos del sistema al arrancar tu máquina virtual de Java (JVM):
java -javaagent:path/to/opentelemetry-javaagent.jar \
-Dotel.exporter.otlp.endpoint=http://localhost:3000/api/v1/otlp \
-Dotel.exporter.otlp.headers="api-key-newinntech=TU_API_KEY_DE_WORKSPACE" \
-Dotel.resource.attributes="service.name=mi-spring-boot-service,deployment.environment=production" \
-Dotel.traces.exporter=otlp \
-Dotel.metrics.exporter=otlp \
-Dotel.logs.exporter=otlp \
-jar mi-aplicacion.jar
🐹 Ejemplo de Configuración en Go (OTLP HTTP Exporter)
Si utilizas Go, puedes inicializar tus exporters del SDK de OpenTelemetry configurándolos para exportar de manera nativa mediante llamadas OTLP HTTP:
package main
import (
"context"
"go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp"
)
func initTracer() {
headers := map[string]string{
"api-key-newinntech": "TU_API_KEY_DE_WORKSPACE",
}
// Configurar exportador apuntando al colector del SaaS
exporter, _ := otlptracehttp.New(context.Background(),
otlptracehttp.WithEndpoint("localhost:3000"),
otlptracehttp.WithURLPath("/api/v1/otlp/v1/traces"),
otlptracehttp.WithHeaders(headers),
otlptracehttp.WithInsecure(), // Usar TLS seguro en producción
)
// ... vincular el exportador al TracerProvider ...
}
Esta compatibilidad total asegura que puedas consolidar toda tu infraestructura tecnológica y de servidores multi-lenguaje bajo una única interfaz de control centralizada en API Monitor APM.