jaegertracing/jaeger

Investigate the path to replace olivere/elastic driver

Open

#7612 opened on Oct 23, 2025

View on GitHub
 (12 comments) (0 reactions) (0 assignees)Go (18,974 stars) (2,326 forks)batch import
area/storageenhancementgood first issuehelp wantedstorage/elasticsearch

Description

The olivere/elastic library is deprecated, but our Elasticsearch/OpenSearch storage implementation is heavily dependent on it. Bugs like this https://github.com/jaegertracing/jaeger/issues/2192#issuecomment-3435539949 cannot be resolved.

Objective: Investigate available options for Go drivers for ES/OS and compile a report so that we can build a roadmap around it.

  • Which libraries are available for use
  • What are their version compatibility profiles for the ES/OS versions we currently support
  • Is there one library that can continue to work across both ES and OS
  • What are the differences in how that library works compared to olivere/elastic
  • How much changes would we need to make internally

Worth noting that our use of olivere/elastic is indirect, we have a shim layer internal/storage/elasticsearch/client/interfaces.go that attempts (only partially) to abstract away the underlying driver.

Contributor guide