Gateway
การตรวจสอบสถานภาพ
คู่มือสั้น ๆ สำหรับตรวจสอบการเชื่อมต่อของช่องทางโดยไม่ต้องเดา
การตรวจสอบอย่างรวดเร็ว
openclaw status— สรุปในเครื่อง: การเข้าถึง/โหมดของ Gateway, คำใบ้การอัปเดต, อายุการยืนยันตัวตนของช่องทางที่ลิงก์แล้ว, เซสชัน + กิจกรรมล่าสุดopenclaw status --all— การวินิจฉัยในเครื่องแบบเต็ม (อ่านอย่างเดียว, มีสี, วางเพื่อดีบักได้อย่างปลอดภัย)openclaw status --deep— ขอให้ Gateway ที่กำลังทำงานอยู่ทำการตรวจสุขภาพสด (healthพร้อมprobe:true) รวมถึงการตรวจสอบช่องทางรายบัญชีเมื่อรองรับopenclaw health— ขอ snapshot สุขภาพจาก Gateway ที่กำลังทำงานอยู่ (เฉพาะ WS; ไม่มีซ็อกเก็ตช่องทางโดยตรงจาก CLI)openclaw health --verbose— บังคับการตรวจสุขภาพสดและพิมพ์รายละเอียดการเชื่อมต่อ Gatewayopenclaw health --json— เอาต์พุต snapshot สุขภาพที่อ่านได้ด้วยเครื่อง- ส่ง
/statusเป็นข้อความเดี่ยวใน WhatsApp/WebChat เพื่อรับการตอบกลับสถานะโดยไม่เรียกใช้เอเจนต์ - บันทึก: tail
/tmp/openclaw/openclaw-*.logและกรองหาweb-heartbeat,web-reconnect,web-auto-reply,web-inbound
สำหรับ Discord และผู้ให้บริการแชตอื่น ๆ แถวเซสชันไม่ใช่สถานะการมีชีวิตของซ็อกเก็ต
openclaw sessions, Gateway sessions.list, และเครื่องมือ sessions_list ของเอเจนต์
อ่านสถานะการสนทนาที่จัดเก็บไว้ ผู้ให้บริการสามารถเชื่อมต่อใหม่และแสดงสถานะช่องทางที่ปกติ
ก่อนที่แถวเซสชันใหม่ใด ๆ จะถูกสร้างขึ้น ใช้คำสั่งสถานะช่องทางและ
สุขภาพด้านบนสำหรับการตรวจสอบการเชื่อมต่อสด
การวินิจฉัยเชิงลึก
- ข้อมูลรับรองบนดิสก์:
ls -l ~/.openclaw/credentials/whatsapp/<accountId>/creds.json(mtime ควรเป็นเวลาล่าสุด) - ที่เก็บเซสชัน:
ls -l ~/.openclaw/agents/<agentId>/sessions/sessions.json(เส้นทางสามารถถูกแทนที่ได้ในคอนฟิก) จำนวนและผู้รับล่าสุดจะแสดงผ่านstatus - โฟลว์ลิงก์ใหม่:
openclaw channels logout && openclaw channels login --verboseเมื่อรหัสสถานะ 409–515 หรือloggedOutปรากฏในบันทึก (หมายเหตุ: โฟลว์ล็อกอิน QR จะรีสตาร์ตอัตโนมัติหนึ่งครั้งสำหรับสถานะ 515 หลังการจับคู่) - การวินิจฉัยถูกเปิดใช้งานตามค่าเริ่มต้น Gateway จะบันทึกข้อเท็จจริงเชิงปฏิบัติการ เว้นแต่จะตั้งค่า
diagnostics.enabled: falseเหตุการณ์หน่วยความจำบันทึกจำนวนไบต์ RSS/heap, แรงกดดันตาม threshold และแรงกดดันจากการเติบโต คำเตือนการมีชีวิตบันทึกความหน่วงของ event-loop, การใช้งาน event-loop, อัตราส่วนคอร์ CPU และจำนวนเซสชันที่ใช้งานอยู่/รออยู่/เข้าคิว เมื่อกระบวนการกำลังทำงานแต่ถูกใช้งานจนเต็ม เหตุการณ์ payload ขนาดใหญ่เกินไปบันทึกสิ่งที่ถูกปฏิเสธ ตัดให้สั้น หรือแบ่งเป็นชิ้น พร้อมขนาดและขีดจำกัดเมื่อมีข้อมูล เหตุการณ์เหล่านี้ไม่บันทึกข้อความของแชต เนื้อหาไฟล์แนบ body ของ Webhook body ของคำขอหรือการตอบกลับดิบ โทเค็น คุกกี้ หรือค่าลับ Heartbeat เดียวกันจะเริ่มตัวบันทึกเสถียรภาพแบบมีขอบเขต ซึ่งเข้าถึงได้ผ่านopenclaw gateway stabilityหรือ RPC ของ Gatewaydiagnostics.stabilityการออกจาก Gateway แบบ fatal, timeout ตอนปิดระบบ และความล้มเหลวตอนเริ่มต้นหลังรีสตาร์ต จะคง snapshot ล่าสุดของตัวบันทึกไว้ใต้~/.openclaw/logs/stability/เมื่อมีเหตุการณ์อยู่; ตรวจดู bundle ที่บันทึกใหม่ที่สุดด้วยopenclaw gateway stability --bundle latest - สำหรับรายงานบั๊ก ให้เรียกใช้
openclaw gateway diagnostics exportและแนบไฟล์ zip ที่สร้างขึ้น การส่งออกจะรวมสรุป Markdown, bundle เสถียรภาพล่าสุด, metadata บันทึกที่ผ่านการทำให้ปลอดภัย, snapshot สถานะ/สุขภาพ Gateway ที่ผ่านการทำให้ปลอดภัย และรูปทรงคอนฟิก สิ่งนี้ถูกออกแบบมาเพื่อแชร์: ข้อความแชต, body ของ Webhook, เอาต์พุตเครื่องมือ, ข้อมูลรับรอง, คุกกี้, ตัวระบุบัญชี/ข้อความ และค่าลับจะถูกละเว้นหรือปกปิด ดู การส่งออกการวินิจฉัย
คอนฟิกตัวตรวจสอบสุขภาพ
gateway.channelHealthCheckMinutes: ความถี่ที่ Gateway ตรวจสุขภาพช่องทาง ค่าเริ่มต้น:5ตั้งค่า0เพื่อปิดการรีสตาร์ตโดยตัวตรวจสอบสุขภาพทั่วทั้งระบบgateway.channelStaleEventThresholdMinutes: ระยะเวลาที่ช่องทางที่เชื่อมต่อแล้วสามารถไม่มีการใช้งานได้ก่อนที่ตัวตรวจสอบสุขภาพจะถือว่าล้าสมัยและรีสตาร์ต ค่าเริ่มต้น:30ให้ค่านี้มากกว่าหรือเท่ากับgateway.channelHealthCheckMinutesgateway.channelMaxRestartsPerHour: เพดานแบบเลื่อนช่วงหนึ่งชั่วโมงสำหรับการรีสตาร์ตโดยตัวตรวจสอบสุขภาพต่อช่องทาง/บัญชี ค่าเริ่มต้น:10channels.<provider>.healthMonitor.enabled: ปิดการรีสตาร์ตโดยตัวตรวจสอบสุขภาพสำหรับช่องทางเฉพาะ โดยยังคงเปิดการตรวจสอบทั่วทั้งระบบไว้channels.<provider>.accounts.<accountId>.healthMonitor.enabled: การแทนที่แบบหลายบัญชีที่มีลำดับความสำคัญเหนือการตั้งค่าระดับช่องทาง- การแทนที่รายช่องทางเหล่านี้ใช้กับตัวตรวจสอบช่องทางในตัวที่เปิดให้ใช้ในปัจจุบัน: Discord, Google Chat, iMessage, Microsoft Teams, Signal, Slack, Telegram และ WhatsApp
เมื่อมีบางอย่างล้มเหลว
logged outหรือสถานะ 409–515 → ลิงก์ใหม่ด้วยopenclaw channels logoutแล้วตามด้วยopenclaw channels login- Gateway เข้าถึงไม่ได้ → เริ่มต้น:
openclaw gateway --port 18789(ใช้--forceหากพอร์ตไม่ว่าง) - ไม่มีข้อความขาเข้า → ยืนยันว่าโทรศัพท์ที่ลิงก์อยู่ออนไลน์ และผู้ส่งได้รับอนุญาต (
channels.whatsapp.allowFrom); สำหรับแชตกลุ่ม ให้แน่ใจว่ากฎ allowlist + mention ตรงกัน (channels.whatsapp.groups,agents.list[].groupChat.mentionPatterns)
คำสั่ง "health" เฉพาะทาง
openclaw health ขอ snapshot สุขภาพจาก Gateway ที่กำลังทำงานอยู่ (ไม่มีซ็อกเก็ตช่องทาง
โดยตรงจาก CLI) โดยค่าเริ่มต้น คำสั่งนี้สามารถคืน snapshot Gateway ที่แคชไว้ใหม่ได้ จากนั้น
Gateway จะรีเฟรชแคชนั้นในเบื้องหลัง openclaw health --verbose จะบังคับ
การตรวจสดแทน คำสั่งนี้รายงานข้อมูลรับรองที่ลิงก์แล้ว/อายุการยืนยันตัวตนเมื่อมีข้อมูล,
สรุปการตรวจรายช่องทาง, สรุปที่เก็บเซสชัน และระยะเวลาการตรวจ คำสั่งจะออกด้วยสถานะ
ไม่เป็นศูนย์หากเข้าถึง Gateway ไม่ได้ หรือการตรวจล้มเหลว/timeout
ตัวเลือก:
--json: เอาต์พุต JSON ที่อ่านได้ด้วยเครื่อง--timeout <ms>: แทนที่ timeout การตรวจค่าเริ่มต้น 10 วินาที--verbose: บังคับการตรวจสดและพิมพ์รายละเอียดการเชื่อมต่อ Gateway--debug: ชื่อแฝงของ--verbose
snapshot สุขภาพประกอบด้วย: ok (บูลีน), ts (timestamp), durationMs (เวลาการตรวจ), สถานะรายช่องทาง, ความพร้อมใช้งานของเอเจนต์ และสรุปที่เก็บเซสชัน