¿Qué es OpenObserve?
OpenObserve es una plataforma de observabilidad de código abierto escrita en Rust, publicada bajo licencia AGPL-3.0. Ingiere logs, métricas, trazas distribuidas y eventos RUM (Real User Monitoring) y los almacena en un formato columnar comprimido 140× más eficiente en almacenamiento que Elasticsearch.
Por debajo, OpenObserve se apoya en Apache Arrow y Parquet para el almacenamiento columnar, lo que permite consultas SQL y PromQL en menos de un segundo sobre grandes volúmenes de datos, sin la sobrecarga de memoria de un motor basado en JVM. El proyecto está respaldado por 10 M$ de financiación y publica nuevas versiones cada una o dos semanas: la v0.91.1 salió el 2 de julio de 2026.
Lo que OpenObserve le aporta
- Ingesta unificada: logs (syslog, Fluent Bit, Vector, OTLP), métricas (Prometheus remote_write, OTLP), trazas (OTLP/Jaeger), eventos RUM — todo en un único servicio.
- Costo de almacenamiento 140× inferior al de Elasticsearch: formato columnar Parquet + compresión Zstd.
- Interfaces de consulta SQL y PromQL — ningún lenguaje de consulta propietario que aprender.
- Paneles integrados con widgets de arrastrar y soltar, selectores de rango temporal, variables y alertas.
- Seguimiento de trazas LLM/IA: rastree de forma nativa las llamadas a OpenAI, LangChain, LiteLLM y Anthropic (latencia, número de tokens, costo, errores).
- Alertas mediante notificaciones de Slack, PagerDuty, correo electrónico, webhook y Microsoft Teams.
- Backend de almacenamiento de objetos compatible con S3: almacene petabytes en MinIO, R2 o Backblaze B2.
- Menos de 10 MB de RAM en reposo — ejecútelo en cualquier VPS de 1 GB, junto a sus aplicaciones.
Requisitos previos
Cualquier VPS ServOrbit con 1 GB de RAM y una plantilla Ubuntu 24.04 reciente sirve para una instalación en un solo servidor. Docker debe estar instalado (el instalador en un clic se encarga de ello). Para una ingesta de logs intensiva —millones de líneas al día procedentes de varios servicios— prevea de 2 a 4 GB de RAM. No se requiere ninguna GPU, ningún flag del kernel particular ni ningún ajuste del kernel.
Desplegar OpenObserve en su VPS ServOrbit
Despliegue en un clic desde el Marketplace
En su panel de control ServOrbit, abra la pestaña Marketplace, busque OpenObserve y haga clic en Deploy. El instalador aprovisiona Docker, descarga
public.ecr.aws/zinclabs/openobserve:lateste inicia el contenedor con un volumen con nombre para el almacenamiento persistente. Las credenciales de administrador se generan de forma aleatoria y se muestran en su panel.Abrir la interfaz web
Vaya a
http://<your-vps-ip>:5080en su navegador. Inicie sesión con[email protected]y la contraseña facilitada en su panel de control. Llegará a la pantalla de bienvenida de OpenObserve: la organización ya está creada y el stream por defectodefaultestá listo para recibir datos.Enviar su primer log
Pruebe el endpoint de ingesta desde cualquier terminal:
curl -u [email protected]:YOUR_PASSWORD \ -XPOST http://YOUR_VPS_IP:5080/api/default/default/_json \ -H 'Content-Type: application/json' \ -d '[{"level":"info","message":"hello openobserve","service":"test"}]'Cambie al explorador Logs de la interfaz, seleccione el stream
defaulty su línea de log aparecerá en menos de un segundo.Enrutar los logs de Docker con Fluent Bit
Para recopilar los logs de todos los contenedores de su VPS, instale Fluent Bit en forma de contenedor:
docker run -d --name fluent-bit \ -v /var/lib/docker/containers:/var/lib/docker/containers:ro \ -e FLB_OUTPUT_HOST=YOUR_VPS_IP \ fluent/fluent-bit:latest \ /fluent-bit/bin/fluent-bit \ -i tail -p path=/var/lib/docker/containers/*/*.log \ -p parser=docker \ -o http -p host=YOUR_VPS_IP -p port=5080 \ -p uri=/api/default/docker/_json \ -p format=json \ -p [email protected] -p http_passwd=YOUR_PASSWORDLa salida stdout/stderr de cada contenedor se enruta ahora hacia el stream de logs
dockeren OpenObserve, donde se puede consultar por nombre de contenedor, imagen y nivel de log.Recopilar las métricas de Prometheus (opcional)
Si ya utiliza Prometheus (o el recopilador de Prometheus integrado en OpenObserve), añada un bloque
remote_writea suprometheus.yml:remote_write: - url: http://YOUR_VPS_IP:5080/api/default/prometheus/api/v1/write basic_auth: username: [email protected] password: YOUR_PASSWORDLas métricas fluyen hacia el almacenamiento de métricas de OpenObserve y quedan consultables en PromQL desde su editor de paneles.
Crear su primer panel
En la interfaz de OpenObserve, haga clic en Dashboards → New dashboard, añada un widget e introduzca una consulta SQL como
SELECT histogram(_timestamp, '1 minute') AS x, COUNT(*) AS y FROM default GROUP BY x. Cambie a gráfico de líneas y haga clic en Save. Su volumen de logs a lo largo del tiempo queda visualizado: añada más widgets para las tasas de error, las consultas lentas o cualquier métrica que ingiera.Iniciar sesión por primera vez
Inicie sesión con la dirección [email protected] y la contraseña facilitada (cópiela íntegramente, sufijo incluido). Después cambie la dirección y la contraseña de la cuenta root desde los ajustes.
Observabilidad de los LLM con OpenObserve + LiteLLM
Una de las funcionalidades estrella de OpenObserve en 2026 es el seguimiento nativo de las trazas de LLM. Si ya utiliza LiteLLM desde el Marketplace de ServOrbit, puede enrutar todas las trazas de llamadas a modelos —nombre del modelo, latencia, número de tokens de entrada/salida, costo y detalles de los errores— directamente hacia OpenObserve a través de su endpoint OTLP.
En el config.yaml de LiteLLM, añada:
general_settings:
otel_exporter: otlp
otel_exporter_otlp_endpoint: http://YOUR_VPS_IP:5081Cada llamada a un modelo crea ahora un span en el explorador Traces de OpenObserve. Puede crear paneles de costo por modelo, lanzar alertas en caso de latencia elevada o de consumo excesivo de tokens, y descender hasta las trazas de peticiones individuales, todo ello sin enviar sus datos a una herramienta de APM de terceros.
OpenObserve frente a las alternativas
| Criterio | OpenObserve | Pila ELK | Grafana + Loki + Prometheus |
|---|---|---|---|
| Contenedores necesarios | 1 | 3–4 | 3 |
| RAM mín. (en reposo) | ~10 MB | 2–4 GB | 512 MB |
| Costo de almacenamiento | ✅ 140× inferior | ❌ Elevado | ⚠️ Medio |
| Interfaz de consulta | SQL + PromQL | KQL (Kibana) | LogQL + PromQL |
| Trazado distribuido | ✅ Integrado | ❌ Requiere un APM | ❌ Requiere Tempo |
| Seguimiento de trazas LLM | ✅ Nativo | ❌ | ❌ |
| Licencia | AGPL-3.0 (gratis) | AGPL-3.0 (gratis) | AGPL-3.0 (gratis) |
El verdadero factor diferenciador es la eficiencia en recursos: OpenObserve alcanza la paridad con una pila ELK o Grafana completa por una fracción de la huella, lo que lo convierte en la opción pragmática para los despliegues en VPS donde la RAM escasea.