metadata

package
v0.99.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MetricsStability = component.StabilityLevelAlpha
)

Variables

View Source
var (
	Type = component.MustNewType("docker_stats")
)

Functions

func Meter added in v0.92.0

func Meter(settings component.TelemetrySettings) metric.Meter

func Tracer added in v0.92.0

func Tracer(settings component.TelemetrySettings) trace.Tracer

func WithStartTime

func WithStartTime(startTime pcommon.Timestamp) metricBuilderOption

WithStartTime sets startTime on the metrics builder.

Types

type MetricConfig added in v0.77.0

type MetricConfig struct {
	Enabled bool `mapstructure:"enabled"`
	// contains filtered or unexported fields
}

MetricConfig provides common config for a particular metric.

func (*MetricConfig) Unmarshal added in v0.77.0

func (ms *MetricConfig) Unmarshal(parser *confmap.Conf) error

type MetricsBuilder

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

MetricsBuilder provides an interface for scrapers to report metrics while taking care of all the transformations required to produce metric representation defined in metadata and user config.

func NewMetricsBuilder

func NewMetricsBuilder(mbc MetricsBuilderConfig, settings receiver.CreateSettings, options ...metricBuilderOption) *MetricsBuilder

func (*MetricsBuilder) Emit

Emit returns all the metrics accumulated by the metrics builder and updates the internal state to be ready for recording another set of metrics. This function will be responsible for applying all the transformations required to produce metric representation defined in metadata and user config, e.g. delta or cumulative.

func (*MetricsBuilder) EmitForResource

func (mb *MetricsBuilder) EmitForResource(rmo ...ResourceMetricsOption)

EmitForResource saves all the generated metrics under a new resource and updates the internal state to be ready for recording another set of data points as part of another resource. This function can be helpful when one scraper needs to emit metrics from several resources. Otherwise calling this function is not required, just `Emit` function can be called instead. Resource attributes should be provided as ResourceMetricsOption arguments.

func (*MetricsBuilder) NewResourceBuilder added in v0.83.0

func (mb *MetricsBuilder) NewResourceBuilder() *ResourceBuilder

NewResourceBuilder returns a new resource builder that should be used to build a resource associated with for the emitted metrics.

func (*MetricsBuilder) RecordContainerBlockioIoMergedRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoMergedRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoMergedRecursiveDataPoint adds a data point to container.blockio.io_merged_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioIoQueuedRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoQueuedRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoQueuedRecursiveDataPoint adds a data point to container.blockio.io_queued_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioIoServiceBytesRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoServiceBytesRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoServiceBytesRecursiveDataPoint adds a data point to container.blockio.io_service_bytes_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioIoServiceTimeRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoServiceTimeRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoServiceTimeRecursiveDataPoint adds a data point to container.blockio.io_service_time_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioIoServicedRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoServicedRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoServicedRecursiveDataPoint adds a data point to container.blockio.io_serviced_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioIoTimeRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoTimeRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoTimeRecursiveDataPoint adds a data point to container.blockio.io_time_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioIoWaitTimeRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioIoWaitTimeRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioIoWaitTimeRecursiveDataPoint adds a data point to container.blockio.io_wait_time_recursive metric.

func (*MetricsBuilder) RecordContainerBlockioSectorsRecursiveDataPoint added in v0.60.0

func (mb *MetricsBuilder) RecordContainerBlockioSectorsRecursiveDataPoint(ts pcommon.Timestamp, val int64, deviceMajorAttributeValue string, deviceMinorAttributeValue string, operationAttributeValue string)

RecordContainerBlockioSectorsRecursiveDataPoint adds a data point to container.blockio.sectors_recursive metric.

func (*MetricsBuilder) RecordContainerCPULimitDataPoint added in v0.90.0

func (mb *MetricsBuilder) RecordContainerCPULimitDataPoint(ts pcommon.Timestamp, val float64)

RecordContainerCPULimitDataPoint adds a data point to container.cpu.limit metric.

func (*MetricsBuilder) RecordContainerCPULogicalCountDataPoint added in v0.97.0

func (mb *MetricsBuilder) RecordContainerCPULogicalCountDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPULogicalCountDataPoint adds a data point to container.cpu.logical.count metric.

func (*MetricsBuilder) RecordContainerCPUSharesDataPoint added in v0.90.0

func (mb *MetricsBuilder) RecordContainerCPUSharesDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUSharesDataPoint adds a data point to container.cpu.shares metric.

func (*MetricsBuilder) RecordContainerCPUThrottlingDataPeriodsDataPoint

func (mb *MetricsBuilder) RecordContainerCPUThrottlingDataPeriodsDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUThrottlingDataPeriodsDataPoint adds a data point to container.cpu.throttling_data.periods metric.

func (*MetricsBuilder) RecordContainerCPUThrottlingDataThrottledPeriodsDataPoint

func (mb *MetricsBuilder) RecordContainerCPUThrottlingDataThrottledPeriodsDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUThrottlingDataThrottledPeriodsDataPoint adds a data point to container.cpu.throttling_data.throttled_periods metric.

func (*MetricsBuilder) RecordContainerCPUThrottlingDataThrottledTimeDataPoint

func (mb *MetricsBuilder) RecordContainerCPUThrottlingDataThrottledTimeDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUThrottlingDataThrottledTimeDataPoint adds a data point to container.cpu.throttling_data.throttled_time metric.

func (*MetricsBuilder) RecordContainerCPUUsageKernelmodeDataPoint

func (mb *MetricsBuilder) RecordContainerCPUUsageKernelmodeDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUUsageKernelmodeDataPoint adds a data point to container.cpu.usage.kernelmode metric.

func (*MetricsBuilder) RecordContainerCPUUsagePercpuDataPoint

func (mb *MetricsBuilder) RecordContainerCPUUsagePercpuDataPoint(ts pcommon.Timestamp, val int64, coreAttributeValue string)

RecordContainerCPUUsagePercpuDataPoint adds a data point to container.cpu.usage.percpu metric.

func (*MetricsBuilder) RecordContainerCPUUsageSystemDataPoint

func (mb *MetricsBuilder) RecordContainerCPUUsageSystemDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUUsageSystemDataPoint adds a data point to container.cpu.usage.system metric.

func (*MetricsBuilder) RecordContainerCPUUsageTotalDataPoint

func (mb *MetricsBuilder) RecordContainerCPUUsageTotalDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUUsageTotalDataPoint adds a data point to container.cpu.usage.total metric.

func (*MetricsBuilder) RecordContainerCPUUsageUsermodeDataPoint

func (mb *MetricsBuilder) RecordContainerCPUUsageUsermodeDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerCPUUsageUsermodeDataPoint adds a data point to container.cpu.usage.usermode metric.

func (*MetricsBuilder) RecordContainerCPUUtilizationDataPoint added in v0.79.0

func (mb *MetricsBuilder) RecordContainerCPUUtilizationDataPoint(ts pcommon.Timestamp, val float64)

RecordContainerCPUUtilizationDataPoint adds a data point to container.cpu.utilization metric.

func (*MetricsBuilder) RecordContainerMemoryActiveAnonDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryActiveAnonDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryActiveAnonDataPoint adds a data point to container.memory.active_anon metric.

func (*MetricsBuilder) RecordContainerMemoryActiveFileDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryActiveFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryActiveFileDataPoint adds a data point to container.memory.active_file metric.

func (*MetricsBuilder) RecordContainerMemoryAnonDataPoint added in v0.81.0

func (mb *MetricsBuilder) RecordContainerMemoryAnonDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryAnonDataPoint adds a data point to container.memory.anon metric.

func (*MetricsBuilder) RecordContainerMemoryCacheDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryCacheDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryCacheDataPoint adds a data point to container.memory.cache metric.

func (*MetricsBuilder) RecordContainerMemoryDirtyDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryDirtyDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryDirtyDataPoint adds a data point to container.memory.dirty metric.

func (*MetricsBuilder) RecordContainerMemoryFailsDataPoint added in v0.97.0

func (mb *MetricsBuilder) RecordContainerMemoryFailsDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryFailsDataPoint adds a data point to container.memory.fails metric.

func (*MetricsBuilder) RecordContainerMemoryFileDataPoint added in v0.81.0

func (mb *MetricsBuilder) RecordContainerMemoryFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryFileDataPoint adds a data point to container.memory.file metric.

func (*MetricsBuilder) RecordContainerMemoryHierarchicalMemoryLimitDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryHierarchicalMemoryLimitDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryHierarchicalMemoryLimitDataPoint adds a data point to container.memory.hierarchical_memory_limit metric.

func (*MetricsBuilder) RecordContainerMemoryHierarchicalMemswLimitDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryHierarchicalMemswLimitDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryHierarchicalMemswLimitDataPoint adds a data point to container.memory.hierarchical_memsw_limit metric.

func (*MetricsBuilder) RecordContainerMemoryInactiveAnonDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryInactiveAnonDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryInactiveAnonDataPoint adds a data point to container.memory.inactive_anon metric.

func (*MetricsBuilder) RecordContainerMemoryInactiveFileDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryInactiveFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryInactiveFileDataPoint adds a data point to container.memory.inactive_file metric.

func (*MetricsBuilder) RecordContainerMemoryMappedFileDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryMappedFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryMappedFileDataPoint adds a data point to container.memory.mapped_file metric.

func (*MetricsBuilder) RecordContainerMemoryPercentDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryPercentDataPoint(ts pcommon.Timestamp, val float64)

RecordContainerMemoryPercentDataPoint adds a data point to container.memory.percent metric.

func (*MetricsBuilder) RecordContainerMemoryPgfaultDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryPgfaultDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryPgfaultDataPoint adds a data point to container.memory.pgfault metric.

func (*MetricsBuilder) RecordContainerMemoryPgmajfaultDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryPgmajfaultDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryPgmajfaultDataPoint adds a data point to container.memory.pgmajfault metric.

func (*MetricsBuilder) RecordContainerMemoryPgpginDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryPgpginDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryPgpginDataPoint adds a data point to container.memory.pgpgin metric.

func (*MetricsBuilder) RecordContainerMemoryPgpgoutDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryPgpgoutDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryPgpgoutDataPoint adds a data point to container.memory.pgpgout metric.

func (*MetricsBuilder) RecordContainerMemoryRssDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryRssDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryRssDataPoint adds a data point to container.memory.rss metric.

func (*MetricsBuilder) RecordContainerMemoryRssHugeDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryRssHugeDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryRssHugeDataPoint adds a data point to container.memory.rss_huge metric.

func (*MetricsBuilder) RecordContainerMemoryTotalActiveAnonDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalActiveAnonDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalActiveAnonDataPoint adds a data point to container.memory.total_active_anon metric.

func (*MetricsBuilder) RecordContainerMemoryTotalActiveFileDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalActiveFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalActiveFileDataPoint adds a data point to container.memory.total_active_file metric.

func (*MetricsBuilder) RecordContainerMemoryTotalCacheDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalCacheDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalCacheDataPoint adds a data point to container.memory.total_cache metric.

func (*MetricsBuilder) RecordContainerMemoryTotalDirtyDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalDirtyDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalDirtyDataPoint adds a data point to container.memory.total_dirty metric.

func (*MetricsBuilder) RecordContainerMemoryTotalInactiveAnonDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalInactiveAnonDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalInactiveAnonDataPoint adds a data point to container.memory.total_inactive_anon metric.

func (*MetricsBuilder) RecordContainerMemoryTotalInactiveFileDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalInactiveFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalInactiveFileDataPoint adds a data point to container.memory.total_inactive_file metric.

func (*MetricsBuilder) RecordContainerMemoryTotalMappedFileDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalMappedFileDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalMappedFileDataPoint adds a data point to container.memory.total_mapped_file metric.

func (*MetricsBuilder) RecordContainerMemoryTotalPgfaultDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalPgfaultDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalPgfaultDataPoint adds a data point to container.memory.total_pgfault metric.

func (*MetricsBuilder) RecordContainerMemoryTotalPgmajfaultDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalPgmajfaultDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalPgmajfaultDataPoint adds a data point to container.memory.total_pgmajfault metric.

func (*MetricsBuilder) RecordContainerMemoryTotalPgpginDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalPgpginDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalPgpginDataPoint adds a data point to container.memory.total_pgpgin metric.

func (*MetricsBuilder) RecordContainerMemoryTotalPgpgoutDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalPgpgoutDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalPgpgoutDataPoint adds a data point to container.memory.total_pgpgout metric.

func (*MetricsBuilder) RecordContainerMemoryTotalRssDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalRssDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalRssDataPoint adds a data point to container.memory.total_rss metric.

func (*MetricsBuilder) RecordContainerMemoryTotalRssHugeDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalRssHugeDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalRssHugeDataPoint adds a data point to container.memory.total_rss_huge metric.

func (*MetricsBuilder) RecordContainerMemoryTotalUnevictableDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalUnevictableDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalUnevictableDataPoint adds a data point to container.memory.total_unevictable metric.

func (*MetricsBuilder) RecordContainerMemoryTotalWritebackDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryTotalWritebackDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryTotalWritebackDataPoint adds a data point to container.memory.total_writeback metric.

func (*MetricsBuilder) RecordContainerMemoryUnevictableDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryUnevictableDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryUnevictableDataPoint adds a data point to container.memory.unevictable metric.

func (*MetricsBuilder) RecordContainerMemoryUsageLimitDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryUsageLimitDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryUsageLimitDataPoint adds a data point to container.memory.usage.limit metric.

func (*MetricsBuilder) RecordContainerMemoryUsageMaxDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryUsageMaxDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryUsageMaxDataPoint adds a data point to container.memory.usage.max metric.

func (*MetricsBuilder) RecordContainerMemoryUsageTotalDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryUsageTotalDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryUsageTotalDataPoint adds a data point to container.memory.usage.total metric.

func (*MetricsBuilder) RecordContainerMemoryWritebackDataPoint

func (mb *MetricsBuilder) RecordContainerMemoryWritebackDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerMemoryWritebackDataPoint adds a data point to container.memory.writeback metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageRxBytesDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageRxBytesDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageRxBytesDataPoint adds a data point to container.network.io.usage.rx_bytes metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageRxDroppedDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageRxDroppedDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageRxDroppedDataPoint adds a data point to container.network.io.usage.rx_dropped metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageRxErrorsDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageRxErrorsDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageRxErrorsDataPoint adds a data point to container.network.io.usage.rx_errors metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageRxPacketsDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageRxPacketsDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageRxPacketsDataPoint adds a data point to container.network.io.usage.rx_packets metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageTxBytesDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageTxBytesDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageTxBytesDataPoint adds a data point to container.network.io.usage.tx_bytes metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageTxDroppedDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageTxDroppedDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageTxDroppedDataPoint adds a data point to container.network.io.usage.tx_dropped metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageTxErrorsDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageTxErrorsDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageTxErrorsDataPoint adds a data point to container.network.io.usage.tx_errors metric.

func (*MetricsBuilder) RecordContainerNetworkIoUsageTxPacketsDataPoint

func (mb *MetricsBuilder) RecordContainerNetworkIoUsageTxPacketsDataPoint(ts pcommon.Timestamp, val int64, interfaceAttributeValue string)

RecordContainerNetworkIoUsageTxPacketsDataPoint adds a data point to container.network.io.usage.tx_packets metric.

func (*MetricsBuilder) RecordContainerPidsCountDataPoint added in v0.78.0

func (mb *MetricsBuilder) RecordContainerPidsCountDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerPidsCountDataPoint adds a data point to container.pids.count metric.

func (*MetricsBuilder) RecordContainerPidsLimitDataPoint added in v0.78.0

func (mb *MetricsBuilder) RecordContainerPidsLimitDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerPidsLimitDataPoint adds a data point to container.pids.limit metric.

func (*MetricsBuilder) RecordContainerRestartsDataPoint added in v0.90.0

func (mb *MetricsBuilder) RecordContainerRestartsDataPoint(ts pcommon.Timestamp, val int64)

RecordContainerRestartsDataPoint adds a data point to container.restarts metric.

func (*MetricsBuilder) RecordContainerUptimeDataPoint added in v0.80.0

func (mb *MetricsBuilder) RecordContainerUptimeDataPoint(ts pcommon.Timestamp, val float64)

RecordContainerUptimeDataPoint adds a data point to container.uptime metric.

func (*MetricsBuilder) Reset

func (mb *MetricsBuilder) Reset(options ...metricBuilderOption)

Reset resets metrics builder to its initial state. It should be used when external metrics source is restarted, and metrics builder should update its startTime and reset it's internal state accordingly.

type MetricsBuilderConfig added in v0.73.0

type MetricsBuilderConfig struct {
	Metrics            MetricsConfig            `mapstructure:"metrics"`
	ResourceAttributes ResourceAttributesConfig `mapstructure:"resource_attributes"`
}

MetricsBuilderConfig is a configuration for docker_stats metrics builder.

func DefaultMetricsBuilderConfig added in v0.73.0

func DefaultMetricsBuilderConfig() MetricsBuilderConfig

type MetricsConfig added in v0.77.0

type MetricsConfig struct {
	ContainerBlockioIoMergedRecursive          MetricConfig `mapstructure:"container.blockio.io_merged_recursive"`
	ContainerBlockioIoQueuedRecursive          MetricConfig `mapstructure:"container.blockio.io_queued_recursive"`
	ContainerBlockioIoServiceBytesRecursive    MetricConfig `mapstructure:"container.blockio.io_service_bytes_recursive"`
	ContainerBlockioIoServiceTimeRecursive     MetricConfig `mapstructure:"container.blockio.io_service_time_recursive"`
	ContainerBlockioIoServicedRecursive        MetricConfig `mapstructure:"container.blockio.io_serviced_recursive"`
	ContainerBlockioIoTimeRecursive            MetricConfig `mapstructure:"container.blockio.io_time_recursive"`
	ContainerBlockioIoWaitTimeRecursive        MetricConfig `mapstructure:"container.blockio.io_wait_time_recursive"`
	ContainerBlockioSectorsRecursive           MetricConfig `mapstructure:"container.blockio.sectors_recursive"`
	ContainerCPULimit                          MetricConfig `mapstructure:"container.cpu.limit"`
	ContainerCPULogicalCount                   MetricConfig `mapstructure:"container.cpu.logical.count"`
	ContainerCPUShares                         MetricConfig `mapstructure:"container.cpu.shares"`
	ContainerCPUThrottlingDataPeriods          MetricConfig `mapstructure:"container.cpu.throttling_data.periods"`
	ContainerCPUThrottlingDataThrottledPeriods MetricConfig `mapstructure:"container.cpu.throttling_data.throttled_periods"`
	ContainerCPUThrottlingDataThrottledTime    MetricConfig `mapstructure:"container.cpu.throttling_data.throttled_time"`
	ContainerCPUUsageKernelmode                MetricConfig `mapstructure:"container.cpu.usage.kernelmode"`
	ContainerCPUUsagePercpu                    MetricConfig `mapstructure:"container.cpu.usage.percpu"`
	ContainerCPUUsageSystem                    MetricConfig `mapstructure:"container.cpu.usage.system"`
	ContainerCPUUsageTotal                     MetricConfig `mapstructure:"container.cpu.usage.total"`
	ContainerCPUUsageUsermode                  MetricConfig `mapstructure:"container.cpu.usage.usermode"`
	ContainerCPUUtilization                    MetricConfig `mapstructure:"container.cpu.utilization"`
	ContainerMemoryActiveAnon                  MetricConfig `mapstructure:"container.memory.active_anon"`
	ContainerMemoryActiveFile                  MetricConfig `mapstructure:"container.memory.active_file"`
	ContainerMemoryAnon                        MetricConfig `mapstructure:"container.memory.anon"`
	ContainerMemoryCache                       MetricConfig `mapstructure:"container.memory.cache"`
	ContainerMemoryDirty                       MetricConfig `mapstructure:"container.memory.dirty"`
	ContainerMemoryFails                       MetricConfig `mapstructure:"container.memory.fails"`
	ContainerMemoryFile                        MetricConfig `mapstructure:"container.memory.file"`
	ContainerMemoryHierarchicalMemoryLimit     MetricConfig `mapstructure:"container.memory.hierarchical_memory_limit"`
	ContainerMemoryHierarchicalMemswLimit      MetricConfig `mapstructure:"container.memory.hierarchical_memsw_limit"`
	ContainerMemoryInactiveAnon                MetricConfig `mapstructure:"container.memory.inactive_anon"`
	ContainerMemoryInactiveFile                MetricConfig `mapstructure:"container.memory.inactive_file"`
	ContainerMemoryMappedFile                  MetricConfig `mapstructure:"container.memory.mapped_file"`
	ContainerMemoryPercent                     MetricConfig `mapstructure:"container.memory.percent"`
	ContainerMemoryPgfault                     MetricConfig `mapstructure:"container.memory.pgfault"`
	ContainerMemoryPgmajfault                  MetricConfig `mapstructure:"container.memory.pgmajfault"`
	ContainerMemoryPgpgin                      MetricConfig `mapstructure:"container.memory.pgpgin"`
	ContainerMemoryPgpgout                     MetricConfig `mapstructure:"container.memory.pgpgout"`
	ContainerMemoryRss                         MetricConfig `mapstructure:"container.memory.rss"`
	ContainerMemoryRssHuge                     MetricConfig `mapstructure:"container.memory.rss_huge"`
	ContainerMemoryTotalActiveAnon             MetricConfig `mapstructure:"container.memory.total_active_anon"`
	ContainerMemoryTotalActiveFile             MetricConfig `mapstructure:"container.memory.total_active_file"`
	ContainerMemoryTotalCache                  MetricConfig `mapstructure:"container.memory.total_cache"`
	ContainerMemoryTotalDirty                  MetricConfig `mapstructure:"container.memory.total_dirty"`
	ContainerMemoryTotalInactiveAnon           MetricConfig `mapstructure:"container.memory.total_inactive_anon"`
	ContainerMemoryTotalInactiveFile           MetricConfig `mapstructure:"container.memory.total_inactive_file"`
	ContainerMemoryTotalMappedFile             MetricConfig `mapstructure:"container.memory.total_mapped_file"`
	ContainerMemoryTotalPgfault                MetricConfig `mapstructure:"container.memory.total_pgfault"`
	ContainerMemoryTotalPgmajfault             MetricConfig `mapstructure:"container.memory.total_pgmajfault"`
	ContainerMemoryTotalPgpgin                 MetricConfig `mapstructure:"container.memory.total_pgpgin"`
	ContainerMemoryTotalPgpgout                MetricConfig `mapstructure:"container.memory.total_pgpgout"`
	ContainerMemoryTotalRss                    MetricConfig `mapstructure:"container.memory.total_rss"`
	ContainerMemoryTotalRssHuge                MetricConfig `mapstructure:"container.memory.total_rss_huge"`
	ContainerMemoryTotalUnevictable            MetricConfig `mapstructure:"container.memory.total_unevictable"`
	ContainerMemoryTotalWriteback              MetricConfig `mapstructure:"container.memory.total_writeback"`
	ContainerMemoryUnevictable                 MetricConfig `mapstructure:"container.memory.unevictable"`
	ContainerMemoryUsageLimit                  MetricConfig `mapstructure:"container.memory.usage.limit"`
	ContainerMemoryUsageMax                    MetricConfig `mapstructure:"container.memory.usage.max"`
	ContainerMemoryUsageTotal                  MetricConfig `mapstructure:"container.memory.usage.total"`
	ContainerMemoryWriteback                   MetricConfig `mapstructure:"container.memory.writeback"`
	ContainerNetworkIoUsageRxBytes             MetricConfig `mapstructure:"container.network.io.usage.rx_bytes"`
	ContainerNetworkIoUsageRxDropped           MetricConfig `mapstructure:"container.network.io.usage.rx_dropped"`
	ContainerNetworkIoUsageRxErrors            MetricConfig `mapstructure:"container.network.io.usage.rx_errors"`
	ContainerNetworkIoUsageRxPackets           MetricConfig `mapstructure:"container.network.io.usage.rx_packets"`
	ContainerNetworkIoUsageTxBytes             MetricConfig `mapstructure:"container.network.io.usage.tx_bytes"`
	ContainerNetworkIoUsageTxDropped           MetricConfig `mapstructure:"container.network.io.usage.tx_dropped"`
	ContainerNetworkIoUsageTxErrors            MetricConfig `mapstructure:"container.network.io.usage.tx_errors"`
	ContainerNetworkIoUsageTxPackets           MetricConfig `mapstructure:"container.network.io.usage.tx_packets"`
	ContainerPidsCount                         MetricConfig `mapstructure:"container.pids.count"`
	ContainerPidsLimit                         MetricConfig `mapstructure:"container.pids.limit"`
	ContainerRestarts                          MetricConfig `mapstructure:"container.restarts"`
	ContainerUptime                            MetricConfig `mapstructure:"container.uptime"`
}

MetricsConfig provides config for docker_stats metrics.

func DefaultMetricsConfig added in v0.77.0

func DefaultMetricsConfig() MetricsConfig

type ResourceAttributeConfig added in v0.77.0

type ResourceAttributeConfig struct {
	Enabled bool `mapstructure:"enabled"`
	// Experimental: MetricsInclude defines a list of filters for attribute values.
	// If the list is not empty, only metrics with matching resource attribute values will be emitted.
	MetricsInclude []filter.Config `mapstructure:"metrics_include"`
	// Experimental: MetricsExclude defines a list of filters for attribute values.
	// If the list is not empty, metrics with matching resource attribute values will not be emitted.
	// MetricsInclude has higher priority than MetricsExclude.
	MetricsExclude []filter.Config `mapstructure:"metrics_exclude"`
	// contains filtered or unexported fields
}

ResourceAttributeConfig provides common config for a particular resource attribute.

func (*ResourceAttributeConfig) Unmarshal added in v0.87.0

func (rac *ResourceAttributeConfig) Unmarshal(parser *confmap.Conf) error

type ResourceAttributesConfig added in v0.77.0

type ResourceAttributesConfig struct {
	ContainerCommandLine ResourceAttributeConfig `mapstructure:"container.command_line"`
	ContainerHostname    ResourceAttributeConfig `mapstructure:"container.hostname"`
	ContainerID          ResourceAttributeConfig `mapstructure:"container.id"`
	ContainerImageID     ResourceAttributeConfig `mapstructure:"container.image.id"`
	ContainerImageName   ResourceAttributeConfig `mapstructure:"container.image.name"`
	ContainerName        ResourceAttributeConfig `mapstructure:"container.name"`
	ContainerRuntime     ResourceAttributeConfig `mapstructure:"container.runtime"`
}

ResourceAttributesConfig provides config for docker_stats resource attributes.

func DefaultResourceAttributesConfig added in v0.77.0

func DefaultResourceAttributesConfig() ResourceAttributesConfig

type ResourceBuilder added in v0.82.0

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

ResourceBuilder is a helper struct to build resources predefined in metadata.yaml. The ResourceBuilder is not thread-safe and must not to be used in multiple goroutines.

func NewResourceBuilder added in v0.82.0

func NewResourceBuilder(rac ResourceAttributesConfig) *ResourceBuilder

NewResourceBuilder creates a new ResourceBuilder. This method should be called on the start of the application.

func (*ResourceBuilder) Emit added in v0.82.0

func (rb *ResourceBuilder) Emit() pcommon.Resource

Emit returns the built resource and resets the internal builder state.

func (*ResourceBuilder) SetContainerCommandLine added in v0.82.0

func (rb *ResourceBuilder) SetContainerCommandLine(val string)

SetContainerCommandLine sets provided value as "container.command_line" attribute.

func (*ResourceBuilder) SetContainerHostname added in v0.82.0

func (rb *ResourceBuilder) SetContainerHostname(val string)

SetContainerHostname sets provided value as "container.hostname" attribute.

func (*ResourceBuilder) SetContainerID added in v0.82.0

func (rb *ResourceBuilder) SetContainerID(val string)

SetContainerID sets provided value as "container.id" attribute.

func (*ResourceBuilder) SetContainerImageID added in v0.82.0

func (rb *ResourceBuilder) SetContainerImageID(val string)

SetContainerImageID sets provided value as "container.image.id" attribute.

func (*ResourceBuilder) SetContainerImageName added in v0.82.0

func (rb *ResourceBuilder) SetContainerImageName(val string)

SetContainerImageName sets provided value as "container.image.name" attribute.

func (*ResourceBuilder) SetContainerName added in v0.82.0

func (rb *ResourceBuilder) SetContainerName(val string)

SetContainerName sets provided value as "container.name" attribute.

func (*ResourceBuilder) SetContainerRuntime added in v0.82.0

func (rb *ResourceBuilder) SetContainerRuntime(val string)

SetContainerRuntime sets provided value as "container.runtime" attribute.

type ResourceMetricsOption

type ResourceMetricsOption func(pmetric.ResourceMetrics)

ResourceMetricsOption applies changes to provided resource metrics.

func WithResource added in v0.82.0

func WithResource(res pcommon.Resource) ResourceMetricsOption

WithResource sets the provided resource on the emitted ResourceMetrics. It's recommended to use ResourceBuilder to create the resource.

func WithStartTimeOverride

func WithStartTimeOverride(start pcommon.Timestamp) ResourceMetricsOption

WithStartTimeOverride overrides start time for all the resource metrics data points. This option should be only used if different start time has to be set on metrics coming from different resources.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL