kibana/x-pack/examples
Jiawei Wu 092cc0d098
[RAM][Maintenance Window] Add maintenance window solution selection. (#166781)
## Summary
Resolves: https://github.com/elastic/kibana/issues/166301

Adds support for solution/category filtering to maintenance windows by
adding a new property: `category_ids`. Selecting one or more solutions
when creating/updating a maintenance window will cause the maintenance
window to only suppress rule types belonging to said solutions. In order
to achieve filtering by solution/category, we are adding a new field to
the rule types schema called `category`. This field should map to the
feature category that the rule type belongs to (`observability`,
`securitySolution` or `management`).

Our initial plan was to use feature IDs or rule type IDs to accomplish
this filtering, we decided against using rule type IDs because if a new
rule type gets added, we need to change the API to support this new rule
type. We decided against feature IDs because it's a very anti-serverless
way of accomplishing this feature, as we don't want to expose feature
IDs to APIs. We decided on app categories because it works well with
serverless and should be much easier to maintain if new rule types are
added in the future.

This means the `rule_types` API has to be changed to include this new
field, although it shouldn't be a breaking change since we're just
adding a new field. No migrations are needed since rule types are in
memory and maintenance windows are backwards compatible.


![image](d07b05cd-ade8-46a4-a4c0-ab623c31c11b)

### Error state:

![image](b61984b4-c1e1-4e9b-98b4-97a681e977a8)

### Checklist

Delete any items that are not applicable to this PR.

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [x]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Dima Arnautov <arnautov.dima@gmail.com>
2023-10-02 09:20:53 +01:00
..
alerting_example [RAM][Maintenance Window] Add maintenance window solution selection. (#166781) 2023-10-02 09:20:53 +01:00
embedded_lens_example [Lens playground] Removes deprecated eui components (#161437) 2023-07-07 16:01:55 +03:00
exploratory_view_example [Synthetics] Remove usage of deprecated EuiPageTemplate (#162186) 2023-07-19 12:49:04 +02:00
gen_ai_streaming_response_example [Security solution] Rename Generative AI connector to OpenAI (#167677) 2023-09-29 11:54:55 -05:00
reporting_example Remove deprecated EUI components in reporting_example plugin (#166224) 2023-09-14 10:47:20 +02:00
screenshotting_example Eui deprecations 5 (#164106) 2023-08-17 15:58:36 +02:00
testing_embedded_lens Changing where CodeEditor fields get useDarkMode value (#159638) 2023-07-11 14:02:42 -04:00
third_party_lens_navigation_prompt [packages] migrate all plugins to packages (#148130) 2023-02-08 21:06:50 -06:00
third_party_maps_source_example [maps] remove IVectorSource.getFieldNames (#159747) 2023-06-27 11:36:43 -06:00
third_party_vis_lens_example [Lens] Remove <NativeRenderer /> (#161521) 2023-07-11 14:05:45 +02:00
triggers_actions_ui_example [ResponseOps] Migrate all usages of EuiPage*_Deprecated (#166188) 2023-09-12 15:57:40 +02:00
ui_actions_enhanced_examples Update usage of deprecated EUI components in SharedUx plugins (#163560) 2023-08-14 06:36:38 -07:00
README.md Example plugins in X-Pack (#63823) 2020-04-17 20:15:36 +02:00

Example plugins

This folder contains X-Pack example plugins. To run the plugins in this folder, use the --run-examples flag, via

yarn start --run-examples