2 releases (1 stable)

Uses old Rust 2015

1.0.0 Jun 15, 2019
0.1.0 Sep 14, 2018

#542 in Unix APIs

Download history 291/week @ 2023-11-28 88/week @ 2023-12-05 147/week @ 2023-12-12 77/week @ 2023-12-19 13/week @ 2023-12-26 138/week @ 2024-01-02 87/week @ 2024-01-09 105/week @ 2024-01-16 138/week @ 2024-01-23 133/week @ 2024-01-30 153/week @ 2024-02-06 141/week @ 2024-02-13 173/week @ 2024-02-20 159/week @ 2024-02-27 223/week @ 2024-03-05 249/week @ 2024-03-12

822 downloads per month

MIT and LGPL-2.1-or-later WITH GCC-exception-2.0

5KB

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.

Dependencies

~1MB
~16K SLoC