sdwd 1.0.0

SystemD WatchDog utility crate
Documentation

sdwd

MIT licensed

sdwd - SystemD WatchDog crate. Provides simple watchdog notification utilities for easy watchdog management.

Usage

sdwd-test.service:

[Unit]
Description=sdwd test daemon

[Service]
ExecStart=sdwd-test
WatchdogSec=30s
Restart=on-failure

src/main.rs:

extern crate sdwd;

fn main() {
    let recommended_timeout = sdwd::recommended_timeout().unwrap();
    println!("Recommended timeout: {:?}", recommended_timeout);
    let _ = sdwd::start_watchdog_thread(recommended_timeout);

    loop {
        use std::thread;
        use std::time::Duration;
        thread::sleep(Duration::from_secs(5));
        println!("Printing this message once in five seconds");
    }
}

Read about watchdogs

https://www.freedesktop.org/software/systemd/man/systemd.service.html

https://www.freedesktop.org/software/systemd/man/sd_watchdog_enabled.html

License

This project is licensed under the MIT license.