NATSaudit.event.published审计事件发布(JetStream 事件)
Try it 面板需要启用 JavaScript。
各业务服务发布、audit_service 消费持久化的统一审计事件流。发布方不等待落库,落库由消费侧完成。此方向为单向流,无回复。
Request Payload
消息格式:JSON
| Name | Data Type | Required | Description |
|---|---|---|---|
| eventId | string | Yes | 事件 ID(ULID,JetStream 消息去重键) |
| actorId | string | No | 行为主体用户 ID(系统动作为空) |
| action | string | Yes | 动作标识,如 auth.login.password / admin.user.freeze |
| resource | string | Yes | 涉及资源,如 user/<userId>、order/<orderId> |
| result | string | Yes | success / failure |
| ip | string | No | 来源 IP(可选) |
| detail | string | No | 补充信息(须脱敏,不含敏感数据) |
| occurredAt | string | Yes | 发生时间(ISO 8601 UTC) |
type RequestBody = {
/** 事件 ID(ULID,JetStream 消息去重键) */
eventId: string
/** 行为主体用户 ID(系统动作为空) */
actorId?: string
/** 动作标识,如 auth.login.password / admin.user.freeze */
action: string
/** 涉及资源,如 user/<userId>、order/<orderId> */
resource: string
/** success / failure */
result: string
/** 来源 IP(可选) */
ip?: string
/** 补充信息(须脱敏,不含敏感数据) */
detail?: string
/** 发生时间(ISO 8601 UTC) */
occurredAt: string
}{
"eventId": "01JD8SNXER6Y9Z5FZ",
"actorId": "01JD8SEGQ0P9N2XK4L7VDH3T6C",
"action": "auth.login.password",
"resource": "user/01JD8SEGQ0P9N2XK4L7VDH3T6C",
"result": "failure",
"ip": "198.51.100.7",
"detail": "密码错误",
"occurredAt": "2026-10-14T07:58:12Z"
}Examples
{
"eventId": "01JD8SNXER6Y9Z5FZ",
"actorId": "01JD8SEGQ0P9N2XK4L7VDH3T6C",
"action": "auth.login.password",
"resource": "user/01JD8SEGQ0P9N2XK4L7VDH3T6C",
"result": "failure",
"ip": "198.51.100.7",
"detail": "密码错误",
"occurredAt": "2026-10-14T07:58:12Z"
}
Remarks
流语义:JetStream 持久化、按 eventId 去重、durable consumer 断点续消费——事件不丢、可重放。事件契约(字段与动作标识枚举)由 libs/common 统一约束;detail 进流前必须脱敏,验证码、令牌、支付凭据等敏感值严禁出现。发布方与消费方不直接交互,audit_service 持久化结果不回流。