/
githubmirror
/
opentelemetry-collector-contrib
Обзор
Документация
Войти
/
githubmirror
/
opentelemetry-collector-contrib
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
processor/intervalprocessor/factory.go
43 строки
1 KB
Arthur Silva Sens
[processor/interval] Update config structure for interval processor (#34926)
04 сен 2024, 02:47
Не верифицирован
04 сен 2024, 02:47
a4aa4e8
Код
Авторство
О чём код?
// Copyright The OpenTelemetry Authors // SPDX-License-Identifier: Apache-2.0 package intervalprocessor // import "github.com/open-telemetry/opentelemetry-collector-contrib/processor/intervalprocessor" import ( "context" "fmt" "time" "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/consumer" "go.opentelemetry.io/collector/processor" "github.com/open-telemetry/opentelemetry-collector-contrib/processor/intervalprocessor/internal/metadata" ) // NewFactory returns a new factory for the Metrics Generation processor. func NewFactory() processor.Factory { return processor.NewFactory( metadata.Type, createDefaultConfig, processor.WithMetrics(createMetricsProcessor, metadata.MetricsStability)) } func createDefaultConfig() component.Config { return &Config{ Interval: 60 * time.Second, PassThrough: PassThrough{ Gauge: false, Summary: false, }, } } func createMetricsProcessor(_ context.Context, set processor.Settings, cfg component.Config, nextConsumer consumer.Metrics) (processor.Metrics, error) { processorConfig, ok := cfg.(*Config) if !ok { return nil, fmt.Errorf("configuration parsing error") } return newProcessor(processorConfig, set.Logger, nextConsumer), nil }