-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[libbeat] Implement early event encoding for the Elasticsearch output #38572
Merged
+678
−297
Merged
Changes from all commits
Commits
Show all changes
69 commits
Select commit
Hold shift + click to select a range
4ff1d75
unbuffer memory queue input channel
faec 5627633
remove queue entry ids
faec 6a27aeb
move ack callbacks to a dedicated worker goroutine
faec 3871376
extra work to keep acknowledgments flowing
faec 18ab493
add eager handling of deletions to the queue runloop
faec 7ae8929
move eager deletion before the check to unblock the push channel
faec 3f5f4ce
remove callback worker and runloop mods
faec d027a6f
add API support for preencoding beats events
faec 016d0f3
add error check
faec 15b3f7c
re-add entry ids
faec 98f1ed9
encode events in goroutines
faec d51f6bd
switch to encoder factories to support parallel encoding
faec 8add438
remember to close the channel
faec 3cb57b4
encode in the pipeline client
faec c0f3b22
free original event data when encoding is done
faec bd1df4c
mark pre-encoded data correctly
faec 63064a6
add early delete patch
faec e81e2d1
Merge branch 'main' of github.com:elastic/beats into memqueue-encode-…
faec 8a3592e
disentangling the experimental scaffolding from the final api
faec 65e0d9f
move the encoding datatypes into the queue package
faec 2fd6081
Add early encoding hooks in the memory queue
faec eab04ff
pass encoder factory through during memqueue creation
faec b487665
add fallback encoding to client workers if queue doesn't support earl…
faec 8ee228e
Remove proxy queue implementation
faec bd97879
Use the memory queue instead of the proxy queue in the shipper output
faec 8e4321f
Merge branch 'delete-proxy-queue' into memqueue-encode-client
faec fc1914b
remove early-encoding hooks from pipeline clients
faec 3119457
Change how encoded event sizes are reported
faec 562e5bb
remove encoding hooks from output workers and eventConsumer
faec a19d91d
Cleanups
faec 6d0a33b
revert unrelated changes
faec 0d9c948
cleanup
faec 64ab52f
revert unrelated change
faec 1a591f0
revert unrelated change
faec cae64f7
revert no-op change
faec ec7080d
revert unneeded change
faec ebf2dc0
reworking dead letter index handling
faec 22d8f62
Clean up non-indexable policy handilng in the ES output
faec 565f7a6
Merge branch 'main' of github.com:elastic/beats into dead-letter-inde…
faec 70026ad
Merge branch 'dead-letter-index-cleanup' into queue-early-encode
faec 354d8d0
Merge branch 'main' of github.com:elastic/beats into queue-early-encode
faec df65a98
Merge branch 'main' of github.com:elastic/beats into queue-early-encode
faec c1da549
update integration tests
faec e989ac4
Merge branch 'main' of github.com:elastic/beats into queue-early-encode
faec 485b684
remove old code
faec e75930e
update documentation comments
faec 1fa7052
update more comments
faec c5851f9
make check
faec 7befab7
small cleanups
faec 50496fc
cleanups
faec 176087f
update more integration tests
faec 92b4522
add artificial panic to track down unupdated tests
faec 5249d7b
fix function call, linter errors
faec 02b0f6f
Merge branch 'main' of github.com:elastic/beats into queue-early-encode
faec b05d252
lint
faec 46321e7
lint
faec 4084d49
lint
faec 403586b
working on tests
faec ebf3441
Finish test
faec 6e581b2
Merge branch 'main' of github.com:elastic/beats into queue-early-encode
faec 70c7ba4
remove futile nolint tags
faec faaaa02
make check
faec c61ce5f
add comments
faec 8eedfd9
add comments
faec ed614fc
Merge branch 'benchmark-vanilla' into queue-early-encode
faec 5cc9ebb
update logstash tests
faec 732fcd8
update changelog
faec 75f5e73
remove debug panic from the output
faec 5fe0d35
Merge branch 'main' of github.com:elastic/beats into queue-early-encode
faec File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This linter error (and the similar ones below) is mistaken, there is no typecheck error here.
What's worse, if I add a
nolint
directive to skip it, it gives an error because the directive is "unused", so something is maybe wrong with the linter config...