How to monitor ping packet loss via prometheus exporters?

I'm already trying to use this exporters for simple icmp probes:

https://github.com/prometheus/blackbox_exporter

It gives only 3 icmp latency metrics

https://github.com/czerwonk/atlas_exporter

Only metrics for atlass ids

https://github.com/SuperQ/smokeping_prober

Some icmp metrics without packet loss

https://gist.github.com/maesoser/fd0232ab372003c2bc892ae39ea249f6

Some icmp metrics without packet loss

and this mtr exporter

https://github.com/Shinzu/mtr_exporter

Give all metrics but I can't understand how to conquer routes and get actual mtr info.

So I can't get actual latency and packet loss metrics from no one from this exporters, can You recomend for me some one exporter with this options(packet loss, latency) or explain how mtr_exporter works and some url to related grafana dashboard template?

Regards


The smokeping_prober grafana dashboard has:

  1. A histogram of response times;
  2. A graph of packet loss; and
  3. A graph of latencies.

It achieves the packet loss graph using the following expression:

(
  smokeping_requests_total{host="$target"}
  - smokeping_response_duration_seconds_count{host="$target"}
) 
/ smokeping_requests_total{host="$target"} 

What's happening here is:

  1. First we get the number of actual responses by taking the total pings and subtracting the number of responses recevied

    smokeping_requests_total{host="$target"}
    - smokeping_response_duration_seconds_count{host="$target"}
    
  2. Then divide this by the total responses, giving you a percentage value, for example 0.08 = 8% packet loss.

The latency graph is achieved by taking the sum of response durations and dividing that by the number of responses, giving you an average response time. The expression is:

smokeping_response_duration_seconds_sum{host="$target"}
/ smokeping_response_duration_seconds_count{host="$target"}