In beats today we have a feature called Autodiscovery that allows you to generate inputs based on labels or other information coming from a provider like the k8s, docker stream. We want to add the same functionality in the Elastic Agent. We are calling that new feature Dynamic input.
As an example, we would create a dynamic input template like this. And the system would run through the data it has to define if a template should be used or not.
inputs:
- type: log
dataset.type: logs
streams:
- paths: /var/log/${host.platform}.log
dataset.name: foo
condition: ${host.platform} == "windows"
Use cases:
- Do an input need to run on this OS (aka syslog should not work on Windows).
- Do an input need to run based on the environment.
- Do an input need to run based on data from a provider (k8s hints)
- Allow defining a cross platform integration that will use journald on Linux but winlogbeat on Windows
Tasks
Phase 1: Elastic Agent
Phase 2 (beyond 7.10)
In beats today we have a feature called Autodiscovery that allows you to generate inputs based on labels or other information coming from a provider like the k8s, docker stream. We want to add the same functionality in the Elastic Agent. We are calling that new feature Dynamic input.
As an example, we would create a dynamic input template like this. And the system would run through the data it has to define if a template should be used or not.
Use cases:
Tasks
Phase 1: Elastic Agent
Phase 2 (beyond 7.10)