code cleanup

This commit is contained in:
2023-01-30 13:13:09 +01:00
parent c67c71186f
commit 27f1d15ba6

22
main.go
View File

@@ -39,7 +39,7 @@ var (
journalLog = flag.Bool("journal", false, "Log to systemd journal instead of stdout") journalLog = flag.Bool("journal", false, "Log to systemd journal instead of stdout")
configFlag = flag.String("config", "config.yaml", "Set config file to use") configFlag = flag.String("config", "config.yaml", "Set config file to use")
reBandwidth = regexp.MustCompile(`(?m)bandwidth\s(\d+)Mbit`) reBandwidth = regexp.MustCompile(`(?m)bandwidth\s(\d+)Mbit`)
NoResponseError = errors.New("no response") ErrorNoResponse = errors.New("no response")
) )
type UploadManager struct { type UploadManager struct {
@@ -47,7 +47,7 @@ type UploadManager struct {
} }
func (m UploadManager) Upload() (float64, error) { func (m UploadManager) Upload() (float64, error) {
tcCmd := exec.Command("tc", "qdisc", "show", "dev", conf.UploadInterface) tcCmd := exec.Command("tc", "qdisc", "show", "dev", conf.UploadInterface) //nolint:gosec
out, err := tcCmd.CombinedOutput() out, err := tcCmd.CombinedOutput()
if err != nil { if err != nil {
return 0, err return 0, err
@@ -64,7 +64,8 @@ func (m UploadManager) Upload() (float64, error) {
} }
func (m UploadManager) SetUpload(upload float64) (float64, error) { func (m UploadManager) SetUpload(upload float64) (float64, error) {
tcCmd := exec.Command("tc", "qdisc", "change", "dev", conf.UploadInterface, "root", "cake", "bandwidth", fmt.Sprintf("%dMbit", int(upload))) tcCmd := exec.Command("tc", "qdisc", "change", "dev", conf.UploadInterface, "root", "cake", "bandwidth", //nolint:gosec
fmt.Sprintf("%dMbit", int(upload)))
log.Debugf("[TC] exec %s", tcCmd.String()) log.Debugf("[TC] exec %s", tcCmd.String())
out, err := tcCmd.CombinedOutput() out, err := tcCmd.CombinedOutput()
if err != nil { if err != nil {
@@ -115,9 +116,10 @@ func doPing(host string, count int, interval time.Duration) (*ping.Statistics, e
if err != nil { if err != nil {
return nil, err return nil, err
} }
log.Debugf("[PING] %s: %s±%s %d%% loss", host, pinger.Statistics().AvgRtt, pinger.Statistics().StdDevRtt, pinger.Statistics().PacketLoss) log.Debugf("[PING] %s: %s±%s %d%% loss", host, pinger.Statistics().AvgRtt, pinger.Statistics().StdDevRtt,
int(pinger.Statistics().PacketLoss))
if pinger.Statistics().PacketLoss == 100 { if pinger.Statistics().PacketLoss == 100 {
return nil, NoResponseError return nil, ErrorNoResponse
} }
return pinger.Statistics(), nil return pinger.Statistics(), nil
} }
@@ -192,7 +194,7 @@ outerLoop:
stats, err = doPing(conf.Host, conf.ConformationPPP, time.Second) stats, err = doPing(conf.Host, conf.ConformationPPP, time.Second)
if err != nil { if err != nil {
log.Warningf("ping to %s failed: %v", conf.Host, err) log.Warningf("ping to %s failed: %v", conf.Host, err)
if !errors.Is(err, NoResponseError) { if !errors.Is(err, ErrorNoResponse) {
time.Sleep(time.Duration(conf.Interval) * time.Minute) time.Sleep(time.Duration(conf.Interval) * time.Minute)
} }
continue continue
@@ -244,11 +246,7 @@ func main() {
} }
}() }()
killLoop: for range killSignals {
for { break
select {
case <-killSignals:
break killLoop
}
} }
} }