1 个稳定版本
1.0.0 | 2023年1月31日 |
---|
#356 在 日期和时间
6KB
55 行
stampiotic
检查 stampfile 新鲜度的轻量级工具。
安装
使用以下命令从源安装
$ cargo install stampiotic
您可以使用 Nightly 的 build-std 功能构建优化后的二进制文件,节省约 200 KiB。
$ cargo +nightly build --release
-Z build-std=std,panic_abort
-Z build-std-features=panic_immediate_abort
--target x86_64-unknown-linux-gnu
为什么?
启动一个 shell(或者更糟糕的是,一个 Python 或 Perl 脚本)比调用一个小二进制文件要长得多,为什么要费那个劲?某些容器甚至可能默认不包含 shell。 stampiotic
有一个依赖项:libc。
stampiotic
是在 Kubernetes 中实现看门狗定时器的特别有用的工具。旧服务可以定期修改 stampfile,然后可以使用 stampiotic
作为定期 Kubernetes 健康检查来检查它。
用法
$ stampiotic max-age stampfile [...]
例如。
$ stampiotic 60s /run/foo/foo-server.stamp 60s
$ stampiotic '30 min' make.stamp
$ stampiotic 1d long-process-1.stamp long-process-2.stamp
File "long-process-2.stamp" is too old (12345s > 86400s)
$ echo $?
1
最大年龄解析
持续时间由 humantime
解析。
单位 | 支持的后缀 | 定义 |
---|---|---|
纳秒 | nsec /ns |
10−9 秒 |
微秒 | usec /us |
10−6 秒 |
毫秒 | msec /ms |
10−3 秒 |
秒 | seconds /second /sec /s |
1 秒 |
分钟 | minutes /minute /min /m |
60 秒 |
小时 | hours /hour /hr /h |
3600 秒 = 60 分钟 |
天 | days /day /d |
86,400 秒 = 24 小时 |
周 | weeks /week /w |
604,800 秒 = 7 天 |
月 | months /month /M |
30.44 天 = 2630016 秒 |
年 | years /year /y |
365.25 天 = 31557600 秒 |
依赖项
~43KB