kubernetesk8s.io/kubernetes/pkg/kubelet/stats Index | Files | Directories

package stats

import "k8s.io/kubernetes/pkg/kubelet/stats"

Index

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 LogMetricsService

type LogMetricsService interface {
	// contains filtered or unexported methods
}

LogMetricsService defines an interface for providing LogMetrics functionality.

func NewLogMetricsService

func NewLogMetricsService() LogMetricsService

NewLogMetricsService returns a new LogMetricsService type struct.

type StatsProvider

type StatsProvider struct {
	// contains filtered or unexported fields
}

StatsProvider 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,
	logMetricsService LogMetricsService,
	osInterface kubecontainer.OSInterface,
) *StatsProvider

NewCRIStatsProvider returns a StatsProvider 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,
) *StatsProvider

NewCadvisorStatsProvider returns a containerStatsProvider that provides both the node and the container stats from cAdvisor.

func (*StatsProvider) GetCgroupCPUAndMemoryStats

func (p *StatsProvider) 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 (*StatsProvider) GetCgroupStats

func (p *StatsProvider) 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 (*StatsProvider) GetContainerInfo

func (p *StatsProvider) GetContainerInfo(podFullName string, podUID types.UID, containerName string, req *cadvisorapiv1.ContainerInfoRequest) (*cadvisorapiv1.ContainerInfo, error)

GetContainerInfo returns stats (from cAdvisor) for a container.

func (*StatsProvider) GetRawContainerInfo

func (p *StatsProvider) 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 (*StatsProvider) HasDedicatedImageFs

func (p *StatsProvider) HasDedicatedImageFs() (bool, error)

HasDedicatedImageFs returns true if a dedicated image filesystem exists for storing images.

func (*StatsProvider) RlimitStats

func (p *StatsProvider) RlimitStats() (*statsapi.RlimitStats, error)

RlimitStats returns base information about process count

func (*StatsProvider) RootFsStats

func (p *StatsProvider) RootFsStats() (*statsapi.FsStats, error)

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 log_metrics_provider.go stats_provider.go

Directories

PathSynopsis
pkg/kubelet/stats/pidlimit
Version
v1.19.7
Published
Jan 13, 2021
Platform
js/wasm
Imports
28 packages
Last checked
13 seconds ago

Tools for package owners.