drain_events
Consume buffered probe hook events from the queue, optionally filtering by event kind across the entire queue; non-matching events stay queued in original order.
Instructions
取走探针缓冲的 Hook 事件(调用记录)。kind 过滤作用于整条队列(不是只看队首)。
不匹配的事件会原序留在队列里,不会被吞;超出 limit 的匹配事件同样留下。
语义与 AiMod 的 /v1/events?after= 一致:取走即消费。 想持续观察就每隔一会儿调用一次,累加统计即可。
kind 过滤的是整条队列,不是只看队首那一条 —— 注入后队首恒有一条
notice(probe_ready),若只在队首判断,kind="hook" 会一条都取不到
(返回 ok:true + 空列表,调用方会误判成「Hook 没触发」而去排查落点)。
不匹配的事件按原序留在队列里,不会被吞;超出 limit 的匹配事件同样留下。
Args: limit: 本次最多取多少条。 kind: 只取某类事件(如 "hook" / "notice" / "log")。
Returns: {ok, returned, pending_approx, dropped, events: [...]} 事件形如 {type, id, label, phase: enter/leave, seq, thread, from, args, retval}
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | ||
| limit | No |