Backport OBE-9476, OBE-9259: HEC source / sink enhancements for EA#82
Merged
janmejay-s1 merged 6 commits intos1-ea-relfrom Apr 17, 2026
Merged
Backport OBE-9476, OBE-9259: HEC source / sink enhancements for EA#82janmejay-s1 merged 6 commits intos1-ea-relfrom
janmejay-s1 merged 6 commits intos1-ea-relfrom
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Backports Splunk HEC source/sink enhancements, adding support for per-batch dynamic request headers in the Splunk HEC logs sink, improving Splunk HEC source auth/channel handling, and instrumenting the partitioned batcher with batch-count gauges.
Changes:
- Splunk HEC source: token parsing enhancements (Splunk/Bearer), token set handling, and making the request channel optional for raw requests when indexer acknowledgements are disabled.
- Splunk HEC logs sink: adds configurable
batch_headersextracted from event fields, partitions batches by these headers, and forwards them as HTTP headers (with request-config headers taking precedence). - vector-stream: adds
open_batches/closed_batchesgauges and a test for metric emission.
Reviewed changes
Copilot reviewed 14 out of 15 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| src/sources/splunk_hec/mod.rs | Updates auth token handling and makes raw channel optional; adjusts raw event enrichment accordingly; adds related tests. |
| src/sinks/splunk_hec/metrics/request_builder.rs | Initializes new request headers field for metrics requests. |
| src/sinks/splunk_hec/logs/tests.rs | Adds extensive batching-by-header integration tests for the logs sink. |
| src/sinks/splunk_hec/logs/sink.rs | Partitions batches by configured header values and extracts header values from events. |
| src/sinks/splunk_hec/logs/request_builder.rs | Carries partition-extracted headers into HecRequest. |
| src/sinks/splunk_hec/logs/config.rs | Introduces batch_headers configuration and validation; updates config generation/tests. |
| src/sinks/splunk_hec/common/util.rs | Plumbs request headers through the HTTP batch service builder; adds tests. |
| src/sinks/splunk_hec/common/service.rs | Applies dynamic headers to outgoing HTTP requests, with static headers overriding. |
| src/sinks/splunk_hec/common/request.rs | Extends HecRequest with a headers field. |
| src/sinks/splunk_hec/common/acknowledgements.rs | Updates ack client request building for the new request signature. |
| src/sinks/humio/logs.rs | Supplies default batch_headers when mapping Humio config to HEC logs sink config. |
| src/internal_events/splunk_hec.rs | Adds an internal event for invalid dynamic header values. |
| lib/vector-stream/src/partitioned_batcher.rs | Adds gauges tracking open/closed batch counts and a related test. |
| lib/vector-stream/Cargo.toml | Adds metrics and metrics-util dependencies to support the new instrumentation/tests. |
| Cargo.lock | Updates lockfile for new dependencies. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
harshvardhan-s1
approved these changes
Apr 17, 2026
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.
No description provided.