func MainContext()

in collector/service/main.go [39:77]


func MainContext(ctx context.Context) {
	if err := env.Create(); err != nil {
		log.Printf("failed to build environment variables for config: %v", err)
	}

	info := component.BuildInfo{
		Command:     "run-gmp-sidecar",
		Description: "Google Cloud Run GMP Sidecar",
		Version:     version.Version,
	}

	params := otelcol.CollectorSettings{
		Factories: components,
		BuildInfo: info,
		ConfigProviderSettings: otelcol.ConfigProviderSettings{
			ResolverSettings: confmap.ResolverSettings{
				ProviderFactories: []confmap.ProviderFactory{
					fileprovider.NewFactory(),
					envprovider.NewFactory(),
					yamlprovider.NewFactory(),
					httpprovider.NewFactory(),
					httpsprovider.NewFactory(),
				},
			},
		},
		LoggingOptions: []zap.Option{
			levelchanger.NewLevelChangerOption(
				zapcore.ErrorLevel,
				zapcore.DebugLevel,
				// We would like the Error logs from this file to be logged at Debug instead.
				// https://github.com/open-telemetry/opentelemetry-collector/blob/831373ae6c6959f6c9258ac585a2ec0ab19a074f/receiver/scraperhelper/scrapercontroller.go#L198
				levelchanger.FilePathLevelChangeCondition("scrapercontroller.go")),
		},
	}

	if err := run(ctx, params); err != nil {
		log.Fatal(err)
	}
}