Ai
1 Star 0 Fork 0

ryancartoon/sensu-go

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
health.go 1.74 KB
一键复制 编辑 原始数据 按行查看 历史
Eric Chlebek 提交于 2019-04-26 01:07 +08:00 . Release 5.6.0 (#2897)
package v2
import (
"github.com/coreos/etcd/etcdserver/etcdserverpb"
)
// ClusterHealth holds cluster member status info.
type ClusterHealth struct {
// MemberID is the etcd cluster member's ID.
MemberID uint64
// Name is the cluster member's name.
Name string
// Err holds the string representation of any errors encountered while checking the member's health.
Err string
// Healthy describes the health of the cluster member.
Healthy bool
}
// HealthResponse contains cluster health and cluster alarms.
type HealthResponse struct {
// Alarms is the list of active etcd alarms.
Alarms []*etcdserverpb.AlarmMember
// ClusterHealth is the list of health status for every cluster member.
ClusterHealth []*ClusterHealth
// Header is the response header for the entire cluster response.
Header *etcdserverpb.ResponseHeader
}
// FixtureHealthResponse returns a HealthResponse fixture for testing.
func FixtureHealthResponse(healthy bool) *HealthResponse {
var err string
healthResponse := &HealthResponse{
Header: &etcdserverpb.ResponseHeader{
ClusterId: uint64(4255616304056076734),
},
}
clusterHealth := []*ClusterHealth{}
clusterHealth = append(clusterHealth, &ClusterHealth{
MemberID: uint64(12345),
Name: "backend0",
Err: "",
Healthy: true,
})
if healthy {
err = ""
} else {
err = "cluster error"
}
clusterHealth = append(clusterHealth, &ClusterHealth{
MemberID: uint64(12345),
Name: "backend1",
Err: err,
Healthy: false,
})
alarms := []*etcdserverpb.AlarmMember{}
alarms = append(alarms, &etcdserverpb.AlarmMember{
MemberID: uint64(56789),
Alarm: etcdserverpb.AlarmType_CORRUPT,
})
healthResponse.ClusterHealth = clusterHealth
healthResponse.Alarms = alarms
return healthResponse
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/ryancartoon/sensu-go.git
git@gitee.com:ryancartoon/sensu-go.git
ryancartoon
sensu-go
sensu-go
v5.10.1

搜索帮助