事件与监控
该服务通过端口10020 上一个专用的只读 WebSocket发布系统事件。 这些事件包括安全触发事件、设备连接、电池警告、 会话生命周期变化以及检查频率异常。
默认网址: ws://localhost:10020
JSON 事件结构
{
"name": "device-safety-triggered",
"category": "device",
"level": "warning",
"data": { "device_family": "inverse", "device_id": "049D", … },
"message": "FOD stage changed: guard -> hard"
}
| 冠军 | 类型 | 说明 |
|---|---|---|
name | 字符串 | 事件的稳定标识符(用于过滤或切换) |
category | 字符串 | device, session, system |
level | 字符串 | info, notice, warning, error, critical, panic |
data | 反对 | 该活动专用的有效载荷 |
message | 字符串 | 人类可读的描述 |
活动类型
与设备相关的事件
| Nom | Niveau | Quand |
|---|---|---|
device-connected | info | 检测到一台新设备,已准备就绪 |
device-disconnected | warning | 一台设备已丢失(断开连接或超时) |
device-battery-low | warning | 门槛下方的VerseGrip无线电池组 |
device-battery-critical | error | VerseGrip 无线电池电量已降至临界水平 |
device-sleep | info | VerseGrip 无线版进入待机模式 |
device-busy | warning | 该设备正被另一个会话使用 |
device-connection-loop | warning | 在某个端口上检测到反复的连接和断开循环 |
安全事件
| Nom | Niveau | Quand |
|---|---|---|
device-safety-triggered | 变量 | 固件发布的安全通知(见下文) |
device-calibration-failed | warning | 已触发 Inkwell 校准,但触控笔无法使用 |
的子类型 device-safety-triggered
Le champ safety_type 活动数据表明了当时的情况:
safety_type | Niveau | 含义 |
|---|---|---|
ebrake_triggered | error | 紧急制动已启动——设备已锁定 |
ebrake_released | notice | 紧急制动已解除 |
fod_stage_changed | warning / info | FOD安全阶段已从低风险转为高风险 |
stall_detected | warning | 检测到发动机积碳 |
stability_ceiling | warning | 已达到稳定上限 |
原因 device-calibration-failed
reason | 含义 |
|---|---|
pen_not_connected | 未连接任何夹具 |
pen_asleep | 无线笔握已配对,但处于待机模式 |
pen_not_attached | 垂直夹持装置已就绪,但霍尔效应传感器读数低于阈值 |
会期活动
| Nom | Niveau | Quand |
|---|---|---|
session-started | notice | 已创建一个 WebSocket 会话 |
session-stopped | notice | 一个 WebSocket 会话已被关闭 |
device-low-control-rate | warning | 会话检查频率已低于建议阈值 |
device-critical-control-rate | error | 检查频率已降至临界水平 |
系统事件
| Nom | Niveau | Quand |
|---|---|---|
system-rate-report | info | 主循环频率的定期报告 |
聆听事件
请参考事件教程,获取一个开箱即用的 Python 监听器,该监听器支持按级别、名称模式和排除条件进行过滤:
# All events
python 10-haply-inverse-events.py
# Only warnings and above
python 10-haply-inverse-events.py --level warning
# Only device events
python 10-haply-inverse-events.py --name "device-*"
# Exclude battery noise
python 10-haply-inverse-events.py --exclude "*battery*"