TiDB Dashboard 慢查询页打开失败,慢日志总量很大时怎么处理?

【TiDB 使用环境】生产环境
【TiDB 版本】v7.1.3
【部署】多 TiDB Server,慢日志保留约 30 天,单节点多个文件合计数 GB
【问题】
Dashboard「慢查询」页面报错/打不开,但节点上慢日志文件本身还在。
想问:
1)是解析超时/内存问题吗?有没有官方建议的保留策略?
2)能否只分析最近 N 天而不改全局保留?
3)除 Dashboard 外,有没有推荐的离线分析方式?
谢谢。

Dashboard 解析数 GB 日志会超时。设 tidb_slow_log_file_max_days=3 缩减保留,或改 slow-query-file 单独存放并轮转。离线分析用 pt-query-digest 直接解析慢日志文件,不经过 Dashboard 不触发超时。

  1. 大概率是解析超时。建议将慢日志保留缩短到7天,用 set global tidb_slow_log_threshold=... 控制阈值,或调整 tidb_expensive_query_time_threshold 减少记录量。生产环境保留30天确实太多了,官方推荐7-14天。

如果慢查询非常多,30 天太长了,可以缩短到 3-7 天

打不开的两大核心诱因

  1. 内存溢出 Dashboard 服务(pd/tidb-dashboard 独立实例)读取多节点海量慢日志全部加载进内存做解析、统计、排序;几十 GB 日志会瞬间打满内存,进程被系统 kill 或内部内存限制直接中断请求,页面转圈 / 500 报错。
  2. 查询解析超时 前端默认请求超时窗口有限,全量扫描、聚合、分组统计耗时过长,网关 / 浏览器 /nginx 提前断开连接,页面加载失败。