是否可以监视 systemd 服务(单元),如果它产生日志,如果没有日志产生(假设 5 分钟),则重新启动该服务?
答案1
因此,您可以根据以下场景放置逻辑:
[1] 检查pid是否存在,如果不存在则重新启动应用程序。
[2] 如果一段时间没有生成,请检查日志(检查您要设置的阈值),重新启动服务。
journalctl <your application binary>
[3] 如果您的应用程序支持健康检查端点,您可以在其之上编写。
实际上我们在检查日志时需要识别空闲和不工作之间的区别,所以我认为检查单个事物是不够的。