feat(sinks): introduce RetryStrategy / Config for http based sinks#25057
feat(sinks): introduce RetryStrategy / Config for http based sinks#25057pront merged 22 commits intovectordotdev:masterfrom
Conversation
|
All contributors have signed the CLA ✍️ ✅ |
|
I have read the CLA Document and I hereby sign the CLA |
|
@codex review - draw context from #10870 (comment) |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 27feabc878
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Will come back to this PR once the open codex comments are resolved (feel free to dispute those if they don't make sense) |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6b7885db44
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@pront I addressed codex suggestions. The failing spell-check in the workflow does not seem to be related to my changes. |
Thank you @ndrsgm, you can ignore the spell-check workflow failures. I will take another look at this PR shortly. |
pront
left a comment
There was a problem hiding this comment.
This looks good for the most part. Thanks!
…ks with shared retry logic
|
Hello @pront, any news about this PR? I saw that some checks failed so I pushed additional changes for the doc generation. |
|
Hi @ndrsg, this PR is in great shape. The |
bd8ab1a
Summary
This PR introduces a configurable
retry_strategyfor Vector's shared HTTP retry logic and exposes it on thehttpsink plus the sinks built on the same HTTP retry helpers.It adds support for
default,none,all, andcustomretry modes, wires that behavior through the affected HTTP-based sinks, and adds documentation plus test coverage for custom status-code retries. The default strategy now consistently retries408,429, and5xxresponses across the shared HTTP retry implementations.Affected sinks
Configurable sinks using
HttpStatusRetryLogic:httpaxiomopentelemetryappsignalazure_logs_ingestionazure_monitor_logsdatadog_eventsgcp_stackdriver_logsgcp_stackdriver_metricshoneycombkeepprometheus_remote_writeSinks that still use
HttpRetryLogicand are not made configurable by this PR:clickhousegreptimedblogsinfluxdb_metricssematext_metricssplunk_heclogssplunk_hecmetricsVector configuration
I used the new HTTP sink example configuration to validate the custom retry behavior (also checked in in examples folder):
How did you test this PR?
RetryStrategybehavior insrc/sinks/util/http.rs.src/sinks/http/tests.rs.config/examples/http_sink_custom_retry.yamlagainst it.make check-clippylocally../scripts/check_changelog_fragments.sh.Change Type
Is this a breaking change?
Does this PR include user facing changes?
no-changeloglabel to this PR.References