[HN Gopher] Gping - ping, but with a graph
___________________________________________________________________
Gping - ping, but with a graph
Author : pabs3
Score : 285 points
Date : 2023-07-01 10:39 UTC (12 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| 29athrowaway wrote:
| See also:
|
| - ministat
|
| - gnuplot
|
| - https://www.brendangregg.com/dtkshdemos.html
| nomel wrote:
| Off topic, but it seems that we've really stagnated, on the
| terminal front, especially considering how many clients have full
| GPU acceleration these days.
|
| How has there not been some basic image/data steaming built in,
| after all of these decades? Why am I writing scripts that parse
| human text output?
| MereInterest wrote:
| If you want to have a program that outputs binary data to
| stdout, then accept binary data on stdin, there's no reason not
| to. It isn't the standard for historical reasons, and because
| text is easier to bootstrap from manually-inspected results
| into a script.
|
| For example, the easiest way I've found to render generated
| images into a gif or mp4 is to pipe a sequence of ppm-encoded
| images into ffmpeg.
| aflag wrote:
| Because you can | grep text output and that's great.
| doersino wrote:
| Vaguely related (also "ping, but with a graph", but different):
| https://github.com/denilsonsa/prettyping
| jflitt wrote:
| Awesome! Thanks for building this and sharing. I did something
| similar https://github.com/jflittner/ping_visualizer not too long
| ago, but yours looks way better!
| pqdbr wrote:
| Really nice that it allows you to pass a list of hosts at the
| same time, and it will plot them in the same graph:
|
| For instance, `gping mydomain.com google.com` is really nice for
| a quick sanity check (is it my Wifi or my hosting provider).
| dredmorbius wrote:
| mtr (Matt's traceroute) is another great utility for this.
|
| It doesn't graph output, but _does_ show connectivity ,
| latency, packet loss, and variance on a set of hosts between
| your IP and the destination.
|
| <https://www.bitwizard.nl/mtr/>
|
| (Previously noted in this thread by westurner:
| <https://news.ycombinator.com/item?id=36549005>)
| elishah wrote:
| I never want to disparage people's efforts, but it is a
| recurring theme for people to unknowingly reinvent mtr.
| dredmorbius wrote:
| Another lens is that reinventing or independently arriving
| at existing (and well-regarded) ideas, methods, systems,
| etc., is a validation of your own creative process.
|
| It's _very_ difficult to stay on top of all available
| tools. I find that so long as it 's something I can do with
| shell tools, awk, or other scripting environments I'm often
| better of _inventing_ than _searching_ as when you create
| your own tools you 're addressing your own specific needs
| and constraints, whilst when _evaluating_ a third-party
| tool, you have to undergo much the same process ( "does
| this do what I want it to do?") often _without_ the ability
| to readily modify the tool to fit a _specific_ use case.
|
| That's not _always_ true, but it often is.
|
| And of course, creation helps expand your own creative
| abilities.
|
| If mtr is frequently re-invented, that's a strong
| validation of the original concept as well.
| ktm5j wrote:
| It does have some visualization capabilities if you hit 'd'
| once or twice. I think it looks nice!
| dredmorbius wrote:
| Thanks.
|
| I know there's a GUI version, though I'm almost always
| using the CLI/terminal interface myself. So I could be
| missing some things.
| oxygen_crisis wrote:
| The charting display mode is a CLI/terminal feature,
| though, not a GUI one.
| dredmorbius wrote:
| I may damned well have to read the man page and do some
| looking at stuff.
|
| Oh, holy hell, this is pretty cool!
|
| Thanks!
|
| (I've ... only been using mtr for ~2 decades.)
| stormed wrote:
| Wow! That's super handy actually. I'm definitely gonna keep
| note of doing this in the future for my own projects
| ape4 wrote:
| Its a "super-power" (as the page says)
| orf wrote:
| You can also pass commands instead of hosts (for example
| running "curl google.com").
| DrPhish wrote:
| I love gping, but wish there was more of an in-depth
| info/manpage. The one it ships with doesn't explain much (What's
| t/o, for example? How are things calculated?), and the github
| page doesn't help much either.
| orf wrote:
| Yeah, this is definitely something I want to improve on. The
| project is used a lot more than I originally expected, so
| documentation is a bit scarce.
|
| t/o is timeouts by the way
| plingbang wrote:
| The plot looks a bit weird when I ping my server ;)
| gping ftlping.net
| LinuxBender wrote:
| I like the graph and being able to use multiple hosts. I could
| see some benefit to creating bash functions that use gping + cmd
| + curl since HTTPS will be reachable in more places than ICMP
| which is often blocked at the last few hops past a datacenter
| firewall and ICMP numbers can be misleading since most operating
| systems rate limit it and most routers deprioritize it based on
| backplane CPU load which has no bearing on the ability to forward
| packets.
|
| I noticed that if I used "-4" with a host that has both ipv4 and
| ipv6 addresses it still pings the ipv6 address despite displaying
| the ipv4 address. Do others here experience that? I'm on version
| 1.8.0.
| [deleted]
| thumbuddy wrote:
| Love it
| vanous wrote:
| TIL it can also measure and graph the execution time for a list
| of commands rather than pinging hosts:
|
| host can be a command like curl google.com if the --cmd flag is
| used.
| sacnoradhq wrote:
| In the olden days before IPv6, geoip of IPv4 used to work and
| there was traceroute-like utility on Windows that could plot IPs
| on maps called NeoTrace Pro. IIRC, it also included something of
| a ping map where it would reping every middlebox. Nowadays, not
| all middleboxes respond and there is often too much carrier
| overlaying and SDN flow management for IPs to map to any specific
| physical location like it were a land phone line when every
| little company bought a Class C and put their business phone
| number in the ARIN database.
| mberning wrote:
| Was it similar to pingplotter?
| westurner wrote:
| mtr does traceroute, too:
| https://en.wikipedia.org/wiki/MTR_(software) :
|
| > _The tool is often used for network troubleshooting. By showing
| a list of routers traversed, and the average round-trip time as
| well as packet loss to each router, it allows users to identify
| links between two given routers responsible for certain fractions
| of the overall latency or packet loss through the network.[4]
| This can help identify network overuse problems.[5]_
|
| Scapy has a 3d visualization of _one_ traceroute sequence with
| vpython. In college, I remember modifying it to run multiple
| traceroutes and then overlaying all of the routes; and wondering
| whether a given route is even stable through a complete
| traceroute packet sequence.
| https://scapy.readthedocs.io/en/latest/usage.html#tcp-tracer...
|
| One way to avoid running tools that need root for crafting
| packets at layer 2 is to use setcap: setcap
| CAP_NET_RAW /use/bin/python-scapy
|
| Does traceroute inappropriately connect the dots?
| codetrotter wrote:
| I run mtr using a Prometheus exporter. I think the one I am
| using is https://github.com/mgumz/mtr-exporter
|
| I have it set up to do trace routes to 1.1.1.1 and to 8.8.8.8,
| and then I can look at the graphs in Prometheus
|
| I was inspired to set this up on my computer after the house
| where the computer is at was having very unstable internet for
| several days.
|
| I made a video about the graphs here
| https://video.nstr.no/w/hjTH3Vggn2fvpTrQitMmVP
| throwaway290 wrote:
| My mind is blown by those 3D graphs. I almost want to make them
| dynamically drawn in a futuristic style and use that as
| screensaver...
| westurner wrote:
| Like a WebGL VPN company logo screensaver composed of all
| those routes we shouldn't trust?
|
| graph-drawing gh topic lists a number of JS libraries:
| https://github.com/topics/graph-drawing
|
| Is there a good way to make a JS screensaver that doesn't
| leak memory yet? Maybe WebGL could get that done
| jimmySixDOF wrote:
| Yah, MTR could do it 30 years ago so not sure whats being added
| here. Need to play with that 3D export thanks for sharing!
| [deleted]
| guptarohit wrote:
| Today i was working to add multiline plot support to cli of
| asciigraph, using that it's possible to do something very
| similar.
|
| Post showing multiline plot of ping to multiple hosts:
| https://mastodon.social/@guptarohit/110638311512899264
| mattsimpson wrote:
| This immediately made it into my toolbox. Very handy; thanks for
| the work and the post.
| betaby wrote:
| Related and very important
| https://www.cloudflare.com/learning/network-layer/what-is-mt...
|
| Make sure you understand what MTR actually shows and why.
| badrabbit wrote:
| Smokeping does this, but with webui, if it is still around that
| is.
| petercooper wrote:
| I found this useful when trying to diagnose what I thought was a
| flaky wifi network. Visually seeing both dimensions when
| something is only subtly broken makes life a lot easier.
| dale_glass wrote:
| Feature request: sound.
|
| On the rare occasion I need feedback while messing around with
| cabling. I did write an improvised tool for the purpose, but it's
| kind of crappy in that it's just around ping.
|
| Behold the power of 'pingu': https://pastebin.com/qTfdZ7C8
| orf wrote:
| Could you add a GitHub issue with this suggestion? I like it
| and I can definitely see if I can add it!
| oxygen_crisis wrote:
| The standard ping utility already has audible ping with "-a",
| it emits a terminal bell sound for every reply.
| simonmales wrote:
| Brilliant, I'm often on shitty WiFi and have a terminal opening
| pinging somewhere. This is what I have been locking for to
| troubleshoot.
| DavideNL wrote:
| Previous related discussion:
| https://news.ycombinator.com/item?id=26904588
| __failbit wrote:
| Really cool! I love the terminal based graphics
| metadaemon wrote:
| Going makes me think of Google, graping would have been a fun
| name.
| loloquwowndueo wrote:
| If you squint hard enough "graping" also looks like it's a
| google thing. But hey - Google does not own the letter G ;)
___________________________________________________________________
(page generated 2023-07-01 23:00 UTC)