1. 清理预充值SQL

2. 查日志的脚本
This commit is contained in:
2026-05-25 14:30:09 +08:00
parent 226474b434
commit 20b5d70af9
6 changed files with 1779 additions and 11 deletions

View File

@@ -56,6 +56,47 @@ redis-cli HGETALL polling:stats:package
redis-cli HGETALL polling:init:progress
```
### 4. 跨 Worker 日志查询
线上多实例 Worker 日志分散时,使用仓库内 Rust 工具统一扫描普通日志和 `.gz` 轮转日志。工具默认只输出汇总、命中文件和少量样例,不会把窗口刷满。
```bash
rustc scripts/ops/search-worker-logs.rs -O -o /tmp/jh-logq
/tmp/jh-logq \
--roots "/data/worker-1/logs:/data/worker-2/logs:/data/worker-3/logs:/data/worker-4/logs" \
--iccid 8986000000000000000 \
--date 2026-05-24 \
--interface realname
```
常用接口别名:
| 别名 | 匹配内容 |
|------|----------|
| `realname` | 实名接口、`realStatus`、实名相关业务日志 |
| `flow` / `carddata` | 流量接口、`used`、流量相关业务日志 |
| `card_status` | 卡状态接口、`cardStatus`、卡状态业务日志 |
| `stop` | 停机接口或停机业务日志 |
| `start` / `resume` | 复机接口或复机业务日志 |
排查“23 号有实名同步24 号没有”的建议顺序:
```bash
# 对比两天命中数,先确认是不是所有 Worker 都没有
/tmp/jh-logq --roots "/data/worker-1/logs:/data/worker-2/logs:/data/worker-3/logs:/data/worker-4/logs" \
--iccid 8986000000000000000 --date 2026-05-23 --interface realname --count-only
/tmp/jh-logq --roots "/data/worker-1/logs:/data/worker-2/logs:/data/worker-3/logs:/data/worker-4/logs" \
--iccid 8986000000000000000 --date 2026-05-24 --interface realname --count-only
# 如果 24 号实名没有命中,再看这张卡当天是否仍在跑其他轮询
/tmp/jh-logq --roots "/data/worker-1/logs:/data/worker-2/logs:/data/worker-3/logs:/data/worker-4/logs" \
--iccid 8986000000000000000 --date 2026-05-24
```
注意:旧版本 Gateway 成功请求日志没有稳定输出接口 `path`,脚本对历史日志的 `realname` 匹配会同时使用 `realStatus` 和“实名”业务日志推断。若需要严格按 Gateway 路径查询,生产版本需要在 Gateway 请求/响应日志中输出 `path`
## 告警配置
### 1. 默认告警规则