Versions in this module Expand all Collapse all v0 v0.3.5 Apr 23, 2024 v0.3.4 Dec 15, 2023 v0.3.3 Nov 20, 2023 v0.3.2 Sep 8, 2023 v0.3.1 Aug 10, 2023 v0.3.0 Aug 8, 2023 Changes in this version + func NewMalachiteMetricsFetcher(emitter metrics.MetricEmitter, fetcher pod.PodFetcher, ...) metric.MetricsFetcher + type MalachiteMetricsFetcher struct + func (m *MalachiteMetricsFetcher) AggregateCoreMetric(cpuset machine.CPUSet, metricName string, agg utilmetric.Aggregator) utilmetric.MetricData + func (m *MalachiteMetricsFetcher) AggregatePodMetric(podList []*v1.Pod, metricName string, agg utilmetric.Aggregator, ...) utilmetric.MetricData + func (m *MalachiteMetricsFetcher) AggregatePodNumaMetric(podList []*v1.Pod, numaNode, metricName string, agg utilmetric.Aggregator, ...) utilmetric.MetricData + func (m *MalachiteMetricsFetcher) DeRegisterNotifier(scope metric.MetricsScope, key string) + func (m *MalachiteMetricsFetcher) GetCPUMetric(coreID int, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetCgroupMetric(cgroupPath, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetCgroupNumaMetric(cgroupPath, numaNode, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetContainerMetric(podUID, containerName, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetContainerNumaMetric(podUID, containerName, numaNode, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetDeviceMetric(deviceName string, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetNodeMetric(metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) GetNumaMetric(numaID int, metricName string) (utilmetric.MetricData, error) + func (m *MalachiteMetricsFetcher) RegisterExternalMetric(f func(store *utilmetric.MetricStore)) + func (m *MalachiteMetricsFetcher) RegisterNotifier(scope metric.MetricsScope, req metric.NotifiedRequest, ...) string + func (m *MalachiteMetricsFetcher) Run(ctx context.Context) v0.2.0 Jun 13, 2023 v0.1.0 Feb 27, 2023 Changes in this version + var DefaultClient = New() + func GetAllPodsContainersCgroupsPath() (map[string]map[string]string, error) + func GetAllPodsContainersStats() (map[string]map[string]*MalachiteCgroupInfo, error) + type BlkIOCgDataV1 struct + BpfFsData BpfFsData + BpsDetails map[string]DeviceIoDetails + BpsTotal uint64 + FullPath string + IopsDetails map[string]DeviceIoDetails + IopsTotal uint64 + OldBpfFsData BpfFsData + UserPath string + type BlkIOCgDataV2 struct + BpfFsData BpfFsData + BpfIoLatency BpfIoLatency + FullPath string + IoLatency map[string]uint64 + IoMax map[string]uint64 + IoPressure Pressure + IoStat map[string]DeviceIoDetails + IoWeight map[string]uint64 + OldBpfFsData BpfFsData + UserPath string + type BlkioCg struct + V1 struct{ ... } + type BlkioCgV2 struct + V2 struct{ ... } + type BpfFsData struct + FsCreated uint64 + FsFsync uint64 + FsOpen uint64 + FsRead uint64 + FsReadBytes uint64 + FsWrite uint64 + FsWriteBytes uint64 + type BpfIoLatency struct + DriverLatency DriverLatency + Pcts int + SumLatency SumLatency + type BpfNetData struct + NetRx uint64 + NetRxBytes uint64 + NetTx uint64 + NetTxBytes uint64 + type CPU struct + CPUIowaitRatio float64 + CPUSchedWait float64 + CPUUsage float64 + CpiData *CpiData + Name string + type CPUBasicInfo struct + CPUSysTime uint64 + CPUUsage uint64 + CPUUserTime uint64 + UpdateTime uint64 + type CPUCgDataV1 struct + CPUNrPeriods uint64 + CPUNrThrottled uint64 + CPUShares uint64 + CPUSysUsageRatio float64 + CPUThrottledTime uint64 + CPUUsageRatio float64 + CPUUserUsageRatio float64 + CfsPeriodUs int64 + CfsQuotaUs int64 + FullPath string + Load Load + NewCPUBasicInfo CPUBasicInfo + OldCPUBasicInfo CPUBasicInfo + TaskNrIoWait uint64 + TaskNrRunning uint64 + TaskNrUninterruptible uint64 + type CPUCgDataV2 struct + CPUPressure Pressure + CPUStats CPUStats + CPUSysUsageRatio float64 + CPUUsageRatio float64 + CPUUserUsageRatio float64 + FullPath string + Load Load + Max uint64 + MaxBurst int + MaxPeriod int64 + TaskNrIoWait uint64 + TaskNrRunning uint64 + TaskNrUninterruptible uint64 + Weight int + WeightNice int + type CPUList struct + Inner []int + Meta string + type CPUSetCgDataV1 struct + Cpus Cpus + FullPath string + Mems Mems + type CPUSetCgDataV2 struct + Cpus Cpus + FullPath string + Mems Mems + type CPUStats struct + NrPeriods uint64 + NrThrottled uint64 + SystemUsec uint64 + UsageUsec uint64 + UserUsec uint64 + type CgroupDataInner struct + CgroupType string + MountPoint string + SubSystemGroups json.RawMessage + UserPath string + type CpiData struct + Cpi float64 + Cycles float64 + Instructions float64 + L3Misses float64 + Utilization float64 + type CpuacctCg struct + V1 struct{ ... } + type CpuacctCgV2 struct + V2 struct{ ... } + type Cpus struct + Inner []int + Meta string + type CpusetCg struct + V1 struct{ ... } + type CpusetCgV2 struct + V2 struct{ ... } + type DeviceIoDetails struct + Async uint64 + Read uint64 + Sync uint64 + Total uint64 + Write uint64 + type DiskIo struct + DeviceName string + IoBusy uint64 + IoRead uint64 + IoWrite uint64 + PrimaryDeviceID int + SecondaryDeviceID int + type DriverLatency struct + DiscardLatency int + ReadLatency int + WriteLatency int + type Full struct + Avg10 float64 + Avg300 float64 + Avg60 float64 + Total float64 + type Load struct + Fifteen float64 + Five float64 + One float64 + type MalachiteCgroupInfo struct + CgroupType string + MountPoint string + UserPath string + V1 *MalachiteCgroupV1Info + V2 *MalachiteCgroupV2Info + func GetCgroupStats(cgroupPath string) (*MalachiteCgroupInfo, error) + type MalachiteCgroupResponse struct + Data CgroupDataInner + Status int + type MalachiteCgroupV1Info struct + Blkio *BlkIOCgDataV1 + Cpu *CPUCgDataV1 + CpuSet *CPUSetCgDataV1 + Memory *MemoryCgDataV1 + NetCls *NetClsCgData + PerfEvent *PerfEventData + type MalachiteCgroupV2Info struct + Blkio *BlkIOCgDataV2 + Cpu *CPUCgDataV2 + CpuSet *CPUSetCgDataV2 + Memory *MemoryCgDataV2 + NetCls *NetClsCgData + PerfEvent *PerfEventData + type MalachiteClient interface + GetCgroupStats func(cgroup string) ([]byte, error) + GetSystemStats func(kind SystemResourceKind) ([]byte, error) + func New() MalachiteClient + type MalachiteSystemComputeResponse struct + Data SystemComputeData + Status int + type MalachiteSystemDiskIoResponse struct + Data SystemDiskIoData + Status int + type MalachiteSystemMemoryResponse struct + Data SystemMemoryData + Status int + type MalachiteSystemNetworkResponse struct + Data SystemNetworkData + Status int + type MemLocalEvents struct + High uint64 + Low uint64 + Max uint64 + Oom uint64 + OomKill uint64 + type MemStats struct + ActiveAnon uint64 + ActiveFile uint64 + Anon uint64 + AnonThp uint64 + BgdReclaim uint64 + File uint64 + FileDirty uint64 + FileMapped uint64 + FileWriteback uint64 + InactiveAnon uint64 + InactiveFile uint64 + KernelStack uint64 + Pgactivate uint64 + Pgdeactivate uint64 + Pgfault uint64 + Pglazyfree uint64 + Pglazyfreed uint64 + Pgmajfault uint64 + Pgrefill uint64 + Pgscan uint64 + Pgsteal uint64 + Shmem uint64 + Slab uint64 + SlabReclaimable uint64 + SlabUnreclaimable uint64 + Sock uint64 + ThpCollapseAlloc uint64 + ThpFaultAlloc uint64 + Unevictable uint64 + WorkingsetActivate uint64 + WorkingsetNodereclaim uint64 + WorkingsetRefault uint64 + type MemoryCg struct + V1 struct{ ... } + type MemoryCgDataV1 struct + Allocstall uint64 + Cache uint64 + Dirty uint64 + FullPath string + KernMemoryUsageInBytes uint64 + KswapdSteal uint64 + MemoryLimitInBytes uint64 + MemoryUsageInBytes uint64 + NumaStats []NumaStatsV1 + OomCnt int + Pgfault uint64 + Pgmajfault uint64 + Rss uint64 + Shmem uint64 + TotalAllocstall uint64 + TotalCache uint64 + TotalDirty uint64 + TotalKswapdSteal uint64 + TotalPgfault uint64 + TotalPgmajfault uint64 + TotalRss uint64 + TotalShmem uint64 + TotalWriteback uint64 + WatermarkScaleFactor *uint + Writeback uint64 + type MemoryCgDataV2 struct + FullPath string + High uint64 + Low uint64 + Max uint64 + MemLocalEvents MemLocalEvents + MemNumaStats map[string]NumaStatsV2 + MemPressure Pressure + MemStats MemStats + MemoryUsageInBytes uint64 + Min uint64 + OomCnt uint64 + SwapMax uint64 + UserPath string + WatermarkScaleFactor *uint64 + type MemoryCgV2 struct + V2 struct{ ... } + type Mems struct + Inner []int + Meta string + type NetClsCg struct + NetData NetClsCgData + type NetClsCgData struct + BpfNetData BpfNetData + FullPath string + OldBpfNetData BpfNetData + UserPath string + type NetworkCard struct + Name string + ReceiveBytes uint64 + ReceiveCompressed uint64 + ReceiveDrop uint64 + ReceiveErrs uint64 + ReceiveFifo uint64 + ReceiveFrame uint64 + ReceiveMulticast uint64 + ReceivePackets uint64 + TransmitBytes uint64 + TransmitCarrier uint64 + TransmitColls uint64 + TransmitCompressed uint64 + TransmitDrop uint64 + TransmitErrs uint64 + TransmitFifo uint64 + TransmitPackets uint64 + type Numa struct + CPUList CPUList + ID int + MemAvailable uint64 + MemFilePages uint64 + MemFree uint64 + MemMaxBandwidthMB float64 + MemReadBandwidthMB float64 + MemReadLatency float64 + MemShmem uint64 + MemTheoryMaxBandwidthMB float64 + MemTotal uint64 + MemUsed uint64 + MemWriteBandwidthMB float64 + MemWriteLatency float64 + Path string + type NumaStatsV1 struct + Anon int + File int + HierarchicalAnon int + HierarchicalFile int + HierarchicalTotal int + HierarchicalUnevictable int + NumaName string + Total int + Unevictable int + type NumaStatsV2 struct + ActiveAnon uint64 + ActiveFile uint64 + Anon uint64 + AnonThp uint64 + File uint64 + FileDirty uint64 + FileMapped uint64 + FileWriteback uint64 + InactiveAnon uint64 + InactiveFile uint64 + KernelStack uint64 + Shmem uint64 + SlabReclaimable uint64 + SlabUnreclaimable uint64 + Unevictable uint64 + WorkingsetActivate uint64 + WorkingsetNodereclaim uint64 + WorkingsetRefault uint64 + type PerfEventCg struct + PerfEventData PerfEventData + type PerfEventData struct + Cpi float64 + Cycles float64 + FullPath string + IcacheMiss float64 + Instructions float64 + L2CacheMiss float64 + L3CacheMiss float64 + PhyCoreUtilization float64 + UserPath string + type Pressure struct + Full Full + Some Some + type Some struct + Avg10 float64 + Avg300 float64 + Avg60 float64 + Total float64 + type SubSystemGroupsV1 struct + Blkio BlkioCg + Cpuacct CpuacctCg + Cpuset CpusetCg + Memory MemoryCg + NetCls NetClsCg + PerfEvent PerfEventCg + type SubSystemGroupsV2 struct + Blkio BlkioCgV2 + Cpuacct CpuacctCgV2 + Cpuset CpusetCgV2 + Memory MemoryCgV2 + NetCls NetClsCg + PerfEvent PerfEventCg + type SumLatency struct + DiscardLatency int + ReadLatency int + WriteLatency int + type System struct + MemAvailable uint64 + MemBuffers uint64 + MemDirtyPageCache uint64 + MemFree uint64 + MemPageCache uint64 + MemShm uint64 + MemSlabReclaimable uint64 + MemSwapFree uint64 + MemSwapTotal uint64 + MemTotal uint64 + MemUsed uint64 + MemUtil float64 + MemWriteBackPageCache uint64 + VMWatermarkScaleFactor uint64 + VmstatPgstealKswapd uint64 + type SystemComputeData struct + CPU []CPU + Load Load + func GetSystemComputeStats() (*SystemComputeData, error) + type SystemDiskIoData struct + DiskIo []DiskIo + func GetSystemIOStats() (*SystemDiskIoData, error) + type SystemMemoryData struct + Numa []Numa + System System + func GetSystemMemoryStats() (*SystemMemoryData, error) + type SystemNetworkData struct + NetworkCard []NetworkCard + TCP TCP + func GetSystemNetStats() (*SystemNetworkData, error) + type SystemResourceKind int + const Compute + const IO + const Memory + const Net + type TCP struct + TCPAbortOnMemory uint64 + TCPCloseWait uint64 + TCPDelayAcks uint64 + TCPListenDrops uint64 + TCPListenOverflows uint64 + TCPOldOutSegs uint64 + TCPOldRetransSegs uint64 + TCPOutSegs uint64 + TCPReqQFullDrop uint64 + TCPRetran float64 + TCPRetransSegs uint64