Skip to content

feat(opensearch sink): add first-class OpenSearch sink - #26722

Merged
pront merged 5 commits into
masterfrom
pront-opensearch-sink
Oct 19, 2026
Merged

pront merged 5 commits into
masterfrom
pront-opensearch-sink

Conversation

@pront

@pront pront commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

Summary

Add a first-class opensearch sink so OpenSearch users can configure their destination directly. It shares the Elasticsearch sink’s configuration and delivery implementation, with its own reference documentation and examples.

Each sink constructor explicitly selects its distribution. With api_version: auto, the OpenSearch sink selects its compatible bulk API without a version probe; the Elasticsearch sink retains its existing version detection. Explicit API-version overrides remain supported. The shared integration suite continues to build the Elasticsearch implementation directly. Two focused tests exercise type: opensearch over HTTP and authenticated HTTPS, including default API selection and gzip delivery.

References

Closes #11738. Builds on the OpenSearch integration coverage in #24652.

Vector configuration

sources:
  input:
    type: stdin
    decoding:
      codec: json
sinks:
  output:
    type: opensearch
    inputs: [input]
    endpoints: ["http://localhost:19200"]
    bulk:
      index: vector-opensearch-e2e
    compression: gzip
    batch:
      max_events: 5
      timeout_secs: 0.1

How did you test this PR?

Tested against OpenSearch 3.6.0 running locally in Colima. All 82 focused tests passed, including 19 integration tests. Separate end-to-end runs with the Vector binary delivered and retrieved all 40 documents over HTTP and authenticated HTTPS, with gzip, default API selection, certificate verification, and required healthchecks.

The focused suite passed through make test with the OpenSearch integration feature enabled and unrelated workspace packages excluded. Live Amazon OpenSearch Service and Serverless were not tested.

Does this PR include user facing changes?

  • Yes. A changelog fragment is included.
  • No.

@github-actions github-actions Bot added docs review on hold The documentation team reviews PRs only after a PR is approved by the COSE team. domain: sinks Anything related to Vector's sinks domain: external docs Anything related to Vector's external, public documentation labels Oct 17, 2026
@pront
pront marked this pull request as ready for review October 19, 2026 13:52
@pront
pront requested review from a team as code owners October 19, 2026 13:52
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-19T20:23:46.871797Z 50b0644 New commits
🔒 Security Review ✅ Completed 2026-10-19T20:23:05.532035Z 50b0644 New commits
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@datadoghq-integration datadoghq-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Bits Code Review: PASS

More details

Distribution-aware detection keeps OpenSearch’s unrelated major version from enabling typed bulk requests. Execution validation was blocked by an HTTP 502 while downloading the pinned Rust toolchain.

Was this helpful? React 👍 or 👎

Open Bits AI session

🤖 Bits Code Review · Commit 862522d

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f1b2f33216

ℹ️ 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".

Comment thread src/sinks/opensearch.rs Outdated
@github-actions github-actions Bot removed the docs review on hold The documentation team reviews PRs only after a PR is approved by the COSE team. label Oct 19, 2026
@pront
pront enabled auto-merge October 19, 2026 20:26
@pront
pront added this pull request to the merge queue Oct 19, 2026
Merged via the queue into master with commit 47f50ba Oct 19, 2026
109 checks passed
@pront
pront deleted the pront-opensearch-sink branch October 19, 2026 21:11
@github-actions github-actions Bot locked and limited conversation to collaborators Oct 19, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

domain: external docs Anything related to Vector's external, public documentation domain: sinks Anything related to Vector's sinks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enhancement request - Please provide an OpenSearch destination

3 participants