自动备份监控

我们配置了自动备份。据我所知,它们运行正常,但我们希望使用一个简单的服务(例如 https://healthchecks.io)来监控它们,以确保万无一失。

有没有办法配置一个简单的 API 调用来确认备份已完成?类似这样:

curl -m 10 --retry 5 https://hc-ping.com/your-uuid-here

我想知道是否有备份前和/或备份后完成的钩子可以让我接入?

谢谢

您可以逆向工程 Discourse API 来获取备份列表,然后您需要做一些事情来查看最新的备份是什么以及它存在了多长时间。

如果备份失败,您会收到通知。

我遇到的唯一问题是备份与自动个性化营销操作系统的重启安排在同一时间。

在我看来,这在数据库后台有备份计划时是有效的(因为一天一次不够,对吧?),然后内置的预警系统会滞后,最多 24 小时。但如果 Discourse 因为数据库故障而宕机,它就能作为一个早期预警系统,但因为缓存,用户不会立即看到。

我说得完全错了吗?还是差得很远?

谢谢。如果无法在备份完成后设置“钩子”,那么我认为逆向工程 discourse API 以查找最新备份是最佳选择,这样我们就可以完全控制备份失败时该怎么做……但如果能在备份后添加钩子(Web 或 shell 命令),那就最理想了。

感谢您的帮助 :+1:

如果你想在备份完成后调用一个钩子,我认为你需要创建一个插件。

你真的建议通过备份失败来得知 Discourse 是否宕机吗?

/srv/status 可以给你一个很好的指示,尽管 Discourse 也可能以其他方式损坏。它会指示数据库是否损坏。

我并不是建议其他任何事情,只是建议比一天备份一次更频繁地备份数据库。我只是在想,如果备份出错,一封电子邮件也能起到警示作用。

它不会。只要你有 rails、Redis 和 nginx,它就会显示“ok”。

root@testbeta:~# service postgresql stop
root@testbeta:~# curl https://testbeta.*************.***/srv/status & && echo
ok
2 个赞

有意思。也许当 Rails 启动时 PostgreSQL 宕机了,它就会启动失败。

1 个赞