Skip to content

Remove the bundler from the Jaeger exporter #1799

@MrAlias

Description

@MrAlias

The Jaeger exporter currently uses "google.golang.org/api/support/bundler".Bundler to batch OpenTelemetry span data:

err := e.bundler.AddWait(ctx, span, 1)

The bundler was originally added to the exporter prior to the BatchSpanProcessor existing, and it was used to batch the transformed Jaeger spans. Now that the project contains a BatchSpanProcessor and will send batches of span data to exporters, instead of one-by-one, this batching will cause an impedance mismatch as well as additional cognitive load determining which batching scheme to use.

The bundler, by design, is used to "amortizes an action with fixed costs over multiple item". While this amortization is likely not being utilized given we are sending the exporter a batch and then sequentially adding it to the bundler, we still should verify that removing it does not drastically change the resource overhead or performance.

Needed changes

  • Remove the bundler
  • Remove the associated bundler configuration
  • Validate that this does not add excessive resource consumption overhead

Metadata

Metadata

Assignees

Labels

pkg:exporter:jaegerRelated to the Jaeger exporter package

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions