Introducing preprocessors on the module input override#27154
Introducing preprocessors on the module input override#27154mjmbischoff wants to merge 3 commits intoelastic:masterfrom
Conversation
…after the input but before the processors in the module so some pre transformation can occur.
💚 Build Succeeded
Expand to view the summary
Build stats
Test stats 🧪
Trends 🧪💚 Flaky test reportTests succeeded. Expand to view the summary
Test stats 🧪
|
kvch
left a comment
There was a problem hiding this comment.
First I would refrain from merging this. I would like to see if parsers are good enough for inputs. In general, we do not want to have much processing in Beats. Everything should be done at the Ingest Node, if possible.
Also, I will bring this up in internal discussion with other devs on the team.
|
I'm afraid when the parsers can adres all the use-cases it will be a duplicated effort of the processors. Let me know what the discussion yields. |
|
Pinging @elastic/agent (Team:Agent) |
|
This pull request does not have a backport label. Could you fix it @mjmbischoff? 🙏
NOTE: |
|
Hi! We're labeling this issue as |
|
Hi! |
Introducing preprocessors on the module input override which are run after the input but before the processors in the module so some pre transformation can occur.
What does this PR do?
Allows
preprocessorsto be defined on the module input override which are run after the input but before the processors in the module as opposed to the processors defined at this level which are run after the module. Thepreprocessorsare normal processors and after merging the config don't exist as a separate property but are merged with the processors.Why is it important?
This PR introduces flexibility to filebeat and allows more module reuse vs local forking (breaking updates) and can simplify the ingest pipeline requiring fewer components
Checklist
CHANGELOG.next.asciidocorCHANGELOG-developer.next.asciidoc.Related issues
Use cases
When intermediate transport is used, for example syslog shipped over syslog, leading to double syslog headers which the module doesn't expect.