
宽带卡不卡,凭感觉吵不出结果:现在测一次很快,不代表晚高峰也快;客服说没问题,不代表过去一周都没掉速。痛点就是缺一份连续记录。本篇讲 Speedtest Tracker 怎么定时测速、存下历史结果,并用网页界面与接口查趋势,适合想长期盯着一条宽带或服务器出口的人。据 README 与仓库说明整理,未实测处均按仓库口径表述。
软件信息表
| 软件名 | Speedtest Tracker v2 |
| 软件类型 | 自托管网络测速记录工具 |
| 技术构成 | Go 服务加 Nuxt 网页界面,Go 服务同时托管静态前端 |
| 测速引擎 | Ookla Speedtest CLI |
| 部署方式 | Docker Compose 部署,也支持直接运行二进制 |
| 数据库 | SQLite 或 PostgreSQL |
| 查询与接入 | 网页界面、分页与时间序列接口、OpenAPI 与 Swagger 界面、Prometheus 指标、OpenTelemetry 追踪 |
| 源码获取 | 文末 GitHub 仓库按钮 |
先定部署方式:结论先行再动手
结论先行:家庭或单条宽带盯趋势,选 SQLite 单机部署最省事;要长期存、多人或多服务共用,再选 PostgreSQL;只是临时验证一次,就不要急着上数据库服务。
| 部署方式 | 优点 | 适合谁 | 注意点 |
| SQLite 单机 | 一个文件就是数据库,备份就是拷文件 | 家庭宽带、单台服务器出口 | 数据量大了要自己管文件与备份 |
| PostgreSQL 独立库 | 独立数据库服务,管理与持久化更规范 | 办公室网络、长期运行的生产部署 | 要多维护一个数据库服务与连接配置 |
| 二进制直接运行 | 不依赖容器,环境变量加本地配置文件就能跑 | 已经有现成服务器、不想用容器的人 | 同样要满足 Ookla 命令行工具的运行条件 |
推荐取舍:新手先用 Docker Compose 加 SQLite 跑起来,看到第一周趋势曲线后再决定要不要迁到 PostgreSQL。部署方式是成本问题,不是能力问题,先跑起来比先选完美更重要。
安装关键步骤
- 按 README 准备 Docker Compose 环境,配置文件可同时启动应用、数据库与本地追踪检查用的 Jaeger。
- 启动前必须设置 ACCEPT_EULA 等于 true,确认接受 Ookla 的最终用户协议与隐私协议,否则按 README 要求无法启动。
- 为 RUNTIME_PSK 设置一个稳定且足够强的密钥,这个密钥要在重启与升级期间保持不变,丢了或换了都可能影响运行状态。
- 把数据库卷或 SQLite 文件放到持久化路径,不要让数据跟着容器重建一起消失。
- 启动后先手动触发一次测速,确认网页界面能看到最新结果,再把定时计划交给自动运行。
装完必改设置
- 测速定时计划。入口:应用的定时配置,支持 cron 表达式。体感差别:测速太密会给网络与服务器加负担、还可能触碰网络策略,测速太稀又抓不到晚高峰掉速;先定一个能覆盖早晚高峰的间隔,跑一周再调。
- 数据库选择。入口:部署配置中的数据库驱动选项。体感差别:SQLite 是开箱即用的轻量选择,PostgreSQL 是独立服务选择;选错的代价是后期迁移,选对的收益是备份与管理都顺手。
- 手动触发与结果查看。入口:网页界面与接口。体感差别:网页界面适合日常看趋势,分页结果、最新结果与时间序列接口适合把数据接到自己的脚本或看板里,两者分工不同。
- 指标与追踪接入。入口:Prometheus 指标配置与 OpenTelemetry 的 OTLP 端点配置。体感差别:接进已有观测体系后,测速结果就能和服务器监控放在同一张图里看;不接的话,趋势就只能在应用自己的界面里看。
- 密钥与持久化复核。入口:环境变量与数据卷配置。体感差别:密钥稳定、数据卷持久化,这两项做对了,升级与重启才不会丢历史;做错了,趋势曲线可能在某次重启后从头开始。
注意事项与常见问题
- 问:为什么启动不了,一直卡在协议确认。答:据 README 说明,启动前必须确认接受 Ookla 的最终用户协议与隐私协议,并设置 ACCEPT_EULA 等于 true。漏了这一项就按要求无法启动,先检查环境变量有没有真正生效。
- 问:测速结果忽高忽低,能信吗。答:单次测速受当时网络占用、测速节点、设备负载影响,价值在趋势不在单点。先看一周曲线里的固定时段表现,再判断是宽带问题还是某一时段的偶发波动。
- 问:SQLite 用久了想换 PostgreSQL 怎么办。答:据 README 说明,两种数据库驱动都在支持范围内,但切换涉及数据迁移与连接配置。动手前先备份原数据库文件或原库,确认新库连接无误后再切流量。
- 问:追踪数据越存越多怎么办。答:如果启用了 OpenTelemetry 追踪,要确认 OTLP 端点可达,并控制追踪数据的保存策略。追踪是辅助观测,不是测速本身,保存策略失控会反过来拖累部署。
- 问:升级前要注意什么。答:升级前检查环境变量、数据库迁移说明与 Ookla 命令行工具的兼容性,用 PostgreSQL 时还要维护数据库连接与备份。密钥保持稳定是升级不翻车的前提之一。
适合谁与横向对比
适合希望长期观察家庭、办公室或服务器网络质量的个人用户、系统管理员与自托管用户,尤其适合已经在用 Docker Compose、PostgreSQL、Prometheus 或 OpenTelemetry 的环境。不适合只想随手测一次速度、或者不接受 Ookla 协议要求的人。
与在线测速网站相比,Speedtest Tracker 的分工边界很清楚:在线测速解决的是一次性问题,测完就走;Speedtest Tracker 解决的是趋势问题,靠定时加历史记录回答宽带在什么时段变差。需要向运营商举证、或者想确认换套餐有没有效果的人,选后者;只是想知道现在网速多少的人,前者就够了。
GitHub 国内访问较慢,如打不开可多刷新几次

关注「软件教程管家」
回复软件名即取即下:网盘下载链接 + 提取码,一步直达,不用再跳转。
本站资源仅供个人学习交流,请勿用于商业用途。软件与资料版权归原作者所有;如有侵权,请通过公众号「软件教程管家」联系我们,我们将在 24 小时内下架处理。查看免责声明 ›







