Back to

package prometheusreceiver

Latest Go to latest
Published: Jun 16, 2020 | License: Apache-2.0 | Module:


Package prometheusreceiver has the logic for scraping Prometheus metrics from already instrumented applications and then passing them onto a metricsink instance.


func CustomUnmarshalerFunc

func CustomUnmarshalerFunc(componentViperSection *viper.Viper, intoCfg interface{}) error

CustomUnmarshalerFunc performs custom unmarshaling of config.

type Config

type Config struct {
	configmodels.ReceiverSettings `mapstructure:",squash"`
	PrometheusConfig              *config.Config `mapstructure:"-"`
	BufferPeriod                  time.Duration  `mapstructure:"buffer_period"`
	BufferCount                   int            `mapstructure:"buffer_count"`
	UseStartTimeMetric            bool           `mapstructure:"use_start_time_metric"`

	// ConfigPlaceholder is just an entry to make the configuration pass a check
	// that requires that all keys present in the config actually exist on the
	// structure, ie.: it will error if an unknown key is present.
	ConfigPlaceholder interface{} `mapstructure:"config"`

Config defines configuration for Prometheus receiver.

type Factory

type Factory struct {

Factory is the factory for receiver.

func (*Factory) CreateDefaultConfig

func (f *Factory) CreateDefaultConfig() configmodels.Receiver

CreateDefaultConfig creates the default configuration for receiver.

func (*Factory) CreateMetricsReceiver

func (f *Factory) CreateMetricsReceiver(
	logger *zap.Logger,
	cfg configmodels.Receiver,
	consumer consumer.MetricsConsumerOld,
) (component.MetricsReceiver, error)

CreateMetricsReceiver creates a metrics receiver based on provided config.

func (*Factory) CreateTraceReceiver

func (f *Factory) CreateTraceReceiver(
	ctx context.Context,
	logger *zap.Logger,
	cfg configmodels.Receiver,
	nextConsumer consumer.TraceConsumerOld,
) (component.TraceReceiver, error)

CreateTraceReceiver creates a trace receiver based on provided config.

func (*Factory) CustomUnmarshaler

func (f *Factory) CustomUnmarshaler() component.CustomUnmarshaler

CustomUnmarshaler returns custom unmarshaler for this config.

func (*Factory) Type

func (f *Factory) Type() configmodels.Type

Type gets the type of the Receiver config created by this factory.

type Preceiver

type Preceiver struct {
	// contains filtered or unexported fields

Preceiver is the type that provides Prometheus scraper/receiver functionality.

func (*Preceiver) Flush

func (pr *Preceiver) Flush()

Flush triggers the Flush method on the underlying Prometheus scrapers and instructs them to immediately sned over the metrics they've collected, to the MetricsConsumer. it's not needed on the new prometheus receiver implementation, let it do nothing

func (*Preceiver) Shutdown

func (pr *Preceiver) Shutdown(context.Context) error

Shutdown stops and cancels the underlying Prometheus scrapers.

func (*Preceiver) Start

func (pr *Preceiver) Start(ctx context.Context, host component.Host) error

Start is the method that starts Prometheus scraping and it is controlled by having previously defined a Configuration using perhaps New.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
f or F : Jump to identifier