Journalisation¶
Pour une vue dâensemble orientee utilisateur (CLI + UI de controle + configuration), voir /logging.
OpenClaw propose deux « surfaces » de journalisation :
- Sortie console (ce que vous voyez dans le terminal / lâUI de debug).
- Journaux de fichiers (lignes JSON) ecrits par le logger de la Gateway (passerelle).
Logger base sur des fichiers¶
- Le fichier de journalisation tournant par defaut se trouve sous
/tmp/openclaw/(un fichier par jour)Â :openclaw-YYYY-MM-DD.log - La date utilise le fuseau horaire local de lâhote de la passerelle.
- Le chemin du fichier de logs et le niveau peuvent etre configures via
~/.openclaw/openclaw.json : logging.filelogging.level
Le format du fichier est un objet JSON par ligne.
Lâonglet Logs de lâUI de controle suit ce fichier via la passerelle (logs.tail).
Le CLI peut faire de meme :
openclaw logs --follow
Verbose vs. niveaux de logs
- Les journaux de fichiers sont controles exclusivement par
logging.level. --verboseaffecte uniquement la verbeuxite de la console (et le style de logs WS)Â ; il nâaugmente pas le niveau des journaux de fichiers.- Pour capturer des details uniquement verbeux dans les journaux de fichiers, definissez
logging.levelsurdebugoutrace.
Capture de la console¶
Le CLI capture console.log/info/warn/error/debug/trace et les ecrit dans les journaux de fichiers,
tout en continuant a les afficher sur stdout/stderr.
Vous pouvez ajuster independamment la verbeuxite de la console via :
logging.consoleLevel(par defautinfo)logging.consoleStyle(pretty|compact|json)
Redaction des resumes dâoutils¶
Les resumes dâoutils verbeux (par ex. đ ïž Exec: ...) peuvent masquer les jetons sensibles avant quâils nâatteignent le
flux de la console. Cela concerne uniquement les outils et ne modifie pas les journaux de fichiers.
logging.redactSensitive :off|tools(par defaut :tools)logging.redactPatterns : tableau de chaines regex (remplace les valeurs par defaut)- Utilisez des chaines regex brutes (auto
gi), ou/pattern/flagssi vous avez besoin de drapeaux personnalises. - Les correspondances sont masquees en conservant les 6 premiers + les 4 derniers caracteres (longueur >= 18), sinon
***. - Les valeurs par defaut couvrent les affectations de cles courantes, les drapeaux CLI, les champs JSON, les en-tetes bearer, les blocs PEM et les prefixes de jetons populaires.
Journaux WebSocket de la Gateway (passerelle)¶
La passerelle affiche les journaux du protocole WebSocket selon deux modes :
- Mode normal (sans
--verbose) : seuls les resultats RPC « interessants » sont affiches : - erreurs (
ok=false) - appels lents (seuil par defaut :
>= 50ms) - erreurs dâanalyse
- Mode verbeux (
--verbose)Â : affiche tout le trafic requete/reponse WS.
Style de logs WS¶
openclaw gateway prend en charge un changement de style par passerelle :
--ws-log auto(par defaut) : le mode normal est optimise ; le mode verbeux utilise une sortie compacte--ws-log compact : sortie compacte (requete/reponse appariees) en mode verbeux--ws-log full : sortie complete par trame en mode verbeux--compact : alias de--ws-log compact
Exemples :
# optimized (only errors/slow)
openclaw gateway
# show all WS traffic (paired)
openclaw gateway --verbose --ws-log compact
# show all WS traffic (full meta)
openclaw gateway --verbose --ws-log full
Formatage de la console (journalisation par sous-systeme)¶
Le formateur de console est conscient du TTY et affiche des lignes coherentes avec des prefixes. Les loggers de sous-systemes conservent une sortie regroupee et facilement lisible.
Comportement :
- Prefixes de sous-systeme sur chaque ligne (par ex.
[gateway],[canvas],[tailscale]) - Couleurs par sous-systeme (stables par sous-systeme) en plus de la coloration par niveau
- Couleur lorsque la sortie est un TTY ou que lâenvironnement ressemble a un terminal riche (
TERM/COLORTERM/TERM_PROGRAM), respecteNO_COLOR - Prefixes de sous-systeme raccourcis : supprime les prefixes initiaux
gateway/+channels/, conserve les 2 derniers segments (par ex.whatsapp/outbound) - Sous-loggers par sous-systeme (prefixe automatique + champ structure
{ subsystem }) logRaw()pour la sortie QR/UX (pas de prefixe, pas de formatage)- Styles de console (par ex.
pretty | compact | json) - Niveau de logs console distinct du niveau de logs fichiers (le fichier conserve tous les details lorsque
logging.levelest defini surdebug/trace) - Les corps de messages WhatsApp sont journalises au niveau
debug(utilisez--verbosepour les voir)
Cela permet de conserver des journaux de fichiers stables tout en rendant la sortie interactive facilement analysable.