Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockDeviceMetric ¶ added in v1.43.1
type BlockDeviceMetric struct {
Name string `avro:"name"`
NodeName string `avro:"node_name"`
NodeTemplate *string `avro:"node_template"`
ReadIOPS int64 `avro:"read_iops"`
WriteIOPS int64 `avro:"write_iops"`
ReadThroughput int64 `avro:"read_throughput"`
WriteThroughput int64 `avro:"write_throughput"`
Size *int64 `avro:"size"`
PhysicalDevices []string `avro:"physical_devices"`
Timestamp time.Time `avro:"ts"`
// contains filtered or unexported fields
}
type BlockDeviceMetricsWriter ¶ added in v1.43.1
type BlockDeviceMetricsWriter interface {
Write(metrics ...BlockDeviceMetric) error
}
func NewBlockDeviceMetricsWriter ¶ added in v1.43.1
func NewBlockDeviceMetricsWriter(metricsClient custommetrics.MetricClient) (BlockDeviceMetricsWriter, error)
type Config ¶
type Config struct {
DataBatch config.DataBatchConfig `validate:"required"`
Netflow config.NetflowConfig `validate:"required"`
Events config.EventsConfig `validate:"required"`
Stats config.StatsConfig `validate:"required"`
ProcessTree config.ProcessTreeConfig `validate:"required"`
}
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
func NewController ¶
func NewController( log *logging.Logger, cfg Config, exporters []export.DataBatchWriter, containersClient containersClient, netStatsReader netStatsReader, ct conntrackClient, tracer ebpfTracer, signatureEngine signatureEngine, kubeClient kubepb.KubeAPIClient, processTreeCollector processTreeCollector, procHandler procHandler, enrichmentService enrichmentService, blockDeviceMetricsWriter BlockDeviceMetricsWriter, filesystemMetricsWriter FilesystemMetricsWriter, storageInfoProvider StorageInfoProvider, ) *Controller
func (*Controller) IsMutedNamespace ¶
func (c *Controller) IsMutedNamespace(namespace string) bool
func (*Controller) MuteNamespace ¶
func (c *Controller) MuteNamespace(namespace string) error
func (*Controller) UnmuteNamespace ¶
func (c *Controller) UnmuteNamespace(namespace string) error
type DiskClient ¶ added in v1.43.1
type DiskClient struct{}
func NewDiskClient ¶ added in v1.43.1
func NewDiskClient() *DiskClient
func (*DiskClient) GetDiskStats ¶ added in v1.43.1
func (d *DiskClient) GetDiskStats(path string) (*disk.UsageStat, error)
func (*DiskClient) IOCounters ¶ added in v1.43.1
func (d *DiskClient) IOCounters() (map[string]disk.IOCountersStat, error)
func (*DiskClient) Partitions ¶ added in v1.43.1
func (d *DiskClient) Partitions(all bool) ([]disk.PartitionStat, error)
type DiskInterface ¶ added in v1.43.1
type FilesystemMetric ¶ added in v1.43.1
type FilesystemMetricsWriter ¶ added in v1.43.1
type FilesystemMetricsWriter interface {
Write(metrics ...FilesystemMetric) error
}
func NewFilesystemMetricsWriter ¶ added in v1.43.1
func NewFilesystemMetricsWriter(metricsClient custommetrics.MetricClient) (FilesystemMetricsWriter, error)
type StorageInfoProvider ¶ added in v1.43.1
type StorageInfoProvider interface {
BuildFilesystemMetrics(timestamp time.Time) ([]FilesystemMetric, error)
BuildBlockDeviceMetrics(timestamp time.Time) ([]BlockDeviceMetric, error)
}
func NewStorageInfoProvider ¶ added in v1.43.1
func NewStorageInfoProvider(log *logging.Logger, kubeClient kubepb.KubeAPIClient) (StorageInfoProvider, error)
type SysfsStorageInfoProvider ¶ added in v1.43.1
type SysfsStorageInfoProvider struct {
// contains filtered or unexported fields
}
func (*SysfsStorageInfoProvider) BuildBlockDeviceMetrics ¶ added in v1.43.1
func (s *SysfsStorageInfoProvider) BuildBlockDeviceMetrics(timestamp time.Time) ([]BlockDeviceMetric, error)
func (*SysfsStorageInfoProvider) BuildFilesystemMetrics ¶ added in v1.43.1
func (s *SysfsStorageInfoProvider) BuildFilesystemMetrics(timestamp time.Time) ([]FilesystemMetric, error)
Click to show internal directories.
Click to hide internal directories.