2 个稳定版本
使用旧的 Rust 2015
1.0.1 | 2020 年 1 月 14 日 |
---|---|
1.0.0 | 2019 年 11 月 4 日 |
Unix API 类别下排名第 884
8KB
103 行(不包括注释)
healthdog
healthdog 是一个实用程序,它定期运行健康检查程序,并宠爱 systemd 的服务 watchdog。
安装
您可以使用 cargo build --release
来构建此项目,然后将 ./target/release/healthdog
复制到 /usr/local/bin/healthdog
。
用法
假设我们希望运行 Docker 并持续监控守护程序是否响应,并在它未响应时重启。
首先,我们创建一个程序来测试 Docker 守护程序,并在成功时返回 0,否则返回 1。
/usr/bin/check-docker
:
#!/bin/sh
set -o errexit
# Check that info works
docker info > /dev/null
# Check that we can read containers from disk
docker ps > /dev/null
然后,我们在 ExecStart
指令前加上 healthdog 并设置我们希望的 WatchdogSec
值。
docker.service
[Unit]
Description=Docker Application Container Engine
[Service]
Type=simple
ExecStart=/usr/local/bin/healthdog --healthcheck=check-docker /usr/bin/dockerd
WatchdogSec=10
Restart=always
[Install]
WantedBy=multi-user.target
该服务将启动 healthdog,它将每隔 5 秒(systemd 时间的一半)运行 check-docker
,并在成功返回时宠爱 watchdog。
依赖关系
~3MB
~54K SLoC