package stats
import "k8s.io/kubernetes/pkg/kubelet/stats"
Index ¶
- func NewFakeMetricsDu(path string, stats *volume.Metrics) volume.MetricsProvider
- type ByCreationTime
- func (a ByCreationTime) Len() int
- func (a ByCreationTime) Less(i, j int) bool
- func (a ByCreationTime) Swap(i, j int)
- type HostStatsProvider
- func NewFakeHostStatsProvider() HostStatsProvider
- func NewFakeHostStatsProviderWithData(fakeStats map[string]*volume.Metrics, osInterface kubecontainer.OSInterface) HostStatsProvider
- func NewHostStatsProvider(osInterface kubecontainer.OSInterface, podEtcHostsPathFunc PodEtcHostsPathFunc) HostStatsProvider
- type PodEtcHostsPathFunc
- type Provider
- func NewCRIStatsProvider( cadvisor cadvisor.Interface, resourceAnalyzer stats.ResourceAnalyzer, podManager kubepod.Manager, runtimeCache kubecontainer.RuntimeCache, runtimeService internalapi.RuntimeService, imageService internalapi.ImageManagerService, hostStatsProvider HostStatsProvider, disableAcceleratorUsageMetrics, podAndContainerStatsFromCRI bool, ) *Provider
- func NewCadvisorStatsProvider( cadvisor cadvisor.Interface, resourceAnalyzer stats.ResourceAnalyzer, podManager kubepod.Manager, runtimeCache kubecontainer.RuntimeCache, imageService kubecontainer.ImageService, statusProvider status.PodStatusProvider, hostStatsProvider HostStatsProvider, ) *Provider
- func (p *Provider) GetCgroupCPUAndMemoryStats(cgroupName string, updateStats bool) (*statsapi.ContainerStats, error)
- func (p *Provider) GetCgroupStats(cgroupName string, updateStats bool) (*statsapi.ContainerStats, *statsapi.NetworkStats, error)
- func (p *Provider) GetContainerInfo(podFullName string, podUID types.UID, containerName string, req *cadvisorapiv1.ContainerInfoRequest) (*cadvisorapiv1.ContainerInfo, error)
- func (p *Provider) GetRawContainerInfo(containerName string, req *cadvisorapiv1.ContainerInfoRequest, subcontainers bool) (map[string]*cadvisorapiv1.ContainerInfo, error)
- func (p *Provider) HasDedicatedImageFs() (bool, error)
- func (p *Provider) RlimitStats() (*statsapi.RlimitStats, error)
- func (p *Provider) RootFsStats() (*statsapi.FsStats, error)
Functions ¶
func NewFakeMetricsDu ¶
func NewFakeMetricsDu(path string, stats *volume.Metrics) volume.MetricsProvider
NewFakeMetricsDu inserts fake statistics when asked for metrics
Types ¶
type ByCreationTime ¶
type ByCreationTime []containerInfoWithCgroup
ByCreationTime implements sort.Interface for []containerInfoWithCgroup based on the cinfo.Spec.CreationTime field.
func (ByCreationTime) Len ¶
func (a ByCreationTime) Len() int
func (ByCreationTime) Less ¶
func (a ByCreationTime) Less(i, j int) bool
func (ByCreationTime) Swap ¶
func (a ByCreationTime) Swap(i, j int)
type HostStatsProvider ¶
type HostStatsProvider interface {
// contains filtered or unexported methods
}
HostStatsProvider defines an interface for providing host stats associated with pod.
func NewFakeHostStatsProvider ¶
func NewFakeHostStatsProvider() HostStatsProvider
NewFakeHostStatsProvider provides a way to test with fake host statistics
func NewFakeHostStatsProviderWithData ¶
func NewFakeHostStatsProviderWithData(fakeStats map[string]*volume.Metrics, osInterface kubecontainer.OSInterface) HostStatsProvider
NewFakeHostStatsProviderWithData provides a way to test with fake host statistics
func NewHostStatsProvider ¶
func NewHostStatsProvider(osInterface kubecontainer.OSInterface, podEtcHostsPathFunc PodEtcHostsPathFunc) HostStatsProvider
NewHostStatsProvider returns a new HostStatsProvider type struct.
type PodEtcHostsPathFunc ¶
PodEtcHostsPathFunc is a function to fetch a etc hosts path by pod uid and whether etc host path is supported by the runtime
type Provider ¶
type Provider struct {
// contains filtered or unexported fields
}
Provider provides the stats of the node and the pod-managed containers.
func NewCRIStatsProvider ¶
func NewCRIStatsProvider( cadvisor cadvisor.Interface, resourceAnalyzer stats.ResourceAnalyzer, podManager kubepod.Manager, runtimeCache kubecontainer.RuntimeCache, runtimeService internalapi.RuntimeService, imageService internalapi.ImageManagerService, hostStatsProvider HostStatsProvider, disableAcceleratorUsageMetrics, podAndContainerStatsFromCRI bool, ) *Provider
NewCRIStatsProvider returns a Provider that provides the node stats from cAdvisor and the container stats from CRI.
func NewCadvisorStatsProvider ¶
func NewCadvisorStatsProvider( cadvisor cadvisor.Interface, resourceAnalyzer stats.ResourceAnalyzer, podManager kubepod.Manager, runtimeCache kubecontainer.RuntimeCache, imageService kubecontainer.ImageService, statusProvider status.PodStatusProvider, hostStatsProvider HostStatsProvider, ) *Provider
NewCadvisorStatsProvider returns a containerStatsProvider that provides both the node and the container stats from cAdvisor.
func (*Provider) GetCgroupCPUAndMemoryStats ¶
func (p *Provider) GetCgroupCPUAndMemoryStats(cgroupName string, updateStats bool) (*statsapi.ContainerStats, error)
GetCgroupCPUAndMemoryStats returns the CPU and memory stats of the cgroup with the cgroupName. Note that this function doesn't generate filesystem stats.
func (*Provider) GetCgroupStats ¶
func (p *Provider) GetCgroupStats(cgroupName string, updateStats bool) (*statsapi.ContainerStats, *statsapi.NetworkStats, error)
GetCgroupStats returns the stats of the cgroup with the cgroupName. Note that this function doesn't generate filesystem stats.
func (*Provider) GetContainerInfo ¶
func (p *Provider) GetContainerInfo(podFullName string, podUID types.UID, containerName string, req *cadvisorapiv1.ContainerInfoRequest) (*cadvisorapiv1.ContainerInfo, error)
GetContainerInfo returns stats (from cAdvisor) for a container.
func (*Provider) GetRawContainerInfo ¶
func (p *Provider) GetRawContainerInfo(containerName string, req *cadvisorapiv1.ContainerInfoRequest, subcontainers bool) (map[string]*cadvisorapiv1.ContainerInfo, error)
GetRawContainerInfo returns the stats (from cadvisor) for a non-Kubernetes container.
func (*Provider) HasDedicatedImageFs ¶
HasDedicatedImageFs returns true if a dedicated image filesystem exists for storing images.
func (*Provider) RlimitStats ¶
func (p *Provider) RlimitStats() (*statsapi.RlimitStats, error)
RlimitStats returns base information about process count
func (*Provider) RootFsStats ¶
RootFsStats returns the stats of the node root filesystem.
Source Files ¶
cadvisor_stats_provider.go cri_stats_provider.go cri_stats_provider_others.go helper.go host_stats_provider.go host_stats_provider_fake.go provider.go
Directories ¶
Path | Synopsis |
---|---|
pkg/kubelet/stats/pidlimit |
- Version
- v1.23.14
- Published
- Nov 9, 2022
- Platform
- js/wasm
- Imports
- 33 packages
- Last checked
- 48 seconds ago –
Tools for package owners.