opentelemetry-rust icon indicating copy to clipboard operation
opentelemetry-rust copied to clipboard

Make SetResource return status, and call it synchronously in Batch[Log|Span]Processor

Open lalitb opened this issue 7 months ago • 7 comments

Changes

As discussed here

Make SetResource return status, and call it blockng in Batch[Log|Span]Processor. This makes the setting of resources during initialization deterministic.

Earlier

LogExporter::set_resource(&mut self, resource: &opentelemetry_sdk::Resource);
LogProcessor::set_resource(&self, _resource: &Resource);

SpanExporter::set_resource(&mut self, resource: &opentelemetry_sdk::Resource);
SpanProcessor::set_resource(&self, _resource: &Resource);

Now:

LogExporter::set_resource(&mut self, resource: &opentelemetry_sdk::Resource) -> LogResult<()>;
LogProcessor::set_resource(&self, _resource: &Resource) -> LogResult<()>;

SpanExporter::set_resource(&mut self, resource: &opentelemetry_sdk::Resource) -> -> ExportResult
SpanProcessor::set_resource(&self, _resource: &Resource) -> -> ExportResult

Please provide a brief description of the changes here.

Merge requirement checklist

  • [x] CONTRIBUTING guidelines followed
  • [x] Unit tests added/updated (if applicable)
  • [ ] Appropriate CHANGELOG.md files updated for non-trivial, user-facing changes
  • [x] Changes in public API reviewed (if applicable)

lalitb avatar Jun 27 '24 20:06 lalitb