Reduce duplicate logging

This commit is contained in:
andig 2021-08-14 14:19:45 +02:00
parent 410f62316a
commit da5e482a36

View file

@ -2,6 +2,7 @@ package core
import (
"errors"
"fmt"
"math"
"regexp"
"strings"
@ -488,19 +489,23 @@ func (lp *LoadPoint) setLimit(chargeCurrent float64, force bool) (err error) {
// set current
if chargeCurrent != lp.chargeCurrent && chargeCurrent >= lp.GetMinCurrent() {
if charger, ok := lp.charger.(api.ChargerEx); ok {
lp.log.DEBUG.Printf("max charge current: %.2g", chargeCurrent)
err = charger.MaxCurrentMillis(chargeCurrent)
if err = charger.MaxCurrentMillis(chargeCurrent); err == nil {
lp.log.DEBUG.Printf("max charge current: %.2g", chargeCurrent)
} else {
err = fmt.Errorf("max charge current %.2g: %w", chargeCurrent, err)
}
} else {
chargeCurrent = math.Trunc(chargeCurrent)
lp.log.DEBUG.Printf("max charge current: %d", int64(chargeCurrent))
err = lp.charger.MaxCurrent(int64(chargeCurrent))
if err = lp.charger.MaxCurrent(int64(chargeCurrent)); err == nil {
lp.log.DEBUG.Printf("max charge current: %d", int64(chargeCurrent))
} else {
err = fmt.Errorf("max charge current %d: %w", int64(chargeCurrent), err)
}
}
if err == nil {
lp.chargeCurrent = chargeCurrent
lp.bus.Publish(evChargeCurrent, chargeCurrent)
} else {
lp.log.ERROR.Printf("max charge current %.2g: %v", chargeCurrent, err)
}
}
@ -513,6 +518,7 @@ func (lp *LoadPoint) setLimit(chargeCurrent float64, force bool) (err error) {
// sleep vehicle
if car, ok := lp.vehicle.(api.VehicleStopCharge); !enabled && ok {
// log but don't propagate
if err := car.StopCharge(); err != nil {
lp.log.ERROR.Printf("vehicle remote charge stop: %v", err)
}
@ -527,12 +533,13 @@ func (lp *LoadPoint) setLimit(chargeCurrent float64, force bool) (err error) {
// wake up vehicle
if car, ok := lp.vehicle.(api.VehicleStartCharge); enabled && ok {
// log but don't propagate
if err := car.StartCharge(); err != nil {
lp.log.ERROR.Printf("vehicle remote charge start: %v", err)
}
}
} else {
lp.log.ERROR.Printf("charger %s: %v", status[enabled], err)
err = fmt.Errorf("charger %s: %w", status[enabled], err)
}
}