---
read_when:
    - คุณต้องตอบให้ได้ว่าใครเป็นผู้เรียกใช้เอเจนต์หรือเครื่องมือ เรียกใช้เมื่อใด และสิ้นสุดลงอย่างไร
    - คุณต้องใช้ข้อมูลเมตาของวงจรชีวิตข้อความขาเข้าหรือขาออกที่ไม่มีเนื้อหา
    - คุณต้องการการส่งออกกิจกรรมที่มีขอบเขตจำกัดและปลอดภัยต่อการปกปิดข้อมูลละเอียดอ่อน
summary: ข้อมูลอ้างอิง CLI สำหรับระเบียนการตรวจสอบวงจรชีวิตของการรัน เครื่องมือ และข้อความที่มีเฉพาะเมทาดาทา
title: บันทึกการตรวจสอบ
x-i18n:
    generated_at: "2026-07-16T18:50:47Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: da9df6f388b0a24c3b79d755fa59d047cce99262bc6d9c890be7a83da75693a8
    source_path: cli/audit.md
    workflow: 16
---

# `openclaw audit`

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

บัญชีแยกประเภทเปิดใช้โดยค่าเริ่มต้นสำหรับเหตุการณ์การทำงานและเครื่องมือ ตั้งค่า
[`audit.enabled: false`](/th/gateway/configuration-reference#audit) แล้วรีสตาร์ต
Gateway เพื่อหยุดบันทึกเหตุการณ์ใหม่ทั้งหมด ระเบียนข้อความจะปิดใช้แยกต่างหากโดย
ค่าเริ่มต้น ให้ตั้งค่า `audit.messages` เป็น `direct` หรือ `all` แล้วรีสตาร์ต Gateway เพื่อ
บันทึกระเบียนเหล่านั้น ระเบียนที่มีอยู่ยังคงสืบค้นได้จนกว่าจะหมดอายุ (30 วัน)

บัญชีแยกประเภทแยกจากบทสนทนาที่ถอดความ โดยจะบันทึกข้อมูลประจำตัว
ลำดับ ที่มา การดำเนินการ สถานะ และรหัสผลลัพธ์ที่ปรับให้อยู่ในรูปแบบมาตรฐาน แต่ไม่
จัดเก็บเนื้อหา และตัวระบุข้อความจะแสดงเฉพาะเป็นนามแฝงแบบใช้คีย์ที่ใช้ภายใน
การติดตั้งนั้นเท่านั้น [ประวัติการตรวจสอบ](/gateway/audit) กำหนดโมเดลข้อมูลทั้งหมด
ความหมายด้านความเป็นส่วนตัว ขอบเขตการจัดเก็บ/การเก็บรักษา และข้อจำกัดความครอบคลุม ส่วนหน้านี้
อธิบายส่วนติดต่อคำสั่ง

```bash
openclaw audit
openclaw audit --agent main --status failed
openclaw audit --session "agent:main:main" --after 2026-07-01T00:00:00Z
openclaw audit --run 8c69f72e-8b11-4c54-98d5-1a3dd67450c3
openclaw audit --kind tool_action --limit 50 --json
openclaw audit --kind message --direction outbound --channel telegram --json
```

## ตัวกรอง

- `--agent <id>`: รหัสเอเจนต์ที่ตรงกันทุกประการ
- `--session <key>`: คีย์เซสชันที่ตรงกันทุกประการ
- `--run <id>`: รหัสการทำงานที่ตรงกันทุกประการ
- `--kind <kind>`: `agent_run`, `tool_action` หรือ `message`
- `--status <status>`: `started`, `succeeded`, `failed`, `cancelled`,
  `timed_out`, `blocked` หรือ `unknown`
- `--direction <direction>`: ทิศทางข้อความ `inbound` หรือ `outbound`
- `--channel <channel>`: ช่องทางข้อความที่ตรงกันทุกประการ
- `--after <timestamp>` / `--before <timestamp>`: การประทับเวลา ISO แบบรวมขอบเขต หรือ
  มิลลิวินาที Unix
- `--limit <count>`: ขนาดหน้าตั้งแต่ 1 ถึง 500 ค่าเริ่มต้นคือ `100`
- `--cursor <sequence>`: ดำเนินการสืบค้นก่อนหน้าที่เรียงจากใหม่ที่สุดต่อ
- `--json`: พิมพ์หน้าที่มีขอบเขตจำกัดเป็น JSON

CLI สืบค้น RPC กิจกรรมที่มีการกำหนดเวอร์ชัน เพื่อให้คำสั่งเดียวแสดงบัญชีแยกประเภทที่กำหนดค่าไว้
ทั้งหมด เอาต์พุตข้อความจะแสดงเวลา ชนิด ทิศทาง ช่องทาง สถานะ
เอเจนต์ การทำงาน และการดำเนินการ ที่มาของข้อความที่หายไปจะแสดงเป็น `-`; OpenClaw
จะไม่สร้างรหัสเอเจนต์หรือรหัสการทำงานขึ้นเอง การดำเนินการของเครื่องมือจะแสดงชื่อเครื่องมือด้วย เอาต์พุต
JSON จะมี `nextCursor` เมื่อยังมีหน้าอื่นอยู่ ส่งค่านั้นไปยัง
`--cursor` เพื่อดำเนินการต่อโดยไม่จัดลำดับระเบียนที่เข้ามาระหว่างการแบ่งหน้าใหม่

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

## เหตุการณ์ที่บันทึก

Gateway ฉายสตรีมวงจรชีวิตที่เชื่อถือได้เป็นการดำเนินการหกรายการ:

- `agent.run.started`
- `agent.run.finished`
- `tool.action.started`
- `tool.action.finished`
- `message.inbound.processed`
- `message.outbound.finished`

ทุกระเบียนที่ส่งคืนมีรหัสเหตุการณ์ที่คงที่ ลำดับบัญชีแยกประเภทที่เพิ่มขึ้นอย่างต่อเนื่อง
การประทับเวลาวงจรชีวิต ผู้กระทำ การดำเนินการ สถานะ เครื่องหมาย
`schemaVersion: 1` ลำดับต้นทาง และ `redaction: "metadata_only"`
ข้อมูลที่มาของเอเจนต์/เซสชัน/การทำงานและฟิลด์เฉพาะเหตุการณ์จะมีเฉพาะเมื่อ
แหล่งที่เชื่อถือได้ให้ข้อมูลดังกล่าว ระเบียนข้อความจงใจละเว้น
`sessionKey` และ `sessionId` ดังนั้นตัวกรอง `--session` จึงใช้กับระเบียนการทำงานและเครื่องมือเท่านั้น

ระเบียนปลายทางของการทำงานและเครื่องมือจะแยกความสำเร็จ ความล้มเหลว การยกเลิก
การหมดเวลา และการบล็อกตามนโยบายด้วยสถานะปิดและรหัสข้อผิดพลาด `unknown` เป็น
ผลลัพธ์ที่ไม่สำเร็จอย่างชัดเจนเมื่อรันไทม์ต้นทางไม่เปิดเผยผลลัพธ์ปลายทางที่
เชื่อถือได้ รหัสการเรียกเครื่องมือจะส่งออกเฉพาะเป็นลายนิ้วมือที่คงที่
ชื่อเครื่องมือต้องตรงตามสัญญาชื่อแบบกระชับที่แสดงต่อโมเดล
ค่าอื่นจะกลายเป็น `unknown`

ระเบียนข้อความจะเพิ่มทิศทาง ช่องทาง ชนิดการสนทนา ผลลัพธ์ และ
ชนิดการส่ง ขั้นตอนความล้มเหลว ระยะเวลา จำนวนผลลัพธ์ รหัสเหตุผลที่ปรับให้อยู่ในรูปแบบมาตรฐาน
และนามแฝงแบบใช้คีย์ของบัญชี/การสนทนา/ข้อความ/เป้าหมาย ซึ่งเป็นข้อมูลแบบไม่บังคับ ขอบเขตขาเข้า
ปัจจุบันครอบคลุมข้อความที่ยอมรับและไปถึงการจัดส่งต่อของแกนหลัก
รวมถึงผลลัพธ์การประมวลผลรายการซ้ำและปลายทางของแกนหลัก ขอบเขตขาออก
จะเขียนหนึ่งแถวปลายทางต่อเพย์โหลดการตอบกลับเชิงตรรกะต้นฉบับที่ไปถึง
การส่งที่คงทนร่วมกัน การแบ่งส่วนและการกระจายไปยังอะแดปเตอร์หลายตัวจะถูกรวมไว้ใน
`resultCount` การส่งที่อยู่ในคิวซึ่งลองใหม่ได้หรือมีผลลัพธ์กำกวมจะถูกบันทึกเฉพาะหลังจาก
การตอบรับ จดหมายตาย หรือการกระทบยอดทำให้ผลลัพธ์เป็นปลายทางแล้ว
เส้นทางภายใน Plugin และเส้นทางส่งโดยตรงที่ข้ามขอบเขตร่วมเหล่านี้ยังไม่
ครอบคลุม การไม่มีแถวไม่ได้พิสูจน์ว่าไม่เคยมีข้อความอยู่

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

สำหรับแถวขาเข้า `durationMs` วัดการจัดส่งต่อของแกนหลัก และ `resultCount` นับ
เพย์โหลดเครื่องมือ บล็อก และการตอบกลับในคิวที่เสร็จสิ้นแล้ว สำหรับแถวขาออก
`durationMs` รวมการเป็นเจ้าของการส่งจนถึงสถานะปลายทาง (และด้วยเหตุนี้จึง
รวมเวลารอในคิว) ขณะที่ `resultCount` นับการส่งจริงบนแพลตฟอร์มที่ระบุได้
`deliveryKind` เมื่อมีอยู่ จะอธิบายเพย์โหลดที่มีผลหลังฮุกและ
หลังการเรนเดอร์ แถวที่ถูกระงับและแถวที่กำกวมจากการขัดข้องจะละเว้นค่านี้

## RPC ของ Gateway

`audit.activity.list` ต้องใช้ `operator.read` และยอมรับตัวกรองเดียวกัน โดย
ส่งคืนยูเนียนเหตุการณ์กิจกรรม V1 ที่มีชื่อ ซึ่งรวมถึงระเบียนการทำงาน เครื่องมือ ข้อความขาเข้า
และข้อความขาออก

```bash
openclaw gateway call audit.activity.list --params '{"channel":"telegram","limit":50}'
```

ผลลัพธ์คือ `{ "events": AuditActivityEventV1[], "nextCursor"?: string }`
ผลลัพธ์เรียงจากใหม่ที่สุดก่อนและจำกัดไว้ที่ 500 ระเบียนต่อคำขอ

RPC `audit.list` ที่จัดส่งแล้วยังคงไม่เปลี่ยนแปลงสำหรับไคลเอนต์การทำงาน/เครื่องมือรุ่นเก่า เมื่อ
`audit.activity.list` ไม่พร้อมใช้งานบน Gateway รุ่นเก่า CLI จะลอง
`audit.list` อีกครั้งเฉพาะเมื่อวิธีแบบเดิมรองรับตัวกรองที่ร้องขอทั้งหมด `--kind message`,
`--direction` และ `--channel` จะล้มเหลวพร้อมข้อความให้อัปเกรดบน Gateway รุ่นเก่า
แทนที่จะถูกละทิ้งโดยไม่แจ้งให้ทราบ

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

- [ประวัติการตรวจสอบ](/gateway/audit)
- [โปรโตคอล Gateway](/th/gateway/protocol#audit-ledger-rpc)
- [เซสชัน](/th/cli/sessions)
- [งาน](/th/cli/tasks)
- [งาน Cron](/th/automation/cron-jobs)
