Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(sinks): refactor RequestBuilder/RequestMetadata to streamline splitting/building #12857

Open
tobz opened this issue May 25, 2022 · 0 comments
Labels
domain: architecture Anything related to architecture domain: sinks Anything related to the Vector's sinks type: tech debt A code change that does not add user value.

Comments

@tobz
Copy link
Contributor

tobz commented May 25, 2022

As mentioned in #12755 (comment here), there's a good chance to streamline the building of request metadata when in RequestBuilder, as there's typically very little unique data that needs to be extracted from a batch of events. Instead, most metadata boils down to the number of events in a batch, their aggregate size, encoded size, finalizers, and so on.

Right now, RequestMetadata exclusively handles event count/byte size-related metrics for the purpose of driving EventsSent/BytesSent downstream when a request is being sent. However, more opportunities exist, such as also encapsulating finalizers, as well as the actually unique metadata for the given RequestBuilder, such that we can minimize the necessary boilerplate for a RequestBuilder implementation down to the bare essentials.

@tobz tobz added domain: sinks Anything related to the Vector's sinks domain: architecture Anything related to architecture labels May 25, 2022
@jszwedko jszwedko added the type: tech debt A code change that does not add user value. label May 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: architecture Anything related to architecture domain: sinks Anything related to the Vector's sinks type: tech debt A code change that does not add user value.
Projects
None yet
Development

No branches or pull requests

2 participants