-
Notifications
You must be signed in to change notification settings - Fork 501
Open
Labels
bugSomething isn't workingSomething isn't workingdo-not-staletriage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.
Description
The opentelemetry-cpp API uses header only singletons, for example for the tracer provider.
When:
- an application calls
TracerProvider::SetTracerProvider()in the main application code - a shared library is loaded by the main application
- the shared library uses
TracerProvider::GetTracerProvider()
the shared library does not see the tracer provider installed in the main application.
As a result, opentelemetry is disabled in the shared library (the noop tracer provider is seen instead).
Related issues:
- Support building DLL for windows #1105
- Build OpenTelemetry C++ SDK and exporter into DLL #1932
- Fix header only api singletons (#1520) #1604
- This fixed all platforms except Windows.
- [TEST] Expand api singleton test to cover explicit dlopen(). #2164
- The test is executed on all platforms except Windows.
- [POC RFC] header only API for singletons (Windows) #1595
- [POC RFC] header only API for singletons #1525
The issue about singletons for the Windows platform is known, but still not resolved.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingdo-not-staletriage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.