CLI works

This commit is contained in:
Cody Lee
2022-12-22 18:16:43 -06:00
parent db9bcd5687
commit 3768c53512
16 changed files with 126 additions and 33 deletions

View File

@@ -57,7 +57,7 @@ func (u *InputUnifi) Initialize(l poller.Logger) error {
return nil
}
func (u *InputUnifi) DebugInputs(l poller.Logger) (bool, error) {
func (u *InputUnifi) DebugInput() (bool, error) {
if u == nil || u.Config == nil {
return true, nil
}
@@ -70,23 +70,27 @@ func (u *InputUnifi) DebugInputs(l poller.Logger) (bool, error) {
u.logController(&u.Default)
}
ok := true
allOK := true
var allErrors error
for i, c := range u.Controllers {
if err := u.getUnifi(u.setControllerDefaults(c)); err != nil {
u.LogErrorf("Controller %d of %d Auth or Connection Error, retrying: %v", i+1, len(u.Controllers), err)
ok = false
allOK = false
if allErrors != nil {
err = fmt.Errorf("%v: %w", err, allErrors)
allErrors = fmt.Errorf("%v: %w", err, allErrors)
} else {
allErrors = err
}
continue
}
if err := u.checkSites(c); err != nil {
u.LogErrorf("checking sites on %s: %v", c.URL, err)
ok = false
allOK = false
if allErrors != nil {
err = fmt.Errorf("%v: %w", err, allErrors)
allErrors = fmt.Errorf("%v: %w", err, allErrors)
} else {
allErrors = err
}
continue
}
@@ -95,7 +99,7 @@ func (u *InputUnifi) DebugInputs(l poller.Logger) (bool, error) {
u.logController(c)
}
return ok, allErrors
return allOK, allErrors
}
func (u *InputUnifi) logController(c *Controller) {

View File

@@ -191,7 +191,9 @@ func (u *InputUnifi) Logf(msg string, v ...any) {
Msg: fmt.Sprintf(msg, v...),
Tags: map[string]string{"type": "info"},
})
u.Logger.Logf(msg, v...)
if u.Logger != nil {
u.Logger.Logf(msg, v...)
}
}
// LogErrorf logs an error message.
@@ -201,7 +203,9 @@ func (u *InputUnifi) LogErrorf(msg string, v ...any) {
Msg: fmt.Sprintf(msg, v...),
Tags: map[string]string{"type": "error"},
})
u.Logger.LogErrorf(msg, v...)
if u.Logger != nil {
u.Logger.LogErrorf(msg, v...)
}
}
// LogDebugf logs a debug message.
@@ -211,5 +215,7 @@ func (u *InputUnifi) LogDebugf(msg string, v ...any) {
Msg: fmt.Sprintf(msg, v...),
Tags: map[string]string{"type": "debug"},
})
u.Logger.LogDebugf(msg, v...)
if u.Logger != nil {
u.Logger.LogDebugf(msg, v...)
}
}