|
|
|
@ -2,6 +2,37 @@ |
|
|
|
|
|
|
|
## 2025-08-11 |
|
|
|
|
|
|
|
### WebSocket适配器方法跟踪日志 |
|
|
|
**问题**:需要为 `_heartbeat_loop` 和 `_send_loop` 方法添加入口跟踪日志,便于调试和监控 |
|
|
|
|
|
|
|
**解决方案**:在方法入口处添加简洁的debug级别日志 |
|
|
|
|
|
|
|
**文件变更**: |
|
|
|
- 更新 `app/core/websocket/adapter.py` - 为关键方法添加入口跟踪日志 |
|
|
|
|
|
|
|
**修改内容**: |
|
|
|
```python |
|
|
|
async def _send_loop(self): |
|
|
|
"""发送循环:优先处理优先级Channel,其次处理普通出站Channel""" |
|
|
|
logger.debug(f"发送循环启动: {self.client.name} (out:{self.outbound_channel.name} / in:{self.inbound_channel.name})") |
|
|
|
try: |
|
|
|
# ... 现有代码 ... |
|
|
|
|
|
|
|
async def _heartbeat_loop(self): |
|
|
|
"""心跳循环:以优先级消息写入,并由发送循环优先处理""" |
|
|
|
logger.debug(f"心跳循环启动: {self.client.name} (out:{self.outbound_channel.name} / in:{self.inbound_channel.name}) 间隔:{self.heartbeat_interval}秒") |
|
|
|
try: |
|
|
|
# ... 现有代码 ... |
|
|
|
``` |
|
|
|
|
|
|
|
**优化效果**: |
|
|
|
- ✅ 便于跟踪WebSocket适配器的生命周期 |
|
|
|
- ✅ 提供关键方法的执行状态信息 |
|
|
|
- ✅ 日志简洁,不会产生过多输出 |
|
|
|
- ✅ 包含客户端名称和通道信息,便于定位问题 |
|
|
|
|
|
|
|
### 应用启动优化 - 移除不必要的WebSocket Channel初始化 |
|
|
|
|
|
|
|
### 应用启动优化 - 移除不必要的WebSocket Channel初始化 |
|
|
|
**问题**:`startup_event` 中初始化默认WebSocket Channels是不必要的,因为: |
|
|
|
1. Channels是在需要时才创建的(按需创建) |
|
|
|
|