Documentation
¶
Index ¶
- Constants
- func SinceInSeconds(start time.Time) float64
- type Metrics
- func (m *Metrics) AddIPAllocation(subnetID string, allocated int64)
- func (m *Metrics) AddIPRelease(subnetID string, released int64)
- func (m *Metrics) AllocationAttempt(typ, status, subnetID string, observe float64)
- func (m *Metrics) DeleteNode(node string)
- func (m *Metrics) IncInterfaceAllocation(subnetID string)
- func (m *Metrics) IncResyncCount()
- func (m *Metrics) K8sSyncTrigger() trigger.MetricsObserver
- func (m *Metrics) ObserveBackgroundSync(status string, duration time.Duration)
- func (m *Metrics) PoolMaintainerTrigger() trigger.MetricsObserver
- func (m *Metrics) ReleaseAttempt(typ, status, subnetID string, observe float64)
- func (m *Metrics) ResyncTrigger() trigger.MetricsObserver
- func (m *Metrics) SetAvailableIPsPerSubnet(subnetID string, availabilityZone string, available int)
- func (m *Metrics) SetEmptyInterfaceSlots(emptyInterfaceSlots int)
- func (m *Metrics) SetIPAvailable(node string, cap int)
- func (m *Metrics) SetIPNeeded(node string, usage int)
- func (m *Metrics) SetIPUsed(node string, usage int)
- func (m *Metrics) SetInterfaceCandidates(interfaceCandidates int)
- func (m *Metrics) SetNodes(label string, nodes int)
Constants ¶
View Source
const LabelTargetNodeName = "target_node"
Variables ¶
This section is empty.
Functions ¶
func SinceInSeconds ¶
SinceInSeconds returns the time elapsed since start in seconds.
Types ¶
type Metrics ¶
type Metrics struct {
// Per-node IP metrics
AvailableIPs metric.DeletableVec[metric.Gauge]
UsedIPs metric.DeletableVec[metric.Gauge]
NeededIPs metric.DeletableVec[metric.Gauge]
// IP and interface allocation counters
AllocateIpOps metric.Vec[metric.Counter]
ReleaseIpOps metric.Vec[metric.Counter]
AllocateInterfaceOps metric.Vec[metric.Counter]
// Interface availability
InterfaceCandidates metric.Gauge
EmptyInterfaceSlots metric.Gauge
AvailableIPsPerSubnet metric.Vec[metric.Gauge]
// Node category counts
Nodes metric.Vec[metric.Gauge]
// Resync counter
ResyncTotal metric.Counter
// Allocation/release latency histograms
Allocation metric.Vec[metric.Observer]
Release metric.Vec[metric.Observer]
BackgroundSyncDuration metric.Vec[metric.Observer]
// Trigger metrics
// pool_maintainer is a more generic name, but for backward compatibility
// of dashboard, keep the metric name deficit_resolver unchanged
PoolMaintainerQueued metric.Counter
PoolMaintainerFolds metric.Gauge
PoolMaintainerCallDuration metric.Histogram
PoolMaintainerLatency metric.Histogram
// Trigger metrics – k8s sync
K8sSyncQueued metric.Counter
K8sSyncFolds metric.Gauge
K8sSyncCallDuration metric.Histogram
K8sSyncLatency metric.Histogram
// Trigger metrics – resync
ResyncQueued metric.Counter
ResyncFolds metric.Gauge
ResyncCallDuration metric.Histogram
ResyncLatency metric.Histogram
}
Metrics holds all Prometheus metrics for the IPAM node manager.
func NewMetrics ¶
func NewMetrics() *Metrics
NewMetrics returns a new interface metrics implementation.
func (*Metrics) AddIPAllocation ¶
func (*Metrics) AddIPRelease ¶
func (*Metrics) AllocationAttempt ¶
func (*Metrics) DeleteNode ¶
DeleteNode removes all per-node metrics for the given node.
func (*Metrics) IncInterfaceAllocation ¶
func (*Metrics) IncResyncCount ¶
func (m *Metrics) IncResyncCount()
func (*Metrics) K8sSyncTrigger ¶
func (m *Metrics) K8sSyncTrigger() trigger.MetricsObserver
func (*Metrics) ObserveBackgroundSync ¶
func (*Metrics) PoolMaintainerTrigger ¶
func (m *Metrics) PoolMaintainerTrigger() trigger.MetricsObserver
func (*Metrics) ReleaseAttempt ¶
func (*Metrics) ResyncTrigger ¶
func (m *Metrics) ResyncTrigger() trigger.MetricsObserver
func (*Metrics) SetAvailableIPsPerSubnet ¶
func (*Metrics) SetEmptyInterfaceSlots ¶
func (*Metrics) SetIPAvailable ¶
func (*Metrics) SetIPNeeded ¶
func (*Metrics) SetInterfaceCandidates ¶
Click to show internal directories.
Click to hide internal directories.