tracer: add OpenTelemetry tracing with OPENTELEMETRY_DISABLED=false (#413)
Adds the ability for Zoekt to export OpenTelemetry, configured with OPENTELEMETRY_DISABLED=false (analogous to JAEGER_DISABLED=false). It updates internal/trace with mostly the same OpenTelemetry setup as internal/trace in sourcegraph/sourcegraph - it turns out most of the same workarounds are required for this to work correctly out of the box.
Instructions for enabling in dev are currently in https://github.com/sourcegraph/sourcegraph/pull/40629/files, and I tested this by following the instructions in https://docs.sourcegraph.com/dev/how-to/zoekt_local_dev and running a search with tracing enabled. Inspecting the trace in Honeycomb confirms it went through the OpenTelemetry collector.
Co-authored-by: Jean-Hadrien Chabran <jh@chabran.fr>
Co-authored-by: Keegan Carruthers-Smith <keegan.csmith@gmail.com>