Saltar al contenido principal

Entorno y depuración

Banderas de Diagnóstico

Las banderas de diagnóstico te permiten habilitar registros de depuración específicos sin activar el registro detallado en todas partes. Las banderas son opcionales y no tienen efecto a menos que un subsistema las verifique.

Cómo funciona​

  • Las banderas son cadenas de texto (sin distinción entre mayúsculas y minúsculas).
  • Puedes habilitar banderas en la configuración o mediante una anulación de variable de entorno.
  • Se admiten comodines:
    • telegram.* coincide con telegram.http
    • * habilita todas las banderas

Habilitar mediante configuración​

{
"diagnostics": {
"flags": ["telegram.http"]
}
}

Múltiples banderas:

{
"diagnostics": {
"flags": ["telegram.http", "gateway.*"]
}
}

Reinicia el gateway después de cambiar las banderas.

Anulación por entorno (para casos puntuales)​

OPENCLAW_DIAGNOSTICS=telegram.http,telegram.payload

Deshabilitar todas las banderas:

OPENCLAW_DIAGNOSTICS=0

Dónde van los registros​

Las banderas emiten registros en el archivo de registro de diagnóstico estándar. Por defecto:

/tmp/openclaw/openclaw-YYYY-MM-DD.log

Si configuras logging.file, usa esa ruta en su lugar. Los registros son JSONL (un objeto JSON por línea). La redacción aún se aplica según logging.redactSensitive.

Extraer registros​

Selecciona el archivo de registro más reciente:

ls -t /tmp/openclaw/openclaw-*.log | head -n 1

Filtrar por diagnósticos de Telegram HTTP:

rg "telegram http error" /tmp/openclaw/openclaw-*.log

O seguir la salida mientras reproduces el problema:

tail -f /tmp/openclaw/openclaw-$(date +%F).log | rg "telegram http error"

Para gateways remotos, también puedes usar openclaw logs --follow (consulta /cli/logs).

Notas​

  • Si logging.level está configurado más alto que warn, estos registros pueden ser suprimidos. El valor por defecto info es correcto.
  • Es seguro dejar las banderas habilitadas; solo afectan el volumen de registros para el subsistema específico.
  • Usa /logging para cambiar destinos de registro, niveles y redacción.

Node + tsx CrashNode.js