2026 OpenClaw 実戦 HowTo:レンタルしたリモート Mac でゲートウェイ指標と閾値アラート(Prometheus/OpenTelemetry 思路)を連動させる

2026年4月7日 · 約7分 · MacCompute テクニカルチーム · ガイド

レンタル リモート Mac上のOpenClaw ゲートウェイでは、ヘルス URLPrometheus 互換スクレイプ(必要なら OTel Collector)・閾値アラート構造化ログを一連で揃えます。loopback 束縛なら取得経路は SSH トンネルか前段プロキシと一致させます。Docker 本番稿Tailscale・トークン輪換外向き許可リストを参照してください。

運用でつまずきやすい点

  1. ローカルは緑でも経路で赤 — tailnet/SSH の前提を固定。
  2. スクレイプと evaluation_interval がズレてページが遅い。
  3. URL に載せたトークンがログに残る。

信号の対照(Prometheus/OTel)

Prometheus は HTTP を引き、OTel は OTLP で送ることが多いですが、Collector の receiver で橋渡しできます。レンタル機はヘルス合成・ホスト指標・ゲートウェイログの三層からで足ります。ラベル envinstanceservice_name は据え置きが長持ちします。

信号 Prometheus OpenTelemetry
/healthz /readyz probe_success receiver→OTLP
アプリ /metrics SDK/Collector
因果 環境ラベル request_id

手順 1 — ヘルス端点(再現 curl)

既定 18789。ホスト上で先に叩き、期待コードをランブック化。readyz のみ落ちるときは劣化扱いでログ時刻を突合。

# liveness
curl -fsS http://127.0.0.1:18789/healthz
# readiness (semantics per release)
curl -fsS http://127.0.0.1:18789/readyz

# from laptop via SSH when bound to loopback
ssh -N -L 18789:127.0.0.1:18789 user@rental-host
curl -fsS http://127.0.0.1:18789/healthz

手順 2 — スクレイプ間隔

/metrics が無ければ blackbox_exporterhttp_2xx/healthz/readyz を取得。間隔は 15s30s60s から負荷と SLO で選び、evaluation_interval と整合。Docker は公開ポートに置換。

scrape_configs:
  - job_name: openclaw_gateway_health
    scrape_interval: 30s
    metrics_path: /probe
    params:
      module: [http_2xx]
    static_configs:
      - targets:
          - http://127.0.0.1:18789/healthz
          - http://127.0.0.1:18789/readyz
        labels:
          service: openclaw-gateway
          env: prod-rental-mac
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - target_label: __address__
        replacement: 127.0.0.1:9115

手順 3 — アラート例

probe_success 想定。系列名は環境に合わせて差替え。共有機はラベル基数に注意。

groups:
  - name: openclaw_gateway
    interval: 30s
    rules:
      - alert: OpenClawHealthzDown
        expr: probe_success{job="openclaw_gateway_health"} == 0
        for: 2m
        labels:
          severity: page
      - alert: OpenClawReadyzDegraded
        expr: probe_success{job="openclaw_gateway_health", instance=~".*readyz.*"} == 0
        for: 5m
        labels:
          severity: ticket
      - alert: OpenClawProbeSlow
        expr: probe_duration_seconds > 2
        for: 5m
        labels:
          severity: warning

手順 4 — OpenClaw ログフィールド

時刻は RFC3339+sntp 同期。levelrequest_idtrace_idchannelsessiontoolskill_packupstreamduration_mserror_class を揃え、アラート時刻から Loki/Elastic へ直行できるようにします。

本番:トークンと外向き

OPENCLAW_GATEWAY_TOKEN をラベルや URL に載せず秘密ストアから供給し定期輪換。観測の OTLP/remote_write 先はスキル許可リストへ明示追加し、メトリクス途切れをゲートウェイ障害と誤認しないようにします。高頻度スクレイプと debug ログは CPU を奪うため本番は info 既定とサンプリング。アラート評価はホストダウン時にも届くようマネージド監視側へ寄せるのが無難です。

FAQ

評価はホスト上? 外部のマネージド監視を推奨。

ログのみ? ログからエラー率を派生し、後からプローブ追加でよい。

まとめ

/healthz /readyz を文書化したパスで監視し、間隔・ルール・ログを揃え、トークンと egress で観測経路も最小権限にします。

引用値:18789、間隔 15s60s、ログ request_id error_class

本番メタルでゲートウェイを安定化。公開ページでプラン比較のうえ延長してください。

料金・購入ページはログイン不要で閲覧できます。注文やコンソールが必要なフローでのみログインしてください。

今すぐ購入