otelcollector/opentelemetry-collector-builder/main.go (33 lines of code) (raw):

package main import ( "log" "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/confmap" "go.opentelemetry.io/collector/confmap/provider/envprovider" "go.opentelemetry.io/collector/confmap/provider/fileprovider" "go.opentelemetry.io/collector/otelcol" ) func main() { info := component.BuildInfo{ Command: "custom-collector-distro", Description: "Custom OpenTelemetry Collector distribution", Version: "0.121.0", } set := otelcol.CollectorSettings{ BuildInfo: info, Factories: components, ConfigProviderSettings: otelcol.ConfigProviderSettings{ ResolverSettings: confmap.ResolverSettings{ ProviderFactories: []confmap.ProviderFactory{ envprovider.NewFactory(), fileprovider.NewFactory(), }, }, }, } app := otelcol.NewCommand(set) err := app.Execute() if err != nil { log.Fatal("collector server run finished with error: %w", err) } }