Hi everyone,
I'm using the free version tier Elastic Stack v9.0.1 with the following setup: Kibana v9.0.1 - Elastic Agent (enrolled via Fleet) - Sysmon integration - Managed data streams like logs-windows.sysmon_operational-*
Goal:
I want to enrich all logs automatically (e.g., tagging superusers based on user.name) without altering ECS mappings or modifying the default Fleet/Agent processing Specifically, I want:
• To enrich on user.name using an enrich policy
• To preserve ECS fields like process.command_line, user.name, etc. not back go winlog…
• Not to break existing mappings by replacing them with raw fields like winlog.event_data.*
What I tried:
- Created an enrich policy named superuser-policy — works fine.
- Built an ingest pipeline called superuser-enrich-pipeline that enriches on user.name.
- Applied it as a final_pipeline using this index template:
PUT _index_template/logs-superuser-final-template {"index_patterns": ["logs-elastic*", "logs-endpoint*", "logs-network*", "logs-system*", "logs-windows*", "logs-windows.sysmon*"],"priority": 1500,"template": {"settings": {"index.final_pipeline": "superuser-enrich-pipeline"}},"data_stream": {} } - Rolled over using: POST /logs-windows.sysmon/_rollover
The Issue:
After the rollover and template activation:
• ECS fields like process.command_line or user.name disappear
• Instead I see raw fields like winlog.event_data.CommandLine
• This breaks my enrich processor, since user.name no longer exists to match against
It seems that even though I only used final_pipeline, it impacted the ECS normalization done by the Elastic Agent integration pipeline.
Question:
• What is the proper way to enrich logs (via user.name) after ECS normalization without impacting default Fleet pipelines?
• Does index.final_pipeline unexpectedly override or bypass ECS mapping in Fleet-managed data streams?
• Is there a best practice for safely enriching logs post-processing without touching ECS or default pipelines?
Any help or guidance would be greatly appreciated.
Thanks in advance to the Elastic team and community!