設定と運用
ロギング
ユーザー向けの概要(CLI + コントロールUI + 設定)については、/logging を参照してください。OpenClaw には2つのログ「表面」があります:
- コンソール出力(ターミナル / デバッグUIで見えるもの)。
- ファイルログ(JSON 行)ゲートウェイロガーによって書き込まれるもの。
ファイルベースのロガー
- デフォルトのローテーションログファイルは
/tmp/openclaw/の下にあります(1日1ファイル):openclaw-YYYY-MM-DD.log- 日付はゲートウェイホストのローカルタイムゾーンを使用します。
- ログファイルのパスとレベルは
~/.openclaw/openclaw.jsonで設定できます:logging.filelogging.level
ファイル形式は1行に1つのJSONオブジェクトです。コントロールUIの「ログ」タブは、ゲートウェイ(logs.tail)経由でこのファイルを末尾監視します。CLIでも同様のことができます:
openclaw logs --follow
詳細出力とログレベル
- ファイルログは
logging.levelによってのみ制御されます。 --verboseはコンソールの詳細度(およびWSログスタイル)にのみ影響し、ファイルログレベルを上げることはありません。- 詳細出力のみの詳細をファイルログにキャプチャするには、
logging.levelをdebugまたはtraceに設定します。
コンソールキャプチャ
CLIは console.log/info/warn/error/debug/trace をキャプチャし、それらをファイルログに書き込みながら、stdout/stderrにも出力します。コンソールの詳細度は以下で独立して調整できます:
logging.consoleLevel(デフォルトinfo)logging.consoleStyle(pretty|compact|json)
ツールサマリー編集
詳細なツールサマリー(例:🛠️ Exec: ...)は、コンソールストリームに到達する前に機密トークンをマスクできます。これはツールのみであり、ファイルログは変更しません。
logging.redactSensitive:off|tools(デフォルト:tools)logging.redactPatterns: 正規表現文字列の配列(デフォルトを上書き)- 生の正規表現文字列(自動
gi)、またはカスタムフラグが必要な場合は/pattern/flagsを使用します。 - マッチした部分は、最初の6文字と最後の4文字を保持してマスクされます(長さ >= 18の場合)。それ以外の場合は
***になります。 - デフォルトは、一般的なキー割り当て、CLIフラグ、JSONフィールド、Bearerヘッダー、PEMブロック、一般的なトークンプレフィックスをカバーします。
- 生の正規表現文字列(自動
ゲートウェイ WebSocket ログ
ゲートウェイはWebSocketプロトコルログを2つのモードで出力します:
- 通常モード(
--verboseなし): 「興味深い」RPC結果のみが出力されます:- エラー (
ok=false) - 遅い呼び出し(デフォルトしきい値:
>= 50ms) - パースエラー
- エラー (
- 詳細モード(
--verbose): すべてのWSリクエスト/レスポンストラフィックを出力します。
WS ログスタイル
openclaw gateway はゲートウェイごとのスタイル切り替えをサポートします:
--ws-log auto(デフォルト): 通常モードは最適化済み;詳細モードはコンパクト出力を使用--ws-log compact: 詳細時にコンパクト出力(ペアのリクエスト/レスポンス)--ws-log full: 詳細時にフルなフレームごとの出力--compact:--ws-log compactのエイリアス
例:
# 最適化済み(エラー/遅延のみ)
openclaw gateway
# すべてのWSトラフィックを表示(ペア)
openclaw gateway --verbose --ws-log compact
# すべてのWSトラフィックを表示(フルメタデータ)
openclaw gateway --verbose --ws-log full
コンソールフォーマット(サブシステムロギング)
コンソールフォーマッタはTTYを認識し、一貫したプレフィックス付きの行を出力します。サブシステムロガーは出力をグループ化し、スキャンしやすく保ちます。動作:
- サブシステムプレフィックス が各行に付きます(例:
[gateway],[canvas],[tailscale]) - サブシステムカラー(サブシステムごとに安定)とレベルカラーリング
- 出力がTTYの場合、または環境がリッチターミナルに見える場合にカラー(
TERM/COLORTERM/TERM_PROGRAM)、NO_COLORを尊重 - 短縮されたサブシステムプレフィックス: 先頭の
gateway/+channels/を削除し、最後の2セグメントを保持(例:whatsapp/outbound) - サブシステムによるサブロガー(自動プレフィックス + 構造化フィールド
{ subsystem }) logRaw()QR/UX出力用(プレフィックスなし、フォーマットなし)- コンソールスタイル(例:
pretty | compact | json) - コンソールログレベル はファイルログレベルとは別(ファイルは
logging.levelがdebug/traceに設定されている場合、完全な詳細を保持) - WhatsApp メッセージ本文 は
debugレベルでログ記録されます(--verboseを使用して表示)
これにより、既存のファイルログを安定させながら、対話型出力をスキャンしやすく保ちます。