elastic / elastic/package-spec
[Change Proposal] Streamline installation for ML integration packages
- Dominant language
- Go
- Stars
- 20
- Forks
- 93
- Avg merge
- 15h 10m
- Merged PRs (30d)
- 12
Description
### Problem being solved
For [DGA](https://github.com/elastic/integrations/tree/main/packages/dga) and [Living off the Land](https://github.com/elastic/integrations/tree/main/packages/problemchild), users currently need to go to the Dev console and manually assign custom component templates to data streams created by other integrations. This requires users to overwrite the default pipeline on a data stream.
### Proposed changes
- Create a configuration UI/API to allow the user to select to apply a pipeline and field mappings to existing data streams (or allow users to assign one to their own custom data stream), similar to how is done with `@custom` component templates.
- Potentially also add to the API to support arbitrary intermediate pipelines which can come between the default_pipeline and final_pipeline.
- The definition of supported data streams can be at the package level. For example DGA could have a configuration file indicating that if Elastic Defend is installed, add a checkbox for the user to apply DGA component template to `logs-endpoint.events.network`. In the UI, this could look like the configuration section for other Integration packages, like the Windows Integration (shown below).
- Possibly also link to the package's anomaly detectors/detection rules pages post installation.
- Updates should be as streamlined as possible, allowing users to easily update the integrations.
- **Edit: Sept 6, 2024**: As pointed out in the [community slack](https://elasticstack.slack.com/archives/CNRTGB9A4/p1725631517499849?thread_ts=1725630543.860569&cid=CNRTGB9A4), sometimes integration packages do not require being added to an agent policy, this could also be handled internally.

Contributor guide
Assessment
This issue has not been assessed yet.