Documentation
¶
Index ¶
- Constants
- Variables
- func ReplaceDefault(manager *HealthManager)
- type CheckDesc
- type CheckInfo
- type CheckOption
- type CheckRecord
- type Checker
- type CheckerPlan
- type HealthManager
- func (manager *HealthManager) GetReport() (Report, error)
- func (manager *HealthManager) IsUp() bool
- func (manager *HealthManager) UpdateCheckRecord(name string, record CheckRecord) error
- func (manager *HealthManager) UpdateChecker(desc CheckDesc, plan CheckerPlan, checker Checker) (*StatusReporter, error)
- type Level
- type ManagerOption
- type Report
- type Status
- type StatusCode
- type StatusReporter
- type Type
Constants ¶
View Source
const ( HealthLevelCritical Level = 0 HealthLevelHighPriority Level = 100 HealthLevelLowPriority Level = 200 TypeInternal Type = 0 TypeExternal Type = 100 TypeExpose Type = 200 StatusStopping StatusCode = -5 StatusAbnormal StatusCode = -4 StatusBadInterval StatusCode = -3 StatusFatal StatusCode = -2 StatusDown StatusCode = -1 StatusUnknown StatusCode = 0 StatusUp StatusCode = 1 StatusOk StatusCode = 2 StatusWarning StatusCode = 3 )
Variables ¶
View Source
var DefaultCheckPlan = CheckerPlan{ DeepPercent: float32(0.2), DeepInterval: 10 * time.Second, ShallowInterval: 10 * time.Second, DeepDuration: 0, ShallowDuration: 0, }
Functions ¶
func ReplaceDefault ¶
func ReplaceDefault(manager *HealthManager)
Types ¶
type CheckInfo ¶
type CheckInfo struct { Desc CheckDesc Record CheckRecord }
type CheckOption ¶
type CheckOption struct {
Deep bool
}
type CheckRecord ¶
type CheckRecord struct { Status Status `json:"status"` CheckTime time.Time `json:"check_time"` CheckDuration time.Duration `json:"check_duration"` CheckDetail string `json:"check_detail"` SelfUpload bool `json:"self_upload"` }
func (CheckRecord) IsBadStatus ¶
func (record CheckRecord) IsBadStatus() bool
type CheckerPlan ¶
type HealthManager ¶
type HealthManager struct {
// contains filtered or unexported fields
}
func Default ¶
func Default() *HealthManager
func NewManager ¶
func NewManager(opt ManagerOption, logger *zap.Logger) *HealthManager
func (*HealthManager) GetReport ¶
func (manager *HealthManager) GetReport() (Report, error)
func (*HealthManager) IsUp ¶
func (manager *HealthManager) IsUp() bool
func (*HealthManager) UpdateCheckRecord ¶
func (manager *HealthManager) UpdateCheckRecord(name string, record CheckRecord) error
func (*HealthManager) UpdateChecker ¶
func (manager *HealthManager) UpdateChecker(desc CheckDesc, plan CheckerPlan, checker Checker) (*StatusReporter, error)
type ManagerOption ¶
type ManagerOption struct {
DefaultPlan CheckerPlan
}
type StatusCode ¶
type StatusCode int32
func (StatusCode) String ¶
func (sc StatusCode) String() string
type StatusReporter ¶
type StatusReporter struct {
// contains filtered or unexported fields
}
func (*StatusReporter) ReportStatus ¶
func (reporter *StatusReporter) ReportStatus(detail string, status ...StatusCode)
Click to show internal directories.
Click to hide internal directories.