Versions in this module Expand all Collapse all v0 v0.1.5 Oct 11, 2018 v0.1.4 Aug 4, 2017 Changes in this version type DNSChecker + Source Source type HTTPChecker + Source Source type PingChecker + Source Source type RADIUSChecker + Source Source + type Source struct + IP net.IP type TCPChecker + Source Source type UDPChecker + Source Source v0.1.3 Jul 24, 2017 v0.1.2 May 16, 2017 v0.1.1 Mar 13, 2017 v0.1.0 Jan 13, 2017 Changes in this version + const ICMP4_ECHO_REPLY + const ICMP4_ECHO_REQUEST + const ICMP6_ECHO_REPLY + const ICMP6_ECHO_REQUEST + func DNSType(name string) (uint16, error) + type Check struct + func NewCheck(notify chan<- *Notification) *Check + func (hc *Check) Blocking(block bool) + func (hc *Check) Notify() + func (hc *Check) Run(start <-chan time.Time) + func (hc *Check) Status() Status + func (hc *Check) Stop() + func (hc *Check) Update(config *Config) + type Checker interface + Check func(timeout time.Duration) *Result + String func() string + type Checks struct + Configs map[Id]*Config + type Config struct + Interval time.Duration + Retries int + Timeout time.Duration + func NewConfig(id Id, checker Checker) *Config + type DNSChecker struct + Answer string + Question dns.Question + func NewDNSChecker(ip net.IP, port int) *DNSChecker + func (hc *DNSChecker) Check(timeout time.Duration) *Result + func (hc *DNSChecker) String() string + type HTTPChecker struct + Method string + Proxy bool + Request string + Response string + ResponseCode int + Secure bool + TLSVerify bool + func NewHTTPChecker(ip net.IP, port int) *HTTPChecker + func (hc *HTTPChecker) Check(timeout time.Duration) *Result + func (hc *HTTPChecker) String() string + type HealthState struct + Ctx *ipc.Context + Notifications []*Notification + type Id uint64 + type Notification struct + func (n *Notification) String() string + type PingChecker struct + ID uint16 + Seqnum uint16 + func NewPingChecker(ip net.IP) *PingChecker + func (hc *PingChecker) Check(timeout time.Duration) *Result + func (hc *PingChecker) String() string + type RADIUSChecker struct + Password string + Response string + Secret string + Username string + func NewRADIUSChecker(ip net.IP, port int) *RADIUSChecker + func (hc *RADIUSChecker) Check(timeout time.Duration) *Result + func (hc *RADIUSChecker) String() string + type Result struct + Err error + Message string + Success bool + func (r *Result) String() string + type Server struct + func NewServer(cfg *ServerConfig) *Server + func (s *Server) Run() + func (s *Server) Shutdown() + type ServerConfig struct + BatchDelay time.Duration + BatchSize int + ChannelSize int + EngineSocket string + MaxFailures int + NotifyInterval time.Duration + RetryDelay time.Duration + func DefaultServerConfig() ServerConfig + type State int + const StateHealthy + const StateUnhealthy + const StateUnknown + func (s State) String() string + type Status struct + Duration time.Duration + Failures uint64 + LastCheck time.Time + Message string + Successes uint64 + type TCPChecker struct + Receive string + Secure bool + Send string + TLSVerify bool + func NewTCPChecker(ip net.IP, port int) *TCPChecker + func (hc *TCPChecker) Check(timeout time.Duration) *Result + func (hc *TCPChecker) String() string + type Target struct + Host net.IP + IP net.IP + Mark int + Mode seesaw.HealthcheckMode + Port int + Proto seesaw.IPProto + func (t Target) String() string + type UDPChecker struct + Receive string + Send string + func NewUDPChecker(ip net.IP, port int) *UDPChecker + func (hc *UDPChecker) Check(timeout time.Duration) *Result + func (hc *UDPChecker) String() string