2026 OpenClaw 五層モデル(Channel / Account / Agent / Session / Memory)で段階的トラブルシュート:症状マトリクスと Mac クラウド Gateway ログ整合
openclaw doctor は通るのに「たまに返らない」「グループだけおかしい」「コンテキストが重い」が消えない場合、チャネル問題をモデル問題に、セッション肥大をゲートウェイ障害に誤認していることが多い。本稿は五層で切り分け表と典型症状を示し、JSONL・Gateway 状態と揃える手順、層を決めてから doctor の順序、Mac クラウド 7×24 のログ運用をまとめる。JSONL 可観測性の長文と連携し、コマンド階段記事との重複を減らす。
目次
1. doctor だけでは足りない理由
- タイムアウトの多義性:IM 配送遅延・初トークン遅延・JSONL フラッシュ遅延が同じ「長い Thinking」に見える。層を決めずに 429 を疑うと空振りする。
- 構文 OK と挙動 OK は別:ペアリング期限切れや Account キー轮换は doctor 通過後も残る。
- セッションと記憶の混線:並列セッションとメモリ肥大は両方トークンを押し上げる。ゲートウェイ再起動だけでは再発する。
五層は推測をルーティングに変える:層ごとに証拠と最小変更セットがある。
オンメモリでコマンドを並べる運用は、担当交代で途切れやすい。層名をインシデントチケットの必須フィールドにすると、四半期ごとに「どの層の誤判定が多かったか」を集計でき、ルーティング表の改訂根拠になる。
2. 五層の役割と壊れ方
- Channel:Webhook、長接続、Bot 権限、requireMention 等。イベント未到、DM/群の差、ペアリング失効。
- Account:プロバイダキー、ワークスペース紐付け。401/403 の散発、片方のアカウントだけ失敗。
- Agent:ツール許可、スキル、システムプロンプト。ツール不発、過剰拒否、ポリシー変更直後の挙動変化。
- Session:多ターン文脈、spawn、並列会話。話題混線、履歴破損、スレッドが単調に遅くなる。
- Memory:長期事実・嗜好ファイル、グラフ/ベクトル任意。古い事実の復活、検索ノイズ、文脈と衝突。
実務では Channel と Account の境界が曖昧になりがちだ。IM ベンダーのダッシュボードでイベントがゼロなら Channel 優先、イベントはあるが署名エラーなら Account 優先と決め打ちすると迷いが減る。
3. 症状→層ルーティング表
| 症状 | 先に見る層 | 最初にやらないこと |
|---|---|---|
| 群のみ無反応 | Channel | temperature 調整 |
| 全チャネル 401 系 | Account | npm 再インストールのみ |
| 保守的・ツール未使用 | Agent | max_tokens 盲信 |
| トピック混線 | Session | キャッシュ削除だけ |
| 事実が消えない | Memory | 無限リブート |
4. 五手順:証拠→ログ→doctor
- 時間窓固定:UTC と channel/conversation id を記録。ローテで証拠が消えないよう確保。
- Channel から外側へ:イベント到達を先に証明し、その後 Account を見る。
- Agent 差分確認:スキル/ポリシー変更時刻と障害開始を突合。必要なら最小 spawn で群ノイズを除く。
- Session と Memory 分離:ターン数・ツール出力とメモリ書込頻度を分け、JSONL のトークン示唆とサイト内長文を照合。
- 最後に doctor:仮説が付いた後で
openclaw doctor。未読ログのまま --fix は層を混ぜる。
Mac クラウドではログディレクトリと launchd の標準出力を固定し、非ログイン SSH でも同一 JSONL に追記させる。ディスク監視はゲートウェイ専用ボリュームに閾値を置き、ローテ後に古いファイルを object storage へ退避する運用だと、長期比較がしやすい。
二つの層が同時に怪しいときは、片方を無効化したミニマム構成で再現試験する。チャネルを一本化する、メモリファイルを一時リネームするなど、戻しやすい変更に限る。
5. Gateway フィールドと Mac クラウド
- 時間窓:既定 5〜15 分の共置ログ。跨日はローテ境界に注意。
- フィールド:channel / conversation / request で横断。ERROR 行だけに頼らない。
- Mac クラウド:ディスク約85%超で警告。18789 を SSH トンネルする場合は RTT とチャネル配送を分けて記録。
- doctor 境界:設定・健全性が中心。症状仮説の後に回す。
JSONL の行を jq 等で集計するときは、channel 別の WARN 率を週次で出し、閾値超えで Channel 層のレビューを自動起票できる。トークン推移はサイト内長文のフィールド定義に合わせるとダッシュボード共通化が容易になる。
6. FAQ と JSONL ガイド接続
多チャネルはどこから? Channel→Account。各チャネルの取り込みを先に確認。
多アカウントの誤検知を減らす:全滅と片アカウントのみを分ける。
セッション肥大は Session か Memory か:ターンとツール出力を先に測り、同時変更は避ける。
アラートに層ラベルを自動付与したい? インシデントテンプレに Channel/Account/Agent/Session/Memory の選択を必須にし、四半期ごとに誤ルーティング率を見る。
ノート PC や短命コンテナだけでは 7×24 の再現が難しく、再起動頼みは運用にならない。非 macOS の一時サンドボックスでは Apple 公式ツールチェーンやファイル監視の挙動が本番とズレやすい。Gateway・JSONL・チャネルを長期同じ土台に置くには、VPSMAC の専用 Mac クラウドが現実的で、サイト内 JSONL 可観測性記事のトークン警告・プローブ例と五層手順をそのまま連結できる。