Skip to content

Conversation

@kumarlokesh
Copy link
Contributor

Which problem is this PR solving?

Description of the changes

  • Added retry configuration with all available parameters
  • Updated documentation to reflect all configurable retry parameters

How was this change tested?

  • Added tests in storageexporter package.

Checklist

@kumarlokesh kumarlokesh requested a review from a team as a code owner May 17, 2025 14:22
@kumarlokesh kumarlokesh requested a review from joe-elliott May 17, 2025 14:22
@yurishkuro yurishkuro changed the title feat: added retry configuration to storage exporter Add retry configuration to storage exporter May 17, 2025
- `max_interval`: 30s
- `max_elapsed_time`: 5m

#### Explanation of Retry Parameters
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do we need this? Isn't it already documented in OTEL? I don't want to duplicate the docs, just refer to upstream docs.

type Config struct {
TraceStorage string `mapstructure:"trace_storage" valid:"required"`
QueueConfig exporterhelper.QueueBatchConfig `mapstructure:"queue" valid:"optional"`
RetryConfig configretry.BackOffConfig `mapstructure:"retry_on_failure" valid:"optional"`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure what valid:"optional" means in the context of having an actual struct by value.

func createDefaultConfig() component.Config {
return &Config{}
return &Config{
RetryConfig: configretry.BackOffConfig{
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we don't want this enabled by default.


defaultCfg := createDefaultConfig().(*Config)

if !cfg.RetryConfig.Enabled {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we didn't have anything similar for other configs, why do we need it for this one?

@kumarlokesh kumarlokesh requested a review from yurishkuro May 18, 2025 07:31
@kumarlokesh
Copy link
Contributor Author

@yurishkuro addressed comments here 4d62811

@codecov
Copy link

codecov bot commented May 18, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 96.19%. Comparing base (7d66726) to head (4d62811).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #7132      +/-   ##
==========================================
- Coverage   96.20%   96.19%   -0.02%     
==========================================
  Files         358      358              
  Lines       21596    21600       +4     
==========================================
+ Hits        20777    20778       +1     
- Misses        613      615       +2     
- Partials      206      207       +1     
Flag Coverage Δ
badger_v1 9.90% <ø> (ø)
badger_v2 2.05% <ø> (ø)
cassandra-4.x-v1-manual 14.89% <ø> (ø)
cassandra-4.x-v2-auto 2.04% <ø> (ø)
cassandra-4.x-v2-manual 2.04% <ø> (ø)
cassandra-5.x-v1-manual 14.89% <ø> (ø)
cassandra-5.x-v2-auto 2.04% <ø> (ø)
cassandra-5.x-v2-manual 2.04% <ø> (ø)
elasticsearch-6.x-v1 20.23% <ø> (ø)
elasticsearch-7.x-v1 20.31% <ø> (ø)
elasticsearch-8.x-v1 20.49% <ø> (ø)
elasticsearch-8.x-v2 2.05% <ø> (ø)
grpc_v1 11.44% <ø> (ø)
grpc_v2 2.05% <ø> (ø)
kafka-3.x-v1 10.17% <ø> (ø)
kafka-3.x-v2 2.05% <ø> (ø)
memory_v2 2.05% <ø> (ø)
opensearch-1.x-v1 20.36% <ø> (ø)
opensearch-2.x-v1 20.36% <ø> (ø)
opensearch-2.x-v2 2.05% <ø> (ø)
query 2.05% <ø> (ø)
tailsampling-processor 0.55% <ø> (ø)
unittests 95.01% <100.00%> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@yurishkuro yurishkuro added this pull request to the merge queue May 18, 2025
Merged via the queue into jaegertracing:main with commit 6f20915 May 18, 2025
58 of 59 checks passed
@kumarlokesh kumarlokesh deleted the add-retry-config-to-storage-exporter branch May 18, 2025 17:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

retry_on_failure for jaeger_storage_exporter

2 participants