open-telemetry / open-telemetry/opentelemetry-cpp-contrib
SDK Init failed, result code is: 8
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 153
- Forks
- 184
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 26
Description
Using docker debian:buster with apache2 installed logs are showing SDK Init failed, result code is: 8 when initializing lib.
$ apache2ctl -V
Server version: Apache/2.4.38 (Debian)
Server built: 2023-03-02T14:26:27
Server's Module Magic Number: 20120211:84
Server loaded: APR 1.6.5, APR-UTIL 1.6.1
Compiled using: APR 1.6.5, APR-UTIL 1.6.1
Architecture: 64-bit
Server MPM: event
threaded: yes (fixed thread count)
forked: yes (variable process count)
conf file:
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_common.so
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_resources.so
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_trace.so
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_otlp_recordable.so
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_exporter_ostream_span.so
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_exporter_otlp_grpc.so
#Load the ApacheModule SDK
LoadFile /opt/opentelemetry-webserver-sdk/sdk_lib/lib/libopentelemetry_webserver_sdk.so
LoadModule otel_apache_module /opt/opentelemetry-webserver-sdk/WebServerModule/Apache/libmod_apache_otel.so
ApacheModuleEnabled ON
#ApacheModule Otel Exporter details
ApacheModuleOtelSpanExporter otlp
ApacheModuleOtelExporterEndpoint docker.for.mac.localhost:4317 <--- this is reachable
#ApacheModuleOtelExporterHeaders api-key=abc123
# SSL Certificates
#ApacheModuleOtelSslEnabled ON
#ApacheModuleOtelSslCertificatePath
ApacheModuleOtelSpanProcessor Batch
ApacheModuleOtelSampler AlwaysOn
ApacheModuleOtelMaxQueueSize 2048
ApacheModuleOtelScheduledDelayMillis 3000
ApacheModuleOtelExportTimeoutMillis 30000
ApacheModuleOtelMaxExportBatchSize 1024
ApacheModuleServiceName reverseproxy
ApacheModuleServiceNamespace my
ApacheModuleServiceInstanceId test
#ApacheModuleResolveBackends ON
ApacheModuleTraceAsError ON
What is the expected behavior?
Succesful traces sent to receiver.
What is the actual behavior?
logs:
Wed Apr 05 09:06:45.272391 2023] [otel_apache:error] [pid 28:tid 139793147385600] mod_opentelemetry_webserver_sdk: initialize_opentelemetry: no config stored in the process memory pool
[Wed Apr 05 09:06:45.272473 2023] [otel_apache:error] [pid 28:tid 139793147385600] mod_opentelemetry_webserver_sdk: traceConfig: config{(Enabled="1")(OtelExporterEndpoint="docker.for.mac.localhost:4317")(OtelSslEnabled="0")(OtelSslCertificatePath="")(OtelSpanExporter="otlp")(OtelSpanProcessor="Batch")(OtelSampler="AlwaysOn")(ServiceNamespace="my")(ServiceName="reverseproxy")(ServiceInstanceId="test")(OtelMaxQueueSize="2048")(OtelScheduledDelayMillis="3000")(OtelExportTimeoutMillis="30000")(OtelMaxExportBatchSize="1024")(ResolveBackends="1")(TraceAsError="1")(ReportAllInstrumentedModules="0")(MaskCookie="0")(MaskSmUser="0")(SegmentType="FIRST")(SegmentParameter="2")}
[Wed Apr 05 09:06:45.272552 2023] [otel_apache:error] [pid 28:tid 139793147385600] mod_opentelemetry_webserver_sdk: initialize_opentelemetry: Adding Context: my:reverseproxy:test ServiceNamespace: my ServiceName: reverseproxy ServiceInstanceId: test
[Wed Apr 05 09:06:45.272847 2023] [otel_apache:error] [pid 28:tid 139793147385600] mod_opentelemetry_webserver_sdk: initialize_opentelemetry: SDK Init failed, result code is: 8
[Wed Apr 05 09:06:45.272901 2023] [otel_apache:error] [pid 28:tid 139793147385600] mod_opentelemetry_webserver_sdk: otel_hook_header_parser_begin: opentelemetry did not get initialized
172.17.0.1 - - [05/Apr/2023:09:06:45 +0000] "GET / HTTP/1.1" 302 673 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/111.0"
-28:642d3a25:0
[Wed Apr 05 09:06:45.273322 2023] [otel_apache:error] [pid 28:tid 139793147385600] mod_opentelemetry_webserver_sdk: otel_hook_log_transaction_end: configuration is NULL
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Apache configuration and the initialize_opentelemetry log path in mod_opentelemetry_webserver_sdk; inspect how result code 8 is produced during SDK initialization. Reproduce in docker debian:buster with the shown LoadFile and LoadModule settings, then verify that successful traces reach the configured OTLP receiver.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- apache, debian, docker
- Domain
- backend, observability-sre
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100