1. PSI告警基础概念
1.1 PSI(策略信号接口)的定义
PSI(Policy Signal Interface,策略信号接口)是风控规则引擎中用于承载策略执行结果与外部系统信号之间交互的标准化数据通道。它定义了规则引擎在完成策略运算后,如何将命中规则、风险等级、处置动作等关键信号封装为统一格式,并输出至下游告警、决策、处置等模块。
| 维度 | 说明 |
|---|---|
| 信号来源 | 规则引擎内部策略节点、外部第三方数据源、实时计算特征 |
| 信号格式 | JSON/Protobuf 结构化消息,包含事件ID、策略ID、命中规则列表、风险评分、处置码 |
| 信号用途 | 触发告警、驱动处置流程、写入审计日志、回放验证 |
| 接口特性 | 幂等、可重放、低延迟(P99 < 50ms) |
关键认知:PSI 不是简单的日志输出,而是规则引擎与外部世界之间的契约层。回放验证的核心就是检验这个契约是否被正确履行。
1.2 告警触发机制
告警触发机制定义了 PSI 信号在何种条件下被提升为告警事件。触发条件由告警规则和阈值策略共同决定,通常包含以下三种模式:
- 阈值触发:风险评分超过预设阈值(如 > 85 分)时立即触发告警。
- 规则命中触发:特定高危规则(如“IP 黑名单命中”)被命中时无条件触发。
- 组合条件触发:多个信号同时满足条件(如“命中规则数 > 3 且 设备指纹异常”)时触发。
触发后的信号会进入告警队列,经过去重、聚合、优先级排序后,最终生成告警记录。以下 SVG 展示了从 PSI 信号产生到告警触发的完整链路:
1.3 告警生命周期
一个 PSI 告警从产生到最终关闭,会经历多个状态阶段。理解生命周期是进行回放验证的前提——只有知道每个阶段的数据特征,才能设计有效的验证用例。
| 阶段 | 状态 | 说明 | 回放关注点 |
|---|---|---|---|
| 1. 产生 | NEW | PSI 信号触发告警规则,生成初始告警记录 | 信号字段是否完整、时间戳是否准确 |
| 2. 确认 | ACKNOWLEDGED | 风控人员或自动流程确认告警真实性 | 确认动作是否被正确记录 |
| 3. 处置 | IN_PROGRESS | 执行处置动作(如拦截、人工审核、加白) | 处置指令是否与告警信号匹配 |
| 4. 关闭 | CLOSED | 处置完成,告警关闭(可附带关闭原因码) | 关闭原因是否合理、是否超时 |
| 5. 归档 | ARCHIVED | 告警数据进入冷存储,仅用于审计和回放 | 归档数据是否可被正确还原 |
常见陷阱:很多团队只关注 NEW 阶段的告警,忽略了 ACKNOWLEDGED 和 CLOSED 阶段的信号回放验证。这会导致处置链路断裂,回放结果与线上表现不一致。
以下 SVG 展示了告警生命周期的状态流转:
1.4 PSI 告警的核心数据字段
在进行回放验证时,以下字段是必须校验的关键字段:
{
"eventId": "evt_20250321_001234", // 事件唯一ID
"psiVersion": "2.1.0", // PSI 协议版本
"strategyId": "str_risk_loan_v3", // 策略ID
"hitRules": ["r001", "r007", "r023"], // 命中规则列表
"riskScore": 92, // 风险评分(0-100)
"dispositionCode": "BLOCK", // 处置码
"triggerTimestamp": 1742544000000, // 触发时间戳(毫秒)
"lifecycle": "NEW", // 当前生命周期状态
"sourceSystem": "rule-engine-01" // 来源系统标识
}
回放验证要点:在回放过程中,应逐字段比对原始 PSI 信号与回放结果。重点关注
hitRules 的顺序、riskScore 的精度、dispositionCode 的映射关系。任何字段的偏差都可能导致下游处置逻辑异常。