fix(sinks): separate Datadog validation from runtime construction - #26145
Closed
kurochan wants to merge 1 commit into
Closed
fix(sinks): separate Datadog validation from runtime construction#26145kurochan wants to merge 1 commit into
kurochan wants to merge 1 commit into
Conversation
kurochan
force-pushed
the
improve-no-env
branch
2 times, most recently
from
August 19, 2026 01:40
39bef88 to
78bf4f2
Compare
kurochan
marked this pull request as ready for review
August 19, 2026 01:41
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 78bf4f2fb0
ℹ️ 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".
kurochan
force-pushed
the
improve-no-env
branch
2 times, most recently
from
August 20, 2026 06:53
e214d33 to
6fb370e
Compare
Signed-off-by: kurochan <kuro@kurochan.org>
kurochan
force-pushed
the
improve-no-env
branch
from
August 20, 2026 06:54
6fb370e to
d121f5e
Compare
Member
|
Hi @kurochan I think that the changes this PR made were inadvertently covered by #26142. TLS configuration should not run during If you think that this PR can fix something that was done incorrectly by that other PR please reopen this/create a new PR - I'll close this one for now. Thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Separate Datadog sink configuration validation from runtime construction.
In restricted environments such as CI, containers, and AI coding-agent sandboxes,
vector validate --no-environmentis expected to validate structural configurationwithout opening outbound connections or initializing runtime resources such as native
TLS trust stores.
Previously, Datadog sink validation could reach runtime client/TLS construction even
when no outbound request was made. In restricted sandbox environments, the macOS
Keychain may be unavailable; attempting to load native root certificates through it
caused validation to panic.
This PR makes the boundary explicit:
traces sinks into
ValidatedSink::validate.in the runtime build path.
TracesSink::runlifecycle.delay shutdown indefinitely.
verification is disabled.
sink-specific validation/build drift.
Regular
vector validatecontinues to build all sinks and remains the validationmode for errors that require effective runtime construction.
--no-environmentintentionally does not guarantee detection of every runtime construction error.
The APM flusher acknowledgement confirms that the final flush was attempted; it does
not guarantee that Datadog accepted the payload.
References
N/A
Vector configuration
No new user configuration was added. Unit tests cover the Datadog logs, metrics,
events, and traces sinks with their existing inline configurations and custom
endpoints.
How did you test this PR?
cargo test -p vector --lib datadogcargo test -p vector-core tls::settings::testcargo test -p vector --lib sinks::datadog::traces::sink::testscargo check -p vector --libmake check-clippycargo fmt --all -- --checkmake check-changelog-fragmentsIs this a breaking change?
Does this PR include user facing changes?
no-changeloglabel to this PR.