---
read_when:
    - การวินิจฉัยการเชื่อมต่อของช่องทางหรือสถานะของ Gateway
    - ทำความเข้าใจคำสั่งและตัวเลือก CLI สำหรับการตรวจสอบสถานะระบบ
summary: คำสั่งตรวจสอบสถานะและการเฝ้าติดตามสถานะของ Gateway
title: การตรวจสอบสถานะการทำงาน
x-i18n:
    generated_at: "2026-07-20T05:57:01Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 2aad0ffe968452e34158757c45e094c60528a4c6b5c57f9977bb6bc15ffd202e
    source_path: gateway/health.md
    workflow: 16
---

คู่มือฉบับย่อสำหรับตรวจสอบการเชื่อมต่อของช่องทางโดยไม่ต้องคาดเดา

## การตรวจสอบด่วน

- `openclaw status` - สรุปภายในเครื่อง: การเข้าถึง/โหมดของ Gateway, คำแนะนำการอัปเดต, อายุการตรวจสอบสิทธิ์ของช่องทางที่เชื่อมโยง, เซสชัน + กิจกรรมล่าสุด
- `openclaw status --all` - การวินิจฉัยภายในเครื่องแบบเต็มรูปแบบ (อ่านอย่างเดียว, มีสี, สามารถนำไปวางเพื่อแก้ไขจุดบกพร่องได้อย่างปลอดภัย)
- `openclaw status --deep` - ขอให้ Gateway ที่กำลังทำงานทำการตรวจสอบแบบสด (`health` พร้อม `probe:true`) รวมถึงการตรวจสอบช่องทางแยกตามบัญชีเมื่อรองรับ
- `openclaw status --usage` - แสดงสแนปช็อตการใช้งาน/โควตาของผู้ให้บริการโมเดล
- `openclaw health` - ขอให้ Gateway ที่กำลังทำงานส่งสแนปช็อตสถานะความพร้อมใช้งาน (ผ่าน WS เท่านั้น ไม่มีซ็อกเก็ตช่องทางโดยตรงจาก CLI)
- `openclaw health --verbose` (นามแฝง `--debug`) - บังคับให้ตรวจสอบสถานะความพร้อมใช้งานแบบสดและแสดงรายละเอียดการเชื่อมต่อ Gateway
- `openclaw health --json` - เอาต์พุตสแนปช็อตสถานะความพร้อมใช้งานที่เครื่องอ่านได้
- ส่ง `/status` เป็นคำสั่งแชตเดี่ยวในช่องทางใดก็ได้ เพื่อรับการตอบกลับสถานะโดยไม่เรียกใช้เอเจนต์
- บันทึก: ติดตาม `/tmp/openclaw/openclaw-*.log` และกรองหา `web-heartbeat`, `web-reconnect`, `web-auto-reply`, `web-inbound`

สำหรับ Discord และผู้ให้บริการแชตอื่น ๆ แถวเซสชันไม่ได้บ่งชี้ว่าซ็อกเก็ตยังทำงานอยู่
`openclaw sessions`, `sessions.list` ของ Gateway และเครื่องมือ `sessions_list` ของเอเจนต์
จะอ่านสถานะการสนทนาที่จัดเก็บไว้ ผู้ให้บริการอาจเชื่อมต่อใหม่และแสดงสถานะช่องทางว่าปกติ
ก่อนที่แถวเซสชันใหม่จะถูกสร้างขึ้น ใช้คำสั่งสถานะช่องทางและสถานะความพร้อมใช้งาน
ด้านบนเพื่อตรวจสอบการเชื่อมต่อแบบสด

## การวินิจฉัยเชิงลึก

- ข้อมูลประจำตัวบนดิสก์: `ls -l ~/.openclaw/credentials/whatsapp/<accountId>/creds.json` (mtime ควรเป็นเวลาล่าสุด)
- ที่เก็บเซสชัน: `ls -l ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite` จำนวนและผู้รับล่าสุดแสดงผ่าน `status`
- ขั้นตอนการเชื่อมโยงใหม่: `openclaw channels logout && openclaw channels login --verbose` เมื่อรหัสสถานะ 409-515 หรือ `loggedOut` ปรากฏในบันทึก ขั้นตอนเข้าสู่ระบบด้วย QR จะเริ่มใหม่โดยอัตโนมัติหนึ่งครั้งสำหรับสถานะ 515 หลังจากจับคู่
- การวินิจฉัยเปิดใช้งานตามค่าเริ่มต้น (`diagnostics.enabled: false` ใช้ปิดการทำงาน) เหตุการณ์หน่วยความจำบันทึกจำนวนไบต์ของ RSS/ฮีป รวมถึงแรงกดดันจากค่าเกณฑ์/การเติบโต คำเตือนสถานะการทำงานบันทึกความล่าช้า/อัตราการใช้งานของลูปเหตุการณ์ อัตราส่วนแกน CPU และจำนวนเซสชันที่ทำงานอยู่/กำลังรอ/อยู่ในคิว เมื่อกระบวนการกำลังทำงานแต่รับภาระเต็มที่ เหตุการณ์เพย์โหลดขนาดใหญ่เกินไปบันทึกสิ่งที่ถูกปฏิเสธ/ตัดทอน/แบ่งเป็นส่วน พร้อมขนาดและขีดจำกัด แต่จะไม่บันทึกข้อความ เนื้อหาไฟล์แนบ เนื้อหา Webhook เนื้อหาคำขอ/การตอบกลับดิบ โทเค็น คุกกี้ หรือค่าความลับ
- Heartbeat เดียวกันขับเคลื่อนตัวบันทึกเสถียรภาพแบบมีขอบเขต: `openclaw gateway stability` (หรือ Gateway RPC `diagnostics.stability`) การออกจาก Gateway อย่างร้ายแรง การหมดเวลาระหว่างปิดระบบ และความล้มเหลวในการเริ่มทำงานหลังรีสตาร์ต จะบันทึกสแนปช็อตล่าสุดไว้ใต้ `~/.openclaw/logs/stability/` ตรวจสอบชุดข้อมูลล่าสุดด้วย `openclaw gateway stability --bundle latest`
- สำหรับรายงานข้อบกพร่อง ให้เรียกใช้ `openclaw gateway diagnostics export` และแนบไฟล์ zip ที่สร้างขึ้น ซึ่งประกอบด้วยสรุป Markdown, ชุดข้อมูลเสถียรภาพล่าสุด, ข้อมูลเมตาของบันทึกที่ผ่านการล้างข้อมูล, สแนปช็อตสถานะ/ความพร้อมใช้งานของ Gateway ที่ผ่านการล้างข้อมูล และโครงสร้างการกำหนดค่า ข้อความแชต เนื้อหา Webhook เอาต์พุตเครื่องมือ ข้อมูลประจำตัว คุกกี้ ตัวระบุบัญชี/ข้อความ และค่าความลับจะถูกละเว้นหรือปกปิด ดู[การส่งออกข้อมูลวินิจฉัย](/th/gateway/diagnostics)

## การกำหนดค่าตัวตรวจสอบสถานะความพร้อมใช้งาน

- `channels.<provider>.healthMonitor.enabled`: ปิดการรีสตาร์ตโดยตัวตรวจสอบสถานะความพร้อมใช้งานสำหรับช่องทางที่ระบุ โดยยังคงเปิดใช้การตรวจสอบส่วนกลาง
- `channels.<provider>.accounts.<accountId>.healthMonitor.enabled`: การแทนที่สำหรับหลายบัญชีซึ่งมีลำดับความสำคัญเหนือการตั้งค่าระดับช่องทาง
- การแทนที่แยกตามช่องทางเหล่านี้ใช้กับช่องทางในตัวที่เปิดเผยการตั้งค่านี้ในปัจจุบัน ได้แก่ Discord, Google Chat, iMessage, IRC, Microsoft Teams, Signal, Slack, Telegram และ WhatsApp

## การตรวจสอบเวลาทำงาน

บริการตรวจสอบเวลาทำงานภายนอกควรใช้ปลายทาง `/health` โดยเฉพาะ ไม่ใช่ `/v1/chat/completions`

- **ควรใช้:** `GET /health` - ตอบกลับทันที ไม่สร้างเซสชัน ไม่เรียก LLM และส่งคืน `{"ok":true,"status":"live"}`
- **อย่าใช้:** `/v1/chat/completions` สำหรับการตรวจสอบสถานะความพร้อมใช้งาน - แต่ละคำขอจะสร้างเซสชันเอเจนต์แบบเต็ม พร้อมสแนปช็อต Skills, การประกอบบริบท และการเรียก LLM

เมื่อไม่ได้ระบุส่วนหัว `x-openclaw-session-key` หรือฟิลด์ `user` ทาง `/v1/chat/completions` จะสร้างเซสชันแบบสุ่มใหม่สำหรับแต่ละคำขอ บริการตรวจสอบที่ส่งคำขอทุก 15 นาทีจะสร้างประมาณ 96 เซสชัน/วัน โดยแต่ละเซสชันใช้พื้นที่ 4-22KB เมื่อเวลาผ่านไป สิ่งนี้ทำให้ที่เก็บเซสชันมีขนาดใหญ่เกินไปและอาจทำให้หน้าต่างบริบทล้น

### ตัวอย่างการตั้งค่าบริการตรวจสอบ

- **BetterStack:** ตั้งค่า URL การตรวจสอบสถานะความพร้อมใช้งานเป็น `https://<your-gateway-host>:<port>/health`
- **UptimeRobot:** เพิ่มตัวตรวจสอบ HTTP ใหม่โดยใช้ URL `https://<your-gateway-host>:<port>/health`
- **ทั่วไป:** คำขอ HTTP GET ใด ๆ ไปยัง `/health` จะส่งคืน 200 พร้อม `{"ok":true}` เมื่อ Gateway มีสถานะปกติ

## เมื่อเกิดความล้มเหลว

- `logged out` หรือสถานะ 409-515 -> เชื่อมโยงใหม่ด้วย `openclaw channels logout` แล้วตามด้วย `openclaw channels login`
- ไม่สามารถเข้าถึง Gateway -> เริ่มการทำงานด้วย `openclaw gateway --port 18789` (ใช้ `--force` หากพอร์ตไม่ว่าง)
- ไม่มีข้อความขาเข้า -> ยืนยันว่าโทรศัพท์ที่เชื่อมโยงออนไลน์อยู่และผู้ส่งได้รับอนุญาต (`channels.whatsapp.allowFrom`) สำหรับแชตกลุ่ม ตรวจสอบให้แน่ใจว่ารายการอนุญาต + กฎการกล่าวถึงตรงกัน (`channels.whatsapp.groups`, `agents.list[].groupChat.mentionPatterns`)

## คำสั่ง "health" โดยเฉพาะ

`openclaw health` ขอให้ Gateway ที่กำลังทำงานส่งสแนปช็อตสถานะความพร้อมใช้งาน (ไม่มีซ็อกเก็ตช่องทาง
โดยตรงจาก CLI) โดยค่าเริ่มต้น คำสั่งนี้จะส่งคืนสแนปช็อต Gateway ที่แคชไว้ล่าสุด และ
Gateway จะรีเฟรชแคชนั้นในเบื้องหลัง ส่วน `--verbose` จะบังคับให้ตรวจสอบแบบสดแทน
คำสั่งนี้รายงานอายุของข้อมูลประจำตัว/การตรวจสอบสิทธิ์ที่เชื่อมโยงเมื่อมีข้อมูล สรุปการตรวจสอบแยกตามช่องทาง
สรุปที่เก็บเซสชัน และระยะเวลาการตรวจสอบ โดยจะออกด้วยรหัสที่ไม่ใช่ศูนย์หากไม่สามารถ
เข้าถึง Gateway หรือการตรวจสอบล้มเหลว/หมดเวลา

ตัวเลือก:

- `--json`: เอาต์พุต JSON ที่เครื่องอ่านได้
- `--timeout <ms>`: แทนที่เวลาหมดอายุเริ่มต้นของการตรวจสอบที่ 10s
- `--verbose`: บังคับให้ตรวจสอบแบบสดและแสดงรายละเอียดการเชื่อมต่อ Gateway
- `--debug`: นามแฝงสำหรับ `--verbose`

สแนปช็อตสถานะความพร้อมใช้งานประกอบด้วย: `ok` (บูลีน), `ts` (การประทับเวลา), `durationMs` (เวลาที่ใช้ตรวจสอบ), สถานะแยกตามช่องทาง, ความพร้อมใช้งานของเอเจนต์ และสรุปที่เก็บเซสชัน

## ที่เกี่ยวข้อง

- [คู่มือปฏิบัติการ Gateway](/th/gateway)
- [การส่งออกข้อมูลวินิจฉัย](/th/gateway/diagnostics)
- [การแก้ไขปัญหา Gateway](/th/gateway/troubleshooting)
