Documentation ¶
Index ¶
- func GetEndpointList(httpClient *hms_certs.HTTPClientPair, gatewayUrl string) ([]rf.RedfishEPDescription, error)
- type BranchCollection
- type Chassis
- type Circuit
- type CrayJSONPayload
- type EnclosureThermal
- type Event
- type EventService
- type EventSubscription
- type EventSubscriptionCollection
- type EventSubscriptionOdataId
- type Events
- type Fan
- type HPEPDUSensor
- type KafkaBroker
- type MainsCollection
- type Outlet
- type OutletCollection
- type Power
- type PowerControl
- type PowerMetrics
- type PowerSupply
- type RFOem
- type RFSub
- type RFSubStatus
- type RackPDU
- type RedfishEndpoints
- type ResourceID
- type Sensors
- type Systems
- type Temperature
- type Voltage
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetEndpointList ¶
func GetEndpointList(httpClient *hms_certs.HTTPClientPair, gatewayUrl string) ([]rf.RedfishEPDescription, error)
Types ¶
type BranchCollection ¶
type BranchCollection struct {
Branch []ResourceID `json:"Branch"`
}
type Circuit ¶
type Circuit struct { Id string `json:"Id"` Name string `json:"Name"` CurrentAmps HPEPDUSensor `json:"CurrentAmps"` EnergykWh HPEPDUSensor `json:"EnergykWh"` PolyPhasePowerWatts map[string]HPEPDUSensor `json:"PolyPhasePowerWatts"` PolyPhaseVoltage map[string]HPEPDUSensor `json:"PolyPhaseVoltage"` PolyPhaseCurrentAmps map[string]HPEPDUSensor `json:"PolyPhaseCurrentAmps"` }
type CrayJSONPayload ¶
type CrayJSONPayload struct { Timestamp string Location string ParentalContext string `json:",omitempty"` ParentalIndex *uint8 `json:",omitempty"` PhysicalContext string Index *uint8 `json:",omitempty"` PhysicalSubContext string `json:",omitempty"` DeviceSpecificContext string `json:",omitempty"` SubIndex *uint8 `json:",omitempty"` Value string }
type EnclosureThermal ¶
type EnclosureThermal struct { Temperatures []Temperature Fans []Fan }
type Event ¶
type Event struct { EventType string `json:",omitempty"` EventId string `json:",omitempty"` EventTimestamp string `json:",omitempty"` Severity string `json:",omitempty"` Message string `json:",omitempty"` MessageId string `json:",omitempty"` MessageArgs []string `json:",omitempty"` Context string `json:",omitempty"` // Older versions OriginOfCondition *ResourceID `json:",omitempty"` Oem *Sensors `json:",omitempty"` // Used only on for Cray RF events }
type EventService ¶
type EventService struct {
EventTypesForSubscription []string `json:"EventTypesForSubscription"`
}
type EventSubscription ¶
type EventSubscription struct { OContext string `json:"@odata.context,omitempty"` Oid string `json:"@odata.id,omitempty"` Otype string `json:"@odata.type,omitempty"` Id string `json:",omitempty"` Name string `json:",omitempty"` Context string `json:",omitempty"` Destination string EventTypes []string `json:",omitempty"` Protocol string RegistryPrefixes []string `json:",omitempty"` Oem *RFOem `json:",omitempty"` }
func (EventSubscription) String ¶
func (eventSubscription EventSubscription) String() string
type EventSubscriptionCollection ¶
type EventSubscriptionCollection struct { OType string `json:"@odata.type"` Name string `json:"Name"` MembersOCount int `json:"Members@odata.count"` Members []EventSubscriptionOdataId `json:"Members"` }
type EventSubscriptionOdataId ¶
type EventSubscriptionOdataId struct {
OId string `json:"@odata.id"`
}
type Events ¶
type Events struct { OContext string `json:"@odata.context,omitempty"` Oid string `json:"@odata.id,omitempty"` Otype string `json:"@odata.type,omitempty"` Id string `json:"Id,omitempty"` Name string `json:"Name,omitempty"` Context string `json:"Context,omitempty"` // Later versions Description string `json:"Description,omitempty"` Events []Event `json:"Events,omitempty"` EventsOCount int `json:"Events@odata.count,omitempty"` }
type HPEPDUSensor ¶
type KafkaBroker ¶
type KafkaBroker struct { BrokerAddress string // This is going to seem like kind of a dumb way to do this, but we're going to need to lookup which topics a given // Kafka broker should get published A LOT. Like, every single message a lot. So we want this to be O(1) and a // map gives us that. TopicsToPublish map[string]interface{} KafkaConfig *kafka.ConfigMap `json:"-"` KafkaProducer *kafka.Producer `json:"-"` }
Struct to support dealing with multiple Kafka instances.
func (KafkaBroker) String ¶
func (broker KafkaBroker) String() string
type MainsCollection ¶
type MainsCollection struct {
Members []ResourceID `json:"Members"`
}
type Outlet ¶
type Outlet struct { Id string `json:"Id"` Links ResourceID `json:"Links"` PowerState string `json:"PowerState"` Voltage HPEPDUSensor `json:"Voltage"` CurrentAmps HPEPDUSensor `json:"CurrentAmps"` PowerWatts HPEPDUSensor `json:"PowerWatts"` EnergykWh HPEPDUSensor `json:"EnergykWh"` }
type OutletCollection ¶
type OutletCollection struct {
Outlets []ResourceID `json:"Outlets"`
}
type Power ¶
type Power struct { PowerControl []PowerControl PowerSupplies []PowerSupply Voltages []Voltage }
type PowerControl ¶
type PowerControl struct { PhysicalContext string Name string MemberId string PowerConsumedWatts float64 PowerMetrics PowerMetrics }
type PowerMetrics ¶
type PowerSupply ¶
type RFSub ¶
type RFSub struct { Endpoint *rf.RedfishEPDescription Status *RFSubStatus PrefixGroups *[][]string }
type RFSubStatus ¶
type RFSubStatus int
const ( RFSUBSTATUS_ERROR RFSubStatus = iota RFSUBSTATUS_PENDING RFSUBSTATUS_COMPLETE )
type RackPDU ¶
type RackPDU struct { Manufacturer string `json:"Manufacturer"` Model string `json:"Model"` Outlets ResourceID `json:"Outlets"` Branches ResourceID `json:"Branches"` Mains ResourceID `json:"Mains"` }
type RedfishEndpoints ¶
type RedfishEndpoints struct {
Endpoints []rf.RedfishEPDescription `json:"RedfishEndpoints"`
}
type ResourceID ¶
type ResourceID struct {
Oid string `json:"@odata.id"`
}
type Sensors ¶
type Sensors struct { Sensors []CrayJSONPayload TelemetrySource string }
type Systems ¶
type Systems struct { // Literally the only thing we care about from all this is the model number. Model string }
type Temperature ¶
Click to show internal directories.
Click to hide internal directories.