Documentation ¶
Index ¶
- Constants
- func Reset(target string)
- type ChassisResponse
- type Client
- func (client *Client) RefreshIdracSel(mc *Collector, ch chan<- prometheus.Metric) error
- func (client *Client) RefreshMemory(mc *Collector, ch chan<- prometheus.Metric) error
- func (client *Client) RefreshNetwork(mc *Collector, ch chan<- prometheus.Metric) error
- func (client *Client) RefreshPower(mc *Collector, ch chan<- prometheus.Metric) error
- func (client *Client) RefreshSensors(mc *Collector, ch chan<- prometheus.Metric) error
- func (client *Client) RefreshStorage(mc *Collector, ch chan<- prometheus.Metric) error
- func (client *Client) RefreshSystem(mc *Collector, ch chan<- prometheus.Metric) error
- type Collector
- func (collector *Collector) Collect(ch chan<- prometheus.Metric)
- func (collector *Collector) Describe(ch chan<- *prometheus.Desc)
- func (collector *Collector) Gather() (string, error)
- func (mc *Collector) NewDriveCapacity(id string, capacity int) prometheus.Metric
- func (mc *Collector) NewDriveHealth(id, health string) prometheus.Metric
- func (mc *Collector) NewDriveInfo(id, name, manufacturer, model, serial, mediatype, protocol string, slot int) prometheus.Metric
- func (mc *Collector) NewDriveLifeLeft(id string, lifeLeft int) prometheus.Metric
- func (mc *Collector) NewMemoryModuleCapacity(id string, capacity int) prometheus.Metric
- func (mc *Collector) NewMemoryModuleHealth(id, health string) prometheus.Metric
- func (mc *Collector) NewMemoryModuleInfo(id, name, manufacturer, memtype, serial, ecc string, rank int) prometheus.Metric
- func (mc *Collector) NewMemoryModuleSpeed(id string, speed int) prometheus.Metric
- func (mc *Collector) NewNetworkInterfaceHealth(id, health string) prometheus.Metric
- func (mc *Collector) NewNetworkPortHealth(iface, id, health string) prometheus.Metric
- func (mc *Collector) NewNetworkPortLinkUp(iface, id, status string) prometheus.Metric
- func (mc *Collector) NewNetworkPortSpeed(iface, id string, speed int) prometheus.Metric
- func (mc *Collector) NewPowerControlAvgConsumedWatts(value float64, id, name string) prometheus.Metric
- func (mc *Collector) NewPowerControlCapacityWatts(value float64, id, name string) prometheus.Metric
- func (mc *Collector) NewPowerControlConsumedWatts(value float64, id, name string) prometheus.Metric
- func (mc *Collector) NewPowerControlInterval(interval int, id, name string) prometheus.Metric
- func (mc *Collector) NewPowerControlMaxConsumedWatts(value float64, id, name string) prometheus.Metric
- func (mc *Collector) NewPowerControlMinConsumedWatts(value float64, id, name string) prometheus.Metric
- func (mc *Collector) NewPowerSupplyCapacityWatts(value float64, id string) prometheus.Metric
- func (mc *Collector) NewPowerSupplyEfficiencyPercent(value float64, id string) prometheus.Metric
- func (mc *Collector) NewPowerSupplyHealth(health, id string) prometheus.Metric
- func (mc *Collector) NewPowerSupplyInputVoltage(value float64, id string) prometheus.Metric
- func (mc *Collector) NewPowerSupplyInputWatts(value float64, id string) prometheus.Metric
- func (mc *Collector) NewPowerSupplyOutputWatts(value float64, id string) prometheus.Metric
- func (mc *Collector) NewSelEntry(id string, message string, component string, severity string, ...) prometheus.Metric
- func (mc *Collector) NewSensorsFanHealth(id, name, health string) prometheus.Metric
- func (mc *Collector) NewSensorsFanSpeed(speed float64, id, name, units string) prometheus.Metric
- func (mc *Collector) NewSensorsTemperature(temperature float64, id, name, units string) prometheus.Metric
- func (mc *Collector) NewSystemBiosInfo(version string) prometheus.Metric
- func (mc *Collector) NewSystemCpuCount(cpus int, model string) prometheus.Metric
- func (mc *Collector) NewSystemHealth(health string) prometheus.Metric
- func (mc *Collector) NewSystemIndicatorLED(state string) prometheus.Metric
- func (mc *Collector) NewSystemMachineInfo(manufacturer, model, serial, sku string) prometheus.Metric
- func (mc *Collector) NewSystemMemorySize(memory float64) prometheus.Metric
- func (mc *Collector) NewSystemPowerOn(state string) prometheus.Metric
- type Drive
- type Fan
- type GroupResponse
- type IdracSelResponse
- type Memory
- type NetworkInterface
- type NetworkPort
- type Odata
- type PowerControlUnit
- type PowerResponse
- type PowerSupplyUnit
- type Redundancy
- type Status
- type StorageController
- type SystemResponse
- type Temperature
- type ThermalResponse
- type V1Response
Constants ¶
View Source
const ( UNKNOWN = iota DELL HPE LENOVO INSPUR H3C )
View Source
const ( StateEnabled = "Enabled" StateAbsent = "Absent" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ChassisResponse ¶
type ChassisResponse struct { Name string `json:"Name"` AssetTag string `json:"AssetTag"` SerialNumber string `json:"SerialNumber"` PartNumber string `json:"PartNumber"` Model string `json:"Model"` ChassisType string `json:"ChassisType"` Manufacturer string `json:"Manufacturer"` Description string `json:"Description"` SKU string `json:"SKU"` PowerState string `json:"PowerState"` EnvironmentalClass string `json:"EnvironmentalClass"` IndicatorLED string `json:"IndicatorLED"` Assembly Odata `json:"Assembly"` Location *struct { Info string `json:"Info"` InfoFormat string `json:"InfoFormat"` Placement struct { Rack string `json:"Rack"` Row string `json:"Row"` } `json:"Placement"` PostalAddress struct { Building string `json:"Building"` Room string `json:"Room"` } `json:"PostalAddress"` } `json:"Location"` Memory Odata `json:"Memory"` NetworkAdapters Odata `json:"NetworkAdapters"` PCIeSlots Odata `json:"PCIeSlots"` Power Odata `json:"Power"` Sensors Odata `json:"Sensors"` Status Status `json:"Status"` Thermal Odata `json:"Thermal"` PhysicalSecurity *struct { IntrusionSensor string `json:"IntrusionSensor"` IntrusionSensorNumber int `json:"IntrusionSensorNumber"` IntrusionSensorReArm string `json:"IntrusionSensorReArm"` } `json:"PhysicalSecurity"` }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) RefreshIdracSel ¶
func (client *Client) RefreshIdracSel(mc *Collector, ch chan<- prometheus.Metric) error
func (*Client) RefreshMemory ¶
func (client *Client) RefreshMemory(mc *Collector, ch chan<- prometheus.Metric) error
func (*Client) RefreshNetwork ¶ added in v1.1.0
func (client *Client) RefreshNetwork(mc *Collector, ch chan<- prometheus.Metric) error
func (*Client) RefreshPower ¶
func (client *Client) RefreshPower(mc *Collector, ch chan<- prometheus.Metric) error
func (*Client) RefreshSensors ¶
func (client *Client) RefreshSensors(mc *Collector, ch chan<- prometheus.Metric) error
func (*Client) RefreshStorage ¶
func (client *Client) RefreshStorage(mc *Collector, ch chan<- prometheus.Metric) error
func (*Client) RefreshSystem ¶
func (client *Client) RefreshSystem(mc *Collector, ch chan<- prometheus.Metric) error
type Collector ¶
type Collector struct { // Exporter ExporterBuildInfo *prometheus.Desc ExporterScrapeErrorsTotal *prometheus.Desc // System SystemPowerOn *prometheus.Desc SystemHealth *prometheus.Desc SystemIndicatorLED *prometheus.Desc SystemMemorySize *prometheus.Desc SystemCpuCount *prometheus.Desc SystemBiosInfo *prometheus.Desc SystemMachineInfo *prometheus.Desc // Sensors SensorsTemperature *prometheus.Desc SensorsFanHealth *prometheus.Desc SensorsFanSpeed *prometheus.Desc // Power supply PowerSupplyHealth *prometheus.Desc PowerSupplyOutputWatts *prometheus.Desc PowerSupplyInputWatts *prometheus.Desc PowerSupplyCapacityWatts *prometheus.Desc PowerSupplyInputVoltage *prometheus.Desc PowerSupplyEfficiencyPercent *prometheus.Desc // Power control PowerControlConsumedWatts *prometheus.Desc PowerControlCapacityWatts *prometheus.Desc PowerControlMinConsumedWatts *prometheus.Desc PowerControlMaxConsumedWatts *prometheus.Desc PowerControlAvgConsumedWatts *prometheus.Desc PowerControlInterval *prometheus.Desc // System event log SelEntry *prometheus.Desc // Disk drives DriveInfo *prometheus.Desc DriveHealth *prometheus.Desc DriveCapacity *prometheus.Desc DriveLifeLeft *prometheus.Desc // Memory modules MemoryModuleInfo *prometheus.Desc MemoryModuleHealth *prometheus.Desc MemoryModuleCapacity *prometheus.Desc MemoryModuleSpeed *prometheus.Desc // Network NetworkInterfaceHealth *prometheus.Desc NetworkPortHealth *prometheus.Desc NetworkPortSpeed *prometheus.Desc NetworkPortLinkUp *prometheus.Desc // contains filtered or unexported fields }
func GetCollector ¶
func NewCollector ¶
func NewCollector() *Collector
func (*Collector) Collect ¶
func (collector *Collector) Collect(ch chan<- prometheus.Metric)
func (*Collector) Describe ¶
func (collector *Collector) Describe(ch chan<- *prometheus.Desc)
func (*Collector) NewDriveCapacity ¶
func (mc *Collector) NewDriveCapacity(id string, capacity int) prometheus.Metric
func (*Collector) NewDriveHealth ¶
func (mc *Collector) NewDriveHealth(id, health string) prometheus.Metric
func (*Collector) NewDriveInfo ¶
func (mc *Collector) NewDriveInfo(id, name, manufacturer, model, serial, mediatype, protocol string, slot int) prometheus.Metric
func (*Collector) NewDriveLifeLeft ¶ added in v1.1.0
func (mc *Collector) NewDriveLifeLeft(id string, lifeLeft int) prometheus.Metric
func (*Collector) NewMemoryModuleCapacity ¶
func (mc *Collector) NewMemoryModuleCapacity(id string, capacity int) prometheus.Metric
func (*Collector) NewMemoryModuleHealth ¶
func (mc *Collector) NewMemoryModuleHealth(id, health string) prometheus.Metric
func (*Collector) NewMemoryModuleInfo ¶
func (mc *Collector) NewMemoryModuleInfo(id, name, manufacturer, memtype, serial, ecc string, rank int) prometheus.Metric
func (*Collector) NewMemoryModuleSpeed ¶
func (mc *Collector) NewMemoryModuleSpeed(id string, speed int) prometheus.Metric
func (*Collector) NewNetworkInterfaceHealth ¶ added in v1.1.0
func (mc *Collector) NewNetworkInterfaceHealth(id, health string) prometheus.Metric
func (*Collector) NewNetworkPortHealth ¶ added in v1.1.0
func (mc *Collector) NewNetworkPortHealth(iface, id, health string) prometheus.Metric
func (*Collector) NewNetworkPortLinkUp ¶ added in v1.1.0
func (mc *Collector) NewNetworkPortLinkUp(iface, id, status string) prometheus.Metric
func (*Collector) NewNetworkPortSpeed ¶ added in v1.1.0
func (mc *Collector) NewNetworkPortSpeed(iface, id string, speed int) prometheus.Metric
func (*Collector) NewPowerControlAvgConsumedWatts ¶
func (mc *Collector) NewPowerControlAvgConsumedWatts(value float64, id, name string) prometheus.Metric
func (*Collector) NewPowerControlCapacityWatts ¶
func (mc *Collector) NewPowerControlCapacityWatts(value float64, id, name string) prometheus.Metric
func (*Collector) NewPowerControlConsumedWatts ¶
func (mc *Collector) NewPowerControlConsumedWatts(value float64, id, name string) prometheus.Metric
func (*Collector) NewPowerControlInterval ¶
func (mc *Collector) NewPowerControlInterval(interval int, id, name string) prometheus.Metric
func (*Collector) NewPowerControlMaxConsumedWatts ¶
func (mc *Collector) NewPowerControlMaxConsumedWatts(value float64, id, name string) prometheus.Metric
func (*Collector) NewPowerControlMinConsumedWatts ¶
func (mc *Collector) NewPowerControlMinConsumedWatts(value float64, id, name string) prometheus.Metric
func (*Collector) NewPowerSupplyCapacityWatts ¶
func (mc *Collector) NewPowerSupplyCapacityWatts(value float64, id string) prometheus.Metric
func (*Collector) NewPowerSupplyEfficiencyPercent ¶
func (mc *Collector) NewPowerSupplyEfficiencyPercent(value float64, id string) prometheus.Metric
func (*Collector) NewPowerSupplyHealth ¶ added in v1.1.0
func (mc *Collector) NewPowerSupplyHealth(health, id string) prometheus.Metric
func (*Collector) NewPowerSupplyInputVoltage ¶
func (mc *Collector) NewPowerSupplyInputVoltage(value float64, id string) prometheus.Metric
func (*Collector) NewPowerSupplyInputWatts ¶
func (mc *Collector) NewPowerSupplyInputWatts(value float64, id string) prometheus.Metric
func (*Collector) NewPowerSupplyOutputWatts ¶
func (mc *Collector) NewPowerSupplyOutputWatts(value float64, id string) prometheus.Metric
func (*Collector) NewSelEntry ¶
func (*Collector) NewSensorsFanHealth ¶ added in v1.1.0
func (mc *Collector) NewSensorsFanHealth(id, name, health string) prometheus.Metric
func (*Collector) NewSensorsFanSpeed ¶
func (mc *Collector) NewSensorsFanSpeed(speed float64, id, name, units string) prometheus.Metric
func (*Collector) NewSensorsTemperature ¶
func (mc *Collector) NewSensorsTemperature(temperature float64, id, name, units string) prometheus.Metric
func (*Collector) NewSystemBiosInfo ¶
func (mc *Collector) NewSystemBiosInfo(version string) prometheus.Metric
func (*Collector) NewSystemCpuCount ¶
func (mc *Collector) NewSystemCpuCount(cpus int, model string) prometheus.Metric
func (*Collector) NewSystemHealth ¶
func (mc *Collector) NewSystemHealth(health string) prometheus.Metric
func (*Collector) NewSystemIndicatorLED ¶
func (mc *Collector) NewSystemIndicatorLED(state string) prometheus.Metric
func (*Collector) NewSystemMachineInfo ¶
func (mc *Collector) NewSystemMachineInfo(manufacturer, model, serial, sku string) prometheus.Metric
func (*Collector) NewSystemMemorySize ¶
func (mc *Collector) NewSystemMemorySize(memory float64) prometheus.Metric
func (*Collector) NewSystemPowerOn ¶
func (mc *Collector) NewSystemPowerOn(state string) prometheus.Metric
type Drive ¶
type Drive struct { Id string `json:"Id"` Name string `json:"Name"` Description string `json:"Description"` MediaType string `json:"MediaType"` Manufacturer string `json:"Manufacturer"` Model string `json:"Model"` CapacityBytes int `json:"CapacityBytes"` BlockSizeBytes int `json:"BlockSizeBytes"` CapableSpeedGbs float64 `json:"CapableSpeedGbs"` Status Status `json:"Status"` SerialNumber string `json:"SerialNumber"` Protocol string `json:"Protocol"` Revision string `json:"Revision"` PartNumber string `json:"PartNumber"` PredictedLifeLeft int `json:"PredictedMediaLifeLeftPercent"` RotationSpeedRPM int `json:"RotationSpeedRPM"` PhysicalLocation *struct { PartLocation *struct { LocationOrdinalValue int `json:"LocationOrdinalValue"` } `json:"PartLocation"` } `json:"PhysicalLocation"` // iLO 4 CapacityMiB int `json:"CapacityMiB"` InterfaceType string `json:"InterfaceType"` SSDEnduranceUtilizationPercentage int `json:"SSDEnduranceUtilizationPercentage"` }
type Fan ¶
type Fan struct { Name string `json:"Name"` FanName string `json:"FanName"` MemberId string `json:"MemberId"` Assembly Odata `json:"Assembly"` HotPluggable bool `json:"HotPluggable"` MaxReadingRange any `json:"MaxReadingRange"` MinReadingRange any `json:"MinReadingRange"` PhysicalContext string `json:"PhysicalContext"` Reading float64 `json:"Reading"` CurrentReading float64 `json:"CurrentReading"` Units string `json:"Units"` ReadingUnits string `json:"ReadingUnits"` Redundancy []Redundancy `json:"Redundancy"` Status Status `json:"Status"` LowerThresholdCritical any `json:"LowerThresholdCritical"` LowerThresholdFatal any `json:"LowerThresholdFatal"` LowerThresholdNonCritical any `json:"LowerThresholdNonCritical"` UpperThresholdCritical any `json:"UpperThresholdCritical"` UpperThresholdFatal any `json:"UpperThresholdFatal"` UpperThresholdNonCritical any `json:"UpperThresholdNonCritical"` }
func (*Fan) GetReading ¶
type GroupResponse ¶
type IdracSelResponse ¶
type IdracSelResponse struct { Name string `json:"Name"` Description string `json:"Description"` Members []struct { Id string `json:"Id"` Name string `json:"Name"` Created time.Time `json:"Created"` Description string `json:"Description"` EntryCode xstring `json:"EntryCode"` EntryType string `json:"EntryType"` Message string `json:"Message"` MessageArgs []any `json:"MessageArgs"` MessageId string `json:"MessageId"` SensorNumber int `json:"SensorNumber"` SensorType xstring `json:"SensorType"` Severity string `json:"Severity"` } `json:"Members"` }
type Memory ¶
type Memory struct { Id string `json:"Id"` Name string `json:"Name"` Description string `json:"Description"` Manufacturer string `json:"Manufacturer"` ErrorCorrection string `json:"ErrorCorrection"` MemoryDeviceType string `json:"MemoryDeviceType"` AllowedSpeedsMHz []int `json:"AllowedSpeedsMHz"` OperatingSpeedMhz int `json:"OperatingSpeedMhz"` CapacityMiB int `json:"CapacityMiB"` PartNumber string `json:"PartNumber"` SerialNumber string `json:"SerialNumber"` DeviceLocator string `json:"DeviceLocator"` RankCount int `json:"RankCount"` BusWidthBits int `json:"BusWidthBits"` DataWidthBits int `json:"DataWidthBits"` Status Status `json:"Status"` // iLO 4 HPMemoryType string `json:"HPMemoryType"` DIMMStatus string `json:"DIMMStatus"` DIMMType string `json:"DIMMType"` MaximumFrequencyMHz int `json:"MaximumFrequencyMHz"` Rank int `json:"Rank"` SizeMB int `json:"SizeMB"` }
type NetworkInterface ¶ added in v1.1.0
type NetworkInterface struct { Id string `json:"Id"` Name string `json:"Name"` Description string `json:"Description"` Status Status `json:"Status"` NetworkPorts Odata `json:"NetworkPorts"` Ports Odata `json:"Ports"` }
func (*NetworkInterface) GetPorts ¶ added in v1.1.0
func (n *NetworkInterface) GetPorts() string
type NetworkPort ¶ added in v1.1.0
type NetworkPort struct { Id string `json:"Id"` Name string `json:"Name"` Description string `json:"Description"` LinkStatus string `json:"LinkStatus"` CurrentLinkSpeedMbps int `json:"CurrentLinkSpeedMbps"` CurrentSpeedGbps int `json:"CurrentSpeedGbps"` Status Status `json:"Status"` SupportedLinkCapabilities []struct { LinkNetworkTechnology string `json:"LinkNetworkTechnology"` LinkSpeedMbps int `json:"LinkSpeedMbps"` } `json:"SupportedLinkCapabilities"` }
func (*NetworkPort) GetSpeed ¶ added in v1.1.0
func (n *NetworkPort) GetSpeed() int
type Odata ¶
type Odata struct { OdataContext string `json:"@odata.context"` OdataId string `json:"@odata.id"` OdataType string `json:"@odata.type"` }
Odata is a common structure to unmarshal Open Data Protocol metadata
type PowerControlUnit ¶
type PowerControlUnit struct { Name string `json:"Name"` Id string `json:"Id"` PowerAllocatedWatts float64 `json:"PowerAllocatedWatts"` PowerAvailableWatts float64 `json:"PowerAvailableWatts"` PowerCapacityWatts float64 `json:"PowerCapacityWatts"` PowerConsumedWatts float64 `json:"PowerConsumedWatts"` PowerRequestedWatts float64 `json:"PowerRequestedWatts"` PowerLimit *struct { CorrectionInMs int `json:"CorrectionInMs"` LimitException string `json:"LimitException"` LimitInWatts int `json:"LimitInWatts"` } `json:"PowerLimit"` PowerMetrics *struct { AverageConsumedWatts float64 `json:"AverageConsumedWatts"` IntervalInMinutes int `json:"IntervalInMin"` MaxConsumedWatts float64 `json:"MaxConsumedWatts"` MinConsumedWatts float64 `json:"MinConsumedWatts"` } `json:"PowerMetrics"` }
type PowerResponse ¶
type PowerResponse struct { Name string `json:"Name"` Description string `json:"Description"` PowerControl []PowerControlUnit `json:"PowerControl"` PowerSupplies []PowerSupplyUnit `json:"PowerSupplies"` Redundancy []Redundancy `json:"Redundancy"` Voltages []struct { Name string `json:"Name"` SensorNumber int `json:"SensorNumber"` PhysicalContext string `json:"PhysicalContext"` Status Status `json:"Status"` // These should be float64, but they have been seen reported as "N/A" so we use the any type ReadingVolts any `json:"ReadingVolts"` LowerThresholdCritical any `json:"LowerThresholdCritical"` LowerThresholdFatal any `json:"LowerThresholdFatal"` LowerThresholdNonCritical any `json:"LowerThresholdNonCritical"` UpperThresholdCritical any `json:"UpperThresholdCritical"` UpperThresholdFatal any `json:"UpperThresholdFatal"` UpperThresholdNonCritical any `json:"UpperThresholdNonCritical"` } `json:"Voltages"` }
type PowerSupplyUnit ¶
type PowerSupplyUnit struct { Name string `json:"Name"` Assembly Odata `json:"Assembly"` FirmwareVersion string `json:"FirmwareVersion"` InputRanges []struct { InputType string `json:"InputType"` MaximumFrequencyHz float64 `json:"MaximumFrequencyHz"` MaximumVoltage float64 `json:"MaximumVoltage"` MinimumFrequencyHz float64 `json:"MinimumFrequencyHz"` MinimumVoltage float64 `json:"MinimumVoltage"` OutputWattage float64 `json:"OutputWattage"` } `json:"InputRanges"` HotPluggable bool `json:"HotPluggable"` EfficiencyPercent float64 `json:"EfficiencyPercent"` PowerOutputWatts float64 `json:"PowerOutputWatts"` LastPowerOutputWatts float64 `json:"LastPowerOutputWatts"` PowerInputWatts float64 `json:"PowerInputWatts"` PowerCapacityWatts float64 `json:"PowerCapacityWatts"` LineInputVoltage float64 `json:"LineInputVoltage"` LineInputVoltageType string `json:"LineInputVoltageType"` Manufacturer string `json:"Manufacturer"` Model string `json:"Model"` PartNumber string `json:"PartNumber"` PowerSupplyType string `json:"PowerSupplyType"` SerialNumber string `json:"SerialNumber"` SparePartNumber string `json:"SparePartNumber"` Status Status `json:"Status"` Redundancy []Redundancy `json:"Redundancy"` }
func (*PowerSupplyUnit) GetOutputPower ¶
func (psu *PowerSupplyUnit) GetOutputPower() float64
type Redundancy ¶
type Redundancy struct { Name string `json:"Name"` MaxNumSupported int `json:"MaxNumSupported"` MinNumNeeded int `json:"MinNumNeeded"` Mode xstring `json:"Mode"` RedundancyEnabled bool `json:"RedundancyEnabled"` RedundancySet []any `json:"RedundancySet"` Status Status `json:"Status"` }
Redundancy is a common structure used in any entity with redundancy
type Status ¶
type Status struct { Health string `json:"Health"` HealthRollup string `json:"HealthRollup"` State string `json:"State"` }
Status is a common structure used in any entity with a status
type StorageController ¶
type StorageController struct { Id string `json:"Id"` Name string `json:"Name"` Description string `json:"Description"` Drives []Odata `json:"Drives"` Status Status `json:"Status"` StorageControllers []struct { FirmwareVersion string `json:"FirmwareVersion"` Manufacturer string `json:"Manufacturer"` Model string `json:"Model"` Name string `json:"Name"` SpeedGbps float64 `json:"SpeedGbps"` Status Status `json:"Status"` } }
type SystemResponse ¶
type SystemResponse struct { IndicatorLED string `json:"IndicatorLED"` Manufacturer string `json:"Manufacturer"` AssetTag string `json:"AssetTag"` PartNumber string `json:"PartNumber"` Description string `json:"Description"` HostName string `json:"HostName"` PowerState string `json:"PowerState"` Bios Odata `json:"Bios"` BiosVersion string `json:"BiosVersion"` Boot *struct { BootOptions Odata `json:"BootOptions"` Certificates Odata `json:"Certificates"` BootOrder []string `json:"BootOrder"` BootSourceOverrideEnabled string `json:"BootSourceOverrideEnabled"` BootSourceOverrideMode string `json:"BootSourceOverrideMode"` BootSourceOverrideTarget string `json:"BootSourceOverrideTarget"` UefiTargetBootSourceOverride any `json:"UefiTargetBootSourceOverride"` BootSourceOverrideTargetRedfishAllowableValues []string `json:"BootSourceOverrideTarget@Redfish.AllowableValues"` } `json:"Boot"` EthernetInterfaces Odata `json:"EthernetInterfaces"` HostWatchdogTimer *struct { FunctionEnabled bool `json:"FunctionEnabled"` Status Status `json:"Status"` TimeoutAction string `json:"TimeoutAction"` } `json:"HostWatchdogTimer"` HostingRoles []any `json:"HostingRoles"` Memory Odata `json:"Memory"` MemorySummary *struct { MemoryMirroring string `json:"MemoryMirroring"` Status Status `json:"Status"` TotalSystemMemoryGiB float64 `json:"TotalSystemMemoryGiB"` } `json:"MemorySummary"` Model string `json:"Model"` Name string `json:"Name"` NetworkInterfaces Odata `json:"NetworkInterfaces"` PCIeDevices []Odata `json:"PCIeDevices"` PCIeFunctions []Odata `json:"PCIeFunctions"` ProcessorSummary *struct { Count int `json:"Count"` LogicalProcessorCount int `json:"LogicalProcessorCount"` Model string `json:"Model"` Status Status `json:"Status"` } `json:"ProcessorSummary"` Processors Odata `json:"Processors"` SKU string `json:"SKU"` SecureBoot Odata `json:"SecureBoot"` SerialNumber string `json:"SerialNumber"` SimpleStorage Odata `json:"SimpleStorage"` Status Status `json:"Status"` Storage Odata `json:"Storage"` SystemType string `json:"SystemType"` TrustedModules []struct { FirmwareVersion string `json:"FirmwareVersion"` InterfaceType string `json:"InterfaceType"` Status Status `json:"Status"` } `json:"TrustedModules"` }
type Temperature ¶
type Temperature struct { Name string `json:"Name"` Number int `json:"Number"` MemberId string `json:"MemberId"` ReadingCelsius float64 `json:"ReadingCelsius"` MaxReadingRangeTemp float64 `json:"MaxReadingRangeTemp"` MinReadingRangeTemp float64 `json:"MinReadingRangeTemp"` PhysicalContext string `json:"PhysicalContext"` LowerThresholdCritical float64 `json:"LowerThresholdCritical"` LowerThresholdFatal float64 `json:"LowerThresholdFatal"` LowerThresholdNonCritical float64 `json:"LowerThresholdNonCritical"` UpperThresholdCritical float64 `json:"UpperThresholdCritical"` UpperThresholdFatal float64 `json:"UpperThresholdFatal"` UpperThresholdNonCritical float64 `json:"UpperThresholdNonCritical"` Status Status `json:"Status"` }
func (*Temperature) GetId ¶ added in v1.2.0
func (t *Temperature) GetId(fallback int) string
type ThermalResponse ¶
type ThermalResponse struct { Name string `json:"Name"` Description string `json:"Description"` Fans []Fan `json:"Fans"` Temperatures []Temperature `json:"Temperatures"` Redundancy []Redundancy `json:"Redundancy"` }
type V1Response ¶
type V1Response struct { RedfishVersion string `json:"RedfishVersion"` Name string `json:"Name"` Product string `json:"Product"` Vendor string `json:"Vendor"` Description string `json:"Description"` AccountService Odata `json:"AccountService"` CertificateService Odata `json:"CertificateService"` Chassis Odata `json:"Chassis"` EventService Odata `json:"EventService"` Fabrics Odata `json:"Fabrics"` JobService Odata `json:"JobService"` JsonSchemas Odata `json:"JsonSchemas"` Managers Odata `json:"Managers"` Registries Odata `json:"Registries"` SessionService Odata `json:"SessionService"` Systems Odata `json:"Systems"` Tasks Odata `json:"Tasks"` TelemetryService Odata `json:"TelemetryService"` UpdateService Odata `json:"UpdateService"` }
V1Response represents structure of the response body from /redfish/v1
Click to show internal directories.
Click to hide internal directories.