commit
b9be622197
3 changed files with 80 additions and 0 deletions
@ -0,0 +1,15 @@
|
||||
module ping-test |
||||
|
||||
go 1.17 |
||||
|
||||
require ( |
||||
github.com/go-ping/ping v0.0.0-20211130115550-779d1e919534 |
||||
github.com/sirupsen/logrus v1.8.1 |
||||
) |
||||
|
||||
require ( |
||||
github.com/google/uuid v1.2.0 // indirect |
||||
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4 // indirect |
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect |
||||
golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005 // indirect |
||||
) |
@ -0,0 +1,23 @@
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= |
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= |
||||
github.com/go-ping/ping v0.0.0-20211130115550-779d1e919534 h1:dhy9OQKGBh4zVXbjwbxxHjRxMJtLXj3zfgpBYQaR4Q4= |
||||
github.com/go-ping/ping v0.0.0-20211130115550-779d1e919534/go.mod h1:xIFjORFzTxqIV/tDVGO4eDy/bLuSyawEeojSm3GfRGk= |
||||
github.com/google/uuid v1.2.0 h1:qJYtXnJRWmpe7m/3XlyhrsLrEURqHRM2kxzoxXqyUDs= |
||||
github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= |
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= |
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= |
||||
github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= |
||||
github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= |
||||
github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w= |
||||
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= |
||||
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4 h1:b0LrWgu8+q7z4J+0Y3Umo5q1dL7NXBkKBWkaVkAq17E= |
||||
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= |
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ= |
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= |
||||
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= |
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= |
||||
golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005 h1:pDMpM2zh2MT0kHy037cKlSby2nEhD50SYqwQk76Nm40= |
||||
golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= |
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= |
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= |
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= |
@ -0,0 +1,42 @@
|
||||
package main |
||||
|
||||
import ( |
||||
"github.com/sirupsen/logrus" |
||||
"time" |
||||
) |
||||
import "github.com/go-ping/ping" |
||||
|
||||
var log *logrus.Logger |
||||
|
||||
func main() { |
||||
|
||||
log = logrus.New() |
||||
|
||||
for { |
||||
pinger, err := ping.NewPinger("ucs.osb-alliance.de") |
||||
if err != nil { |
||||
log.WithFields(logrus.Fields{"error": err}).Error("Pinger error") |
||||
} |
||||
|
||||
pinger.Debug = true |
||||
pinger.SetPrivileged(true) |
||||
pinger.SetLogger(log) |
||||
pinger.Count = 10 |
||||
err = pinger.Run() // blocks until finished
|
||||
|
||||
if err != nil { |
||||
log.WithFields(logrus.Fields{"error": err}).Error("Pinger error") |
||||
} |
||||
|
||||
stats := pinger.Statistics() // get send/receive/rtt stats
|
||||
|
||||
log.WithFields(logrus.Fields{ |
||||
"MinRTT": float64(stats.MinRtt.Nanoseconds()) / 1000000, |
||||
"MaxRTT": float64(stats.MaxRtt.Nanoseconds()) / 1000000, |
||||
"Median": float64(stats.AvgRtt.Nanoseconds()) / 1000000, |
||||
"Loss": stats.PacketLoss, |
||||
"Timestamp": time.Now()}).Info() |
||||
|
||||
time.Sleep(time.Duration(120 * time.Second)) |
||||
} |
||||
} |
Loading…
Reference in new issue