---
read_when:
    - การเตรียมรายงานข้อบกพร่องหรือคำขอรับการสนับสนุน
    - การดีบักการขัดข้องของ Gateway การรีสตาร์ต ภาวะหน่วยความจำตึงตัว หรือเพย์โหลดที่มีขนาดใหญ่เกินไป
    - การตรวจสอบว่าข้อมูลการวินิจฉัยใดถูกบันทึกหรือถูกปกปิด
summary: สร้างบันเดิลการวินิจฉัย Gateway ที่แชร์ได้สำหรับรายงานข้อบกพร่อง
title: ส่งออกข้อมูลการวินิจฉัย
x-i18n:
    generated_at: "2026-05-02T10:15:42Z"
    model: gpt-5.5
    provider: openai
    source_hash: 4d1f7c1e1d96aeeebe30b30c8a23ec3c7b0fb4938f15a3783bf22e861770bf78
    source_path: gateway/diagnostics.md
    workflow: 16
---

OpenClaw สามารถสร้างไฟล์ zip การวินิจฉัยในเครื่องสำหรับรายงานข้อบกพร่องได้ โดยรวมสถานะ Gateway ที่ผ่านการทำให้ปลอดภัยแล้ว, สุขภาพ, บันทึก, รูปแบบการกำหนดค่า และเหตุการณ์ความเสถียรล่าสุดที่ไม่มี payload

ปฏิบัติกับชุดข้อมูลการวินิจฉัยเหมือนความลับจนกว่าคุณจะตรวจสอบแล้ว ชุดข้อมูลเหล่านี้ออกแบบมาให้ละเว้นหรือปกปิด payload และข้อมูลรับรอง แต่ยังคงสรุปบันทึก Gateway ในเครื่องและสถานะรันไทม์ระดับโฮสต์

## เริ่มต้นอย่างรวดเร็ว

```bash
openclaw gateway diagnostics export
```

คำสั่งจะแสดงพาธ zip ที่เขียนไว้ หากต้องการเลือกพาธ:

```bash
openclaw gateway diagnostics export --output openclaw-diagnostics.zip
```

สำหรับระบบอัตโนมัติ:

```bash
openclaw gateway diagnostics export --json
```

## คำสั่งแชท

เจ้าของสามารถใช้ `/diagnostics [note]` ในแชทเพื่อร้องขอการส่งออก Gateway ในเครื่อง ใช้สิ่งนี้เมื่อข้อบกพร่องเกิดขึ้นในการสนทนาจริงและคุณต้องการรายงานหนึ่งชุดที่คัดลอกและวางได้สำหรับฝ่ายสนับสนุน:

1. ส่ง `/diagnostics` ในการสนทนาที่คุณสังเกตเห็นปัญหา เพิ่มหมายเหตุสั้น ๆ หากช่วยได้ เช่น `/diagnostics bad tool choice`
2. OpenClaw จะส่งคำนำการวินิจฉัยและขออนุมัติ exec อย่างชัดเจนหนึ่งครั้ง การอนุมัติจะรัน `openclaw gateway diagnostics export --json` อย่าอนุมัติการวินิจฉัยผ่านกฎอนุญาตทั้งหมด
3. หลังอนุมัติ OpenClaw จะตอบกลับด้วยรายงานที่วางได้ ซึ่งมีพาธชุดข้อมูลในเครื่อง สรุป manifest หมายเหตุด้านความเป็นส่วนตัว และรหัสเซสชันที่เกี่ยวข้อง

ในแชทกลุ่ม เจ้าของยังคงรัน `/diagnostics` ได้ แต่ OpenClaw จะไม่โพสต์รายละเอียดการวินิจฉัยกลับเข้าไปในแชทที่ใช้ร่วมกัน โดยจะส่งคำนำ พรอมป์อนุมัติ ผลการส่งออก Gateway และรายละเอียดเซสชัน/เธรดของ Codex ให้เจ้าของผ่านเส้นทางอนุมัติส่วนตัว กลุ่มจะได้รับเพียงการแจ้งเตือนสั้น ๆ ว่าโฟลว์การวินิจฉัยถูกส่งแบบส่วนตัวแล้ว หาก OpenClaw หาเส้นทางเจ้าของแบบส่วนตัวไม่พบ คำสั่งจะล้มเหลวแบบปิดและขอให้เจ้าของรันจาก DM

เมื่อเซสชัน OpenClaw ที่ใช้งานอยู่กำลังใช้ native OpenAI Codex harness การอนุมัติ exec เดียวกันยังครอบคลุมการอัปโหลดคำติชม OpenAI สำหรับเธรดรันไทม์ Codex ที่ OpenClaw รู้จักด้วย การอัปโหลดนั้นแยกจากไฟล์ zip Gateway ในเครื่องและจะปรากฏเฉพาะสำหรับเซสชัน Codex harness ก่อนอนุมัติ พรอมป์จะอธิบายว่าการอนุมัติการวินิจฉัยจะส่งคำติชม Codex ด้วย แต่จะไม่แสดงรหัสเซสชันหรือเธรด Codex หลังอนุมัติ คำตอบในแชทจะแสดงช่องทาง รหัสเซสชัน OpenClaw รหัสเธรด Codex และคำสั่ง resume ในเครื่องสำหรับเธรดที่ถูกส่งไปยังเซิร์ฟเวอร์ OpenAI หากคุณปฏิเสธหรือเพิกเฉยต่อการอนุมัติ OpenClaw จะไม่รันการส่งออก ไม่ส่งคำติชม Codex และไม่พิมพ์รหัส Codex

สิ่งนี้ทำให้ลูปดีบัก Codex ทั่วไปสั้นลง: สังเกตพฤติกรรมที่ไม่ดีใน Telegram, Discord หรือช่องทางอื่น รัน `/diagnostics` อนุมัติหนึ่งครั้ง แชร์รายงานกับฝ่ายสนับสนุน จากนั้นรันคำสั่ง `codex resume <thread-id>` ที่พิมพ์ออกมาในเครื่อง หากคุณต้องการตรวจสอบเธรด Codex แบบ native ด้วยตนเอง ดู [Codex harness](/th/plugins/codex-harness#inspect-a-codex-thread-from-the-cli) สำหรับเวิร์กโฟลว์การตรวจสอบนั้น

## สิ่งที่การส่งออกมี

ไฟล์ zip ประกอบด้วย:

- `summary.md`: ภาพรวมที่มนุษย์อ่านได้สำหรับฝ่ายสนับสนุน
- `diagnostics.json`: สรุปที่เครื่องอ่านได้ของการกำหนดค่า บันทึก สถานะ สุขภาพ และข้อมูลความเสถียร
- `manifest.json`: เมทาดาทาการส่งออกและรายการไฟล์
- รูปแบบการกำหนดค่าที่ผ่านการทำให้ปลอดภัยแล้ว และรายละเอียดการกำหนดค่าที่ไม่ใช่ความลับ
- สรุปบันทึกที่ผ่านการทำให้ปลอดภัยแล้ว และบรรทัดบันทึกล่าสุดที่ถูกปกปิด
- สแนปชอตสถานะและสุขภาพของ Gateway แบบพยายามเต็มที่
- `stability/latest.json`: ชุดข้อมูลความเสถียรที่คงอยู่ล่าสุด เมื่อมี

การส่งออกมีประโยชน์แม้เมื่อ Gateway ไม่สมบูรณ์ หาก Gateway ไม่สามารถตอบคำขอสถานะหรือสุขภาพได้ บันทึกในเครื่อง รูปแบบการกำหนดค่า และชุดข้อมูลความเสถียรล่าสุดจะยังคงถูกรวบรวมเมื่อมี

## โมเดลความเป็นส่วนตัว

การวินิจฉัยออกแบบมาให้แชร์ได้ การส่งออกจะเก็บข้อมูลการปฏิบัติงานที่ช่วยในการดีบัก เช่น:

- ชื่อระบบย่อย รหัส Plugin รหัสผู้ให้บริการ รหัสช่องทาง และโหมดที่กำหนดค่าไว้
- รหัสสถานะ ระยะเวลา จำนวนไบต์ สถานะคิว และค่าการอ่านหน่วยความจำ
- เมทาดาทาบันทึกที่ผ่านการทำให้ปลอดภัยแล้ว และข้อความการปฏิบัติงานที่ถูกปกปิด
- รูปแบบการกำหนดค่าและการตั้งค่าฟีเจอร์ที่ไม่ใช่ความลับ

การส่งออกจะละเว้นหรือปกปิด:

- ข้อความแชท พรอมป์ คำสั่ง เนื้อหา webhook และเอาต์พุตเครื่องมือ
- ข้อมูลรับรอง, API keys, tokens, cookies และค่าความลับ
- เนื้อหาคำขอหรือคำตอบดิบ
- รหัสบัญชี รหัสข้อความ รหัสเซสชันดิบ ชื่อโฮสต์ และชื่อผู้ใช้ในเครื่อง

เมื่อข้อความบันทึกดูเหมือนข้อความ payload ของผู้ใช้ แชท พรอมป์ หรือเครื่องมือ การส่งออกจะเก็บไว้เพียงว่ามีข้อความถูกละเว้นและจำนวนไบต์

## ตัวบันทึกความเสถียร

Gateway บันทึกสตรีมความเสถียรแบบมีขอบเขตและไม่มี payload เป็นค่าเริ่มต้นเมื่อเปิดใช้งานการวินิจฉัย สิ่งนี้มีไว้สำหรับข้อเท็จจริงด้านการปฏิบัติงาน ไม่ใช่เนื้อหา

diagnostic heartbeat เดียวกันจะบันทึกตัวอย่าง liveness เมื่อ Gateway ยังทำงานต่อ แต่ event loop ของ Node.js หรือ CPU ดูอิ่มตัว เหตุการณ์ `diagnostic.liveness.warning` เหล่านี้มี event-loop delay, event-loop utilization, CPU-core ratio และจำนวนเซสชัน active/waiting/queued ตัวอย่างช่วงว่างจะอยู่ใน telemetry ที่ระดับ `info`; จะถูกบันทึกเป็นคำเตือน Gateway เฉพาะเมื่อมีงานวินิจฉัยที่ใช้งานอยู่ รออยู่ หรือเข้าคิวอยู่เท่านั้น สิ่งเหล่านี้ไม่รีสตาร์ท Gateway ด้วยตนเอง

ตรวจสอบตัวบันทึกสด:

```bash
openclaw gateway stability
openclaw gateway stability --type payload.large
openclaw gateway stability --json
```

ตรวจสอบชุดข้อมูลความเสถียรที่คงอยู่ล่าสุดหลัง fatal exit, shutdown timeout หรือ restart startup failure:

```bash
openclaw gateway stability --bundle latest
```

สร้างไฟล์ zip การวินิจฉัยจากชุดข้อมูลที่คงอยู่ล่าสุด:

```bash
openclaw gateway stability --bundle latest --export
```

ชุดข้อมูลที่คงอยู่จะอยู่ใต้ `~/.openclaw/logs/stability/` เมื่อมีเหตุการณ์

## ตัวเลือกที่มีประโยชน์

```bash
openclaw gateway diagnostics export \
  --output openclaw-diagnostics.zip \
  --log-lines 5000 \
  --log-bytes 1000000
```

- `--output <path>`: เขียนไปยังพาธ zip ที่ระบุ
- `--log-lines <count>`: จำนวนบรรทัดบันทึกที่ผ่านการทำให้ปลอดภัยแล้วสูงสุดที่จะรวมไว้
- `--log-bytes <bytes>`: จำนวนไบต์บันทึกสูงสุดที่จะตรวจสอบ
- `--url <url>`: URL WebSocket ของ Gateway สำหรับสแนปชอตสถานะและสุขภาพ
- `--token <token>`: โทเคน Gateway สำหรับสแนปชอตสถานะและสุขภาพ
- `--password <password>`: รหัสผ่าน Gateway สำหรับสแนปชอตสถานะและสุขภาพ
- `--timeout <ms>`: ระยะหมดเวลาสแนปชอตสถานะและสุขภาพ
- `--no-stability-bundle`: ข้ามการค้นหาชุดข้อมูลความเสถียรที่คงอยู่
- `--json`: พิมพ์เมทาดาทาการส่งออกที่เครื่องอ่านได้

## ปิดใช้งานการวินิจฉัย

การวินิจฉัยเปิดใช้งานเป็นค่าเริ่มต้น หากต้องการปิดใช้งานตัวบันทึกความเสถียรและการรวบรวมเหตุการณ์การวินิจฉัย:

```json5
{
  diagnostics: {
    enabled: false,
  },
}
```

การปิดใช้งานการวินิจฉัยจะลดรายละเอียดของรายงานข้อบกพร่อง ไม่ส่งผลต่อการบันทึก Gateway ตามปกติ

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

- [การตรวจสอบสุขภาพ](/th/gateway/health)
- [Gateway CLI](/th/cli/gateway#gateway-diagnostics-export)
- [โปรโตคอล Gateway](/th/gateway/protocol#system-and-identity)
- [การบันทึก](/th/logging)
- [การส่งออก OpenTelemetry](/th/gateway/opentelemetry) — โฟลว์แยกต่างหากสำหรับสตรีมการวินิจฉัยไปยัง collector
