Path: blob/main/component/otelcol/auth/bearer/bearer.go
5438 views
// Package bearer provides an otelcol.auth.bearer component.1package bearer23import (4"github.com/grafana/agent/component"5"github.com/grafana/agent/component/otelcol/auth"6"github.com/grafana/agent/pkg/river/rivertypes"7"github.com/open-telemetry/opentelemetry-collector-contrib/extension/bearertokenauthextension"8otelcomponent "go.opentelemetry.io/collector/component"9otelconfig "go.opentelemetry.io/collector/config"10)1112func init() {13component.Register(component.Registration{14Name: "otelcol.auth.bearer",15Args: Arguments{},16Exports: auth.Exports{},1718Build: func(opts component.Options, args component.Arguments) (component.Component, error) {19fact := bearertokenauthextension.NewFactory()20return auth.New(opts, fact, args.(Arguments))21},22})23}2425// Arguments configures the otelcol.auth.bearer component.26type Arguments struct {27Token rivertypes.Secret `river:"token,attr"`28}2930var _ auth.Arguments = Arguments{}3132// Convert implements auth.Arguments.33func (args Arguments) Convert() (otelconfig.Extension, error) {34return &bearertokenauthextension.Config{35ExtensionSettings: otelconfig.NewExtensionSettings(otelconfig.NewComponentID("bearer")),36BearerToken: string(args.Token),37}, nil38}3940// Extensions implements auth.Arguments.41func (args Arguments) Extensions() map[otelconfig.ComponentID]otelcomponent.Extension {42return nil43}4445// Exporters implements auth.Arguments.46func (args Arguments) Exporters() map[otelconfig.DataType]map[otelconfig.ComponentID]otelcomponent.Exporter {47return nil48}495051