3 个版本 (破坏性更新)

0.3.0 2021年4月25日
0.2.0 2021年4月23日
0.1.0 2021年4月22日

#10 in #speed-test

MIT 许可证

23KB
537 代码行

nimo

网络接口监控器

这是什么?

此工具可帮助您测试互联网连接的可靠性和速度。

先决条件

您需要安装 speedtest.net cli。至少运行一次,您需要接受他们的 EULA 以及其他内容。

如果您计划自动执行速度和ping测试,您还需要以自动执行 nimo 的用户身份手动运行 speedtest cli。

安装

基本安装很简单

cargo install nimo

Shell 完整性

要生成shell完整性,请运行

$ nimo emit completion <your shell>

这将在 /tmp 中创建一个包含您的shell完整信息的文件。您可以将该文件复制到需要的地方。

如果您只想将完整性信息重定向到文件,您可以使用 --stdout 选项,该选项确实会将其打印到 stdout。

Systemd

pingspeed-test 子命令旨在定期执行。如何实现由您决定。然而,提供了 systemd 服务和定时器文件以简化此过程。

您可以简单地这样做

# cp <path to nimo> /usr/local/bin
$ nimo emit systemd
# cp /tmp/nimo/systemd/* /etc/systemd/system
# systemctl enable --now nimo-ping.timer nimo-speed-test.timer

配置

配置存储在 /etc/nimo.toml~/.config/nimo.toml 中。后者中的值优先。所有可用配置选项及其默认值

# the path to the data file
data = "/var/lib/nimo/data"

[ping]
count = 16 # how many pings to send to each target

[ping.targets]
cloudflare = "1.1.1.1"
google = "8.8.8.8"

[speed_test]
enabled = false # if you want to run speed tests, set this to true
retries = 4

用法

$ nimo --help
nimo 0.3.0
Adrian Wannenmacher <[email protected]>
Network Interface MOnitor

USAGE:
    nimo <SUBCOMMAND>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    emit          Emits some provided system configuration files into `/tmp`
    help          Prints this message or the help of the given subcommand(s)
    ping          Tests current internet connectivity utilizing pinging
    report        Prints a few simple evaluations to the command line
    speed-test    Tests current internet speed utilizing speedtest.net

依赖项

~14–27MB
~379K SLoC