open-telemetry / opentelemetry-erlang-contrib

OpenTelemetry instrumentation for Erlang & Elixir
https://opentelemetry.io
Apache License 2.0
138 stars 107 forks source link

Example Docker Project Errors : `basic_elixir` #341

Open albsch opened 1 week ago

albsch commented 1 week ago

Describe the bug

The docker setup for the example basic_elixir seems to fail.

With docker-compose up in the current main branch, both the elixir container and the otel container stop with an exit code.

Expected behavior Container don't crash.

Additional context

The otel container fails with the following message:

error decoding 'exporters': unknown type: "jaeger" for id: "jaeger" (valid values: [cassandra googlecloudpubsub logicmonitor opencensus syslog prometheusremotewrite carbon dataset elasticsearch loadbalancing mezmo prometheus alertmanager azuremonitor coralogix instana tencentcloud_logservice otlphttp awsemf googlemanagedprometheus influxdb opensearch otelarrow signalfx nop alibabacloud_logservice awskinesis awss3 azuredataexplorer clickhouse honeycombmarker kafka sentry skywalking otlp awscloudwatchlogs awsxray file logzio sapm splunk_hec zipkin debug datadog googlecloud loki pulsar sumologic])

The elixir container fails with the following message:

elixir-1             | [load_failed,"Failed to load NIF library: 'Error loading shared library libcrypto.so.1.1: No such file or directory (needed by /app/lib/crypto-4.6.5.4/priv/lib/crypto.so)'","OpenSSL might not be installed on this system.\n"]
elixir-1             | 2024-06-23 19:47:05.430038 
elixir-1             | "Unable to load crypto library. Failed with error:~n\"~p, ~s\"~n~s"
elixir-1             | {error_logger,error_msg}

I assume the elixir container crashes because of an outdated Elixir runtime and the mismatch with alpine:latest. But why is the otel container crashing?

tsloughter commented 1 week ago

Thanks. Looks like it is an issue with that base elixir docker image used.