Description
Is your feature request related to a problem? Please describe.
To move forward with Anomaly Detection backend plugin as an extension, we plan to start with creating a detector as the first feature to pick up. Currently, we are targeting the detector without scheduling the job for it (removes the dependencies of Job Scheduler) and without auth user(removes the dependencies of Common Utils).To integrate the detector from AD boils down to the following dependencies from OpenSearch
-
AnomalyDetectorPlugin -> getActions() -> IndexAnomalyDetectorTransportAction
Dependencies from OpenSearch:
a. client
b. transportService
c. clusterService
d. NamedXContentRegistry -
doExecute
Dependencies from OpenSearch:
a. ActionListener actionListener
b. User from Common Utils -
initAnomalyDetectorIndex
Dependencies from OpenSearch:
a. CreateIndexRequest API
The action items to achieve the above:
- [FEATURE] Utilize the codebase required to create a detector from Anomaly Detector Plugin opensearch-sdk-java#20.
- [META] Create Transport APIs for the dependencies of OpenSearch for creating detector opensearch-sdk-java#21
- [META] APIs for Extension Point for creating a detector of AD opensearch-sdk-java#100
- [FEATURE] Remove dependent code associated with the Client thread pool/context in AD for creating detector opensearch-sdk-java#22
- [FEATURE] Remove the ThreadContext dependency on the User from Common Utils for creating detector opensearch-sdk-java#23
- [META] Migrate Anomaly Detector plugin to work as an Extension opensearch-sdk-java#24
- Meta: [FEATURE/Extensions] Interaction of AD Extension with OpenSearch opensearch-sdk-java#132
Next Steps:
- Feature to update the detector
- Deleting the detector
- Validating the detector
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.