metadata

package
v0.81.0 Latest Latest
Warning

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

Go to latest
Published: Jul 5, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Type             = "rabbitmq"
	MetricsStability = component.StabilityLevelBeta
)

Variables

View Source
var MapAttributeMessageState = map[string]AttributeMessageState{
	"ready":          AttributeMessageStateReady,
	"unacknowledged": AttributeMessageStateUnacknowledged,
}

MapAttributeMessageState is a helper map of string to AttributeMessageState attribute value.

Functions

func WithStartTime

func WithStartTime(startTime pcommon.Timestamp) metricBuilderOption

WithStartTime sets startTime on the metrics builder.

Types

type AttributeMessageState

type AttributeMessageState int

AttributeMessageState specifies the a value message.state attribute.

const (
	AttributeMessageStateReady AttributeMessageState
	AttributeMessageStateUnacknowledged
)

func (AttributeMessageState) String added in v0.51.0

func (av AttributeMessageState) String() string

String returns the string representation of the AttributeMessageState.

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 added in v0.48.0

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) RecordRabbitmqConsumerCountDataPoint

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

RecordRabbitmqConsumerCountDataPoint adds a data point to rabbitmq.consumer.count metric.

func (*MetricsBuilder) RecordRabbitmqMessageAcknowledgedDataPoint

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

RecordRabbitmqMessageAcknowledgedDataPoint adds a data point to rabbitmq.message.acknowledged metric.

func (*MetricsBuilder) RecordRabbitmqMessageCurrentDataPoint

func (mb *MetricsBuilder) RecordRabbitmqMessageCurrentDataPoint(ts pcommon.Timestamp, val int64, messageStateAttributeValue AttributeMessageState)

RecordRabbitmqMessageCurrentDataPoint adds a data point to rabbitmq.message.current metric.

func (*MetricsBuilder) RecordRabbitmqMessageDeliveredDataPoint

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

RecordRabbitmqMessageDeliveredDataPoint adds a data point to rabbitmq.message.delivered metric.

func (*MetricsBuilder) RecordRabbitmqMessageDroppedDataPoint

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

RecordRabbitmqMessageDroppedDataPoint adds a data point to rabbitmq.message.dropped metric.

func (*MetricsBuilder) RecordRabbitmqMessagePublishedDataPoint

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

RecordRabbitmqMessagePublishedDataPoint adds a data point to rabbitmq.message.published 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 rabbitmq metrics builder.

func DefaultMetricsBuilderConfig added in v0.73.0

func DefaultMetricsBuilderConfig() MetricsBuilderConfig

type MetricsConfig added in v0.77.0

type MetricsConfig struct {
	RabbitmqConsumerCount       MetricConfig `mapstructure:"rabbitmq.consumer.count"`
	RabbitmqMessageAcknowledged MetricConfig `mapstructure:"rabbitmq.message.acknowledged"`
	RabbitmqMessageCurrent      MetricConfig `mapstructure:"rabbitmq.message.current"`
	RabbitmqMessageDelivered    MetricConfig `mapstructure:"rabbitmq.message.delivered"`
	RabbitmqMessageDropped      MetricConfig `mapstructure:"rabbitmq.message.dropped"`
	RabbitmqMessagePublished    MetricConfig `mapstructure:"rabbitmq.message.published"`
}

MetricsConfig provides config for rabbitmq 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"`
}

ResourceAttributeConfig provides common config for a particular resource attribute.

type ResourceAttributesConfig added in v0.77.0

type ResourceAttributesConfig struct {
	RabbitmqNodeName  ResourceAttributeConfig `mapstructure:"rabbitmq.node.name"`
	RabbitmqQueueName ResourceAttributeConfig `mapstructure:"rabbitmq.queue.name"`
	RabbitmqVhostName ResourceAttributeConfig `mapstructure:"rabbitmq.vhost.name"`
}

ResourceAttributesConfig provides config for rabbitmq resource attributes.

func DefaultResourceAttributesConfig added in v0.77.0

func DefaultResourceAttributesConfig() ResourceAttributesConfig

type ResourceMetricsOption added in v0.52.0

type ResourceMetricsOption func(ResourceAttributesConfig, pmetric.ResourceMetrics)

ResourceMetricsOption applies changes to provided resource metrics.

func WithRabbitmqNodeName added in v0.48.0

func WithRabbitmqNodeName(val string) ResourceMetricsOption

WithRabbitmqNodeName sets provided value as "rabbitmq.node.name" attribute for current resource.

func WithRabbitmqQueueName added in v0.48.0

func WithRabbitmqQueueName(val string) ResourceMetricsOption

WithRabbitmqQueueName sets provided value as "rabbitmq.queue.name" attribute for current resource.

func WithRabbitmqVhostName added in v0.48.0

func WithRabbitmqVhostName(val string) ResourceMetricsOption

WithRabbitmqVhostName sets provided value as "rabbitmq.vhost.name" attribute for current resource.

func WithStartTimeOverride added in v0.52.0

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