diff --git a/opentelemetry-distro/src/opentelemetry/distro/__init__.py b/opentelemetry-distro/src/opentelemetry/distro/__init__.py index ad61f01ca7..e38271bd52 100644 --- a/opentelemetry-distro/src/opentelemetry/distro/__init__.py +++ b/opentelemetry-distro/src/opentelemetry/distro/__init__.py @@ -38,3 +38,8 @@ def _configure(self, **kwargs): os.environ.setdefault(OTEL_TRACES_EXPORTER, "otlp") os.environ.setdefault(OTEL_METRICS_EXPORTER, "otlp") os.environ.setdefault(OTEL_EXPORTER_OTLP_PROTOCOL, "grpc") + # Since the distro sets these env vars, these params are not necesary. + # However they could replace these env var defaults. + # Otherwise, they just serve as an example. + configuration_kwargs = {} + return configuration_kwargs diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/_load.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/_load.py index 27b57da3ef..4a42d357aa 100644 --- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/_load.py +++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/_load.py @@ -94,7 +94,8 @@ def _load_instrumentors(distro): entry_point.load()() -def _load_configurators(): +def _load_configurators(**configuration_kwargs): + configuration_kwargs["auto_instrumentation_version"] =__version__ configurator_name = environ.get(OTEL_PYTHON_CONFIGURATOR, None) configured = None for entry_point in iter_entry_points("opentelemetry_configurator"): @@ -110,7 +111,7 @@ def _load_configurators(): configurator_name is None or configurator_name == entry_point.name ): - entry_point.load()().configure(auto_instrumentation_version=__version__) # type: ignore + entry_point.load()().configure(**configuration_kwargs) # type: ignore configured = entry_point.name else: _logger.warning( diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py index 912675f1b7..17d5b15046 100644 --- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py +++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py @@ -34,8 +34,8 @@ def initialize(): try: distro = _load_distro() - distro.configure() - _load_configurators() + configuration_kwargs = distro.configure() + _load_configurators(**configuration_kwargs) _load_instrumentors(distro) except Exception: # pylint: disable=broad-except logger.exception("Failed to auto initialize opentelemetry")