#监控 #控制 #访问 #通信 #信息 #API #chrony

chrony-candm

用于与 Chrony 控制与监控接口通信的库

3 个版本

0.1.2 2024 年 2 月 26 日
0.1.1 2021 年 12 月 24 日
0.1.0 2021 年 11 月 1 日

156日期和时间

Download history 58/week @ 2024-04-03 12/week @ 2024-04-10 5/week @ 2024-04-17 7/week @ 2024-04-24 1/week @ 2024-05-01 2/week @ 2024-05-08 5/week @ 2024-05-15 2/week @ 2024-05-22 6/week @ 2024-05-29 24/week @ 2024-06-05 33/week @ 2024-06-12 61/week @ 2024-06-19 70/week @ 2024-06-26 81/week @ 2024-07-03 153/week @ 2024-07-10 68/week @ 2024-07-17

每月 394 次下载
clock-bound-d 中使用

GPL-2.0-only

70KB
2K SLoC

chrony-candm

chrony-candm 是一个 Rust 包,用于与 Chrony 的控制与监控接口通信。它提供了对 Chrony 状态信息的编程访问,这些信息通常需要从 chronyc 的输出中抓取。有关 API 文档,请参阅 docs.rs

安全

有关更多信息,请参阅 CONTRIBUTING

许可协议

本库受 GNU 通用公共许可证版本 2.0 的许可。有关详细信息,请参阅 LICENSE。有关第一方和第三方版权声明和致谢,请分别参阅 NOTICETHIRD-PARTY

chrony-candm 是亚马逊的社区贡献,与 Chrony 项目无关联。


lib.rs:

这个包是一个用于与 Chrony 的控制与监控接口通信的库。它提供了对信息的编程访问,这些信息通常需要从 chronyc 的输出中抓取。

对于涉及本地运行的Chrony守护进程的非特权查询的简单用例,您将主要通过具有server参数为&LOCAL_SERVER_ADDR的[blocking_query]函数进入库。对于特权命令,请使用[blocking_query_uds]代替(这需要写入/var/run/chrony目录的权限)。

use chrony_candm::request::RequestBody;
use chrony_candm::reply::ReplyBody;
use chrony_candm::{blocking_query,LOCAL_SERVER_ADDR};

let request_body = RequestBody::Tracking;
let options = Default::default();
let reply = blocking_query(request_body, options, &LOCAL_SERVER_ADDR)?;
if let ReplyBody::Tracking(tracking) = reply.body {
    println!("The current RMS offset is {} seconds.", tracking.rms_offset);
}

异步应用程序可以使用[Client]代替独立的blocking_queryblocking_query_uds函数。

依赖关系

~2–10MB
~111K SLoC