-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Response Ops][Alerting] Create FAAD API for use by rule type executors #145103
Comments
Pinging @elastic/response-ops (Team:ResponseOps) |
This is a large issue so it can be started but a complete implementation may be blocked by #145100 |
This issue will need to be broken down into multiple steps to ensure that the new API has the same functionality as the existing implementation. While planning for this issue, I found it useful to encapsulate all alert related functionality in the alerting task runner into a Here's a recommendation for how we can break this down: 1. Create new This new client should eventually replace the
In addition, the client should check to ensure the context-specific resources have been installed prior to rule execution and retry installation if they have not been. In additional addition, we should try to proxy the It may be helpful to split the flapping portion out from this step so we can ensure things work as expected with the FAAD documents. For example, we now store recovered alert history information in the task manager state to support flapping detection. What is the equivalent in the FAAD doc? 2. Update action scheduling to work with FAAD Currently, action scheduling is handled by the
3. Update Finally, in order to deprecate the lifecycle executor from the rule registry, we need to absorb the functionality currently provided by that executor. Some of that functionality is already duplicating what the framework does (for example, recovery calculation) but some of it is not available in the framework. |
…askRunner in `LegacyAlertClient` (#148751) ## Summary While planning out the FAAD API for #145103, I found it useful to create a `LegacyAlertsClient` that encapsulates all of the alert related processing that's happening in the alerting task runner. This acts as a proxy to the `AlertFactory` and to the various library functions we use to process and log alerts to determine recovery status, flapping status. I added basic unit tests for the client that just test that the correct library functions are being proxied but since no functionality should be changing, I did not add or update any integration tests.
After some discussion, we are going to take a more incremental approach to creating this new FAAD API. For the first step, we will be creating an We will:
The new
We will create (many) followup issues for the subsequent steps after this initial issue is complete. |
While working on the PR for this issue , I found myself blocked by this issue for moving alert UUID generation to the framework. That issue was put on hold as not needed but we will be reviving it and getting that resolved before moving forward with the PR for this issue. |
As part of Phase 2 of framework alerts-as-data, we need to provide an API for rule type executors to report alerts that will be written out as FAAD documents.
POC for possible implementation here. This issue would cover the
AlertsClient
portion of the POC.Rule type executors will have to opt into using the new API, which should provide the same services as the existing
AlertsFactory
(i.e., recovered alerts determination, alert limit checking, categorizing into new/active/recovered alerts, etc) as well as writing out alert documents. The existingAlertsFactory
should be deprecated but not removed.The text was updated successfully, but these errors were encountered: