Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIHealthClientReply ¶
type APIHealthServerReply ¶
type APIHealthServerReply struct { Checks map[string]healthback.Result `json:"checks"` Healthy bool `json:"healthy"` }
APIHealthReply is the response for Health
type Client ¶
type Client interface { // Health returns a health check on the Avalanche node Health() (*APIHealthClientReply, error) // AwaitHealthy queries the Health endpoint [checks] times, with a pause of // [interval] in between checks and returns early if Health returns healthy AwaitHealthy(numChecks int, freq time.Duration) (bool, error) }
Client interface for Avalanche Health API Endpoint
type Health ¶
type Health interface { healthlib.Service Handler() (*common.HTTPHandler, error) }
Health wraps a healthlib.Service. Handler() returns a handler that handles incoming HTTP API requests. We have this in a separate package from healthlib to avoid a circular import where this service imports snow/engine/common but that package imports healthlib.Checkable
type Result ¶
type Result struct { // the details of task Result - may be nil Details interface{} `json:"message,omitempty"` // the error returned from a failed health check - an empty string when successful Error ErrorMsg `json:"error,omitempty"` // the time of the last health check Timestamp time.Time `json:"timestamp"` // the execution duration of the last check Duration time.Duration `json:"duration,omitempty"` // the number of failures that occurred in a row ContiguousFailures int64 `json:"contiguousFailures"` // the time of the initial transitional failure TimeOfFirstFailure *time.Time `json:"timeOfFirstFailure"` }
Result represents the output of a health check execution.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
func (*Service) Health ¶
func (s *Service) Health(_ *http.Request, _ *APIHealthArgs, reply *APIHealthServerReply) error
Health returns a summation of the health of the node
Click to show internal directories.
Click to hide internal directories.