Skip to content

hanshuaikang/Nping

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏎 Nping

Nping is a Ping tool developed in Rust. It supports concurrent Ping for multiple addresses, visual chart display, real-time data updates, and other features.

Nping demo

Featured|HelloGitHub hanshuaikang%2FNping | Trendshift

中文文档

[New Feature] 🛰️ Nping Prometheus Exporter Now Supported

Now, Nping supports exporting ping metrics to Prometheus format. You can use the exporter subcommand to start the exporter server. Learn more

nping exporter www.baidu.com www.google.com -i 1 -p 9100

Then, you can scrape the metrics from http://localhost:9100/metrics

Graph View

Nping demo

Table View

Nping demo

Point View

Nping demo

Sparkline View

Nping demo

Exporter Mode

Now Nping supports exporting ping metrics to Prometheus format. you can use exporter subcommand to start the exporter server.

nping exporter www.baidu.com www.google.com -i 1 -p 9100

Then, you can scrape the metrics from http://localhost:9100/metrics

You can use grafana to visualize the data

Nping demo

Installation

MacOS Homebrew

brew tap hanshuaikang/nping
brew install nping

nping --help

Feature:

  • TCP Ping support
  • IP range Ping support

Roadmap:

  • Optimize UI interface, add more dynamic effects.

Usage

nping www.baidu.com www.google.com www.apple.com www.sina.com -c 20 -i 2

nping --help

🏎  Nping mean NB Ping, A Ping Tool in Rust with Real-Time Data and Visualizations

Usage: nping [OPTIONS] <TARGET>...

Arguments:
  <TARGET>...  target IP address or hostname to ping

Options:
  -c, --count <COUNT>          Number of pings to send [default: 65535]
  -i, --interval <INTERVAL>    Interval in seconds between pings [default: 0]
  -6, --force_ipv6             Force using IPv6
  -m, --multiple <MULTIPLE>    Specify the maximum number of target addresses, Only works on one target address [default: 0]
  -v, --view-type <VIEW_TYPE>  View mode graph/table/point/sparkline [default: graph]
  -o, --output <OUTPUT>        Output file to save ping results
  -h, --help                   Print help
  -V, --version                Print version

Exporter Usage

nping exporter www.baidu.com www.google.com -i 1 -p 9100

./nping exporter --help
Exporter mode for monitoring

Usage: nping exporter [OPTIONS] <TARGET>...

Arguments:
  <TARGET>...  target IP addresses or hostnames to ping

Options:
  -i, --interval <INTERVAL>  Interval in seconds between pings [default: 1]
  -p, --port <PORT>          Prometheus metrics HTTP port [default: 9090]
  -h, --help                 Print help

Acknowledgements

Thanks to these people for their feedback and suggestions for 🏎Nping!

| ThatFlower | zx4i | snail2sky | shenshouer | vnt-dev | qingyuan0o0 | Onlywzr

Thanks to these self-media for reposting and paying attention to 🏎Nping!

| 阮一峰的网络日志 |Rust 中文社区 | 公众号:奇妙的linux世界 | 公众号:IT运维技术圈 | X:@geekbb | 公众号:一飞开源 | 公众号: 开源日记

Star History

Star History Chart

About

🏎 Nping mean NB Ping, A Ping Tool in Rust with Real-Time Data and Visualizations

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages