Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var DataGroupsMap *pdatabus.DataGroups
Functions ¶
func InitNewDataGroupsMap ¶
func InitNewDataGroupsMap()
func RedfishMonitorStart ¶
func RedfishMonitorStart(r *RedfishDevice, dataBusService *databus.DataBusService, authClient auth.AuthClientInterface)
Take an instance of a Redfish device, get its system ID, get any child devices if it is a chassis, and then start listening for SSE events. NOTE: This expects that someone has enabled Telemetry reports and started the telemetry service externally.
Types ¶
type RedfishDevice ¶
type RedfishDevice struct {
HasChildren bool
Redfish redfish.RedfishClientInterface
SystemDetail
ChildDevices map[int]string
Events chan *redfish.RedfishEvent
Metrics chan *redfish.RedfishEvent
State string
LastEvent time.Time
CtxCancel context.CancelFunc
Ctx context.Context
}
func ValidateAndAddDevice ¶
func ValidateAndAddDevice(service *auth.Service, devices RedfishDevices) (*RedfishDevice, error)
func (*RedfishDevice) RestartAlertListener ¶
func (r *RedfishDevice) RestartAlertListener()
func (*RedfishDevice) RestartMetricListener ¶
func (r *RedfishDevice) RestartMetricListener()
func (*RedfishDevice) StartAlertListener ¶
func (r *RedfishDevice) StartAlertListener(dataBusService *databus.DataBusService)
func (*RedfishDevice) StartMetricListener ¶
func (r *RedfishDevice) StartMetricListener(dataBusService *databus.DataBusService)
StartMetricListener Directly responsible for receiving SSE events from iDRAC. Will parse received reports or issue a message in the log indicating it received an unknown SSE event.
type RedfishDevices ¶
type RedfishDevices map[string]*RedfishDevice
func NewRedfishDevices ¶
func NewRedfishDevices() RedfishDevices
func (RedfishDevices) AddDevice ¶
func (r RedfishDevices) AddDevice(k string, v *RedfishDevice)
func (RedfishDevices) CtxCancel ¶
func (r RedfishDevices) CtxCancel(k string)
func (RedfishDevices) Delete ¶
func (r RedfishDevices) Delete(k string)
Click to show internal directories.
Click to hide internal directories.