-
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
Bulk create, update, delete abilities for the rules client #53144
Comments
Pinging @elastic/kibana-alerting-services (Team:Alerting Services) |
We've also had requests for bulk fetching of alert state and alert status (not yet merged, but returns data from the event log). As an example, see issue #70169 - the data for the pie chart at the top could be created from a bulk alert state request. |
"Reviewed by Frank Hassanabad on 7/29/2020, still valid as of this date" |
we are doing bulk update with this ticket -> #124715 |
Describe the feature:
Bulk rule management functions on the Alerting Framework RuleClient, including bulkGet, bulkCreate, etc. The bulk functions should share authorization logic across alerts to reduce the CPU load compared to repeated calls to the non-bulk analogous function.
Proposed
bulkGet
implementation: https://github.com/marshallmain/kibana/blob/rules-status-aggs/x-pack/plugins/alerting/server/alerts_client/alerts_client.ts#L386-L433Specific use case:
On the detection engine rules management page we display the status of each rule and refresh the statuses periodically. Our rule status API currently calls
AlertsClient.get
for each rule on the page to retrieve the alerting framework status for the rule. Even though we useasync
to make the calls toAlertsClient.get
, there is significant CPU cost in the authorization logic ofget
and the CPU usage ends up becoming the dominant factor when fetching hundreds of alert statuses. A bulk function that can fetch multiple alerts while sharing the same authorization would allow our status route to be much faster.Other bulk routes would be useful as well.
bulkCreate
in particular would have immediate applications for the detection engine, as we have a bulk create route that makes repeated calls to theAlertsClient.create
function.Original description
**Describe the feature:** Bulk create, read, update, delete for alert clientDescribe a specific use case for the feature:
Users with signals are doing bulk actions such as initializing pre-defined rules on the server and right now we do manual looping over the alert client to do these actions such as create, update, and delete.
We use find for bulk reads at the moment.
The text was updated successfully, but these errors were encountered: