メインコンテンツへスキップ

診断フラグ

診断フラグを使うと、どこでも冗長なログを有効にせずに、対象を絞ったデバッグログを有効にできます。フラグはオプトイン方式で、サブシステム側で確認されない限り効果はありません。

仕組み

  • フラグは文字列です(大文字小文字は区別しません)。
  • フラグはconfigまたはenv overrideで有効にできます。
  • ワイルドカードをサポートします:
    • telegram.*telegram.http に一致します
    • * はすべてのフラグを有効にします

configで有効化

{
  "diagnostics": {
    "flags": ["telegram.http"]
  }
}
複数のフラグ:
{
  "diagnostics": {
    "flags": ["telegram.http", "gateway.*"]
  }
}
フラグを変更した後はGatewayを再起動してください。

env override(一時的)

OPENCLAW_DIAGNOSTICS=telegram.http,telegram.payload
すべてのフラグを無効化:
OPENCLAW_DIAGNOSTICS=0

ログの出力先

フラグは標準のdiagnosticsログファイルにログを出力します。デフォルトでは次の場所です。
/tmp/openclaw/openclaw-YYYY-MM-DD.log
logging.file を設定している場合は、代わりにそのパスを使います。ログはJSONLです(1行に1つのJSONオブジェクト)。redactionは引き続き logging.redactSensitive に基づいて適用されます。

ログを抽出する

最新のログファイルを選択します。
ls -t /tmp/openclaw/openclaw-*.log | head -n 1
Telegram HTTP diagnosticsで絞り込みます。
rg "telegram http error" /tmp/openclaw/openclaw-*.log
または、再現しながらtailします。
tail -f /tmp/openclaw/openclaw-$(date +%F).log | rg "telegram http error"
リモートGatewayでは、openclaw logs --follow も使えます(/cli/logs を参照)。

注意

  • logging.levelwarn より高く設定されている場合、これらのログは抑制されることがあります。デフォルトの info で問題ありません。
  • フラグは有効のままでも安全です。特定のサブシステムに対するログ量にのみ影響します。
  • ログの出力先、レベル、redactionを変更するには /logging を使ってください。