Files
cachet-monitor/backends/interface.go
Matej Kramny 162d55b3f3 huge refactor
- extendable backends
- better project structure
- better cli interface
2019-02-20 11:14:45 +08:00

20 lines
616 B
Go

package backends
import (
"net/http"
"github.com/castawaylabs/cachet-monitor/monitors"
)
type BackendInterface interface {
Ping() error
Tick(monitor monitors.MonitorInterface, status monitors.MonitorStatus, errs []error, lag int64)
SendMetric(monitor monitors.MonitorInterface, lag int64) error
UpdateMonitor(monitor monitors.MonitorInterface, status, previousStatus monitors.MonitorStatus, errs []error) error
NewRequest(requestType, url string, reqBody []byte) (*http.Response, interface{}, error)
Describe() []string
Validate() []string
ValidateMonitor(monitor *monitors.AbstractMonitor) []string
}