From a985f531ea17f0bb7e4a1cadb92c2615538ef51a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Magnus=20=C3=85hall?= Date: Thu, 4 Jul 2024 09:21:24 +0200 Subject: [PATCH] Better datetime display for problems --- problem.go | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/problem.go b/problem.go index a8f0372..944942c 100644 --- a/problem.go +++ b/problem.go @@ -147,11 +147,29 @@ func ProblemAcknowledge(id int, state bool) (err error) { // {{{ func (p Problem) FormattedValues() string { out := []string{} for key, val := range p.DatapointValues { - timeVal, ok := val.(time.Time) - if ok { - logger.Info("FOO", "timeVal", timeVal) + var keyval string + + switch val.(type) { + case int: + keyval = fmt.Sprintf("%s: %d", key, val) + + case string: + if str, ok := val.(string); ok { + timeVal, err := time.Parse(time.RFC3339, str) + if err == nil { + formattedTime := timeVal.Format("2006-01-02 15:04:05") + keyval = fmt.Sprintf("%s: %s", key, formattedTime) + } else { + keyval = fmt.Sprintf("%s: %s", key, val) + } + } + + default: + keyval = fmt.Sprintf("%s: %v", key, val) } - out = append(out, fmt.Sprintf("%s: %v", key, val)) + + out = append(out, keyval) + } sort.Strings(out)