Gateway
Registro del Gateway
Registro
Para obtener una descripción general orientada al usuario (CLI + interfaz de control + configuración), consulte /logging.
OpenClaw tiene dos superficies de registro:
- Salida de consola - lo que se ve en el terminal o en la interfaz de depuración.
- Registros de archivo - líneas JSON escritas por el registrador del Gateway.
Al iniciarse, el Gateway registra el modelo de agente predeterminado resuelto, además de los valores predeterminados de modo que afectan a las sesiones nuevas:
modelo de agente: openai/gpt-5.6-sol (razonamiento=medio, rápido=activado)thinking proviene del agente predeterminado, de los parámetros del modelo o del valor predeterminado global del agente; cuando no está configurado, muestra medium. fast proviene del agente predeterminado o de los parámetros fastMode del modelo.
Registrador basado en archivos
- Los archivos de registro rotativos predeterminados se encuentran en
/tmp/openclaw/(un archivo por día), con fechas según la zona horaria local del host del Gateway. El perfil predeterminado utilizaopenclaw-YYYY-MM-DD.log; los perfiles con nombre utilizanopenclaw-<profile>-YYYY-MM-DD.log(por ejemplo,openclaw-dev-YYYY-MM-DD.log). Si ese directorio no es seguro o no permite escritura (propietario incorrecto, escritura habilitada para todos o enlace simbólico), OpenClaw utiliza en su lugar una rutaos.tmpdir()/openclaw-<uid>específica del usuario; en Windows siempre utiliza esa alternativa basada en el directorio temporal del sistema operativo. - Los archivos de registro activos rotan al alcanzar
logging.maxFileBytes(valor predeterminado: 100 MB), conservan hasta cinco archivos numerados (.1a.5) y continúan escribiendo en un archivo activo nuevo. - Configure la ruta y el nivel del archivo de registro mediante
~/.openclaw/openclaw.json:logging.file,logging.level. - El formato del archivo es un objeto JSON por línea.
Las rutas de código de conversación, voz en tiempo real y salas administradas utilizan el registrador de archivos compartido para registros limitados del ciclo de vida destinados a la depuración operativa y a la exportación de registros OTLP. El texto de las transcripciones, las cargas de audio, los identificadores de turno, los identificadores de llamada y los identificadores de elementos del proveedor nunca se copian en el registro.
La pestaña Registros de la interfaz de control sigue este archivo mediante el Gateway (logs.tail). La CLI hace lo mismo:
openclaw logs --followModo detallado frente a niveles de registro
- Los registros de archivo se controlan exclusivamente mediante
logging.level. --verbosesolo afecta al nivel de detalle de la consola (y al estilo de registro de WS); no aumenta el nivel de los registros de archivo.- Para capturar en los registros de archivo detalles disponibles solo en el modo detallado, configure
logging.levelcomodebugotrace. - El registro de seguimiento también incluye resúmenes de tiempos de diagnóstico para determinadas rutas críticas, como la preparación de la fábrica de herramientas de plugins. Consulte /tools/plugin#slow-plugin-tool-setup.
Captura de consola
La CLI captura console.log/info/warn/error/debug/trace, los escribe en los registros de archivo y continúa imprimiéndolos en stdout/stderr.
Ajuste de forma independiente el nivel de detalle de la consola:
logging.consoleLevel(valor predeterminado:info)logging.consoleStyle(pretty|compact|json; el valor predeterminado esprettyen una TTY ycompacten caso contrario)
Ocultación
OpenClaw oculta los tokens confidenciales antes de que la salida del registro o de la transcripción salga del proceso. Esta política de ocultación se aplica a los destinos de texto de la consola, los registros de archivo, los registros OTLP y las transcripciones de sesión, por lo que los valores secretos coincidentes se ocultan antes de escribir líneas JSONL o mensajes en el disco.
- La ocultación de valores confidenciales está siempre activada.
logging.redactPatterns: matriz de cadenas de expresiones regulares (sustituye los valores predeterminados)- Utilice cadenas de expresiones regulares sin procesar (
giautomático) o/pattern/flagspara indicadores personalizados. - Las coincidencias se ocultan conservando los primeros 6 y los últimos 4 caracteres (valores de >= 18 caracteres); los valores más cortos se convierten en
***. - Los valores predeterminados abarcan asignaciones habituales de claves, indicadores de la CLI, campos JSON, encabezados de portador, bloques PEM, prefijos de tokens de proveedores populares y nombres de campos de credenciales de pago (número de tarjeta, CVC/CVV, token de pago compartido y credencial de pago).
- Utilice cadenas de expresiones regulares sin procesar (
Los límites de seguridad, como los eventos de llamada a herramientas de la interfaz de control, la salida de sessions_history, las exportaciones de diagnóstico, los errores del proveedor, la visualización de aprobaciones de ejecución y los registros de WebSocket del Gateway siempre aplican la ocultación. logging.redactPatterns añade patrones específicos de la implementación.
Registros de WebSocket del Gateway
El Gateway imprime los registros del protocolo WebSocket en dos modos:
- Modo normal (sin
--verbose): solo se imprimen los resultados RPC «relevantes»: errores (ok=false), llamadas lentas (umbral predeterminado:>= 50ms) y errores de análisis. - Modo detallado (
--verbose): imprime todo el tráfico de solicitudes y respuestas de WS.
Estilo de registro de WS
openclaw gateway admite un selector de estilo por Gateway:
--ws-log auto(valor predeterminado): el modo normal está optimizado; el modo detallado utiliza una salida compacta.--ws-log compact: salida compacta (solicitud y respuesta emparejadas) en el modo detallado.--ws-log full: salida completa por trama en el modo detallado.--compact: alias de--ws-log compact.
# optimizado (solo errores/operaciones lentas)openclaw gateway # mostrar todo el tráfico de WS (emparejado)openclaw gateway --verbose --ws-log compact # mostrar todo el tráfico de WS (metadatos completos)openclaw gateway --verbose --ws-log fullFormato de consola (registro por subsistema)
El formateador de consola detecta la TTY e imprime líneas coherentes con prefijos. Los registradores de subsistemas mantienen la salida agrupada y fácil de examinar:
- Prefijos de subsistema en cada línea (p. ej.,
[gateway],[canvas],[tailscale]). - Colores de subsistema (estables por subsistema, derivados mediante hash del nombre), además de colores por nivel.
- Color cuando la salida es una TTY o el entorno parece un terminal enriquecido (
TERM/COLORTERM/TERM_PROGRAM); respetaNO_COLORyFORCE_COLOR. - Prefijos de subsistema abreviados: elimina un segmento inicial
gateway/,channels/oproviders/y conserva como máximo los últimos 2 segmentos restantes (p. ej.,channels/turn/kernelse muestra comoturn/kernel). Los subsistemas de canales conocidos (telegram,whatsapp,slack, etc.) siempre se reducen únicamente al nombre del canal. - Registradores secundarios por subsistema (prefijo automático + campo estructurado
{ subsystem }). logRaw()para la salida de QR/UX (sin prefijo ni formato).- Estilos de consola:
pretty|compact|json. - El nivel de registro de la consola es independiente del nivel de registro del archivo (el archivo conserva todos los detalles cuando
logging.levelesdebug/trace). - Los cuerpos de los mensajes de WhatsApp se registran en
debug(utilice--verbosepara verlos).
Esto mantiene estables los registros de archivo y facilita el examen de la salida interactiva.