Niko Kovacevic 6 лет назад
Родитель
Сommit
f0689b755c
1 измененных файлов с 23 добавлено и 0 удалено
  1. 23 0
      pkg/prom/error.go

+ 23 - 0
pkg/prom/error.go

@@ -0,0 +1,23 @@
+package prom
+
+import (
+	"fmt"
+	"strings"
+)
+
+type CommError struct {
+	messages []string
+}
+
+func NewCommError(messages ...string) CommError {
+	return CommError{messages: messages}
+}
+
+func (pce CommError) Error() string {
+	return fmt.Sprintf("Prometheus communication error: %s", strings.Join(pce.messages, ": "))
+}
+
+func (pce CommError) Wrap(message string) CommError {
+	pce.messages = append([]string{message}, pce.messages...)
+	return pce
+}