Cambiar tema

Optimización de rendimiento de OpenClaw: del análisis de logs al 80% de ahorro — método práctico

Easton editorial illustration: modular AI application workbench

El mes pasado, la factura de Anthropic marcaba $347 — me quedé helado. Solo había redactado algunos artículos y hecho revisiones de código con OpenClaw. Peor aún: las respuestas se volvían lentas, a veces más de 20 segundos de espera.

Miré la factura un buen rato. Luego abrí los logs.

Línea tras línea, el problema apareció: cada conversación arrastraba todo el historial. Tras 10 turnos, el contexto alcanzaba 150K tokens. Es como repetir todas tus conversaciones pasadas en cada mensaje — no es de extrañar que la factura se dispare.

Dos semanas de pruebas: reinicio de sesión, cambio de modelo, caché, límite de contexto. Resultado: de $347 a $68 al mes, de 23 s a 4 s de tiempo de respuesta.

El consumo excesivo de tokens en OpenClaw viene sobre todo de un mal uso. Este artículo comparte métodos prácticos, del análisis de logs a las estrategias de optimización — todo listo para copiar y pegar.

Guía low-cost de « cría de gambas »: ArkClaw democratiza los agentes de IA

¿OpenClaw (langosta) es potente pero la configuración te frena? ByteDance Volcano Engine lanzó ArkClaw: sin servidor ni configuración de tokens, un agente 24/7 que controla el navegador, ejecuta scripts y gestiona el calendario.

El precio: 9,9 ¥/mes; con mi código ZLKUK54M (registro aquí), 8,9 ¥. Desarrolladores: Coding Plan Pro incluye la oferta gratis.

Las raíces del problema de rendimiento — por qué OpenClaw se ralentiza

Los 5 grandes consumidores de tokens

Podrías pensar que es solo cuestión de volumen. En realidad, es más complejo.

150K
tokens
Contexto acumulado tras 10 turnos de conversación

Consumidor 1: contexto de conversación acumulado sin límite

OpenClaw conserva por defecto todo el historial. El primer turno: ~5K tokens; al décimo: 150K. Cada pregunta reenvía todo el pasado a la API de Claude. Como repetir todas tus conversaciones de la semana y del mes en cada intercambio — agotador y costoso.

Lo probé: una simple petición « mira si este código tiene un problema », con 100K tokens de contexto, facturada a 100K aunque la respuesta fueran 200 palabras.

Consumidor 2: almacenamiento ilimitado de salidas de herramientas

OpenClaw lee archivos, consulta logs, ejecuta comandos. Cada salida de herramienta se conserva íntegramente en el contexto. ¿500 líneas de log? Se quedan en memoria. ¿Un archivo de configuración más? Otras cientos de líneas.

Una vez, pedí analizar un log de error de 10 MB — ese fragmento permaneció en el contexto, facturado en cada turno siguiente.

Consumidor 3: prompt del sistema reenviado en cada turno

El prompt del sistema de OpenClaw (5K-10K tokens) define sus capacidades. Se reenvía en cada turno. 50 intercambios al día = 250K-500K tokens solo por el prompt del sistema.

Consumidor 4: elección incorrecta de modelo

Claude ofrece Haiku (económico), Sonnet (equilibrado), Opus (potente y caro) — diferencia de precio de unas 15×.

Muchos ponen Opus por defecto y lo usan para conversiones de formato o consultas simples. Como ir en un tanque de guerra a comprar una botella de agua al supermercado — funciona, pero es absurdo.

Consumidor 5: heartbeat mal configurado

El heartbeat hace ping periódico a la API. Intervalo a 30 s = 120 llamadas/hora. Cada llamada es pequeña, pero la frecuencia mata el presupuesto.

Vi un caso: heartbeat demasiado corto, 3600 llamadas/mes sin trabajo real — el dinero se va antes que el valor.

La verdad sobre el consumo de memoria

OpenClaw se ralentiza a veces por falta de memoria, no de red.

Muchos piensan que una herramienta de chat funciona con 2 GB. En la práctica, no es así.

OpenClaw es exigente en RAM: proceso Node.js, WebSocket, memoria de sesión, interfaz web — ~1,5 GB solo para funcionar. Con 2 GB asignados, es correr un maratón con 50 kg a la espalda — teóricamente posible, pero el bloqueo está cerca.

Mi experiencia:

  • 2 GB: arranca, luego se ralentiza y se bloquea
  • 4 GB: uso personal diario
  • 8 GB: fluido para equipo o uso intensivo
  • 16 GB: producción, ejecución prolongada sin estrés

Y las fugas de memoria: tras una semana, 1,8 GB puede subir a 3,5 GB, luego 4 GB+. El sistema hace swap a disco y las respuestas se desploman.

En un VPS de 4 GB, todo iba bien — luego, tras dos semanas, respuestas muy lentas. docker stats: 3,8 GB usados, menos de 200 MB libres. Reinicio del contenedor: vuelta a 1,8 GB al instante.

La lentitud no siempre es culpa de OpenClaw — a menudo, el VPS está infra-dimensionado.

Análisis de logs y monitoreo — rastrear OpenClaw

Leer correctamente los logs de Docker

¿Cómo saber qué hace OpenClaw de verdad?

Los logs. Pero muchos no saben leerlos — o no entienden lo que ven.

Logs en tiempo real

docker logs -f openclaw-gateway

Salida continua: cada mensaje, cada herramienta invocada, tokens consumidos.

Últimos errores

docker logs openclaw-gateway 2>&1 | tail -50

Las 50 últimas líneas — el 90 % de los problemas de arranque están ahí.

Identificadores de error clave

  • WebSocket Error 1008: auth expirada, borrar caché del navegador
  • No API key found for anthropic: clave API mal configurada
  • Error: Address already in use: puerto ocupado
  • FATAL ERROR: Reached heap limit: memoria insuficiente, upgrade necesario

Una vez, OpenClaw no se conectaba — WebSocket Error 1008 en bucle. Causa: había modificado la hora del sistema, el token era inválido. Eliminación del localStorage: resuelto.

Herramienta openclaw-telemetry

Para un monitoreo más profesional, prueba openclaw-telemetry.

Registra comandos, prompts e invocaciones de herramientas. Recolección vía syslog, exportación a SIEM para auditoría. Desensibilización automática y cadena de hash anti-falsificación.

Un poco pesado para uso personal. En empresa o con datos de clientes, muy útil.

Instalación documentada en GitHub. No lo uso (desarrollo personal), pero equipos lo despliegan con satisfacción.

Comandos de monitoreo de recursos

docker stats openclaw-gateway

Visualización en tiempo real:

CONTAINER ID   NAME               CPU %   MEM USAGE / LIMIT   MEM %   NET I/O
a1b2c3d4e5f6   openclaw-gateway   12.5%   1.85GB / 4GB       46.25%  15.2MB / 8.3MB

Indicadores clave:

  • CPU: picos al 80-100 % OK (tarea en curso); alto de forma continua = problema
  • Memoria: lo más crítico — > 90 % = upgrade
  • Porcentaje de memoria: > 80 % alerta, > 90 % bloqueo inminente

Vigílalo con regularidad. Crecimiento continuo (1,8 GB → 2,5 GB → 3,2 GB) = fuga — reiniciar o reinicio de sesión.

Una mañana, 3,6 GB de 4 GB, contenedor aún activo. Al día siguiente: bloqueo. Logs llenos de Out of memory. Desde entonces, reinicio al llegar a 3 GB.

7 estrategias de optimización — del 40 % al 80 % de ahorro

Estrategia 1: reinicio regular (40-60 %)

La más simple y la más eficaz.

¿Por qué funciona?

El reinicio vacía el contexto acumulado — historial, salidas de herramientas, resultados intermedios. Cada conversación empieza de cero, sin decenas de miles de tokens de equipaje.

¿Cómo?

# Método 1: línea de comandos
openclaw "reset session"

# Método 2: eliminar archivos de sesión
rm -rf ~/.openclaw/agents.main/sessions/*.jsonl

# Método 3: comando integrado
# En el diálogo de OpenClaw
/compact

Buenas prácticas

Reinicio después de cada tarea independiente: artículo terminado, PR revisado, bug corregido.

Mantienes un OpenClaw « ligero » — rápido y económico.

¿Miedo a perder el contexto? Sí — pero el contexto de la tarea anterior rara vez sirve para la siguiente. Las búsquedas para un artículo no ayudan a depurar código. ¿Por qué guardarlas en memoria?

Medición: $347/mes → $195 tras reinicio regular. 40 %+ solo con esto.

Estrategia 2: aislar salidas grandes (20-30 %)

Logs completos, exportaciones de configuración, grandes conjuntos de datos — una vez en la sesión principal, se pegan a cada solicitud siguiente.

Solución: sesión independiente

# Sesión debug para una configuración grande
openclaw --session debug "show full system config"

# Copiar lo esencial, volver a la sesión principal

Como separar la basura — los objetos grandes aparte.

Ejemplo concreto

Analizar 300 líneas de log en sesión principal = 300 líneas permanentes en el contexto. Mi método:

  1. --session analyze-log para el análisis
  2. Conclusión: « excepción null pointer línea 127 »
  3. Copiar la conclusión en sesión principal
  4. Cerrar la sesión debug

Un poco más de trabajo, pero ahorro real en archivos grandes.

Estrategia 3: cambio inteligente de modelo (50-80 %)

El efecto más marcado — a menudo ignorado.

Tres modelos Claude:

  • Haiku: rápido y económico
  • Sonnet: equilibrio rendimiento/costo
  • Opus: el más potente, 15× el precio de Haiku

Opus para todo es tomar el avión para ir al supermercado.

Clasificación de tareas

Haiku:

  • Conversión de formato (JSON/YAML, Markdown/HTML)
  • Consultas simples (« ¿ qué lenguaje es este código? »)
  • Extracción (« listar todos los nombres de funciones »)

Sonnet:

  • Revisión de código
  • Redacción de artículos y documentación
  • Análisis de arquitectura

Opus:

  • Diseño de sistemas
  • Refactorización masiva
  • Decisiones críticas (elección tecnológica, riesgos)

Ejemplo de configuración

{
  "defaultModel": "claude-3-haiku",
  "complexTaskModel": "claude-3-5-sonnet",
  "triggerKeywords": ["analizar", "refactorizar", "arquitectura", "diseño"]
}

Haiku por defecto, cambio manual para lo complejo — 80 % de las operaciones al precio más bajo.

Con la estrategia 1: $195 → $68/mes. Solo el cambio de modelo: ~65 % de ahorro.

Estrategia 4: optimización de caché (30-50 %)

La API de Claude cachea prompts idénticos o similares — las solicitudes siguientes cuestan menos.

¿Cómo aprovecharla?

  1. Activar el prompt cache (a menudo activado por defecto)
  2. Bajar temperature a ~0,2 para salidas estables y mejor tasa de caché
  3. Heartbeat para mantener la caché: 5-10 min, no 30 s
{
  "temperature": 0.2,
  "enablePromptCaching": true,
  "heartbeatInterval": 300000  // 5 min, milisegundos
}
  1. Relay API con caché: algunos relays de terceros optimizan más

Efecto real

El prompt del sistema (5K-10K tokens) solo se factura una vez durante la validez de la caché. 10 solicitudes/hora: 1 facturación en lugar de 10.

Poco visible con uso esporádico; 30-50 % de ahorro con uso intensivo (decenas de conversaciones/día).

Estrategia 5: limitar la ventana de contexto (20-40 %)

Ventana por defecto: 400K tokens. Cuanto más grande, más se llena sin darse cuenta.

Como una mochila grande — sobrecargas; una mochila pequeña obliga a seleccionar.

Configuración

{
  "maxContextTokens": 100000  // de 400K a 100K
}

Por qué es eficaz

OpenClaw fuerza una limpieza cuando el contexto se acerca al límite — reinicio o resumen. Se acabaron decenas de turnos de historial arrastrándose.

100K basta para la mayoría de tareas. Salvo refactorización masiva o análisis de miles de líneas.

Atención

Demasiado pequeño = « amnesia » en tareas realmente voluminosas.

Recomendación:

  • Diario: 50K-100K
  • Tareas complejas: 200K
  • Proyectos muy grandes: 400K por defecto

100K: mi punto dulce — ahorro sin fricción.

Estrategia 6: modelos locales (60-80 %)

Si aceptas la complejidad, ciertas tareas pueden costar cero.

Principio

Vía Ollama (Llama, Mistral), OpenClaw delega tareas simples al local — sin llamada a Claude, sin factura.

Adecuado para:

  • Conversión de formato
  • Consultas simples (« listar los TODO »)
  • Extracción de información

Poco adecuado para:

  • Revisión de código (calidad inferior a Claude)
  • Contenido creativo
  • Razonamiento complejo

Ejemplo

# Instalar Ollama y descargar un modelo
ollama pull llama3.2

# Config OpenClaw para tareas simples en local
{
  "localModel": "llama3.2",
  "localModelTasks": ["format", "extract", "simple-query"]
}

Experiencia

La configuración local es engorrosa; la calidad inferior a Claude. Conversión de formato: 2-3 errores en 10, correcciones manuales.

Presupuesto ajustado o tareas repetitivas simples: 60-80 % de ahorro en esa parte.

Estrategia 7: desactivar Skills y herramientas innecesarios

Cada Skill activo añade su documentación al contexto (enviada a la API) — especialmente visible en modelos pequeños.

Auditoría

Automatización del navegador — ¿ cuándo fue la última vez? Gmail — ¿ OpenClaw debe enviar tus correos?

Mi configuración

Conservado:

  • Archivos (obligatorio)
  • Git (frecuente)
  • Bash (depuración)

Desactivado: navegador, calendario, correo. Miles de tokens de prompt menos por solicitud.

Ejemplo

{
  "enabledSkills": [
    "file-operations",
    "git",
    "bash"
  ],
  "disabledSkills": [
    "browser-automation",
    "gmail",
    "calendar"
  ]
}

Solo: 10-15 %. Combinado con otras estrategias: efecto acumulativo.

Tabla de resolución de problemas — el 90 % en 5 minutos

SíntomaCausa probableDiagnóstico 5 sCorrección rápida
WebSocket Error 1008Auth expiradaMensaje en consolaBorrar localStorage (F12 → Application → Local Storage → eliminar openclaw-auth-token)
Contenedor se detiene al arrancarClave API / puertodocker compose ps → Exited1. docker compose logs
2. Variables de entorno
3. Puerto ocupado
No API key foundClave mal configuradaError explícito en logsVerificar clave y paso al contenedor
Memoria que subeFuga / sesionesdocker stats MEM %Corto: restart
Medio: reinicio de sesión
Largo: VPS ≥ 4 GB
Timeout instalación SkillsDescarga GoPrimera instalaciónVolver a pulsar Install — caché acelera
Timeout automatización navegadorPágina lenta / ID cambiadosnapshot o click timeout1. --timeout-ms
2. snapshot --labels
3. Ruta Chromium
control ui requires HTTPSAcceso HTTPUI inaccesibleURL con token: http://YOUR-IP:18789/?token=YOUR_TOKEN

Consejos prácticos:

Consejo 1: WebSocket — solución definitiva

Si localStorage no basta:

# Desactivar pairing (solo red interna)
docker run -e OPENCLAW_DISABLE_DEVICE_PAIRING=true openclaw/openclaw

Consejo 2: ¿ memoria o red?

# Vigilar varios indicadores
watch -n 1 'docker stats openclaw-gateway --no-stream && curl -s https://api.anthropic.com'

Memoria estable + lentitud = red; memoria que sube = recursos.

Consejo 3: ¿ demasiados logs?

# Solo errores y advertencias
docker logs openclaw-gateway 2>&1 | grep -E "ERROR|WARN|FATAL"

Miles de líneas filtradas → ERROR clave: clave API expirada.

Ajustes avanzados — sacar el máximo de OpenClaw

¿Optimizaciones básicas hechas? Aquí va lo siguiente.

Gestión avanzada del contexto

Triangulación del contexto (Context Triangulation)

No inyectes todo el archivo — solo los fragmentos relevantes. Para modificar una función:

  • Su código
  • Firmas de las funciones invocadas
  • Tipos asociados

Reducción del 70-80 % del contexto.

Arquitectura de anclaje global en capas (TGAA)

Mantén un ARCHITECTURE.md en la raíz con el diseño de alto nivel. Para la visión general, OpenClaw lee ese archivo en lugar de escanear todo el repositorio.

Un README.md por módulo describe su rol — OpenClaw entiende la estructura sin cargar todo el código.

Carga dinámica de herramientas

No cargues todas las definiciones de herramientas de golpe. Bajo demanda: herramientas de archivos cuando haga falta, Git cuando haga falta.

Config un poco más técnica — ~30 % menos de prompt del sistema.

Refresco de memoria pre-compresión

Antes de reinicio o resumen, escribe lo esencial en MEMORY.md. La nueva sesión lee ese archivo compacto para retomar.

# Guardar antes del reinicio
openclaw "Write key decisions and todos to MEMORY.md"

# Reinicio
openclaw "reset session"

# Retomar
openclaw "Read MEMORY.md and continue work"

Endurecimiento Docker

En enero de 2026, Bitdefender divulgó CVE-2026-25253: cientos de instancias OpenClaw mal configuradas exponían claves API y datos sensibles. Corregido — pero la lección permanece: asegura tu despliegue.

Ejecución non-root

services:
  openclaw-gateway:
    user: "1000:1000"  # usuario sin privilegios

Principio de mínimo privilegio

docker run \
  --cap-drop=ALL \
  --security-opt=no-new-privileges \
  --read-only \
  --tmpfs /tmp \
  openclaw/openclaw

Aislamiento de red

Sin acceso externo (solo archivos locales):

services:
  openclaw-gateway:
    network_mode: none

¿Acceso limitado? Proxy con lista blanca.

Protección de variables de entorno

No pongas la clave API en claro en docker-compose.yml:

services:
  openclaw-gateway:
    env_file:
      - .env  # ANTHROPIC_API_KEY=sk-xxx

Añade .env al .gitignore.

Buenas prácticas de producción

Rotación de logs

services:
  openclaw-gateway:
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"

Máx. ~30 MB de logs.

Actualizaciones regulares

OpenClaw evoluciona rápido — rendimiento y seguridad. Verificación mensual:

docker pull openclaw/openclaw:latest
docker compose up -d

Alertas de monitoreo

#!/bin/bash
MEM_PERCENT=$(docker stats openclaw-gateway --no-stream --format "{{.MemPerc}}" | sed 's/%//')
if (( $(echo "$MEM_PERCENT > 85" | bc -l) )); then
    echo "Memoria OpenClaw > 85 % !" | mail -s "Alerta OpenClaw" [email protected]
fi

Cron cada hora.

VPN o Tailscale en lugar de exposición pública

Acceso remoto: no expongas el puerto en Internet. Tailscale = red privada, simple y segura.

# Instalar Tailscale
curl -fsSL https://tailscale.com/install.sh | sh

# Iniciar y autenticar
sudo tailscale up

# Acceso a OpenClaw vía Tailscale, sin IP pública

Mi configuración: café, aeropuerto — acceso seguro a la instancia OpenClaw en casa.

Conclusión

De $347 a $68, de 23 s a 4 s — cifras reales, no marketing.

En retrospectiva, los problemas de rendimiento de OpenClaw se reducen a tres cosas:

  1. Controlar el contexto: no dejar que se acumule sin fin
  2. Elegir el modelo adecuado: tareas simples = modelo económico
  3. Monitorear recursos: detectar memoria insuficiente a tiempo

No necesitas las 7 estrategias. Mi consejo:

  • Inmediato: docker stats — si < 4 GB, upgrade
  • Esta semana: Haiku por defecto + caché (temperature 0,2)
  • Hábito: reinicio después de cada tarea (/compact)

Estos tres pasos: al menos 50 % de ahorro.

OpenClaw es una buena herramienta — pero una herramienta. Su eficacia depende de cómo la uses. Entender su funcionamiento, dimensionar recursos, adoptar buenos hábitos — el retorno de inversión es real.

¿Problema? Consulta los logs y la tabla de resolución — el 90 % se resuelve en 5 minutos. Si no, la comunidad de GitHub Issues está activa.

Que tu OpenClaw sea rápido y económico.

Proceso completo de optimización del rendimiento de OpenClaw

Pasos completos, desde la verificación de memoria hasta la optimización de costos

⏱️ Estimated time: 2 hr

  1. 1

    Step 1: Paso 1: diagnosticar los cuellos de botella actuales

    Usa los comandos de monitoreo de Docker para diagnosticar el uso de recursos:

    • docker stats openclaw-gateway (ocupación en tiempo real)
    • docker logs -f openclaw-gateway (logs en directo, observar el consumo de tokens)
    • docker logs openclaw-gateway 2>&1 | grep -E "ERROR|WARN|FATAL" (filtrar errores)

    Indicadores a vigilar:
    • Memoria &gt; 80 %: actualizar el VPS a al menos 4 GB
    • CPU &gt; 90 % de forma continua: verificar bucles infinitos o procesos anómalos
    • Log « Reached heap limit »: memoria insuficiente, upgrade necesario

    Consejo: memoria estable pero respuesta lenta = probablemente red; memoria que sube = recursos insuficientes.
  2. 2

    Step 2: Paso 2: configurar el cambio inteligente de modelo (efecto más marcado)

    Modifica la configuración de OpenClaw para clasificar las tareas:

    Ejemplo (JSON):
    &#123;
    "defaultModel": "claude-3-haiku",
    "complexTaskModel": "claude-3-5-sonnet",
    "triggerKeywords": ["analizar", "refactorizar", "arquitectura", "diseño"]
    &#125;

    Principios:
    • Haiku: conversión de formato, consultas simples, extracción de texto
    • Sonnet: revisión de código, creación de contenido, análisis técnico
    • Opus: diseño de arquitectura, refactorización compleja, decisiones críticas

    Efecto medido: Haiku por defecto, 80 % de las operaciones más baratas; combinado con otras estrategias, 50-80 % de ahorro.
  3. 3

    Step 3: Paso 3: activar la caché y limitar el contexto

    Configura la caché y el límite de ventana de contexto:

    Configuración de caché (JSON):
    &#123;
    "temperature": 0.2,
    "enablePromptCaching": true,
    "heartbeatInterval": 300000,
    "maxContextTokens": 100000
    &#125;

    Parámetros:
    • temperature: 0.2 (menos aleatoriedad, mejor tasa de caché)
    • enablePromptCaching: true (caché de prompts)
    • heartbeatInterval: 300000 (5 min, en milisegundos)
    • maxContextTokens: 100000 (límite de 400K a 100K)

    Efectos:
    • Caché: 30-50 % de ahorro (uso intensivo)
    • Límite de contexto: 20-40 % (limpieza forzada periódica)
  4. 4

    Step 4: Paso 4: desactivar Skills innecesarios

    Revisa y desactiva los Skills poco usados:

    Ejemplo (JSON):
    &#123;
    "enabledSkills": ["file-operations", "git", "bash"],
    "disabledSkills": ["browser-automation", "gmail", "calendar"]
    &#125;

    Estrategia:
    • Conservar lo esencial: archivos, Git, Bash
    • Desactivar: automatización del navegador, correo, calendario

    Efecto: cada Skill desactivado elimina miles de tokens del prompt del sistema — 10-15 % acumulados.
  5. 5

    Step 5: Paso 5: adoptar el reinicio regular de sesiones

    Reinicia la sesión después de cada tarea:

    Tres métodos:
    • Método 1: openclaw "reset session" (línea de comandos)
    • Método 2: rm -rf ~/.openclaw/agents.main/sessions/*.jsonl (eliminación directa)
    • Método 3: escribir /compact en el diálogo

    Buenas prácticas:
    • Artículo terminado → reinicio
    • PR revisado → reinicio
    • Bug corregido → reinicio
    • Tarea independiente terminada → reinicio

    Consejo avanzado (refresco de memoria pre-compresión):
    1. openclaw "Write key decisions and todos to MEMORY.md"
    2. openclaw "reset session"
    3. openclaw "Read MEMORY.md and continue work"

    Efecto medido: 40-60 % de ahorro — el método más simple y eficaz.
  6. 6

    Step 6: Paso 6: aislar operaciones con salida grande

    Usa sesiones independientes para archivos grandes y logs largos:

    Flujo:
    1. openclaw --session debug "show full system config" (sesión dedicada)
    2. Copiar la información clave
    3. Volver a la sesión principal
    4. Cerrar la sesión debug — la salida grande no contamina la sesión principal

    Casos de uso:
    • Logs completos (cientos de líneas)
    • Exportación de configuración
    • Análisis de grandes conjuntos de datos (&gt; 100K tokens)

    Ejemplo: analizar 300 líneas de log en sesión temporal, obtener la conclusión (« excepción null pointer línea 127 »), luego procesar en sesión principal — 20-30 % de ahorro.
  7. 7

    Step 7: Paso 7: configurar monitoreo y alertas

    Despliega un script de monitoreo automatizado:

    Script (Bash):
    #!/bin/bash
    MEM_PERCENT=&#36;(docker stats openclaw-gateway --no-stream --format "&#123;&#123;.MemPerc&#125;&#125;" | sed 's/%//')
    if (( &#36;(echo "&#36;MEM_PERCENT &gt; 85" | bc -l) )); then
    echo "Memoria OpenClaw &gt; 85 % !" | mail -s "Alerta OpenClaw" [email protected]
    fi

    Despliegue:
    • Guardar en /usr/local/bin/openclaw-monitor.sh
    • chmod +x /usr/local/bin/openclaw-monitor.sh
    • crontab: 0 * * * * /usr/local/bin/openclaw-monitor.sh

    Umbrales:
    • Memoria &gt; 85 %: alerta
    • Memoria &gt; 90 %: reiniciar el contenedor
    • Logs en disco &gt; 100 MB: rotación de logs

    Rotación (docker-compose.yml):
    logging:
    driver: "json-file"
    options:
    max-size: "10m"
    max-file: "3"

FAQ

¿Por qué OpenClaw consume tantos tokens, con costos mensuales de cientos de dólares?
5 causas principales:

• Contexto acumulado sin límite: 150K tokens tras 10 turnos, todo el historial reenviado en cada solicitud
• Almacenamiento ilimitado de salidas de herramientas: logs y archivos leídos permanecen en el contexto
• Prompt del sistema reenviado en cada turno: 5K-10K tokens por conversación
• Elección incorrecta de modelo: Opus para tareas simples, 15× el precio de Haiku
• Heartbeat mal configurado: intervalo demasiado corto, cientos de llamadas API innecesarias por hora

Soluciones: reinicio regular (/compact) + cambio inteligente (Haiku por defecto) + caché — 50-80 % de ahorro.
OpenClaw responde lento (20+ segundos), ¿cómo optimizar?
La lentitud suele venir de la memoria, no de la red:

Diagnóstico:
• docker stats openclaw-gateway
• Memoria &gt; 80 % = configuración insuficiente
• Crecimiento continuo (1,8 GB → 2,5 GB → 3,2 GB) = fuga de memoria

Recomendaciones:
• 2 GB: arranca pero bloqueos frecuentes (desaconsejado)
• 4 GB: mínimo para uso personal
• 8 GB: equipo o uso intensivo
• 16 GB: producción

Correcciones:
• Corto plazo: docker restart openclaw-gateway
• Medio plazo: /compact
• Largo plazo: VPS de al menos 4 GB

Combinar con maxContextTokens a 100K.
¿Cuándo usar Haiku, Sonnet u Opus?
Según la complejidad — diferencia de precio de hasta 15×:

Haiku (rápido y económico):
• Conversión JSON/YAML, Markdown/HTML
• Consultas simples, extracción de texto

Sonnet (equilibrio):
• Revisión de código, redacción, análisis técnico

Opus (potente y caro):
• Arquitectura, refactorización masiva, decisiones críticas

Config práctica: Haiku por defecto, 80 % de las operaciones más baratas; con reinicio de sesión, 65 % de ahorro.
¿Cómo resolver WebSocket Error 1008?
Error de auth expirada — 3 soluciones:

1. Borrar localStorage del navegador
F12 → Application → Local Storage → eliminar openclaw-auth-token → recargar

2. Desactivar el pairing (Docker en red interna)
docker run -e OPENCLAW_DISABLE_DEVICE_PAIRING=true openclaw/openclaw

3. Verificar la hora del sistema
Un desfase de reloj invalida el token — corregir y luego borrar localStorage

Otros errores: No API key found (variables de entorno), Address already in use (puerto), FATAL ERROR: Reached heap limit (memoria).
¿El reinicio de sesión borra el contexto? ¿Cómo conservar lo esencial?
Sí, pero la técnica de refresco pre-compresión preserva lo esencial:

1. openclaw "Write key decisions and todos to MEMORY.md"
2. openclaw "reset session"
3. openclaw "Read MEMORY.md and continue work"

Conservar: proyectos de varios días, decisiones de arquitectura, listas de tareas

No necesario: búsquedas para un artículo, logs temporales, conversiones puntuales

Práctica: reinicio después de cada tarea independiente — OpenClaw ligero, rápido y económico. Medición: de $347 a $195, 40 %+ de ahorro.
¿Qué efecto tiene la caché? ¿Para qué usos?
Efecto máximo para usuarios intensivos:

Config:
&#123;
"temperature": 0.2,
"enablePromptCaching": true,
"heartbeatInterval": 300000
&#125;

Principio: prompt del sistema (5K-10K tokens) facturado una vez durante la validez de la caché; 10 solicitudes/hora = 1 facturación en lugar de 10

Adecuado: uso frecuente (30-50 %), trabajo continuo en tareas similares

Poco adecuado: uso esporádico, tareas muy variadas

Heartbeat 5-10 min para mantener la caché; 30 s aumenta los costos.
El contenedor se detiene justo después del arranque — ¿diagnóstico rápido?
Generalmente un error de configuración:

1. docker compose ps — Exited = fallo

2. docker logs openclaw-gateway 2&gt;&1 | tail -50

3. Corregir según el error:
• No API key found: ANTHROPIC_API_KEY en docker-compose.yml
• Address already in use: cambiar el puerto o terminar el proceso
• Permission denied: permisos de archivos o usuario no-root

4. docker exec openclaw-gateway env | grep ANTHROPIC

5. netstat -tuln | grep 18789

docker compose logs -f para seguimiento en tiempo real.

13 min de lectura · Publicado el: 5 feb 2026 · Actualizado el: 21 ago 2026

Comentarios

Inicia sesión con GitHub para dejar un comentario

Easton BlogEaston Blog