Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrInvalidEBSMagic = errors.New("invalid EBS magic number") ErrParseLogPage = errors.New("failed to parse log page") )
Functions ¶
func InitializeNVME ¶ added in v1.37.0
func InitializeNVME(r *metricRecorder, csiMountPointPath, instanceID string)
InitializeNVME registers the NVMe collector for gathering metrics from NVMe devices.
func InitializeRecorder ¶
func InitializeRecorder() *metricRecorder
InitializeRecorder initializes a new metricRecorder instance if it hasn't been initialized.
Types ¶
type BlockDevice ¶ added in v1.37.0
type EBSMetrics ¶ added in v1.37.0
type EBSMetrics struct { EBSMagic uint64 ReadOps uint64 WriteOps uint64 ReadBytes uint64 WriteBytes uint64 TotalReadTime uint64 TotalWriteTime uint64 EBSIOPSExceeded uint64 EBSThroughputExceeded uint64 EC2IOPSExceeded uint64 EC2ThroughputExceeded uint64 QueueLength uint64 ReservedArea [416]byte ReadLatency Histogram WriteLatency Histogram }
EBSMetrics represents the parsed metrics from the NVMe log page.
type Histogram ¶ added in v1.37.0
type Histogram struct { BinCount uint64 Bins [64]HistogramBin }
type HistogramBin ¶ added in v1.37.0
type LsblkOutput ¶ added in v1.37.0
type LsblkOutput struct {
BlockDevices []BlockDevice `json:"blockdevices"`
}
type NVMECollector ¶ added in v1.37.0
type NVMECollector struct {
// contains filtered or unexported fields
}
func NewNVMECollector ¶ added in v1.37.0
func NewNVMECollector(path, instanceID string) *NVMECollector
NewNVMECollector creates a new instance of NVMECollector.
func (*NVMECollector) Collect ¶ added in v1.37.0
func (c *NVMECollector) Collect(ch chan<- prometheus.Metric)
Collect is invoked by Prometheus at collection time.
func (*NVMECollector) Describe ¶ added in v1.37.0
func (c *NVMECollector) Describe(ch chan<- *prometheus.Desc)
Describe sends the descriptor of each metric in the NVMECollector to Prometheus.
Click to show internal directories.
Click to hide internal directories.