Podsync 监控告警:避免podsync故障导致播客长时间停更

技术专业 · 今天

在 NAS 上自建 Podsync 是个很实用的方案,但有个隐患——网站的反爬机制会让 Cookie 静默失效,yt-dlp 开始报错,而你可能几周后才发现播客已经停止更新了。

本文记录如何搭建一个简单的监控脚本,在出现问题时第一时间通过即时通讯工具推送告警,并每日定时发送下载统计日报。


背景:Podsync 会遇到哪些问题

运行一段时间后,日志里最常见的错误有三类:

Cookie 失效

The provided YouTube account cookies are no longer valid.
They have likely been rotated in the browser as a security measure.

Google 会在浏览器使用过程中自动轮换 Session Cookie,导致之前导出的 cookies.txt 失效。正常情况下 Cookie 能用 1~3 个月,但如果频繁使用,可能 2~4 周就会失效。

机器人验证

ERROR: Sign in to confirm you're not a bot.

Cookie 失效后 yt-dlp 没有登录凭证,导致访问直接拒绝请求。

IP 限流

WARN: server responded with a 'Too Many Requests' error

NAS 的出口 IP 请求频率过高被限流,多个 Podsync 容器同时运行时更容易触发。

这三类错误都是静默失败——Podsync 会继续运行,日志里有报错,但不会主动通知你,播客就这么悄悄停更了。


配置定时任务

在 Synology DSM 中配置:控制面板 → 任务计划 → 新增 → 计划的任务 → 用户定义的脚本

异常检测(每10分钟)

设置项
任务名称podsync-check
用户root
执行频率每天,每 10 分钟重复一次
脚本内容/volume1/docker/podsync/podsync_monitor.sh check

早间日报(北京时间 08:00)

设置项
任务名称podsync-report-morning
用户root
执行时间每天 08:00
脚本内容/volume1/docker/podsync/podsync_monitor.sh report

晚间日报(北京时间 19:00)

设置项
任务名称podsync-report-evening
用户root
执行时间每天 19:00
脚本内容/volume1/docker/podsync/podsync_monitor.sh report

告警示例

异常告警(check 触发):

⚠️ Podsync 异常告警
🕐 2026-05-05 14:32:10
🍪 podsync-a: Cookie 已失效,需要重新导出
🤖 podsync-a: YouTube 机器人验证失败

每日日报(report 触发):

📊 Podsync 日报
🕐 2026-05-05 08:00:01
📅 统计范围: 过去24小时

📁 podsync-a
  ✅ 成功: 12 集
  ❌ 失败: 2 次
  🚫 限流: 1 次
  🍪 Cookie失效: 0 次

小结

这套监控方案的核心思路很简单:定期扫描日志关键字,有问题就推送通知,同时每日统计下载情况做健康检查。

有了这个脚本,Cookie 失效、限流等问题能在 10 分钟内得到通知,不用再等到发现播客停更才去排查原因。

Theme Jasmine by Kent Liao