Check osd health (up/in)
parent
866a15d68b
commit
c679ad4aad
14
getosd.go
14
getosd.go
|
@ -114,6 +114,10 @@ func GetOsdForLocations(params Params, osdcrushdump OsdCrushDump, osddump OsdDum
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
osdstats := map[int64]*Osd{}
|
||||||
|
for num, stat := range osddump.Osds {
|
||||||
|
osdstats[stat.Osd] = &osddump.Osds[num]
|
||||||
|
}
|
||||||
|
|
||||||
osddevices := []Device{}
|
osddevices := []Device{}
|
||||||
bucketitems := GetCrushHostBuckets(osdcrushdump.Buckets, rootid)
|
bucketitems := GetCrushHostBuckets(osdcrushdump.Buckets, rootid)
|
||||||
|
@ -125,11 +129,10 @@ func GetOsdForLocations(params Params, osdcrushdump OsdCrushDump, osddump OsdDum
|
||||||
for _, device := range osdcrushdump.Devices {
|
for _, device := range osdcrushdump.Devices {
|
||||||
if device.ID == item.ID && params.define == device.Name {
|
if device.ID == item.ID && params.define == device.Name {
|
||||||
for _, osdmetadata := range osdsmetadata {
|
for _, osdmetadata := range osdsmetadata {
|
||||||
if osdmetadata.ID == device.ID {
|
if osdmetadata.ID == device.ID && osdstats[device.ID].Up == 1 && osdstats[device.ID].In == 1 {
|
||||||
device.Info = osdmetadata
|
device.Info = osdmetadata
|
||||||
osddevices = append(osddevices, device)
|
osddevices = append(osddevices, device)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -146,7 +149,7 @@ func GetOsdForLocations(params Params, osdcrushdump OsdCrushDump, osddump OsdDum
|
||||||
for _, device := range osdcrushdump.Devices {
|
for _, device := range osdcrushdump.Devices {
|
||||||
if device.ID == item.ID {
|
if device.ID == item.ID {
|
||||||
for _, osdmetadata := range osdsmetadata {
|
for _, osdmetadata := range osdsmetadata {
|
||||||
if osdmetadata.ID == device.ID {
|
if osdmetadata.ID == device.ID && osdstats[device.ID].Up == 1 && osdstats[device.ID].In == 1 {
|
||||||
device.Info = osdmetadata
|
device.Info = osdmetadata
|
||||||
osddevices = append(osddevices, device)
|
osddevices = append(osddevices, device)
|
||||||
}
|
}
|
||||||
|
@ -167,12 +170,11 @@ func GetOsdForLocations(params Params, osdcrushdump OsdCrushDump, osddump OsdDum
|
||||||
for _, device := range osdcrushdump.Devices {
|
for _, device := range osdcrushdump.Devices {
|
||||||
if device.ID == item.ID {
|
if device.ID == item.ID {
|
||||||
for _, osdmetadata := range osdsmetadata {
|
for _, osdmetadata := range osdsmetadata {
|
||||||
if osdmetadata.ID == device.ID {
|
if osdmetadata.ID == device.ID && osdstats[device.ID].Up == 1 && osdstats[device.ID].In == 1 {
|
||||||
device.Info = osdmetadata
|
device.Info = osdmetadata
|
||||||
|
osddevices = append(osddevices, device)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
osddevices = append(osddevices, device)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue