Retain event.original value upon pipeline errors #12045
Labels
enhancement
New feature or request
Integration:All
Applies to all integrations [Integration not found in source]
Team:Security-Deployment and Devices
Deployment and Devices Security team [elastic/sec-deployment-and-devices]
Team:Security-Linux Platform
Linux Platform Security team [elastic/sec-linux-platform]
Team:Security-Scalability
Security Integrations Scalability team
Team:Security-Service Integrations
Security Service Integrations Team [elastic/security-service-integrations]
Team:Security-Windows Platform
Security Windows Platform Team [elastic/sec-windows-platform]
When an ingest pipeline error occurs, our log pipelines should retain the
event.original
value to ensure that no data loss occurs and to facilitate correcting the failure. If processing is interrupted due to an error, some data may not have been extracted (i.e. incomplete processing) so it's important to retain theevent.original
. And secondly, in order for the package maintainers to be able to take action on reports of pipeline failures they nearly always need theevent.original
value to reproduce and understand the issue.To implement this we should complete the work related to #10072. This not strictly required, but it helps ensure the
event.original
is consistently handled. We want the Fleet final_pipeline to be responsible for deleting event.original whentags
does not containpreserve_original_event
.Next, in the primary pipeline of each log data stream we update the global
on_failure
handler to injectpreserve_original_event
intotags
. This will accompanyevent.kind: pipeline_error
. With this mechanism, users can still override this behavior through the various levels of@custom
pipelines by deleting the tag value. I expect the work to be accomplished "mechanically", and this mechanism can be applied separately on the integrations owned by each SIT team.Tasks
The text was updated successfully, but these errors were encountered: