From ef55756b8ce5159e55f5b3b7b3f715a8a91521e9 Mon Sep 17 00:00:00 2001 From: Michael Olorunnisola Date: Fri, 18 Sep 2020 11:40:16 -0400 Subject: [PATCH 01/27] [Security Solution][Resolver] Fix functional test (#77895) --- .../test/security_solution_endpoint/apps/endpoint/resolver.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts b/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts index e8fa18aa01b4c..e48d952ce82c3 100644 --- a/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts +++ b/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts @@ -14,7 +14,7 @@ export default function ({ getPageObjects, getService }: FtrProviderContext) { const queryBar = getService('queryBar'); // FLAKY: https://github.com/elastic/kibana/issues/77835 - describe.skip('Endpoint Event Resolver', function () { + describe('Endpoint Event Resolver', function () { before(async () => { await esArchiver.load('endpoint/resolver_tree', { useCreate: true }); await pageObjects.hosts.navigateToSecurityHostsPage(); @@ -45,7 +45,7 @@ export default function ({ getPageObjects, getService }: FtrProviderContext) { const nodeData: string[] = []; const TableData: string[] = []; - const Table = await testSubjects.findAll('resolver:node-list:item'); + const Table = await testSubjects.findAll('resolver:node-list:node-link:title'); for (const value of Table) { const text = await value._webElement.getText(); TableData.push(text.split('\n')[0]); From e361035650d0ea70cf36069935d53064ff3dabf5 Mon Sep 17 00:00:00 2001 From: Peter Pisljar Date: Fri, 18 Sep 2020 17:43:00 +0200 Subject: [PATCH 02/27] Embeddable telemetry and reference extraction/injection (#74352) --- ...na-plugin-plugins-data-public.esfilters.md | 2 +- ...lugin-plugins-data-public.filter._state.md | 11 -- ...ibana-plugin-plugins-data-public.filter.md | 17 +- ...-plugin-plugins-data-public.filter.meta.md | 11 -- ...plugin-plugins-data-public.filter.query.md | 11 -- ...ugin-plugins-data-public.query.language.md | 11 -- ...kibana-plugin-plugins-data-public.query.md | 17 +- ...-plugin-plugins-data-public.query.query.md | 13 -- ...ugin-plugins-data-public.timerange.from.md | 11 -- ...na-plugin-plugins-data-public.timerange.md | 17 +- ...ugin-plugins-data-public.timerange.mode.md | 11 -- ...plugin-plugins-data-public.timerange.to.md | 11 -- ...lugin-plugins-data-server.filter._state.md | 11 -- ...ibana-plugin-plugins-data-server.filter.md | 17 +- ...-plugin-plugins-data-server.filter.meta.md | 11 -- ...plugin-plugins-data-server.filter.query.md | 11 -- .../kibana-plugin-plugins-data-server.md | 6 +- ...ugin-plugins-data-server.query.language.md | 11 -- ...kibana-plugin-plugins-data-server.query.md | 17 +- ...-plugin-plugins-data-server.query.query.md | 13 -- ...ugin-plugins-data-server.timerange.from.md | 11 -- ...na-plugin-plugins-data-server.timerange.md | 17 +- ...ugin-plugins-data-server.timerange.mode.md | 11 -- ...plugin-plugins-data-server.timerange.to.md | 11 -- .../es_query/filters/get_display_value.ts | 2 +- .../common/es_query/filters/meta_filter.ts | 17 +- .../data/common/query/timefilter/types.ts | 5 +- src/plugins/data/common/query/types.ts | 5 +- src/plugins/data/public/public.api.md | 32 ++- .../lib/map_and_flatten_filters.test.ts | 4 +- .../filter_manager/lib/map_filter.test.ts | 4 +- src/plugins/data/server/server.api.md | 30 +-- src/plugins/embeddable/.eslintrc.json | 5 + .../common/lib/migrate_base_input.ts | 39 ++++ src/plugins/embeddable/common/types.ts | 70 +++++++ src/plugins/embeddable/kibana.json | 2 +- src/plugins/embeddable/public/index.ts | 2 + .../default_embeddable_factory_provider.ts | 4 + .../public/lib/embeddables/embeddable.tsx | 5 +- .../lib/embeddables/embeddable_factory.ts | 3 +- .../embeddable_factory_definition.ts | 3 + .../public/lib/embeddables/i_embeddable.ts | 46 +---- .../embeddables/filterable_container.tsx | 1 - .../embeddables/hello_world_container.tsx | 1 - src/plugins/embeddable/public/lib/types.ts | 7 +- src/plugins/embeddable/public/mocks.tsx | 4 + src/plugins/embeddable/public/plugin.test.ts | 102 ++++++++-- src/plugins/embeddable/public/plugin.tsx | 127 +++++++++++- src/plugins/embeddable/public/types.ts | 16 ++ src/plugins/embeddable/server/index.ts | 26 +++ src/plugins/embeddable/server/plugin.ts | 186 ++++++++++++++++++ src/plugins/embeddable/server/types.ts | 48 +++++ src/plugins/kibana_utils/common/index.ts | 1 + .../common/persistable_state/index.ts | 54 +++++ .../kibana_utils/public/ui/configurable.ts | 11 +- .../.eslintrc.json | 5 + .../dashboard_hello_world_drilldown/index.tsx | 4 +- .../index.tsx | 4 +- .../dashboard_to_discover_drilldown/types.ts | 4 +- .../dashboard_to_dashboard_drilldown/types.ts | 5 +- .../embeddables/embeddable_action_storage.ts | 7 +- .../ui_actions_enhanced/.eslintrc.json | 5 + .../ui_actions_enhanced/common/types.ts | 28 +++ .../plugins/ui_actions_enhanced/kibana.json | 2 +- .../action_wizard/action_wizard.tsx | 10 +- .../components/action_wizard/test_data.tsx | 19 +- ...nnected_flyout_manage_drilldowns.story.tsx | 5 +- ...onnected_flyout_manage_drilldowns.test.tsx | 6 +- .../connected_flyout_manage_drilldowns.tsx | 3 +- .../test_data.ts | 2 +- .../flyout_drilldown_wizard.story.tsx | 29 +-- .../flyout_drilldown_wizard.tsx | 24 ++- .../form_drilldown_wizard.tsx | 10 +- .../public/drilldowns/drilldown_definition.ts | 12 +- .../public/drilldowns/url_drilldown/types.ts | 4 +- .../public/dynamic_actions/action_factory.ts | 28 ++- .../action_factory_definition.ts | 13 +- .../dynamic_action_enhancement.ts | 28 +++ .../dynamic_action_manager.test.ts | 32 +-- .../dynamic_actions/dynamic_action_manager.ts | 9 +- .../public/dynamic_actions/types.ts | 16 +- .../ui_actions_enhanced/public/index.ts | 3 + .../ui_actions_enhanced/public/mocks.ts | 3 + .../ui_actions_enhanced/public/plugin.ts | 9 +- .../ui_actions_service_enhancements.test.ts | 60 ++++++ .../ui_actions_service_enhancements.ts | 60 +++++- .../test_helpers/time_range_container.ts | 1 - .../server/dynamic_action_enhancement.ts | 55 ++++++ .../ui_actions_enhanced/server/index.ts | 29 +++ .../ui_actions_enhanced/server/plugin.ts | 107 ++++++++++ .../ui_actions_enhanced/server/types.ts | 26 +++ 91 files changed, 1314 insertions(+), 505 deletions(-) delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter._state.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.meta.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.query.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.language.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.query.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.from.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.mode.md delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.to.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter._state.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.meta.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.query.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.language.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.query.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.from.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.mode.md delete mode 100644 docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.to.md create mode 100644 src/plugins/embeddable/.eslintrc.json create mode 100644 src/plugins/embeddable/common/lib/migrate_base_input.ts create mode 100644 src/plugins/embeddable/common/types.ts create mode 100644 src/plugins/embeddable/server/index.ts create mode 100644 src/plugins/embeddable/server/plugin.ts create mode 100644 src/plugins/embeddable/server/types.ts create mode 100644 src/plugins/kibana_utils/common/persistable_state/index.ts create mode 100644 x-pack/examples/ui_actions_enhanced_examples/.eslintrc.json create mode 100644 x-pack/plugins/ui_actions_enhanced/.eslintrc.json create mode 100644 x-pack/plugins/ui_actions_enhanced/common/types.ts create mode 100644 x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_enhancement.ts create mode 100644 x-pack/plugins/ui_actions_enhanced/server/dynamic_action_enhancement.ts create mode 100644 x-pack/plugins/ui_actions_enhanced/server/index.ts create mode 100644 x-pack/plugins/ui_actions_enhanced/server/plugin.ts create mode 100644 x-pack/plugins/ui_actions_enhanced/server/types.ts diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.esfilters.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.esfilters.md index bc34d4113f847..4422b755faa77 100644 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.esfilters.md +++ b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.esfilters.md @@ -35,7 +35,7 @@ esFilters: { type?: string | undefined; key?: string | undefined; params?: any; - value?: string | ((formatter?: import("../common").FilterValueFormatter | undefined) => string) | undefined; + value?: string | undefined; }; $state?: import("../common").FilterState | undefined; query?: any; diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter._state.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter._state.md deleted file mode 100644 index bfb5dff71e70d..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter._state.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Filter](./kibana-plugin-plugins-data-public.filter.md) > [$state](./kibana-plugin-plugins-data-public.filter._state.md) - -## Filter.$state property - -Signature: - -```typescript -$state?: FilterState; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.md index f993721ee96ad..9212b757e07df 100644 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.md +++ b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.md @@ -2,19 +2,14 @@ [Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Filter](./kibana-plugin-plugins-data-public.filter.md) -## Filter interface +## Filter type Signature: ```typescript -export interface Filter +export declare type Filter = { + $state?: FilterState; + meta: FilterMeta; + query?: any; +}; ``` - -## Properties - -| Property | Type | Description | -| --- | --- | --- | -| [$state](./kibana-plugin-plugins-data-public.filter._state.md) | FilterState | | -| [meta](./kibana-plugin-plugins-data-public.filter.meta.md) | FilterMeta | | -| [query](./kibana-plugin-plugins-data-public.filter.query.md) | any | | - diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.meta.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.meta.md deleted file mode 100644 index 3385a3773a2aa..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.meta.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Filter](./kibana-plugin-plugins-data-public.filter.md) > [meta](./kibana-plugin-plugins-data-public.filter.meta.md) - -## Filter.meta property - -Signature: - -```typescript -meta: FilterMeta; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.query.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.query.md deleted file mode 100644 index 083b544493e80..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.filter.query.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Filter](./kibana-plugin-plugins-data-public.filter.md) > [query](./kibana-plugin-plugins-data-public.filter.query.md) - -## Filter.query property - -Signature: - -```typescript -query?: any; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.language.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.language.md deleted file mode 100644 index 127ee9210799e..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.language.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Query](./kibana-plugin-plugins-data-public.query.md) > [language](./kibana-plugin-plugins-data-public.query.language.md) - -## Query.language property - -Signature: - -```typescript -language: string; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.md index a1dffe5ff5fa4..e15b04236a0b5 100644 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.md +++ b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.md @@ -2,18 +2,15 @@ [Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Query](./kibana-plugin-plugins-data-public.query.md) -## Query interface +## Query type Signature: ```typescript -export interface Query +export declare type Query = { + query: string | { + [key: string]: any; + }; + language: string; +}; ``` - -## Properties - -| Property | Type | Description | -| --- | --- | --- | -| [language](./kibana-plugin-plugins-data-public.query.language.md) | string | | -| [query](./kibana-plugin-plugins-data-public.query.query.md) | string | {
[key: string]: any;
} | | - diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.query.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.query.md deleted file mode 100644 index 9fcd0310af0fe..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.query.query.md +++ /dev/null @@ -1,13 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [Query](./kibana-plugin-plugins-data-public.query.md) > [query](./kibana-plugin-plugins-data-public.query.query.md) - -## Query.query property - -Signature: - -```typescript -query: string | { - [key: string]: any; - }; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.from.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.from.md deleted file mode 100644 index b428bd9cd90ca..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.from.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [TimeRange](./kibana-plugin-plugins-data-public.timerange.md) > [from](./kibana-plugin-plugins-data-public.timerange.from.md) - -## TimeRange.from property - -Signature: - -```typescript -from: string; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.md index 69078ca40d20d..482501e494c7a 100644 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.md +++ b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.md @@ -2,19 +2,14 @@ [Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [TimeRange](./kibana-plugin-plugins-data-public.timerange.md) -## TimeRange interface +## TimeRange type Signature: ```typescript -export interface TimeRange +export declare type TimeRange = { + from: string; + to: string; + mode?: 'absolute' | 'relative'; +}; ``` - -## Properties - -| Property | Type | Description | -| --- | --- | --- | -| [from](./kibana-plugin-plugins-data-public.timerange.from.md) | string | | -| [mode](./kibana-plugin-plugins-data-public.timerange.mode.md) | 'absolute' | 'relative' | | -| [to](./kibana-plugin-plugins-data-public.timerange.to.md) | string | | - diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.mode.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.mode.md deleted file mode 100644 index fb9ebd3c9165f..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.mode.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [TimeRange](./kibana-plugin-plugins-data-public.timerange.md) > [mode](./kibana-plugin-plugins-data-public.timerange.mode.md) - -## TimeRange.mode property - -Signature: - -```typescript -mode?: 'absolute' | 'relative'; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.to.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.to.md deleted file mode 100644 index 342acd5e049f1..0000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.timerange.to.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [TimeRange](./kibana-plugin-plugins-data-public.timerange.md) > [to](./kibana-plugin-plugins-data-public.timerange.to.md) - -## TimeRange.to property - -Signature: - -```typescript -to: string; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter._state.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter._state.md deleted file mode 100644 index 079f352609a70..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter._state.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Filter](./kibana-plugin-plugins-data-server.filter.md) > [$state](./kibana-plugin-plugins-data-server.filter._state.md) - -## Filter.$state property - -Signature: - -```typescript -$state?: FilterState; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.md index 4e4c49b222f01..519bbaf8f9416 100644 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.md +++ b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.md @@ -2,19 +2,14 @@ [Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Filter](./kibana-plugin-plugins-data-server.filter.md) -## Filter interface +## Filter type Signature: ```typescript -export interface Filter +export declare type Filter = { + $state?: FilterState; + meta: FilterMeta; + query?: any; +}; ``` - -## Properties - -| Property | Type | Description | -| --- | --- | --- | -| [$state](./kibana-plugin-plugins-data-server.filter._state.md) | FilterState | | -| [meta](./kibana-plugin-plugins-data-server.filter.meta.md) | FilterMeta | | -| [query](./kibana-plugin-plugins-data-server.filter.query.md) | any | | - diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.meta.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.meta.md deleted file mode 100644 index 6d11804704d82..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.meta.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Filter](./kibana-plugin-plugins-data-server.filter.md) > [meta](./kibana-plugin-plugins-data-server.filter.meta.md) - -## Filter.meta property - -Signature: - -```typescript -meta: FilterMeta; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.query.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.query.md deleted file mode 100644 index 942c7930f449d..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.filter.query.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Filter](./kibana-plugin-plugins-data-server.filter.md) > [query](./kibana-plugin-plugins-data-server.filter.query.md) - -## Filter.query property - -Signature: - -```typescript -query?: any; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.md index f5b587d86b349..3c477e17503f4 100644 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.md +++ b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.md @@ -42,7 +42,6 @@ | [AggParamOption](./kibana-plugin-plugins-data-server.aggparamoption.md) | | | [EsQueryConfig](./kibana-plugin-plugins-data-server.esqueryconfig.md) | | | [FieldFormatConfig](./kibana-plugin-plugins-data-server.fieldformatconfig.md) | | -| [Filter](./kibana-plugin-plugins-data-server.filter.md) | | | [IEsSearchRequest](./kibana-plugin-plugins-data-server.iessearchrequest.md) | | | [IEsSearchResponse](./kibana-plugin-plugins-data-server.iessearchresponse.md) | | | [IFieldSubType](./kibana-plugin-plugins-data-server.ifieldsubtype.md) | | @@ -58,12 +57,10 @@ | [OptionedValueProp](./kibana-plugin-plugins-data-server.optionedvalueprop.md) | | | [PluginSetup](./kibana-plugin-plugins-data-server.pluginsetup.md) | | | [PluginStart](./kibana-plugin-plugins-data-server.pluginstart.md) | | -| [Query](./kibana-plugin-plugins-data-server.query.md) | | | [RefreshInterval](./kibana-plugin-plugins-data-server.refreshinterval.md) | | | [SearchUsage](./kibana-plugin-plugins-data-server.searchusage.md) | | | [TabbedAggColumn](./kibana-plugin-plugins-data-server.tabbedaggcolumn.md) | \* | | [TabbedTable](./kibana-plugin-plugins-data-server.tabbedtable.md) | \* | -| [TimeRange](./kibana-plugin-plugins-data-server.timerange.md) | | ## Variables @@ -91,11 +88,14 @@ | [AggParam](./kibana-plugin-plugins-data-server.aggparam.md) | | | [EsaggsExpressionFunctionDefinition](./kibana-plugin-plugins-data-server.esaggsexpressionfunctiondefinition.md) | | | [FieldFormatsGetConfigFn](./kibana-plugin-plugins-data-server.fieldformatsgetconfigfn.md) | | +| [Filter](./kibana-plugin-plugins-data-server.filter.md) | | | [IAggConfig](./kibana-plugin-plugins-data-server.iaggconfig.md) | AggConfig This class represents an aggregation, which is displayed in the left-hand nav of the Visualize app. | | [IAggType](./kibana-plugin-plugins-data-server.iaggtype.md) | | | [IFieldFormatsRegistry](./kibana-plugin-plugins-data-server.ifieldformatsregistry.md) | | | [IFieldParamType](./kibana-plugin-plugins-data-server.ifieldparamtype.md) | | | [IMetricAggType](./kibana-plugin-plugins-data-server.imetricaggtype.md) | | | [ParsedInterval](./kibana-plugin-plugins-data-server.parsedinterval.md) | | +| [Query](./kibana-plugin-plugins-data-server.query.md) | | | [TabbedAggRow](./kibana-plugin-plugins-data-server.tabbedaggrow.md) | \* | +| [TimeRange](./kibana-plugin-plugins-data-server.timerange.md) | | diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.language.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.language.md deleted file mode 100644 index 384fc77d801c0..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.language.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Query](./kibana-plugin-plugins-data-server.query.md) > [language](./kibana-plugin-plugins-data-server.query.language.md) - -## Query.language property - -Signature: - -```typescript -language: string; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.md index 5d61c75bc5e99..6a7bdfe51f1c0 100644 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.md +++ b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.md @@ -2,18 +2,15 @@ [Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Query](./kibana-plugin-plugins-data-server.query.md) -## Query interface +## Query type Signature: ```typescript -export interface Query +export declare type Query = { + query: string | { + [key: string]: any; + }; + language: string; +}; ``` - -## Properties - -| Property | Type | Description | -| --- | --- | --- | -| [language](./kibana-plugin-plugins-data-server.query.language.md) | string | | -| [query](./kibana-plugin-plugins-data-server.query.query.md) | string | {
[key: string]: any;
} | | - diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.query.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.query.md deleted file mode 100644 index 5c2aa700bc603..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.query.query.md +++ /dev/null @@ -1,13 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [Query](./kibana-plugin-plugins-data-server.query.md) > [query](./kibana-plugin-plugins-data-server.query.query.md) - -## Query.query property - -Signature: - -```typescript -query: string | { - [key: string]: any; - }; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.from.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.from.md deleted file mode 100644 index b6f40cc2e4203..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.from.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [TimeRange](./kibana-plugin-plugins-data-server.timerange.md) > [from](./kibana-plugin-plugins-data-server.timerange.from.md) - -## TimeRange.from property - -Signature: - -```typescript -from: string; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.md index 8280d924eb609..1ac59343220fd 100644 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.md +++ b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.md @@ -2,19 +2,14 @@ [Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [TimeRange](./kibana-plugin-plugins-data-server.timerange.md) -## TimeRange interface +## TimeRange type Signature: ```typescript -export interface TimeRange +export declare type TimeRange = { + from: string; + to: string; + mode?: 'absolute' | 'relative'; +}; ``` - -## Properties - -| Property | Type | Description | -| --- | --- | --- | -| [from](./kibana-plugin-plugins-data-server.timerange.from.md) | string | | -| [mode](./kibana-plugin-plugins-data-server.timerange.mode.md) | 'absolute' | 'relative' | | -| [to](./kibana-plugin-plugins-data-server.timerange.to.md) | string | | - diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.mode.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.mode.md deleted file mode 100644 index 1408fb43cbf39..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.mode.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [TimeRange](./kibana-plugin-plugins-data-server.timerange.md) > [mode](./kibana-plugin-plugins-data-server.timerange.mode.md) - -## TimeRange.mode property - -Signature: - -```typescript -mode?: 'absolute' | 'relative'; -``` diff --git a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.to.md b/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.to.md deleted file mode 100644 index 98aca5474d350..0000000000000 --- a/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.timerange.to.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-server](./kibana-plugin-plugins-data-server.md) > [TimeRange](./kibana-plugin-plugins-data-server.timerange.md) > [to](./kibana-plugin-plugins-data-server.timerange.to.md) - -## TimeRange.to property - -Signature: - -```typescript -to: string; -``` diff --git a/src/plugins/data/common/es_query/filters/get_display_value.ts b/src/plugins/data/common/es_query/filters/get_display_value.ts index 28ba0ab629e8f..317d0f0140293 100644 --- a/src/plugins/data/common/es_query/filters/get_display_value.ts +++ b/src/plugins/data/common/es_query/filters/get_display_value.ts @@ -43,7 +43,7 @@ export function getDisplayValueFromFilter(filter: Filter, indexPatterns: IIndexP if (typeof filter.meta.value === 'function') { const indexPattern = getIndexPatternFromFilter(filter, indexPatterns); const valueFormatter: any = getValueFormatter(indexPattern, filter.meta.key); - return filter.meta.value(valueFormatter); + return (filter.meta.value as any)(valueFormatter); } else { return filter.meta.value || ''; } diff --git a/src/plugins/data/common/es_query/filters/meta_filter.ts b/src/plugins/data/common/es_query/filters/meta_filter.ts index e3099ae6a4026..1e892d452f401 100644 --- a/src/plugins/data/common/es_query/filters/meta_filter.ts +++ b/src/plugins/data/common/es_query/filters/meta_filter.ts @@ -22,9 +22,10 @@ export enum FilterStateStore { GLOBAL_STATE = 'globalState', } -export interface FilterState { +// eslint-disable-next-line +export type FilterState = { store: FilterStateStore; -} +}; type FilterFormatterFunction = (value: any) => string; export interface FilterValueFormatter { @@ -32,7 +33,8 @@ export interface FilterValueFormatter { getConverterFor: (type: string) => FilterFormatterFunction; } -export interface FilterMeta { +// eslint-disable-next-line +export type FilterMeta = { alias: string | null; disabled: boolean; negate: boolean; @@ -43,14 +45,15 @@ export interface FilterMeta { type?: string; key?: string; params?: any; - value?: string | ((formatter?: FilterValueFormatter) => string); -} + value?: string; +}; -export interface Filter { +// eslint-disable-next-line +export type Filter = { $state?: FilterState; meta: FilterMeta; query?: any; -} +}; export interface LatLon { lat: number; diff --git a/src/plugins/data/common/query/timefilter/types.ts b/src/plugins/data/common/query/timefilter/types.ts index 60008ce6054e1..82b1ae69cc73b 100644 --- a/src/plugins/data/common/query/timefilter/types.ts +++ b/src/plugins/data/common/query/timefilter/types.ts @@ -24,11 +24,12 @@ export interface RefreshInterval { value: number; } -export interface TimeRange { +// eslint-disable-next-line +export type TimeRange = { from: string; to: string; mode?: 'absolute' | 'relative'; -} +}; export interface TimeRangeBounds { min: Moment | undefined; diff --git a/src/plugins/data/common/query/types.ts b/src/plugins/data/common/query/types.ts index 6b34a1baf293b..c1a98eac5350e 100644 --- a/src/plugins/data/common/query/types.ts +++ b/src/plugins/data/common/query/types.ts @@ -19,7 +19,8 @@ export * from './timefilter/types'; -export interface Query { +// eslint-disable-next-line +export type Query = { query: string | { [key: string]: any }; language: string; -} +}; diff --git a/src/plugins/data/public/public.api.md b/src/plugins/data/public/public.api.md index 7ce53a219fb44..26e72a82d4bb5 100644 --- a/src/plugins/data/public/public.api.md +++ b/src/plugins/data/public/public.api.md @@ -565,7 +565,7 @@ export const esFilters: { type?: string | undefined; key?: string | undefined; params?: any; - value?: string | ((formatter?: import("../common").FilterValueFormatter | undefined) => string) | undefined; + value?: string | undefined; }; $state?: import("../common").FilterState | undefined; query?: any; @@ -791,18 +791,11 @@ export interface FieldMappingSpec { // Warning: (ae-missing-release-tag) "Filter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export interface Filter { - // Warning: (ae-forgotten-export) The symbol "FilterState" needs to be exported by the entry point index.d.ts - // - // (undocumented) +export type Filter = { $state?: FilterState; - // Warning: (ae-forgotten-export) The symbol "FilterMeta" needs to be exported by the entry point index.d.ts - // - // (undocumented) meta: FilterMeta; - // (undocumented) query?: any; -} +}; // Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "FilterBar" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -1645,14 +1638,12 @@ export function plugin(initializerContext: PluginInitializerContext; // Warning: (ae-missing-release-tag) "TimeRange" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export interface TimeRange { - // (undocumented) +export type TimeRange = { from: string; - // (undocumented) - mode?: 'absolute' | 'relative'; - // (undocumented) to: string; -} + mode?: 'absolute' | 'relative'; +}; // Warning: (ae-missing-release-tag) "UI_SETTINGS" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -2197,6 +2185,8 @@ export const UI_SETTINGS: { // src/plugins/data/common/es_query/filters/exists_filter.ts:30:3 - (ae-forgotten-export) The symbol "ExistsFilterMeta" needs to be exported by the entry point index.d.ts // src/plugins/data/common/es_query/filters/exists_filter.ts:31:3 - (ae-forgotten-export) The symbol "FilterExistsProperty" needs to be exported by the entry point index.d.ts // src/plugins/data/common/es_query/filters/match_all_filter.ts:28:3 - (ae-forgotten-export) The symbol "MatchAllFilterMeta" needs to be exported by the entry point index.d.ts +// src/plugins/data/common/es_query/filters/meta_filter.ts:53:3 - (ae-forgotten-export) The symbol "FilterState" needs to be exported by the entry point index.d.ts +// src/plugins/data/common/es_query/filters/meta_filter.ts:54:3 - (ae-forgotten-export) The symbol "FilterMeta" needs to be exported by the entry point index.d.ts // src/plugins/data/common/es_query/filters/phrase_filter.ts:33:3 - (ae-forgotten-export) The symbol "PhraseFilterMeta" needs to be exported by the entry point index.d.ts // src/plugins/data/common/es_query/filters/phrases_filter.ts:31:3 - (ae-forgotten-export) The symbol "PhrasesFilterMeta" needs to be exported by the entry point index.d.ts // src/plugins/data/common/search/aggs/types.ts:98:51 - (ae-forgotten-export) The symbol "AggTypesRegistryStart" needs to be exported by the entry point index.d.ts diff --git a/src/plugins/data/public/query/filter_manager/lib/map_and_flatten_filters.test.ts b/src/plugins/data/public/query/filter_manager/lib/map_and_flatten_filters.test.ts index 1b2d476570902..996a7aaa27c31 100644 --- a/src/plugins/data/public/query/filter_manager/lib/map_and_flatten_filters.test.ts +++ b/src/plugins/data/public/query/filter_manager/lib/map_and_flatten_filters.test.ts @@ -25,7 +25,9 @@ describe('filter manager utilities', () => { let filters: unknown; function getDisplayName(filter: Filter) { - return typeof filter.meta.value === 'function' ? filter.meta.value() : filter.meta.value; + return typeof filter.meta.value === 'function' + ? (filter.meta.value as any)() + : filter.meta.value; } beforeEach(() => { diff --git a/src/plugins/data/public/query/filter_manager/lib/map_filter.test.ts b/src/plugins/data/public/query/filter_manager/lib/map_filter.test.ts index 35d2f2b7b294e..7b303ca4d5314 100644 --- a/src/plugins/data/public/query/filter_manager/lib/map_filter.test.ts +++ b/src/plugins/data/public/query/filter_manager/lib/map_filter.test.ts @@ -22,7 +22,9 @@ import { Filter } from '../../../../common'; describe('filter manager utilities', () => { function getDisplayName(filter: Filter) { - return typeof filter.meta.value === 'function' ? filter.meta.value() : filter.meta.value; + return typeof filter.meta.value === 'function' + ? (filter.meta.value as any)() + : filter.meta.value; } describe('mapFilter()', () => { diff --git a/src/plugins/data/server/server.api.md b/src/plugins/data/server/server.api.md index 14f176176f647..c48aa8397dc83 100644 --- a/src/plugins/data/server/server.api.md +++ b/src/plugins/data/server/server.api.md @@ -440,18 +440,11 @@ export type FieldFormatsGetConfigFn = GetConfigFn; // Warning: (ae-missing-release-tag) "Filter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export interface Filter { - // Warning: (ae-forgotten-export) The symbol "FilterState" needs to be exported by the entry point index.d.ts - // - // (undocumented) +export type Filter = { $state?: FilterState; - // Warning: (ae-forgotten-export) The symbol "FilterMeta" needs to be exported by the entry point index.d.ts - // - // (undocumented) meta: FilterMeta; - // (undocumented) query?: any; -} +}; // Warning: (ae-forgotten-export) The symbol "IUiSettingsClient" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "getDefaultSearchParams" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -941,14 +934,12 @@ export interface PluginStart { // Warning: (ae-missing-release-tag) "Query" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export interface Query { - // (undocumented) - language: string; - // (undocumented) +export type Query = { query: string | { [key: string]: any; }; -} + language: string; +}; // Warning: (ae-missing-release-tag) "RefreshInterval" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -1063,14 +1054,11 @@ export interface TabbedTable { // Warning: (ae-missing-release-tag) "TimeRange" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export interface TimeRange { - // (undocumented) +export type TimeRange = { from: string; - // (undocumented) - mode?: 'absolute' | 'relative'; - // (undocumented) to: string; -} + mode?: 'absolute' | 'relative'; +}; // Warning: (ae-missing-release-tag) "toSnakeCase" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -1120,6 +1108,8 @@ export function usageProvider(core: CoreSetup_2): SearchUsage; // Warnings were encountered during analysis: // +// src/plugins/data/common/es_query/filters/meta_filter.ts:53:3 - (ae-forgotten-export) The symbol "FilterState" needs to be exported by the entry point index.d.ts +// src/plugins/data/common/es_query/filters/meta_filter.ts:54:3 - (ae-forgotten-export) The symbol "FilterMeta" needs to be exported by the entry point index.d.ts // src/plugins/data/common/index_patterns/fields/types.ts:41:25 - (ae-forgotten-export) The symbol "IndexPattern" needs to be exported by the entry point index.d.ts // src/plugins/data/server/index.ts:40:23 - (ae-forgotten-export) The symbol "buildCustomFilter" needs to be exported by the entry point index.d.ts // src/plugins/data/server/index.ts:40:23 - (ae-forgotten-export) The symbol "buildFilter" needs to be exported by the entry point index.d.ts diff --git a/src/plugins/embeddable/.eslintrc.json b/src/plugins/embeddable/.eslintrc.json new file mode 100644 index 0000000000000..2aab6c2d9093b --- /dev/null +++ b/src/plugins/embeddable/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "rules": { + "@typescript-eslint/consistent-type-definitions": 0 + } +} diff --git a/src/plugins/embeddable/common/lib/migrate_base_input.ts b/src/plugins/embeddable/common/lib/migrate_base_input.ts new file mode 100644 index 0000000000000..0d5dc508e20ad --- /dev/null +++ b/src/plugins/embeddable/common/lib/migrate_base_input.ts @@ -0,0 +1,39 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { SavedObjectReference } from '../../../../core/types'; +import { EmbeddableInput } from '../types'; + +export const telemetryBaseEmbeddableInput = ( + state: EmbeddableInput, + telemetryData: Record +) => { + return telemetryData; +}; + +export const extractBaseEmbeddableInput = (state: EmbeddableInput) => { + return { state, references: [] as SavedObjectReference[] }; +}; + +export const injectBaseEmbeddableInput = ( + state: EmbeddableInput, + references: SavedObjectReference[] +) => { + return state; +}; diff --git a/src/plugins/embeddable/common/types.ts b/src/plugins/embeddable/common/types.ts new file mode 100644 index 0000000000000..68b842c934de8 --- /dev/null +++ b/src/plugins/embeddable/common/types.ts @@ -0,0 +1,70 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { SerializableState } from '../../kibana_utils/common'; +import { Query, TimeRange } from '../../data/common/query'; +import { Filter } from '../../data/common/es_query/filters'; + +export enum ViewMode { + EDIT = 'edit', + VIEW = 'view', +} + +export type EmbeddableInput = { + viewMode?: ViewMode; + title?: string; + /** + * Note this is not a saved object id. It is used to uniquely identify this + * Embeddable instance from others (e.g. inside a container). It's possible to + * have two Embeddables where everything else is the same but the id. + */ + id: string; + lastReloadRequestTime?: number; + hidePanelTitles?: boolean; + + /** + * Reserved key for enhancements added by other plugins. + */ + enhancements?: SerializableState; + + /** + * List of action IDs that this embeddable should not render. + */ + disabledActions?: string[]; + + /** + * Whether this embeddable should not execute triggers. + */ + disableTriggers?: boolean; + + /** + * Time range of the chart. + */ + timeRange?: TimeRange; + + /** + * Visualization query string used to narrow down results. + */ + query?: Query; + + /** + * Visualization filters used to narrow down results. + */ + filters?: Filter[]; +}; diff --git a/src/plugins/embeddable/kibana.json b/src/plugins/embeddable/kibana.json index 6a8e6079232aa..1ecf76dbbd5c2 100644 --- a/src/plugins/embeddable/kibana.json +++ b/src/plugins/embeddable/kibana.json @@ -1,7 +1,7 @@ { "id": "embeddable", "version": "kibana", - "server": false, + "server": true, "ui": true, "requiredPlugins": [ "inspector", diff --git a/src/plugins/embeddable/public/index.ts b/src/plugins/embeddable/public/index.ts index 57253c1f741ab..c5d8853ada5e8 100644 --- a/src/plugins/embeddable/public/index.ts +++ b/src/plugins/embeddable/public/index.ts @@ -78,6 +78,8 @@ export { EmbeddableRendererProps, } from './lib'; +export { EnhancementRegistryDefinition } from './types'; + export function plugin(initializerContext: PluginInitializerContext) { return new EmbeddablePublicPlugin(initializerContext); } diff --git a/src/plugins/embeddable/public/lib/embeddables/default_embeddable_factory_provider.ts b/src/plugins/embeddable/public/lib/embeddables/default_embeddable_factory_provider.ts index b22f16c94aff8..e2047dca1f770 100644 --- a/src/plugins/embeddable/public/lib/embeddables/default_embeddable_factory_provider.ts +++ b/src/plugins/embeddable/public/lib/embeddables/default_embeddable_factory_provider.ts @@ -16,6 +16,7 @@ * specific language governing permissions and limitations * under the License. */ + import { SavedObjectAttributes } from 'kibana/public'; import { EmbeddableFactoryDefinition } from './embeddable_factory_definition'; import { EmbeddableInput, EmbeddableOutput, IEmbeddable } from './i_embeddable'; @@ -47,6 +48,9 @@ export const defaultEmbeddableFactoryProvider = < isEditable: def.isEditable.bind(def), getDisplayName: def.getDisplayName.bind(def), savedObjectMetaData: def.savedObjectMetaData, + telemetry: def.telemetry || (() => ({})), + inject: def.inject || ((state: EmbeddableInput) => state), + extract: def.extract || ((state: EmbeddableInput) => ({ state, references: [] })), }; return factory; }; diff --git a/src/plugins/embeddable/public/lib/embeddables/embeddable.tsx b/src/plugins/embeddable/public/lib/embeddables/embeddable.tsx index ffe8a5bf6e7dc..9267d600360cf 100644 --- a/src/plugins/embeddable/public/lib/embeddables/embeddable.tsx +++ b/src/plugins/embeddable/public/lib/embeddables/embeddable.tsx @@ -21,10 +21,11 @@ import { cloneDeep, isEqual } from 'lodash'; import * as Rx from 'rxjs'; import { distinctUntilChanged, map } from 'rxjs/operators'; import { RenderCompleteDispatcher } from '../../../../kibana_utils/public'; -import { Adapters, ViewMode } from '../types'; +import { Adapters } from '../types'; import { IContainer } from '../containers'; -import { EmbeddableInput, EmbeddableOutput, IEmbeddable } from './i_embeddable'; +import { EmbeddableOutput, IEmbeddable } from './i_embeddable'; import { TriggerContextMapping } from '../ui_actions'; +import { EmbeddableInput, ViewMode } from '../../../common/types'; function getPanelTitle(input: EmbeddableInput, output: EmbeddableOutput) { return input.hidePanelTitles ? '' : input.title === undefined ? output.defaultTitle : input.title; diff --git a/src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts b/src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts index 7949b6fb8ba27..a6fa46fbc4e3e 100644 --- a/src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts +++ b/src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts @@ -23,6 +23,7 @@ import { EmbeddableInput, EmbeddableOutput, IEmbeddable } from './i_embeddable'; import { ErrorEmbeddable } from './error_embeddable'; import { IContainer } from '../containers/i_container'; import { PropertySpec } from '../types'; +import { PersistableState } from '../../../../kibana_utils/common'; export interface EmbeddableInstanceConfiguration { id: string; @@ -44,7 +45,7 @@ export interface EmbeddableFactory< TEmbeddableOutput >, TSavedObjectAttributes extends SavedObjectAttributes = SavedObjectAttributes -> { +> extends PersistableState { // A unique identified for this factory, which will be used to map an embeddable spec to // a factory that can generate an instance of it. readonly type: string; diff --git a/src/plugins/embeddable/public/lib/embeddables/embeddable_factory_definition.ts b/src/plugins/embeddable/public/lib/embeddables/embeddable_factory_definition.ts index b8985f7311ea9..224a11a201b88 100644 --- a/src/plugins/embeddable/public/lib/embeddables/embeddable_factory_definition.ts +++ b/src/plugins/embeddable/public/lib/embeddables/embeddable_factory_definition.ts @@ -40,5 +40,8 @@ export type EmbeddableFactoryDefinition< | 'savedObjectMetaData' | 'canCreateNew' | 'getDefaultInput' + | 'telemetry' + | 'extract' + | 'inject' > >; diff --git a/src/plugins/embeddable/public/lib/embeddables/i_embeddable.ts b/src/plugins/embeddable/public/lib/embeddables/i_embeddable.ts index e8aecdba0abc4..3843950c164c9 100644 --- a/src/plugins/embeddable/public/lib/embeddables/i_embeddable.ts +++ b/src/plugins/embeddable/public/lib/embeddables/i_embeddable.ts @@ -20,57 +20,15 @@ import { Observable } from 'rxjs'; import { Adapters } from '../types'; import { IContainer } from '../containers/i_container'; -import { ViewMode } from '../types'; import { TriggerContextMapping } from '../../../../ui_actions/public'; -import type { TimeRange, Query, Filter } from '../../../../data/common'; +import { EmbeddableInput } from '../../../common/types'; export interface EmbeddableError { name: string; message: string; } -export interface EmbeddableInput { - viewMode?: ViewMode; - title?: string; - /** - * Note this is not a saved object id. It is used to uniquely identify this - * Embeddable instance from others (e.g. inside a container). It's possible to - * have two Embeddables where everything else is the same but the id. - */ - id: string; - lastReloadRequestTime?: number; - hidePanelTitles?: boolean; - - /** - * Reserved key for enhancements added by other plugins. - */ - enhancements?: unknown; - - /** - * List of action IDs that this embeddable should not render. - */ - disabledActions?: string[]; - - /** - * Whether this embeddable should not execute triggers. - */ - disableTriggers?: boolean; - - /** - * Time range of the chart. - */ - timeRange?: TimeRange; - - /** - * Visualization query string used to narrow down results. - */ - query?: Query; - - /** - * Visualization filters used to narrow down results. - */ - filters?: Filter[]; -} +export { EmbeddableInput }; export interface EmbeddableOutput { // Whether the embeddable is actively loading. diff --git a/src/plugins/embeddable/public/lib/test_samples/embeddables/filterable_container.tsx b/src/plugins/embeddable/public/lib/test_samples/embeddables/filterable_container.tsx index ceaa74218904d..db71b94ac855f 100644 --- a/src/plugins/embeddable/public/lib/test_samples/embeddables/filterable_container.tsx +++ b/src/plugins/embeddable/public/lib/test_samples/embeddables/filterable_container.tsx @@ -32,7 +32,6 @@ export interface FilterableContainerInput extends ContainerInput { * https://github.com/microsoft/TypeScript/issues/15300 is fixed so we use a type * here instead */ -// eslint-disable-next-line @typescript-eslint/consistent-type-definitions export type InheritedChildrenInput = { filters: Filter[]; id?: string; diff --git a/src/plugins/embeddable/public/lib/test_samples/embeddables/hello_world_container.tsx b/src/plugins/embeddable/public/lib/test_samples/embeddables/hello_world_container.tsx index 913c3a0b30826..d47979b9419f3 100644 --- a/src/plugins/embeddable/public/lib/test_samples/embeddables/hello_world_container.tsx +++ b/src/plugins/embeddable/public/lib/test_samples/embeddables/hello_world_container.tsx @@ -30,7 +30,6 @@ export const HELLO_WORLD_CONTAINER = 'HELLO_WORLD_CONTAINER'; * https://github.com/microsoft/TypeScript/issues/15300 is fixed so we use a type * here instead */ -// eslint-disable-next-line @typescript-eslint/consistent-type-definitions type InheritedInput = { id: string; viewMode: ViewMode; diff --git a/src/plugins/embeddable/public/lib/types.ts b/src/plugins/embeddable/public/lib/types.ts index 1cfff7baca186..7fe189dea2381 100644 --- a/src/plugins/embeddable/public/lib/types.ts +++ b/src/plugins/embeddable/public/lib/types.ts @@ -32,10 +32,5 @@ export interface PropertySpec { description: string; value?: string; } - -export enum ViewMode { - EDIT = 'edit', - VIEW = 'view', -} - +export { ViewMode } from '../../common/types'; export { Adapters }; diff --git a/src/plugins/embeddable/public/mocks.tsx b/src/plugins/embeddable/public/mocks.tsx index 2064236e9ae7f..26c10121adb3d 100644 --- a/src/plugins/embeddable/public/mocks.tsx +++ b/src/plugins/embeddable/public/mocks.tsx @@ -109,6 +109,7 @@ export const mockRefOrValEmbeddable = < const createSetupContract = (): Setup => { const setupContract: Setup = { registerEmbeddableFactory: jest.fn(), + registerEnhancement: jest.fn(), setCustomEmbeddableFactoryProvider: jest.fn(), }; return setupContract; @@ -118,6 +119,9 @@ const createStartContract = (): Start => { const startContract: Start = { getEmbeddableFactories: jest.fn(), getEmbeddableFactory: jest.fn(), + telemetry: jest.fn(), + extract: jest.fn(), + inject: jest.fn(), EmbeddablePanel: jest.fn(), getEmbeddablePanel: jest.fn(), getStateTransfer: jest.fn(() => createEmbeddableStateTransferMock() as EmbeddableStateTransfer), diff --git a/src/plugins/embeddable/public/plugin.test.ts b/src/plugins/embeddable/public/plugin.test.ts index e37d602ad8cac..5fd3bcdd61318 100644 --- a/src/plugins/embeddable/public/plugin.test.ts +++ b/src/plugins/embeddable/public/plugin.test.ts @@ -22,21 +22,6 @@ import { EmbeddableFactoryProvider } from './types'; import { defaultEmbeddableFactoryProvider } from './lib'; import { HelloWorldEmbeddable } from '../../../../examples/embeddable_examples/public'; -test('cannot register embeddable factory with the same ID', async () => { - const coreSetup = coreMock.createSetup(); - const coreStart = coreMock.createStart(); - const { setup } = testPlugin(coreSetup, coreStart); - const embeddableFactoryId = 'ID'; - const embeddableFactory = {} as any; - - setup.registerEmbeddableFactory(embeddableFactoryId, embeddableFactory); - expect(() => - setup.registerEmbeddableFactory(embeddableFactoryId, embeddableFactory) - ).toThrowError( - 'Embeddable factory [embeddableFactoryId = ID] already registered in Embeddables API.' - ); -}); - test('can set custom embeddable factory provider', async () => { const coreSetup = coreMock.createSetup(); const coreStart = coreMock.createStart(); @@ -108,3 +93,90 @@ test('custom embeddable factory provider test for intercepting embeddable creati await new Promise((resolve) => process.nextTick(resolve)); expect(updateCount).toEqual(0); }); + +describe('embeddable factory', () => { + const coreSetup = coreMock.createSetup(); + const coreStart = coreMock.createStart(); + const { setup, doStart } = testPlugin(coreSetup, coreStart); + const start = doStart(); + const embeddableFactoryId = 'ID'; + const embeddableFactory = { + type: embeddableFactoryId, + create: jest.fn(), + getDisplayName: () => 'Test', + isEditable: () => Promise.resolve(true), + extract: jest.fn().mockImplementation((state) => ({ state, references: [] })), + inject: jest.fn().mockImplementation((state) => state), + telemetry: jest.fn().mockResolvedValue({}), + } as any; + const embeddableState = { + id: embeddableFactoryId, + my: 'state', + } as any; + + test('cannot register embeddable factory with the same ID', async () => { + setup.registerEmbeddableFactory(embeddableFactoryId, embeddableFactory); + expect(() => + setup.registerEmbeddableFactory(embeddableFactoryId, embeddableFactory) + ).toThrowError( + 'Embeddable factory [embeddableFactoryId = ID] already registered in Embeddables API.' + ); + }); + + test('embeddableFactory extract function gets called when calling embeddable extract', () => { + start.extract(embeddableState); + expect(embeddableFactory.extract).toBeCalledWith(embeddableState); + }); + + test('embeddableFactory inject function gets called when calling embeddable inject', () => { + start.inject(embeddableState, []); + expect(embeddableFactory.extract).toBeCalledWith(embeddableState); + }); + + test('embeddableFactory telemetry function gets called when calling embeddable telemetry', () => { + start.telemetry(embeddableState, {}); + expect(embeddableFactory.telemetry).toBeCalledWith(embeddableState, {}); + }); +}); + +describe('embeddable enhancements', () => { + const coreSetup = coreMock.createSetup(); + const coreStart = coreMock.createStart(); + const { setup, doStart } = testPlugin(coreSetup, coreStart); + const start = doStart(); + const embeddableEnhancement = { + id: 'test', + extract: jest.fn().mockImplementation((state) => ({ state, references: [] })), + inject: jest.fn().mockImplementation((state) => state), + telemetry: jest.fn().mockResolvedValue({}), + } as any; + const embeddableState = { + enhancements: { + test: { + my: 'state', + }, + }, + } as any; + + test('cannot register embeddable enhancement with the same ID', async () => { + setup.registerEnhancement(embeddableEnhancement); + expect(() => setup.registerEnhancement(embeddableEnhancement)).toThrowError( + 'enhancement with id test already exists in the registry' + ); + }); + + test('enhancement extract function gets called when calling embeddable extract', () => { + start.extract(embeddableState); + expect(embeddableEnhancement.extract).toBeCalledWith(embeddableState.enhancements.test); + }); + + test('enhancement inject function gets called when calling embeddable inject', () => { + start.inject(embeddableState, []); + expect(embeddableEnhancement.extract).toBeCalledWith(embeddableState.enhancements.test); + }); + + test('enhancement telemetry function gets called when calling embeddable telemetry', () => { + start.telemetry(embeddableState, {}); + expect(embeddableEnhancement.telemetry).toBeCalledWith(embeddableState.enhancements.test, {}); + }); +}); diff --git a/src/plugins/embeddable/public/plugin.tsx b/src/plugins/embeddable/public/plugin.tsx index 2ca31994b722d..00eb923c26662 100644 --- a/src/plugins/embeddable/public/plugin.tsx +++ b/src/plugins/embeddable/public/plugin.tsx @@ -18,6 +18,7 @@ */ import React from 'react'; import { Subscription } from 'rxjs'; +import { identity } from 'lodash'; import { DataPublicPluginSetup, DataPublicPluginStart } from '../../data/public'; import { getSavedObjectFinder } from '../../saved_objects/public'; import { UiActionsSetup, UiActionsStart } from '../../ui_actions/public'; @@ -29,8 +30,15 @@ import { Plugin, ScopedHistory, PublicAppInfo, + SavedObjectReference, } from '../../../core/public'; -import { EmbeddableFactoryRegistry, EmbeddableFactoryProvider } from './types'; +import { + EmbeddableFactoryRegistry, + EmbeddableFactoryProvider, + EnhancementsRegistry, + EnhancementRegistryDefinition, + EnhancementRegistryItem, +} from './types'; import { bootstrap } from './bootstrap'; import { EmbeddableFactory, @@ -42,6 +50,12 @@ import { } from './lib'; import { EmbeddableFactoryDefinition } from './lib/embeddables/embeddable_factory_definition'; import { EmbeddableStateTransfer } from './lib/state_transfer'; +import { + extractBaseEmbeddableInput, + injectBaseEmbeddableInput, + telemetryBaseEmbeddableInput, +} from '../common/lib/migrate_base_input'; +import { PersistableState, SerializableState } from '../../kibana_utils/common'; export interface EmbeddableSetupDependencies { data: DataPublicPluginSetup; @@ -63,10 +77,11 @@ export interface EmbeddableSetup { id: string, factory: EmbeddableFactoryDefinition ) => () => EmbeddableFactory; + registerEnhancement: (enhancement: EnhancementRegistryDefinition) => void; setCustomEmbeddableFactoryProvider: (customProvider: EmbeddableFactoryProvider) => void; } -export interface EmbeddableStart { +export interface EmbeddableStart extends PersistableState { getEmbeddableFactory: < I extends EmbeddableInput = EmbeddableInput, O extends EmbeddableOutput = EmbeddableOutput, @@ -88,6 +103,7 @@ export class EmbeddablePublicPlugin implements Plugin = new Map(); private readonly embeddableFactories: EmbeddableFactoryRegistry = new Map(); + private readonly enhancements: EnhancementsRegistry = new Map(); private customEmbeddableFactoryProvider?: EmbeddableFactoryProvider; private outgoingOnlyStateTransfer: EmbeddableStateTransfer = {} as EmbeddableStateTransfer; private isRegistryReady = false; @@ -101,6 +117,7 @@ export class EmbeddablePublicPlugin implements Plugin { if (this.customEmbeddableFactoryProvider) { throw new Error( @@ -168,6 +185,9 @@ export class EmbeddablePublicPlugin implements Plugin = {}) => { + const enhancements: Record = state.enhancements || {}; + const factory = this.getEmbeddableFactory(state.id); + + let telemetry = telemetryBaseEmbeddableInput(state, telemetryData); + if (factory) { + telemetry = factory.telemetry(state, telemetry); + } + Object.keys(enhancements).map((key) => { + if (!enhancements[key]) return; + telemetry = this.getEnhancement(key).telemetry(enhancements[key], telemetry); + }); + + return telemetry; + }; + + private extract = (state: EmbeddableInput) => { + const enhancements = state.enhancements || {}; + const factory = this.getEmbeddableFactory(state.id); + + const baseResponse = extractBaseEmbeddableInput(state); + let updatedInput = baseResponse.state; + const refs = baseResponse.references; + + if (factory) { + const factoryResponse = factory.extract(state); + updatedInput = factoryResponse.state; + refs.push(...factoryResponse.references); + } + + updatedInput.enhancements = {}; + Object.keys(enhancements).forEach((key) => { + if (!enhancements[key]) return; + const enhancementResult = this.getEnhancement(key).extract( + enhancements[key] as SerializableState + ); + refs.push(...enhancementResult.references); + updatedInput.enhancements![key] = enhancementResult.state; + }); + + return { + state: updatedInput, + references: refs, + }; + }; + + private inject = (state: EmbeddableInput, references: SavedObjectReference[]) => { + const enhancements = state.enhancements || {}; + const factory = this.getEmbeddableFactory(state.id); + + let updatedInput = injectBaseEmbeddableInput(state, references); + + if (factory) { + updatedInput = factory.inject(updatedInput, references); + } + + updatedInput.enhancements = {}; + Object.keys(enhancements).forEach((key) => { + if (!enhancements[key]) return; + updatedInput.enhancements![key] = this.getEnhancement(key).inject( + enhancements[key] as SerializableState, + references + ); + }); + + return updatedInput; + }; + + private registerEnhancement = (enhancement: EnhancementRegistryDefinition) => { + if (this.enhancements.has(enhancement.id)) { + throw new Error(`enhancement with id ${enhancement.id} already exists in the registry`); + } + this.enhancements.set(enhancement.id, { + id: enhancement.id, + telemetry: enhancement.telemetry || (() => ({})), + inject: enhancement.inject || identity, + extract: + enhancement.extract || + ((state: SerializableState) => { + return { state, references: [] }; + }), + }); + }; + + private getEnhancement = (id: string): EnhancementRegistryItem => { + return ( + this.enhancements.get(id) || { + id: 'unknown', + telemetry: () => ({}), + inject: identity, + extract: (state: SerializableState) => { + return { state, references: [] }; + }, + } + ); + }; + private getEmbeddableFactories = () => { this.ensureFactoriesExist(); return this.embeddableFactories.values(); @@ -215,12 +332,6 @@ export class EmbeddablePublicPlugin implements Plugin; }; diff --git a/src/plugins/embeddable/public/types.ts b/src/plugins/embeddable/public/types.ts index 2d112b2359818..c5148bbaefb6b 100644 --- a/src/plugins/embeddable/public/types.ts +++ b/src/plugins/embeddable/public/types.ts @@ -25,8 +25,24 @@ import { IEmbeddable, EmbeddableFactoryDefinition, } from './lib/embeddables'; +import { + PersistableState, + PersistableStateDefinition, + SerializableState, +} from '../../kibana_utils/common'; export type EmbeddableFactoryRegistry = Map; +export type EnhancementsRegistry = Map; + +export interface EnhancementRegistryDefinition

+ extends PersistableStateDefinition

{ + id: string; +} + +export interface EnhancementRegistryItem

+ extends PersistableState

{ + id: string; +} export type EmbeddableFactoryProvider = < I extends EmbeddableInput = EmbeddableInput, diff --git a/src/plugins/embeddable/server/index.ts b/src/plugins/embeddable/server/index.ts new file mode 100644 index 0000000000000..1138478bff4b7 --- /dev/null +++ b/src/plugins/embeddable/server/index.ts @@ -0,0 +1,26 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { EmbeddableServerPlugin, EmbeddableSetup } from './plugin'; + +export { EmbeddableSetup }; + +export { EnhancementRegistryDefinition, EmbeddableRegistryDefinition } from './types'; + +export const plugin = () => new EmbeddableServerPlugin(); diff --git a/src/plugins/embeddable/server/plugin.ts b/src/plugins/embeddable/server/plugin.ts new file mode 100644 index 0000000000000..f79c4b7620110 --- /dev/null +++ b/src/plugins/embeddable/server/plugin.ts @@ -0,0 +1,186 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { CoreSetup, CoreStart, Plugin, SavedObjectReference } from 'kibana/server'; +import { identity } from 'lodash'; +import { + EmbeddableFactoryRegistry, + EnhancementsRegistry, + EnhancementRegistryDefinition, + EnhancementRegistryItem, + EmbeddableRegistryDefinition, +} from './types'; +import { + extractBaseEmbeddableInput, + injectBaseEmbeddableInput, + telemetryBaseEmbeddableInput, +} from '../common/lib/migrate_base_input'; +import { SerializableState } from '../../kibana_utils/common'; +import { EmbeddableInput } from '../common/types'; + +export interface EmbeddableSetup { + registerEmbeddableFactory: (factory: EmbeddableRegistryDefinition) => void; + registerEnhancement: (enhancement: EnhancementRegistryDefinition) => void; +} + +export class EmbeddableServerPlugin implements Plugin { + private readonly embeddableFactories: EmbeddableFactoryRegistry = new Map(); + private readonly enhancements: EnhancementsRegistry = new Map(); + + public setup(core: CoreSetup) { + return { + registerEmbeddableFactory: this.registerEmbeddableFactory, + registerEnhancement: this.registerEnhancement, + }; + } + + public start(core: CoreStart) { + return { + telemetry: this.telemetry, + extract: this.extract, + inject: this.inject, + }; + } + + public stop() {} + + private telemetry = (state: EmbeddableInput, telemetryData: Record = {}) => { + const enhancements: Record = state.enhancements || {}; + const factory = this.getEmbeddableFactory(state.id); + + let telemetry = telemetryBaseEmbeddableInput(state, telemetryData); + if (factory) { + telemetry = factory.telemetry(state, telemetry); + } + Object.keys(enhancements).map((key) => { + if (!enhancements[key]) return; + telemetry = this.getEnhancement(key).telemetry(enhancements[key], telemetry); + }); + + return telemetry; + }; + + private extract = (state: EmbeddableInput) => { + const enhancements = state.enhancements || {}; + const factory = this.getEmbeddableFactory(state.id); + + const baseResponse = extractBaseEmbeddableInput(state); + let updatedInput = baseResponse.state; + const refs = baseResponse.references; + + if (factory) { + const factoryResponse = factory.extract(state); + updatedInput = factoryResponse.state; + refs.push(...factoryResponse.references); + } + + updatedInput.enhancements = {}; + Object.keys(enhancements).forEach((key) => { + if (!enhancements[key]) return; + const enhancementResult = this.getEnhancement(key).extract( + enhancements[key] as SerializableState + ); + refs.push(...enhancementResult.references); + updatedInput.enhancements![key] = enhancementResult.state; + }); + + return { + state: updatedInput, + references: refs, + }; + }; + + private inject = (state: EmbeddableInput, references: SavedObjectReference[]) => { + const enhancements = state.enhancements || {}; + const factory = this.getEmbeddableFactory(state.id); + + let updatedInput = injectBaseEmbeddableInput(state, references); + + if (factory) { + updatedInput = factory.inject(updatedInput, references); + } + + updatedInput.enhancements = {}; + Object.keys(enhancements).forEach((key) => { + if (!enhancements[key]) return; + updatedInput.enhancements![key] = this.getEnhancement(key).inject( + enhancements[key] as SerializableState, + references + ); + }); + + return updatedInput; + }; + + private registerEnhancement = (enhancement: EnhancementRegistryDefinition) => { + if (this.enhancements.has(enhancement.id)) { + throw new Error(`enhancement with id ${enhancement.id} already exists in the registry`); + } + this.enhancements.set(enhancement.id, { + id: enhancement.id, + telemetry: enhancement.telemetry || (() => ({})), + inject: enhancement.inject || identity, + extract: + enhancement.extract || + ((state: SerializableState) => { + return { state, references: [] }; + }), + }); + }; + + private getEnhancement = (id: string): EnhancementRegistryItem => { + return ( + this.enhancements.get(id) || { + id: 'unknown', + telemetry: () => ({}), + inject: identity, + extract: (state: SerializableState) => { + return { state, references: [] }; + }, + } + ); + }; + + private registerEmbeddableFactory = (factory: EmbeddableRegistryDefinition) => { + if (this.embeddableFactories.has(factory.id)) { + throw new Error( + `Embeddable factory [embeddableFactoryId = ${factory.id}] already registered in Embeddables API.` + ); + } + this.embeddableFactories.set(factory.id, { + id: factory.id, + telemetry: factory.telemetry || (() => ({})), + inject: factory.inject || identity, + extract: factory.extract || ((state: EmbeddableInput) => ({ state, references: [] })), + }); + }; + + private getEmbeddableFactory = (embeddableFactoryId: string) => { + return ( + this.embeddableFactories.get(embeddableFactoryId) || { + id: 'unknown', + telemetry: () => ({}), + inject: (state: EmbeddableInput) => state, + extract: (state: EmbeddableInput) => { + return { state, references: [] }; + }, + } + ); + }; +} diff --git a/src/plugins/embeddable/server/types.ts b/src/plugins/embeddable/server/types.ts new file mode 100644 index 0000000000000..64f9325dad3cb --- /dev/null +++ b/src/plugins/embeddable/server/types.ts @@ -0,0 +1,48 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { + PersistableState, + PersistableStateDefinition, + SerializableState, +} from '../../kibana_utils/common'; +import { EmbeddableInput } from '../common/types'; + +export type EmbeddableFactoryRegistry = Map; +export type EnhancementsRegistry = Map; + +export interface EnhancementRegistryDefinition

+ extends PersistableStateDefinition

{ + id: string; +} + +export interface EnhancementRegistryItem

+ extends PersistableState

{ + id: string; +} + +export interface EmbeddableRegistryDefinition

+ extends PersistableStateDefinition

{ + id: string; +} + +export interface EmbeddableRegistryItem

+ extends PersistableState

{ + id: string; +} diff --git a/src/plugins/kibana_utils/common/index.ts b/src/plugins/kibana_utils/common/index.ts index 1ec5737c5a38b..e09290c811c7b 100644 --- a/src/plugins/kibana_utils/common/index.ts +++ b/src/plugins/kibana_utils/common/index.ts @@ -29,3 +29,4 @@ export { distinctUntilChangedWithInitialValue } from './distinct_until_changed_w export { url } from './url'; export { now } from './now'; export { calculateObjectHash } from './calculate_object_hash'; +export * from './persistable_state'; diff --git a/src/plugins/kibana_utils/common/persistable_state/index.ts b/src/plugins/kibana_utils/common/persistable_state/index.ts new file mode 100644 index 0000000000000..ae5e3d514554c --- /dev/null +++ b/src/plugins/kibana_utils/common/persistable_state/index.ts @@ -0,0 +1,54 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { SavedObjectReference } from '../../../../core/types'; + +export type SerializableValue = string | number | boolean | null | undefined | SerializableState; +export type Serializable = SerializableValue | SerializableValue[]; + +// eslint-disable-next-line +export type SerializableState = { + [key: string]: Serializable; +}; + +export interface PersistableState

{ + /** + * function to extract telemetry information + * @param state + * @param collector + */ + telemetry: (state: P, collector: Record) => Record; + /** + * inject function receives state and a list of references and should return state with references injected + * default is identity function + * @param state + * @param references + */ + inject: (state: P, references: SavedObjectReference[]) => P; + /** + * extract function receives state and should return state with references extracted and array of references + * default returns same state with empty reference array + * @param state + */ + extract: (state: P) => { state: P; references: SavedObjectReference[] }; +} + +export type PersistableStateDefinition

= Partial< + PersistableState

+>; diff --git a/src/plugins/kibana_utils/public/ui/configurable.ts b/src/plugins/kibana_utils/public/ui/configurable.ts index 3fa5cdc8b5e47..89bce5ae423ee 100644 --- a/src/plugins/kibana_utils/public/ui/configurable.ts +++ b/src/plugins/kibana_utils/public/ui/configurable.ts @@ -18,11 +18,15 @@ */ import { UiComponent } from '../../common/ui/ui_component'; +import { SerializableState } from '../../common'; /** * Represents something that can be configured by user using UI. */ -export interface Configurable { +export interface Configurable< + Config extends SerializableState = SerializableState, + Context = object +> { /** * Create default config for this item, used when item is created for the first time. */ @@ -42,7 +46,10 @@ export interface Configurable /** * Props provided to `CollectConfig` component on every re-render. */ -export interface CollectConfigProps { +export interface CollectConfigProps< + Config extends SerializableState = SerializableState, + Context = object +> { /** * Current (latest) config of the item. */ diff --git a/x-pack/examples/ui_actions_enhanced_examples/.eslintrc.json b/x-pack/examples/ui_actions_enhanced_examples/.eslintrc.json new file mode 100644 index 0000000000000..2aab6c2d9093b --- /dev/null +++ b/x-pack/examples/ui_actions_enhanced_examples/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "rules": { + "@typescript-eslint/consistent-type-definitions": 0 + } +} diff --git a/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_drilldown/index.tsx b/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_drilldown/index.tsx index fd782f5468c85..cac5f0b29dc6e 100644 --- a/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_drilldown/index.tsx +++ b/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_drilldown/index.tsx @@ -17,9 +17,9 @@ import { export type ActionContext = ChartActionContext; -export interface Config { +export type Config = { name: string; -} +}; const SAMPLE_DASHBOARD_HELLO_WORLD_DRILLDOWN = 'SAMPLE_DASHBOARD_HELLO_WORLD_DRILLDOWN'; diff --git a/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_only_range_select_drilldown/index.tsx b/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_only_range_select_drilldown/index.tsx index 7394690a61eae..fa2f0825f9335 100644 --- a/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_only_range_select_drilldown/index.tsx +++ b/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_hello_world_only_range_select_drilldown/index.tsx @@ -13,9 +13,9 @@ import { CollectConfigProps } from '../../../../../src/plugins/kibana_utils/publ import { SELECT_RANGE_TRIGGER } from '../../../../../src/plugins/ui_actions/public'; import { BaseActionFactoryContext } from '../../../../plugins/ui_actions_enhanced/public/dynamic_actions'; -export interface Config { +export type Config = { name: string; -} +}; const SAMPLE_DASHBOARD_HELLO_WORLD_DRILLDOWN_ONLY_RANGE_SELECT = 'SAMPLE_DASHBOARD_HELLO_WORLD_DRILLDOWN_ONLY_RANGE_SELECT'; diff --git a/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_to_discover_drilldown/types.ts b/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_to_discover_drilldown/types.ts index a10e8ad707e97..692de571e8a00 100644 --- a/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_to_discover_drilldown/types.ts +++ b/x-pack/examples/ui_actions_enhanced_examples/public/dashboard_to_discover_drilldown/types.ts @@ -9,7 +9,7 @@ import { ApplyGlobalFilterActionContext } from '../../../../../src/plugins/data/ export type ActionContext = ApplyGlobalFilterActionContext; -export interface Config { +export type Config = { /** * Whether to use a user selected index pattern, stored in `indexPatternId` field. */ @@ -30,6 +30,6 @@ export interface Config { * Whether to carry over source dashboard time range. */ carryTimeRange: boolean; -} +}; export type CollectConfigProps = CollectConfigPropsBase; diff --git a/x-pack/plugins/dashboard_enhanced/public/services/drilldowns/dashboard_to_dashboard_drilldown/types.ts b/x-pack/plugins/dashboard_enhanced/public/services/drilldowns/dashboard_to_dashboard_drilldown/types.ts index c21109f8a596a..330a501a78d39 100644 --- a/x-pack/plugins/dashboard_enhanced/public/services/drilldowns/dashboard_to_dashboard_drilldown/types.ts +++ b/x-pack/plugins/dashboard_enhanced/public/services/drilldowns/dashboard_to_dashboard_drilldown/types.ts @@ -7,10 +7,11 @@ import { UiActionsEnhancedBaseActionFactoryContext } from '../../../../../ui_actions_enhanced/public'; import { APPLY_FILTER_TRIGGER } from '../../../../../../../src/plugins/ui_actions/public'; -export interface Config { +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions +export type Config = { dashboardId?: string; useCurrentFilters: boolean; useCurrentDateRange: boolean; -} +}; export type FactoryContext = UiActionsEnhancedBaseActionFactoryContext; diff --git a/x-pack/plugins/embeddable_enhanced/public/embeddables/embeddable_action_storage.ts b/x-pack/plugins/embeddable_enhanced/public/embeddables/embeddable_action_storage.ts index 8881b2063c8db..e0960b83b23f9 100644 --- a/x-pack/plugins/embeddable_enhanced/public/embeddables/embeddable_action_storage.ts +++ b/x-pack/plugins/embeddable_enhanced/public/embeddables/embeddable_action_storage.ts @@ -5,6 +5,7 @@ */ import { + DynamicActionsState, UiActionsEnhancedAbstractActionStorage as AbstractActionStorage, UiActionsEnhancedSerializedEvent as SerializedEvent, } from '../../../ui_actions_enhanced/public'; @@ -13,12 +14,12 @@ import { EmbeddableOutput, IEmbeddable, } from '../../../../../src/plugins/embeddable/public'; +import { SerializableState } from '../../../../../src/plugins/kibana_utils/common'; export interface EmbeddableWithDynamicActionsInput extends EmbeddableInput { enhancements?: { - dynamicActions?: { - events: SerializedEvent[]; - }; + dynamicActions: DynamicActionsState; + [key: string]: SerializableState; }; } diff --git a/x-pack/plugins/ui_actions_enhanced/.eslintrc.json b/x-pack/plugins/ui_actions_enhanced/.eslintrc.json new file mode 100644 index 0000000000000..2aab6c2d9093b --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "rules": { + "@typescript-eslint/consistent-type-definitions": 0 + } +} diff --git a/x-pack/plugins/ui_actions_enhanced/common/types.ts b/x-pack/plugins/ui_actions_enhanced/common/types.ts new file mode 100644 index 0000000000000..1150f4f823e8e --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/common/types.ts @@ -0,0 +1,28 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { SerializableState } from '../../../../src/plugins/kibana_utils/common'; + +export type BaseActionConfig = SerializableState; + +export type SerializedAction = { + readonly factoryId: string; + readonly name: string; + readonly config: Config; +}; + +/** + * Serialized representation of a triggers-action pair, used to persist in storage. + */ +export type SerializedEvent = { + eventId: string; + triggers: string[]; + action: SerializedAction; +}; + +export type DynamicActionsState = { + events: SerializedEvent[]; +}; diff --git a/x-pack/plugins/ui_actions_enhanced/kibana.json b/x-pack/plugins/ui_actions_enhanced/kibana.json index 108c66505f25c..5435019f216f2 100644 --- a/x-pack/plugins/ui_actions_enhanced/kibana.json +++ b/x-pack/plugins/ui_actions_enhanced/kibana.json @@ -7,7 +7,7 @@ "uiActions", "licensing" ], - "server": false, + "server": true, "ui": true, "requiredBundles": [ "kibanaUtils", diff --git a/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/action_wizard.tsx b/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/action_wizard.tsx index a3f6cac3ba1b4..ca7f6af4f7a37 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/action_wizard.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/action_wizard.tsx @@ -31,7 +31,7 @@ import { txtTriggerPickerHelpTooltip, } from './i18n'; import './action_wizard.scss'; -import { ActionFactory, BaseActionFactoryContext } from '../../dynamic_actions'; +import { ActionFactory, BaseActionConfig, BaseActionFactoryContext } from '../../dynamic_actions'; import { Trigger, TriggerId } from '../../../../../../src/plugins/ui_actions/public'; export interface ActionWizardProps< @@ -57,12 +57,12 @@ export interface ActionWizardProps< /** * current config for currently selected action factory */ - config?: object; + config?: BaseActionConfig; /** * config changed */ - onConfigChange: (config: object) => void; + onConfigChange: (config: BaseActionConfig) => void; /** * Context will be passed into ActionFactory's methods @@ -219,9 +219,9 @@ interface SelectedActionFactoryProps< ActionFactoryContext extends BaseActionFactoryContext = BaseActionFactoryContext > { actionFactory: ActionFactory; - config: object; + config: BaseActionConfig; context: ActionFactoryContext; - onConfigChange: (config: object) => void; + onConfigChange: (config: BaseActionConfig) => void; showDeselect: boolean; onDeselect: () => void; allTriggers: TriggerId[]; diff --git a/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/test_data.tsx b/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/test_data.tsx index 71286e9a59c06..af930bfba6b8b 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/test_data.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/components/action_wizard/test_data.tsx @@ -8,7 +8,7 @@ import React, { useState } from 'react'; import { EuiFieldText, EuiFormRow, EuiSelect, EuiSwitch } from '@elastic/eui'; import { reactToUiComponent } from '../../../../../../src/plugins/kibana_react/public'; import { ActionWizard } from './action_wizard'; -import { ActionFactory, ActionFactoryDefinition } from '../../dynamic_actions'; +import { ActionFactory, ActionFactoryDefinition, BaseActionConfig } from '../../dynamic_actions'; import { CollectConfigProps } from '../../../../../../src/plugins/kibana_utils/public'; import { licensingMock } from '../../../../licensing/public/mocks'; import { @@ -19,18 +19,16 @@ import { VALUE_CLICK_TRIGGER, } from '../../../../../../src/plugins/ui_actions/public'; -type ActionBaseConfig = object; - export const dashboards = [ { id: 'dashboard1', title: 'Dashboard 1' }, { id: 'dashboard2', title: 'Dashboard 2' }, ]; -interface DashboardDrilldownConfig { +type DashboardDrilldownConfig = { dashboardId?: string; useCurrentFilters: boolean; useCurrentDateRange: boolean; -} +}; function DashboardDrilldownCollectConfig(props: CollectConfigProps) { const config = props.config ?? { @@ -121,10 +119,11 @@ export const dashboardFactory = new ActionFactory(dashboardDrilldownActionFactor getFeatureUsageStart: () => licensingMock.createStart().featureUsage, }); -interface UrlDrilldownConfig { +type UrlDrilldownConfig = { url: string; openInNewTab: boolean; -} +}; + function UrlDrilldownCollectConfig(props: CollectConfigProps) { const config = props.config ?? { url: '', @@ -182,6 +181,10 @@ export const urlFactory = new ActionFactory(urlDrilldownActionFactory, { getFeatureUsageStart: () => licensingMock.createStart().featureUsage, }); +export const mockActionFactories: ActionFactory[] = ([dashboardFactory, urlFactory] as Array< + ActionFactory +>) as ActionFactory[]; + export const mockSupportedTriggers: TriggerId[] = [ VALUE_CLICK_TRIGGER, SELECT_RANGE_TRIGGER, @@ -210,7 +213,7 @@ export const mockGetTriggerInfo = (triggerId: TriggerId): Trigger => { export function Demo({ actionFactories }: { actionFactories: Array> }) { const [state, setState] = useState<{ currentActionFactory?: ActionFactory; - config?: ActionBaseConfig; + config?: BaseActionConfig; selectedTriggers?: TriggerId[]; }>({}); diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.story.tsx b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.story.tsx index f7284539ab2fe..daa56354289cf 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.story.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.story.tsx @@ -8,14 +8,13 @@ import * as React from 'react'; import { EuiFlyout } from '@elastic/eui'; import { storiesOf } from '@storybook/react'; import { createFlyoutManageDrilldowns } from './connected_flyout_manage_drilldowns'; -import { dashboardFactory, urlFactory } from '../../../components/action_wizard/test_data'; +import { mockActionFactories } from '../../../components/action_wizard/test_data'; import { Storage } from '../../../../../../../src/plugins/kibana_utils/public'; import { StubBrowserStorage } from '../../../../../../../src/test_utils/public/stub_browser_storage'; import { mockDynamicActionManager } from './test_data'; -import { ActionFactory } from '../../../dynamic_actions'; const FlyoutManageDrilldowns = createFlyoutManageDrilldowns({ - actionFactories: [dashboardFactory as ActionFactory, urlFactory as ActionFactory], + actionFactories: mockActionFactories, storage: new Storage(new StubBrowserStorage()), toastService: { addError: (...args: any[]) => { diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.test.tsx b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.test.tsx index 2412cdd51748c..c4b07fa05c3c1 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.test.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.test.tsx @@ -8,10 +8,9 @@ import React from 'react'; import { cleanup, fireEvent, render, wait } from '@testing-library/react/pure'; import { createFlyoutManageDrilldowns } from './connected_flyout_manage_drilldowns'; import { - dashboardFactory, mockGetTriggerInfo, mockSupportedTriggers, - urlFactory, + mockActionFactories, } from '../../../components/action_wizard/test_data'; import { StubBrowserStorage } from '../../../../../../../src/test_utils/public/stub_browser_storage'; import { Storage } from '../../../../../../../src/plugins/kibana_utils/public'; @@ -21,12 +20,11 @@ import { WELCOME_MESSAGE_TEST_SUBJ } from '../drilldown_hello_bar'; import { coreMock } from '../../../../../../../src/core/public/mocks'; import { NotificationsStart } from 'kibana/public'; import { toastDrilldownsCRUDError } from './i18n'; -import { ActionFactory } from '../../../dynamic_actions'; const storage = new Storage(new StubBrowserStorage()); const toasts = coreMock.createStart().notifications.toasts; const FlyoutManageDrilldowns = createFlyoutManageDrilldowns({ - actionFactories: [dashboardFactory as ActionFactory, urlFactory as ActionFactory], + actionFactories: mockActionFactories, storage: new Storage(new StubBrowserStorage()), toastService: toasts, getTrigger: mockGetTriggerInfo, diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.tsx b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.tsx index 6f9eccde8bdb0..28a0990cf7526 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/connected_flyout_manage_drilldowns.tsx @@ -25,6 +25,7 @@ import { } from './i18n'; import { ActionFactory, + BaseActionConfig, BaseActionFactoryContext, DynamicActionManager, SerializedAction, @@ -127,7 +128,7 @@ export function createFlyoutManageDrilldowns({ return { actionFactory: allActionFactoriesById[drilldownToEdit.action.factoryId], - actionConfig: drilldownToEdit.action.config as object, + actionConfig: drilldownToEdit.action.config as BaseActionConfig, name: drilldownToEdit.action.name, selectedTriggers: (drilldownToEdit.triggers ?? []) as TriggerId[], }; diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/test_data.ts b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/test_data.ts index 58c36e36481b8..78eec05eb2d0b 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/test_data.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/connected_flyout_manage_drilldowns/test_data.ts @@ -60,7 +60,7 @@ class MockDynamicActionManager implements PublicMethodsOf async updateEvent( eventId: string, - action: UiActionsEnhancedSerializedAction, + action: UiActionsEnhancedSerializedAction, triggers: Array ) { const state = this.state.get(); diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/flyout_drilldown_wizard/flyout_drilldown_wizard.story.tsx b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/flyout_drilldown_wizard/flyout_drilldown_wizard.story.tsx index 8f73c2b3b3cc9..2f5f7760d40bd 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/flyout_drilldown_wizard/flyout_drilldown_wizard.story.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/flyout_drilldown_wizard/flyout_drilldown_wizard.story.tsx @@ -8,8 +8,7 @@ import * as React from 'react'; import { EuiFlyout } from '@elastic/eui'; import { storiesOf } from '@storybook/react'; import { FlyoutDrilldownWizard } from './index'; -import { dashboardFactory, urlFactory } from '../../../components/action_wizard/test_data'; -import { ActionFactory } from '../../../dynamic_actions'; +import { mockActionFactories } from '../../../components/action_wizard/test_data'; import { Trigger, TriggerId } from '../../../../../../../src/plugins/ui_actions/public'; const otherProps = { @@ -24,23 +23,12 @@ const otherProps = { storiesOf('components/FlyoutDrilldownWizard', module) .add('default', () => { - return ( - - ); + return ; }) .add('open in flyout - create', () => { return ( {}}> - + ); }) @@ -48,13 +36,10 @@ storiesOf('components/FlyoutDrilldownWizard', module) return ( {}}> {}}> { +export interface DrilldownWizardConfig { name: string; actionFactory?: ActionFactory; actionConfig?: ActionConfig; @@ -28,7 +32,7 @@ export interface DrilldownWizardConfig { } export interface FlyoutDrilldownWizardProps< - CurrentActionConfig extends object = object, + CurrentActionConfig extends BaseActionConfig = BaseActionConfig, ActionFactoryContext extends BaseActionFactoryContext = BaseActionFactoryContext > { drilldownActionFactories: ActionFactory[]; @@ -71,7 +75,7 @@ function useWizardConfigState( DrilldownWizardConfig, { setName: (name: string) => void; - setActionConfig: (actionConfig: object) => void; + setActionConfig: (actionConfig: BaseActionConfig) => void; setActionFactory: (actionFactory?: ActionFactory) => void; setSelectedTriggers: (triggers?: TriggerId[]) => void; } @@ -100,7 +104,7 @@ function useWizardConfigState( name, }); }, - setActionConfig: (actionConfig: object) => { + setActionConfig: (actionConfig: BaseActionConfig) => { setWizardConfig({ ...wizardConfig, actionConfig, @@ -108,12 +112,12 @@ function useWizardConfigState( }, setActionFactory: (actionFactory?: ActionFactory) => { if (actionFactory) { + const actionConfig = (actionConfigCache[actionFactory.id] ?? + actionFactory.createConfig(actionFactoryContext)) as BaseActionConfig; setWizardConfig({ ...wizardConfig, actionFactory, - actionConfig: - actionConfigCache[actionFactory.id] ?? - actionFactory.createConfig(actionFactoryContext), + actionConfig, selectedTriggers: [], }); } else { @@ -141,7 +145,9 @@ function useWizardConfigState( ]; } -export function FlyoutDrilldownWizard({ +export function FlyoutDrilldownWizard< + CurrentActionConfig extends BaseActionConfig = BaseActionConfig +>({ onClose, onBack, onSubmit = () => {}, diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/form_drilldown_wizard/form_drilldown_wizard.tsx b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/form_drilldown_wizard/form_drilldown_wizard.tsx index d7f94a52088b7..45655c2634fe7 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/form_drilldown_wizard/form_drilldown_wizard.tsx +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/components/form_drilldown_wizard/form_drilldown_wizard.tsx @@ -8,7 +8,11 @@ import React from 'react'; import { EuiFieldText, EuiForm, EuiFormRow, EuiLink, EuiSpacer, EuiText } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; import { txtDrilldownAction, txtNameOfDrilldown, txtUntitledDrilldown } from './i18n'; -import { ActionFactory, BaseActionFactoryContext } from '../../../dynamic_actions'; +import { + ActionFactory, + BaseActionConfig, + BaseActionFactoryContext, +} from '../../../dynamic_actions'; import { ActionWizard } from '../../../components/action_wizard'; import { Trigger, TriggerId } from '../../../../../../../src/plugins/ui_actions/public'; @@ -26,8 +30,8 @@ export interface FormDrilldownWizardProps< onActionFactoryChange?: (actionFactory?: ActionFactory) => void; actionFactoryContext: ActionFactoryContext; - actionConfig?: object; - onActionConfigChange?: (config: object) => void; + actionConfig?: BaseActionConfig; + onActionConfigChange?: (config: BaseActionConfig) => void; actionFactories?: ActionFactory[]; diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/drilldown_definition.ts b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/drilldown_definition.ts index f5e565d4090ff..b55b4b87ebccd 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/drilldown_definition.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/drilldown_definition.ts @@ -4,10 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ActionFactoryDefinition, BaseActionFactoryContext } from '../dynamic_actions'; +import { + ActionFactoryDefinition, + BaseActionConfig, + BaseActionFactoryContext, + SerializedEvent, +} from '../dynamic_actions'; import { LicenseType } from '../../../licensing/public'; import { TriggerContextMapping, TriggerId } from '../../../../../src/plugins/ui_actions/public'; import { ActionExecutionContext } from '../../../../../src/plugins/ui_actions/public'; +import { PersistableStateDefinition } from '../../../../../src/plugins/kibana_utils/common'; /** * This is a convenience interface to register a drilldown. Drilldown has @@ -24,13 +30,13 @@ import { ActionExecutionContext } from '../../../../../src/plugins/ui_actions/pu */ export interface DrilldownDefinition< - Config extends object = object, + Config extends BaseActionConfig = BaseActionConfig, SupportedTriggers extends TriggerId = TriggerId, FactoryContext extends BaseActionFactoryContext = { triggers: SupportedTriggers[]; }, ExecutionContext extends TriggerContextMapping[SupportedTriggers] = TriggerContextMapping[SupportedTriggers] -> { +> extends PersistableStateDefinition { /** * Globally unique identifier for this drilldown. */ diff --git a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/url_drilldown/types.ts b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/url_drilldown/types.ts index 31c7481c9d63e..fb7d96aaf8325 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/drilldowns/url_drilldown/types.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/drilldowns/url_drilldown/types.ts @@ -4,10 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -export interface UrlDrilldownConfig { +export type UrlDrilldownConfig = { url: { format?: 'handlebars_v1'; template: string }; openInNewTab: boolean; -} +}; /** * URL drilldown has 3 sources for variables: global, context and event variables diff --git a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory.ts b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory.ts index 3ad6d4ee39749..57c8733ed44fc 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory.ts @@ -12,9 +12,16 @@ import { } from '../../../../../src/plugins/ui_actions/public'; import { ActionFactoryDefinition } from './action_factory_definition'; import { Configurable } from '../../../../../src/plugins/kibana_utils/public'; -import { BaseActionFactoryContext, SerializedAction } from './types'; +import { + BaseActionConfig, + BaseActionFactoryContext, + SerializedAction, + SerializedEvent, +} from './types'; import { ILicense, LicensingPluginStart } from '../../../licensing/public'; import { UiActionsActionDefinition as ActionDefinition } from '../../../../../src/plugins/ui_actions/public'; +import { SavedObjectReference } from '../../../../../src/core/types'; +import { PersistableState } from '../../../../../src/plugins/kibana_utils/common'; export interface ActionFactoryDeps { readonly getLicense: () => ILicense; @@ -22,13 +29,16 @@ export interface ActionFactoryDeps { } export class ActionFactory< - Config extends object = object, + Config extends BaseActionConfig = BaseActionConfig, SupportedTriggers extends TriggerId = TriggerId, FactoryContext extends BaseActionFactoryContext = { triggers: SupportedTriggers[]; }, ActionContext extends TriggerContextMapping[SupportedTriggers] = TriggerContextMapping[SupportedTriggers] -> implements Omit, 'getHref'>, Configurable { +> implements + Omit, 'getHref'>, + Configurable, + PersistableState { constructor( protected readonly def: ActionFactoryDefinition< Config, @@ -121,4 +131,16 @@ export class ActionFactory< ); }); } + + public telemetry(state: SerializedEvent, telemetryData: Record) { + return this.def.telemetry ? this.def.telemetry(state, telemetryData) : {}; + } + + public extract(state: SerializedEvent) { + return this.def.extract ? this.def.extract(state) : { state, references: [] }; + } + + public inject(state: SerializedEvent, references: SavedObjectReference[]) { + return this.def.inject ? this.def.inject(state, references) : state; + } } diff --git a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory_definition.ts b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory_definition.ts index 7ec6b21485747..b4df1f827a2a3 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory_definition.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/action_factory_definition.ts @@ -5,7 +5,12 @@ */ import { Configurable } from '../../../../../src/plugins/kibana_utils/public'; -import { BaseActionFactoryContext, SerializedAction } from './types'; +import { + BaseActionConfig, + BaseActionFactoryContext, + SerializedAction, + SerializedEvent, +} from './types'; import { LicenseType } from '../../../licensing/public'; import { TriggerContextMapping, @@ -13,19 +18,21 @@ import { UiActionsActionDefinition as ActionDefinition, UiActionsPresentable as Presentable, } from '../../../../../src/plugins/ui_actions/public'; +import { PersistableStateDefinition } from '../../../../../src/plugins/kibana_utils/common'; /** * This is a convenience interface for registering new action factories. */ export interface ActionFactoryDefinition< - Config extends object = object, + Config extends BaseActionConfig = BaseActionConfig, SupportedTriggers extends TriggerId = TriggerId, FactoryContext extends BaseActionFactoryContext = { triggers: SupportedTriggers[]; }, ActionContext extends TriggerContextMapping[SupportedTriggers] = TriggerContextMapping[SupportedTriggers] > extends Partial, 'getHref'>>, - Configurable { + Configurable, + PersistableStateDefinition { /** * Unique ID of the action factory. This ID is used to identify this action * factory in the registry as well as to construct actions of this type and diff --git a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_enhancement.ts b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_enhancement.ts new file mode 100644 index 0000000000000..7cac49624bfdd --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_enhancement.ts @@ -0,0 +1,28 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { EnhancementRegistryDefinition } from '../../../../../src/plugins/embeddable/public'; +import { SavedObjectReference } from '../../../../../src/core/types'; +import { SerializableState } from '../../../../../src/plugins/kibana_utils/common'; +import { DynamicActionsState } from '../../../ui_actions_enhanced/public'; +import { UiActionsServiceEnhancements } from '../services'; + +export const dynamicActionEnhancement = ( + uiActionsEnhanced: UiActionsServiceEnhancements +): EnhancementRegistryDefinition => { + return { + id: 'dynamicActions', + telemetry: (state: SerializableState, telemetryData: Record) => { + return uiActionsEnhanced.telemetry(state as DynamicActionsState, telemetryData); + }, + extract: (state: SerializableState) => { + return uiActionsEnhanced.extract(state as DynamicActionsState); + }, + inject: (state: SerializableState, references: SavedObjectReference[]) => { + return uiActionsEnhanced.inject(state as DynamicActionsState, references); + }, + } as EnhancementRegistryDefinition; +}; diff --git a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.test.ts b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.test.ts index 39d9dfeca2fd6..83232bbce1ba7 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.test.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.test.ts @@ -250,7 +250,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition1); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -277,7 +277,7 @@ describe('DynamicActionManager', () => { test('adds event to UI state', async () => { const { manager, uiActions } = setup([]); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -296,7 +296,7 @@ describe('DynamicActionManager', () => { test('optimistically adds event to UI state', async () => { const { manager, uiActions } = setup([]); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -319,7 +319,7 @@ describe('DynamicActionManager', () => { test('instantiates event in actions service', async () => { const { manager, uiActions, actions } = setup([]); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -348,7 +348,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition1); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -361,7 +361,7 @@ describe('DynamicActionManager', () => { test('does not add even to UI state', async () => { const { manager, storage, uiActions } = setup([]); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -380,7 +380,7 @@ describe('DynamicActionManager', () => { test('optimistically adds event to UI state and then removes it', async () => { const { manager, storage, uiActions } = setup([]); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -406,7 +406,7 @@ describe('DynamicActionManager', () => { test('does not instantiate event in actions service', async () => { const { manager, storage, uiActions, actions } = setup([]); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -432,7 +432,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition1); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition1.id, name: 'foo', config: {}, @@ -457,7 +457,7 @@ describe('DynamicActionManager', () => { expect(registeredAction1.getDisplayName()).toBe('Action 3'); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, @@ -479,7 +479,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition2); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, @@ -505,7 +505,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition2); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, @@ -524,7 +524,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition2); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, @@ -552,7 +552,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition2); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, @@ -580,7 +580,7 @@ describe('DynamicActionManager', () => { expect(registeredAction1.getDisplayName()).toBe('Action 3'); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, @@ -604,7 +604,7 @@ describe('DynamicActionManager', () => { uiActions.registerActionFactory(actionFactoryDefinition2); await manager.start(); - const action: SerializedAction = { + const action: SerializedAction = { factoryId: actionFactoryDefinition2.id, name: 'foo', config: {}, diff --git a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.ts b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.ts index 6ca388281ad76..471b929fdbc06 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/dynamic_action_manager.ts @@ -74,7 +74,7 @@ export class DynamicActionManager { const actionId = this.generateActionId(eventId); const factory = uiActions.getActionFactory(event.action.factoryId); - const actionDefinition: ActionDefinition = factory.create(action as SerializedAction); + const actionDefinition: ActionDefinition = factory.create(action as SerializedAction); uiActions.registerAction({ ...actionDefinition, id: actionId, @@ -195,10 +195,7 @@ export class DynamicActionManager { * @param action Dynamic action for which to create an event. * @param triggers List of triggers to which action should react. */ - public async createEvent( - action: SerializedAction, - triggers: Array - ) { + public async createEvent(action: SerializedAction, triggers: Array) { const event: SerializedEvent = { eventId: uuidv4(), triggers, @@ -231,7 +228,7 @@ export class DynamicActionManager { */ public async updateEvent( eventId: string, - action: SerializedAction, + action: SerializedAction, triggers: Array ) { const event: SerializedEvent = { diff --git a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/types.ts b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/types.ts index d00db0d9acb7a..28d104093f64f 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/types.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/dynamic_actions/types.ts @@ -5,21 +5,9 @@ */ import { TriggerId } from '../../../../../src/plugins/ui_actions/public'; +import { SerializedAction, SerializedEvent, BaseActionConfig } from '../../common/types'; -export interface SerializedAction { - readonly factoryId: string; - readonly name: string; - readonly config: Config; -} - -/** - * Serialized representation of a triggers-action pair, used to persist in storage. - */ -export interface SerializedEvent { - eventId: string; - triggers: string[]; - action: SerializedAction; -} +export { SerializedAction, SerializedEvent, BaseActionConfig }; /** * Action factory context passed into ActionFactories' CollectConfig, getDisplayName, getIconType diff --git a/x-pack/plugins/ui_actions_enhanced/public/index.ts b/x-pack/plugins/ui_actions_enhanced/public/index.ts index 4a899b24852a9..ae720598ec759 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/index.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/index.ts @@ -29,7 +29,10 @@ export { DynamicActionManagerState as UiActionsEnhancedDynamicActionManagerState, MemoryActionStorage as UiActionsEnhancedMemoryActionStorage, BaseActionFactoryContext as UiActionsEnhancedBaseActionFactoryContext, + BaseActionConfig as UiActionsEnhancedBaseActionConfig, } from './dynamic_actions'; +export { DynamicActionsState } from './services/ui_actions_service_enhancements'; + export { DrilldownDefinition as UiActionsEnhancedDrilldownDefinition } from './drilldowns'; export * from './drilldowns/url_drilldown'; diff --git a/x-pack/plugins/ui_actions_enhanced/public/mocks.ts b/x-pack/plugins/ui_actions_enhanced/public/mocks.ts index 17a6fc1b955df..9eb0a06b6dbaf 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/mocks.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/mocks.ts @@ -30,6 +30,9 @@ const createStartContract = (): Start => { getActionFactories: jest.fn(), getActionFactory: jest.fn(), FlyoutManageDrilldowns: jest.fn(), + telemetry: jest.fn(), + extract: jest.fn(), + inject: jest.fn(), }; return startContract; diff --git a/x-pack/plugins/ui_actions_enhanced/public/plugin.ts b/x-pack/plugins/ui_actions_enhanced/public/plugin.ts index b38bc44abe2b0..b05c08c4c77d0 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/plugin.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/plugin.ts @@ -39,6 +39,7 @@ import { UiActionsServiceEnhancements } from './services'; import { ILicense, LicensingPluginSetup, LicensingPluginStart } from '../../licensing/public'; import { createFlyoutManageDrilldowns } from './drilldowns'; import { createStartServicesGetter, Storage } from '../../../../src/plugins/kibana_utils/public'; +import { dynamicActionEnhancement } from './dynamic_actions/dynamic_action_enhancement'; interface SetupDependencies { embeddable: EmbeddableSetup; // Embeddable are needed because they register basic triggers/actions. @@ -58,7 +59,10 @@ export interface SetupContract export interface StartContract extends UiActionsStart, - Pick { + Pick< + UiActionsServiceEnhancements, + 'getActionFactory' | 'getActionFactories' | 'telemetry' | 'extract' | 'inject' + > { FlyoutManageDrilldowns: ReturnType; } @@ -87,7 +91,7 @@ export class AdvancedUiActionsPublicPlugin public setup( core: CoreSetup, - { uiActions, licensing }: SetupDependencies + { embeddable, uiActions, licensing }: SetupDependencies ): SetupContract { const startServices = createStartServicesGetter(core.getStartServices); this.enhancements = new UiActionsServiceEnhancements({ @@ -95,6 +99,7 @@ export class AdvancedUiActionsPublicPlugin featureUsageSetup: licensing.featureUsage, getFeatureUsageStart: () => startServices().plugins.licensing.featureUsage, }); + embeddable.registerEnhancement(dynamicActionEnhancement(this.enhancements)); return { ...uiActions, ...this.enhancements, diff --git a/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.test.ts b/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.test.ts index 3a0b65d2ed844..6c71868222b24 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.test.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.test.ts @@ -96,6 +96,66 @@ describe('UiActionsService', () => { ).resolves.toBe(false); }); + test('action factory extract function gets called when calling uiactions extract', () => { + const service = new UiActionsServiceEnhancements(deps); + const actionState = { + events: [ + { + eventId: 'test', + triggers: [], + action: { factoryId: factoryDefinition1.id, name: 'test', config: {} }, + }, + ], + }; + const extract = jest.fn().mockImplementation((state) => ({ state, references: [] })); + service.registerActionFactory({ + ...factoryDefinition1, + extract, + }); + service.extract(actionState); + expect(extract).toBeCalledWith(actionState.events[0]); + }); + + test('action factory inject function gets called when calling uiactions inject', () => { + const service = new UiActionsServiceEnhancements(deps); + const actionState = { + events: [ + { + eventId: 'test', + triggers: [], + action: { factoryId: factoryDefinition1.id, name: 'test', config: {} }, + }, + ], + }; + const inject = jest.fn().mockImplementation((state) => state); + service.registerActionFactory({ + ...factoryDefinition1, + inject, + }); + service.inject(actionState, []); + expect(inject).toBeCalledWith(actionState.events[0], []); + }); + + test('action factory telemetry function gets called when calling uiactions telemetry', () => { + const service = new UiActionsServiceEnhancements(deps); + const actionState = { + events: [ + { + eventId: 'test', + triggers: [], + action: { factoryId: factoryDefinition1.id, name: 'test', config: {} }, + }, + ], + }; + const telemetry = jest.fn().mockImplementation((state) => ({})); + service.registerActionFactory({ + ...factoryDefinition1, + telemetry, + }); + service.telemetry(actionState); + expect(telemetry).toBeCalledWith(actionState.events[0], {}); + }); + describe('registerFeature for licensing', () => { const spy = jest.spyOn(deps.featureUsageSetup, 'register'); beforeEach(() => { diff --git a/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.ts b/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.ts index ab0aa1200f5a7..5e40d803962de 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/services/ui_actions_service_enhancements.ts @@ -8,12 +8,20 @@ import { ActionFactoryRegistry } from '../types'; import { ActionFactory, ActionFactoryDefinition, + BaseActionConfig, BaseActionFactoryContext, + SerializedEvent, } from '../dynamic_actions'; import { DrilldownDefinition } from '../drilldowns'; import { ILicense } from '../../../licensing/common/types'; import { TriggerContextMapping, TriggerId } from '../../../../../src/plugins/ui_actions/public'; import { LicensingPluginSetup, LicensingPluginStart } from '../../../licensing/public'; +import { SavedObjectReference } from '../../../../../src/core/types'; +import { PersistableStateDefinition } from '../../../../../src/plugins/kibana_utils/common'; + +import { DynamicActionsState } from '../../common/types'; + +export { DynamicActionsState }; export interface UiActionsServiceEnhancementsParams { readonly actionFactories?: ActionFactoryRegistry; @@ -22,7 +30,8 @@ export interface UiActionsServiceEnhancementsParams { readonly getFeatureUsageStart: () => LicensingPluginStart['featureUsage']; } -export class UiActionsServiceEnhancements { +export class UiActionsServiceEnhancements + implements PersistableStateDefinition { protected readonly actionFactories: ActionFactoryRegistry; protected readonly deps: Omit; @@ -36,7 +45,7 @@ export class UiActionsServiceEnhancements { * serialize/deserialize dynamic actions. */ public readonly registerActionFactory = < - Config extends object = object, + Config extends BaseActionConfig = BaseActionConfig, SupportedTriggers extends TriggerId = TriggerId, FactoryContext extends BaseActionFactoryContext = { triggers: SupportedTriggers[]; @@ -81,7 +90,7 @@ export class UiActionsServiceEnhancements { * Convenience method to register a {@link DrilldownDefinition | drilldown}. */ public readonly registerDrilldown = < - Config extends object = object, + Config extends BaseActionConfig = BaseActionConfig, SupportedTriggers extends TriggerId = TriggerId, FactoryContext extends BaseActionFactoryContext = { triggers: SupportedTriggers[]; @@ -102,6 +111,9 @@ export class UiActionsServiceEnhancements { licenseFeatureName, supportedTriggers, isCompatible, + telemetry, + extract, + inject, }: DrilldownDefinition): void => { const actionFactory: ActionFactoryDefinition< Config, @@ -119,6 +131,9 @@ export class UiActionsServiceEnhancements { isConfigValid, getDisplayName, supportedTriggers, + telemetry, + extract, + inject, getIconType: () => euiIcon, isCompatible: async () => true, create: (serializedAction) => ({ @@ -151,4 +166,43 @@ export class UiActionsServiceEnhancements { ); }); }; + + public readonly telemetry = (state: DynamicActionsState, telemetry: Record = {}) => { + let telemetryData = telemetry; + state.events.forEach((event: SerializedEvent) => { + if (this.actionFactories.has(event.action.factoryId)) { + telemetryData = this.actionFactories + .get(event.action.factoryId)! + .telemetry(event, telemetryData); + } + }); + return telemetryData; + }; + + public readonly extract = (state: DynamicActionsState) => { + const references: SavedObjectReference[] = []; + const newState = { + events: state.events.map((event: SerializedEvent) => { + const result = this.actionFactories.has(event.action.factoryId) + ? this.actionFactories.get(event.action.factoryId)!.extract(event) + : { + state: event, + references: [], + }; + references.push(...result.references); + return result.state; + }), + }; + return { state: newState, references }; + }; + + public readonly inject = (state: DynamicActionsState, references: SavedObjectReference[]) => { + return { + events: state.events.map((event: SerializedEvent) => { + return this.actionFactories.has(event.action.factoryId) + ? this.actionFactories.get(event.action.factoryId)!.inject(event, references) + : event; + }), + }; + }; } diff --git a/x-pack/plugins/ui_actions_enhanced/public/test_helpers/time_range_container.ts b/x-pack/plugins/ui_actions_enhanced/public/test_helpers/time_range_container.ts index 3d143b0cacd06..9a529f192158d 100644 --- a/x-pack/plugins/ui_actions_enhanced/public/test_helpers/time_range_container.ts +++ b/x-pack/plugins/ui_actions_enhanced/public/test_helpers/time_range_container.ts @@ -17,7 +17,6 @@ import { TimeRange } from '../../../../../src/plugins/data/public'; * https://github.com/microsoft/TypeScript/issues/15300 is fixed so we use a type * here instead */ -// eslint-disable-next-line @typescript-eslint/consistent-type-definitions export type InheritedChildrenInput = { timeRange: TimeRange; id?: string; diff --git a/x-pack/plugins/ui_actions_enhanced/server/dynamic_action_enhancement.ts b/x-pack/plugins/ui_actions_enhanced/server/dynamic_action_enhancement.ts new file mode 100644 index 0000000000000..b366436200914 --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/server/dynamic_action_enhancement.ts @@ -0,0 +1,55 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { EnhancementRegistryDefinition } from '../../../../src/plugins/embeddable/server'; +import { SavedObjectReference } from '../../../../src/core/types'; +import { DynamicActionsState, SerializedEvent } from './types'; +import { AdvancedUiActionsPublicPlugin } from './plugin'; +import { SerializableState } from '../../../../src/plugins/kibana_utils/common'; + +export const dynamicActionEnhancement = ( + uiActionsEnhanced: AdvancedUiActionsPublicPlugin +): EnhancementRegistryDefinition => { + return { + id: 'dynamicActions', + telemetry: (state: SerializableState, telemetry: Record) => { + let telemetryData = telemetry; + (state as DynamicActionsState).events.forEach((event: SerializedEvent) => { + if (uiActionsEnhanced.getActionFactory(event.action.factoryId)) { + telemetryData = uiActionsEnhanced + .getActionFactory(event.action.factoryId)! + .telemetry(event, telemetryData); + } + }); + return telemetryData; + }, + extract: (state: SerializableState) => { + const references: SavedObjectReference[] = []; + const newState: DynamicActionsState = { + events: (state as DynamicActionsState).events.map((event: SerializedEvent) => { + const result = uiActionsEnhanced.getActionFactory(event.action.factoryId) + ? uiActionsEnhanced.getActionFactory(event.action.factoryId)!.extract(event) + : { + state: event, + references: [], + }; + result.references.forEach((r) => references.push(r)); + return result.state; + }), + }; + return { state: newState, references }; + }, + inject: (state: SerializableState, references: SavedObjectReference[]) => { + return { + events: (state as DynamicActionsState).events.map((event: SerializedEvent) => { + return uiActionsEnhanced.getActionFactory(event.action.factoryId) + ? uiActionsEnhanced.getActionFactory(event.action.factoryId)!.inject(event, references) + : event; + }), + } as DynamicActionsState; + }, + } as EnhancementRegistryDefinition; +}; diff --git a/x-pack/plugins/ui_actions_enhanced/server/index.ts b/x-pack/plugins/ui_actions_enhanced/server/index.ts new file mode 100644 index 0000000000000..5419c4135796d --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/server/index.ts @@ -0,0 +1,29 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { AdvancedUiActionsPublicPlugin } from './plugin'; + +export function plugin() { + return new AdvancedUiActionsPublicPlugin(); +} + +export { AdvancedUiActionsPublicPlugin as Plugin }; +export { + SetupContract as AdvancedUiActionsSetup, + StartContract as AdvancedUiActionsStart, +} from './plugin'; + +export { + ActionFactoryDefinition as UiActionsEnhancedActionFactoryDefinition, + ActionFactory as UiActionsEnhancedActionFactory, +} from './types'; + +export { + DynamicActionsState, + BaseActionConfig as UiActionsEnhancedBaseActionConfig, + SerializedAction as UiActionsEnhancedSerializedAction, + SerializedEvent as UiActionsEnhancedSerializedEvent, +} from '../common/types'; diff --git a/x-pack/plugins/ui_actions_enhanced/server/plugin.ts b/x-pack/plugins/ui_actions_enhanced/server/plugin.ts new file mode 100644 index 0000000000000..0a61c917a2c5c --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/server/plugin.ts @@ -0,0 +1,107 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { identity } from 'lodash'; +import { CoreSetup, Plugin, SavedObjectReference } from '../../../../src/core/server'; +import { EmbeddableSetup } from '../../../../src/plugins/embeddable/server'; +import { dynamicActionEnhancement } from './dynamic_action_enhancement'; +import { + ActionFactoryRegistry, + SerializedEvent, + ActionFactoryDefinition, + DynamicActionsState, +} from './types'; + +export interface SetupContract { + registerActionFactory: any; +} + +export type StartContract = void; + +interface SetupDependencies { + embeddable: EmbeddableSetup; // Embeddable are needed because they register basic triggers/actions. +} + +export class AdvancedUiActionsPublicPlugin + implements Plugin { + protected readonly actionFactories: ActionFactoryRegistry = new Map(); + + constructor() {} + + public setup(core: CoreSetup, { embeddable }: SetupDependencies) { + embeddable.registerEnhancement(dynamicActionEnhancement(this)); + + return { + registerActionFactory: this.registerActionFactory, + }; + } + + public start() {} + + public stop() {} + + /** + * Register an action factory. Action factories are used to configure and + * serialize/deserialize dynamic actions. + */ + public readonly registerActionFactory = (definition: ActionFactoryDefinition) => { + if (this.actionFactories.has(definition.id)) { + throw new Error(`ActionFactory [actionFactory.id = ${definition.id}] already registered.`); + } + + this.actionFactories.set(definition.id, { + id: definition.id, + telemetry: definition.telemetry || (() => ({})), + inject: definition.inject || identity, + extract: + definition.extract || + ((state: SerializedEvent) => { + return { state, references: [] }; + }), + }); + }; + + public readonly getActionFactory = (actionFactoryId: string) => { + const actionFactory = this.actionFactories.get(actionFactoryId); + return actionFactory; + }; + + public readonly telemetry = (state: DynamicActionsState, telemetry: Record = {}) => { + state.events.forEach((event: SerializedEvent) => { + if (this.actionFactories.has(event.action.factoryId)) { + this.actionFactories.get(event.action.factoryId)!.telemetry(event, telemetry); + } + }); + return telemetry; + }; + + public readonly extract = (state: DynamicActionsState) => { + const references: SavedObjectReference[] = []; + const newState = { + events: state.events.map((event: SerializedEvent) => { + const result = this.actionFactories.has(event.action.factoryId) + ? this.actionFactories.get(event.action.factoryId)!.extract(event) + : { + state: event, + references: [], + }; + result.references.forEach((r) => references.push(r)); + return result.state; + }), + }; + return { state: newState, references }; + }; + + public readonly inject = (state: DynamicActionsState, references: SavedObjectReference[]) => { + return { + events: state.events.map((event: SerializedEvent) => { + return this.actionFactories.has(event.action.factoryId) + ? this.actionFactories.get(event.action.factoryId)!.inject(event, references) + : event; + }), + }; + }; +} diff --git a/x-pack/plugins/ui_actions_enhanced/server/types.ts b/x-pack/plugins/ui_actions_enhanced/server/types.ts new file mode 100644 index 0000000000000..4859be6728344 --- /dev/null +++ b/x-pack/plugins/ui_actions_enhanced/server/types.ts @@ -0,0 +1,26 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { + PersistableState, + PersistableStateDefinition, +} from '../../../../src/plugins/kibana_utils/common'; + +import { SerializedAction, SerializedEvent, DynamicActionsState } from '../common/types'; + +export type ActionFactoryRegistry = Map; + +export interface ActionFactoryDefinition

+ extends PersistableStateDefinition

{ + id: string; +} + +export interface ActionFactory

+ extends PersistableState

{ + id: string; +} + +export { SerializedEvent, SerializedAction, DynamicActionsState }; From 8315ddb468aff39dd6c8ee673e8fbcdab4948858 Mon Sep 17 00:00:00 2001 From: Lisa Cawley Date: Fri, 18 Sep 2020 08:50:24 -0700 Subject: [PATCH 03/27] [DOCS] Add admonition to legacy monitoring page (#77667) --- docs/user/monitoring/monitoring-kibana.asciidoc | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/user/monitoring/monitoring-kibana.asciidoc b/docs/user/monitoring/monitoring-kibana.asciidoc index 47fbe1bea9f2a..9d735ea1fe3db 100644 --- a/docs/user/monitoring/monitoring-kibana.asciidoc +++ b/docs/user/monitoring/monitoring-kibana.asciidoc @@ -8,9 +8,20 @@ If you enable the Elastic {monitor-features} in your cluster, you can optionally collect metrics about {kib}. +[IMPORTANT] +========================= +{metricbeat} is the recommended method for collecting and shipping monitoring +data to a monitoring cluster. + +If you have previously configured legacy collection methods, you should migrate +to using {metricbeat} collection methods. Use either {metricbeat} collection or +legacy collection methods; do not use both. + +For the recommended method, refer to <>. +========================= + The following method involves sending the metrics to the production cluster, -which ultimately routes them to the monitoring cluster. For the recommended -method, see <>. +which ultimately routes them to the monitoring cluster. To learn about monitoring in general, see {ref}/monitor-elasticsearch-cluster.html[Monitor a cluster]. From 8727dc7c209ea3cc07faf5c62eef7a2f1b04ffad Mon Sep 17 00:00:00 2001 From: Rashmi Kulkarni Date: Fri, 18 Sep 2020 09:00:13 -0700 Subject: [PATCH 04/27] using test_user with minimum privileges for lens reporting functional ui test (#76713) * lens reporting test * update chromedriver to 85 * checking bug fix * hitting another bug - added as a comment * Revert "update chromedriver to 85" This reverts commit dcd898394e182a9b1e08e39fe1fae23aff57df94. * don't refresh the page when setting roles * lens reporting test Co-authored-by: Dzmitry Lemechko Co-authored-by: Elastic Machine --- x-pack/test/functional/apps/lens/lens_reporting.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/x-pack/test/functional/apps/lens/lens_reporting.ts b/x-pack/test/functional/apps/lens/lens_reporting.ts index 4974b63be6f72..751fbbce13add 100644 --- a/x-pack/test/functional/apps/lens/lens_reporting.ts +++ b/x-pack/test/functional/apps/lens/lens_reporting.ts @@ -12,10 +12,15 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const es = getService('es'); const esArchiver = getService('esArchiver'); const listingTable = getService('listingTable'); + const security = getService('security'); describe('lens reporting', () => { before(async () => { await esArchiver.loadIfNeeded('lens/reporting'); + await security.testUser.setRoles( + ['test_logstash_reader', 'global_dashboard_read', 'reporting_user'], + false + ); }); after(async () => { @@ -25,6 +30,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { refresh: true, body: { query: { match_all: {} } }, }); + await security.testUser.restoreDefaults(); }); it('should not cause PDF reports to fail', async () => { @@ -33,7 +39,6 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.reporting.openPdfReportingPanel(); await PageObjects.reporting.clickGenerateReportButton(); const url = await PageObjects.reporting.getReportURL(60000); - expect(url).to.be.ok(); }); }); From 3d67eaaed446cc25d494ae21db4e17033e77d46c Mon Sep 17 00:00:00 2001 From: Brandon Kobel Date: Fri, 18 Sep 2020 09:01:27 -0700 Subject: [PATCH 05/27] License fetching concurrency (#77560) * Switching license polling from a switchMap to an exhaustMap When it's ES is slow to respond with a license, or Kibana is overloaded and is slow making the request or handling the response, we were trying to fetch the license again. This will just skip that refresh interval, and catch it the next time around. * Explicitly ignoring a 429 from triggering a license refresh * The existing unit tests pass! * Only refreshing the license once at a time * Adding test for the onPreResponse licensing handler * Removing errant newline * Removing errant 'foo' * Now with better comments! * Fixing oddity with the exhaustMap * Just a bit of tidying up * Use process.nextTick() instead of the confusing Promise.resolve Co-authored-by: Elastic Machine --- .../licensing/common/license_update.test.ts | 21 ++++++------ .../licensing/common/license_update.ts | 33 ++++++++++++------- .../plugins/licensing/public/plugin.test.ts | 4 ++- .../server/on_pre_response_handler.test.ts | 18 +++++++++- .../server/on_pre_response_handler.ts | 8 +++-- 5 files changed, 56 insertions(+), 28 deletions(-) diff --git a/x-pack/plugins/licensing/common/license_update.test.ts b/x-pack/plugins/licensing/common/license_update.test.ts index b0209e0717da2..4c922e75f8f6f 100644 --- a/x-pack/plugins/licensing/common/license_update.test.ts +++ b/x-pack/plugins/licensing/common/license_update.test.ts @@ -66,6 +66,8 @@ describe('licensing update', () => { expect(first.type).toBe('basic'); trigger$.next(); + // waiting on a promise gives the exhaustMap time to complete and not de-dupe these calls + await Promise.resolve(); trigger$.next(); const [, second] = await license$.pipe(take(2), toArray()).toPromise(); @@ -89,18 +91,15 @@ describe('licensing update', () => { expect(fetcher).toHaveBeenCalledTimes(1); }); - it('handles fetcher race condition', async () => { + it('ignores trigger if license fetching is delayed ', async () => { const delayMs = 100; - let firstCall = true; - const fetcher = jest.fn().mockImplementation( + const fetcher = jest.fn().mockImplementationOnce( () => new Promise((resolve) => { - if (firstCall) { - firstCall = false; - setTimeout(() => resolve(licenseMock.createLicense()), delayMs); - } else { - resolve(licenseMock.createLicense({ license: { type: 'gold' } })); - } + setTimeout( + () => resolve(licenseMock.createLicense({ license: { type: 'gold' } })), + delayMs + ); }) ); const trigger$ = new Subject(); @@ -113,7 +112,7 @@ describe('licensing update', () => { await delay(delayMs * 2); - await expect(fetcher).toHaveBeenCalledTimes(2); + await expect(fetcher).toHaveBeenCalledTimes(1); await expect(values).toHaveLength(1); await expect(values[0].type).toBe('gold'); }); @@ -144,7 +143,7 @@ describe('licensing update', () => { expect(fetcher).toHaveBeenCalledTimes(0); }); - it('refreshManually guarantees license fetching', async () => { + it(`refreshManually multiple times gets new license`, async () => { const trigger$ = new Subject(); const firstLicense = licenseMock.createLicense({ license: { uid: 'first', type: 'basic' } }); const secondLicense = licenseMock.createLicense({ license: { uid: 'second', type: 'gold' } }); diff --git a/x-pack/plugins/licensing/common/license_update.ts b/x-pack/plugins/licensing/common/license_update.ts index 0197ca5396ad1..cd5052b0b49a3 100644 --- a/x-pack/plugins/licensing/common/license_update.ts +++ b/x-pack/plugins/licensing/common/license_update.ts @@ -5,32 +5,41 @@ */ import { ConnectableObservable, Observable, Subject, from, merge } from 'rxjs'; -import { filter, map, pairwise, switchMap, publishReplay, takeUntil } from 'rxjs/operators'; +import { + filter, + map, + pairwise, + exhaustMap, + publishReplay, + share, + take, + takeUntil, +} from 'rxjs/operators'; import { hasLicenseInfoChanged } from './has_license_info_changed'; import { ILicense } from './types'; export function createLicenseUpdate( - trigger$: Observable, + triggerRefresh$: Observable, stop$: Observable, fetcher: () => Promise, initialValues?: ILicense ) { - const triggerRefresh$ = trigger$.pipe(switchMap(fetcher)); - const manuallyFetched$ = new Subject(); + const manuallyRefresh$ = new Subject(); + const fetched$ = merge(triggerRefresh$, manuallyRefresh$).pipe(exhaustMap(fetcher), share()); - const fetched$ = merge(triggerRefresh$, manuallyFetched$).pipe( + const cached$ = fetched$.pipe( takeUntil(stop$), publishReplay(1) // have to cast manually as pipe operator cannot return ConnectableObservable // https://github.com/ReactiveX/rxjs/issues/2972 ) as ConnectableObservable; - const fetchSubscription = fetched$.connect(); - stop$.subscribe({ complete: () => fetchSubscription.unsubscribe() }); + const cachedSubscription = cached$.connect(); + stop$.subscribe({ complete: () => cachedSubscription.unsubscribe() }); const initialValues$ = initialValues ? from([undefined, initialValues]) : from([undefined]); - const license$: Observable = merge(initialValues$, fetched$).pipe( + const license$: Observable = merge(initialValues$, cached$).pipe( pairwise(), filter(([previous, next]) => hasLicenseInfoChanged(previous, next!)), map(([, next]) => next!) @@ -38,10 +47,10 @@ export function createLicenseUpdate( return { license$, - async refreshManually() { - const license = await fetcher(); - manuallyFetched$.next(license); - return license; + refreshManually() { + const licensePromise = fetched$.pipe(take(1)).toPromise(); + manuallyRefresh$.next(); + return licensePromise; }, }; } diff --git a/x-pack/plugins/licensing/public/plugin.test.ts b/x-pack/plugins/licensing/public/plugin.test.ts index 960fe3699e210..c20563dd15913 100644 --- a/x-pack/plugins/licensing/public/plugin.test.ts +++ b/x-pack/plugins/licensing/public/plugin.test.ts @@ -115,7 +115,9 @@ describe('licensing plugin', () => { refresh(); } else if (i === 2) { expect(value.type).toBe('gold'); - refresh(); + // since this is a synchronous subscription, we need to give the exhaustMap a chance + // to mark the subscription as complete before emitting another value on the Subject + process.nextTick(() => refresh()); } else if (i === 3) { expect(value.type).toBe('platinum'); done(); diff --git a/x-pack/plugins/licensing/server/on_pre_response_handler.test.ts b/x-pack/plugins/licensing/server/on_pre_response_handler.test.ts index 5c768a00783a8..af3ec42ab4ec5 100644 --- a/x-pack/plugins/licensing/server/on_pre_response_handler.test.ts +++ b/x-pack/plugins/licensing/server/on_pre_response_handler.test.ts @@ -25,7 +25,23 @@ describe('createOnPreResponseHandler', () => { }, }); }); - it('sets license.signature header after refresh for non-error responses', async () => { + it('sets license.signature header immediately for 429 error responses', async () => { + const refresh = jest.fn(); + const license$ = new BehaviorSubject(licenseMock.createLicense({ signature: 'foo' })); + const toolkit = httpServiceMock.createOnPreResponseToolkit(); + + const interceptor = createOnPreResponseHandler(refresh, license$); + await interceptor(httpServerMock.createKibanaRequest(), { statusCode: 429 }, toolkit); + + expect(refresh).toHaveBeenCalledTimes(0); + expect(toolkit.next).toHaveBeenCalledTimes(1); + expect(toolkit.next).toHaveBeenCalledWith({ + headers: { + 'kbn-license-sig': 'foo', + }, + }); + }); + it('sets license.signature header after refresh for other error responses', async () => { const updatedLicense = licenseMock.createLicense({ signature: 'bar' }); const license$ = new BehaviorSubject(licenseMock.createLicense({ signature: 'foo' })); const refresh = jest.fn().mockImplementation( diff --git a/x-pack/plugins/licensing/server/on_pre_response_handler.ts b/x-pack/plugins/licensing/server/on_pre_response_handler.ts index c8befceb4fe32..6428e41b18058 100644 --- a/x-pack/plugins/licensing/server/on_pre_response_handler.ts +++ b/x-pack/plugins/licensing/server/on_pre_response_handler.ts @@ -15,9 +15,11 @@ export function createOnPreResponseHandler( return async (req, res, t) => { // If we're returning an error response, refresh license info from // Elasticsearch in case the error is due to a change in license information - // in Elasticsearch. - // https://github.com/elastic/x-pack-kibana/pull/2876 - if (res.statusCode >= 400) { + // in Elasticsearch. https://github.com/elastic/x-pack-kibana/pull/2876 + // We're explicit ignoring a 429 "Too Many Requests". This is being used to communicate + // that back-pressure should be applied, and we don't need to refresh the license in these + // situations. + if (res.statusCode >= 400 && res.statusCode !== 429) { await refresh(); } const license = await license$.pipe(take(1)).toPromise(); From f3c9d10afc45ee4b6ae1fc75fc3918c5f6b6e511 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Fri, 18 Sep 2020 10:21:52 -0600 Subject: [PATCH 06/27] [ML] add geo point combined field to CSV import (#77117) * [ML] add geo point combined field to CSV import * remove some geo_point specific logic * Account for properties layer in find_file_structure mappings * improve checking of name collision to include combined fields and mappings * add delete button * fix function name * fill in unknowns with defined types * tslint changes * get tslint passing * show readonly combined fields in simple tab * handle column_names being undefined * add unit tests for modifying mappings and pipeline * review feedback * do not change combinedFields on reset Co-authored-by: Elastic Machine --- .../ml/common/types/file_datavisualizer.ts | 4 +- .../combined_fields/combined_field_label.tsx | 20 ++ .../combined_fields/combined_fields_form.tsx | 237 ++++++++++++++++++ .../combined_fields_read_only_form.tsx | 36 +++ .../components/combined_fields/geo_point.tsx | 189 ++++++++++++++ .../components/combined_fields/index.ts | 15 ++ .../components/combined_fields/types.ts | 12 + .../components/combined_fields/utils.test.ts | 235 +++++++++++++++++ .../components/combined_fields/utils.ts | 174 +++++++++++++ .../components/import_settings/advanced.tsx | 19 ++ .../import_settings/import_settings.tsx | 12 + .../components/import_settings/simple.tsx | 7 + .../components/import_view/import_view.js | 29 ++- 13 files changed, 986 insertions(+), 3 deletions(-) create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_field_label.tsx create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_form.tsx create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_read_only_form.tsx create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/geo_point.tsx create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/index.ts create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/types.ts create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.test.ts create mode 100644 x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.ts diff --git a/x-pack/plugins/ml/common/types/file_datavisualizer.ts b/x-pack/plugins/ml/common/types/file_datavisualizer.ts index a8b775c8d5f60..9dc3896e9be48 100644 --- a/x-pack/plugins/ml/common/types/file_datavisualizer.ts +++ b/x-pack/plugins/ml/common/types/file_datavisualizer.ts @@ -29,6 +29,8 @@ export interface FindFileStructureResponse { count: number; cardinality: number; top_hits: Array<{ count: number; value: any }>; + max_value?: number; + min_value?: number; }; }; sample_start: string; @@ -42,7 +44,7 @@ export interface FindFileStructureResponse { delimiter: string; need_client_timezone: boolean; num_lines_analyzed: number; - column_names: string[]; + column_names?: string[]; explanation?: string[]; grok_pattern?: string; multiline_start_pattern?: string; diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_field_label.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_field_label.tsx new file mode 100644 index 0000000000000..610b29c85a062 --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_field_label.tsx @@ -0,0 +1,20 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import React from 'react'; +import { EuiText } from '@elastic/eui'; + +import { CombinedField } from './types'; + +export function CombinedFieldLabel({ combinedField }: { combinedField: CombinedField }) { + return {getCombinedFieldLabel(combinedField)}; +} + +function getCombinedFieldLabel(combinedField: CombinedField) { + return `${combinedField.fieldNames.join(combinedField.delimiter)} => ${ + combinedField.combinedFieldName + } (${combinedField.mappingType})`; +} diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_form.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_form.tsx new file mode 100644 index 0000000000000..fdfe10c2acf02 --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_form.tsx @@ -0,0 +1,237 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n/react'; +import React, { Component } from 'react'; + +import { + EuiFormRow, + EuiPopover, + EuiContextMenu, + EuiButtonEmpty, + EuiButtonIcon, + EuiFlexGroup, + EuiFlexItem, +} from '@elastic/eui'; + +import { CombinedField } from './types'; +import { GeoPointForm } from './geo_point'; +import { CombinedFieldLabel } from './combined_field_label'; +import { + addCombinedFieldsToMappings, + addCombinedFieldsToPipeline, + getNameCollisionMsg, + removeCombinedFieldsFromMappings, + removeCombinedFieldsFromPipeline, +} from './utils'; +import { FindFileStructureResponse } from '../../../../../../common/types/file_datavisualizer'; + +interface Props { + mappingsString: string; + pipelineString: string; + onMappingsStringChange(): void; + onPipelineStringChange(): void; + combinedFields: CombinedField[]; + onCombinedFieldsChange(combinedFields: CombinedField[]): void; + results: FindFileStructureResponse; + isDisabled: boolean; +} + +interface State { + isPopoverOpen: boolean; +} + +export class CombinedFieldsForm extends Component { + state: State = { + isPopoverOpen: false, + }; + + togglePopover = () => { + this.setState((prevState) => ({ + isPopoverOpen: !prevState.isPopoverOpen, + })); + }; + + closePopover = () => { + this.setState({ + isPopoverOpen: false, + }); + }; + + addCombinedField = (combinedField: CombinedField) => { + if (this.hasNameCollision(combinedField.combinedFieldName)) { + throw new Error(getNameCollisionMsg(combinedField.combinedFieldName)); + } + + const mappings = this.parseMappings(); + const pipeline = this.parsePipeline(); + + this.props.onMappingsStringChange( + // @ts-expect-error + JSON.stringify(addCombinedFieldsToMappings(mappings, [combinedField]), null, 2) + ); + this.props.onPipelineStringChange( + // @ts-expect-error + JSON.stringify(addCombinedFieldsToPipeline(pipeline, [combinedField]), null, 2) + ); + this.props.onCombinedFieldsChange([...this.props.combinedFields, combinedField]); + + this.closePopover(); + }; + + removeCombinedField = (index: number) => { + let mappings; + let pipeline; + try { + mappings = this.parseMappings(); + pipeline = this.parsePipeline(); + } catch (error) { + // how should remove error be surfaced? + return; + } + + const updatedCombinedFields = [...this.props.combinedFields]; + const removedCombinedFields = updatedCombinedFields.splice(index, 1); + + this.props.onMappingsStringChange( + // @ts-expect-error + JSON.stringify(removeCombinedFieldsFromMappings(mappings, removedCombinedFields), null, 2) + ); + this.props.onPipelineStringChange( + // @ts-expect-error + JSON.stringify(removeCombinedFieldsFromPipeline(pipeline, removedCombinedFields), null, 2) + ); + this.props.onCombinedFieldsChange(updatedCombinedFields); + }; + + parseMappings() { + try { + return JSON.parse(this.props.mappingsString); + } catch (error) { + throw new Error( + i18n.translate('xpack.ml.fileDatavisualizer.combinedFieldsForm.mappingsParseError', { + defaultMessage: 'Error parsing mappings: {error}', + values: { error: error.message }, + }) + ); + } + } + + parsePipeline() { + try { + return JSON.parse(this.props.pipelineString); + } catch (error) { + throw new Error( + i18n.translate('xpack.ml.fileDatavisualizer.combinedFieldsForm.pipelineParseError', { + defaultMessage: 'Error parsing pipeline: {error}', + values: { error: error.message }, + }) + ); + } + } + + hasNameCollision = (name: string) => { + if (this.props.results.column_names?.includes(name)) { + // collision with column name + return true; + } + + if ( + this.props.combinedFields.some((combinedField) => combinedField.combinedFieldName === name) + ) { + // collision with combined field name + return true; + } + + const mappings = this.parseMappings(); + return mappings.properties.hasOwnProperty(name); + }; + + render() { + const geoPointLabel = i18n.translate('xpack.ml.fileDatavisualizer.geoPointCombinedFieldLabel', { + defaultMessage: 'Add geo point field', + }); + const panels = [ + { + id: 0, + items: [ + { + name: geoPointLabel, + panel: 1, + }, + ], + }, + { + id: 1, + title: geoPointLabel, + content: ( + + ), + }, + ]; + return ( + +

+ {this.props.combinedFields.map((combinedField: CombinedField, idx: number) => ( + + + + + {!this.props.isDisabled && ( + + + + )} + + ))} + + + + } + isOpen={this.state.isPopoverOpen} + closePopover={this.closePopover} + anchorPosition="rightCenter" + > + + +
+ + ); + } +} diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_read_only_form.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_read_only_form.tsx new file mode 100644 index 0000000000000..c37e27e39a7ab --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/combined_fields_read_only_form.tsx @@ -0,0 +1,36 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { i18n } from '@kbn/i18n'; +import React from 'react'; + +import { EuiFormRow } from '@elastic/eui'; + +import { CombinedField } from './types'; +import { CombinedFieldLabel } from './combined_field_label'; + +export function CombinedFieldsReadOnlyForm({ + combinedFields, +}: { + combinedFields: CombinedField[]; +}) { + return combinedFields.length ? ( + +
+ {combinedFields.map((combinedField: CombinedField, idx: number) => ( + + ))} +
+
+ ) : null; +} diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/geo_point.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/geo_point.tsx new file mode 100644 index 0000000000000..831ae8de8081a --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/geo_point.tsx @@ -0,0 +1,189 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { i18n } from '@kbn/i18n'; +import debounce from 'lodash/debounce'; +import { FormattedMessage } from '@kbn/i18n/react'; +import React, { ChangeEvent, Component, Fragment } from 'react'; + +import { + EuiFormRow, + EuiFieldText, + EuiTextAlign, + EuiSpacer, + EuiButton, + EuiSelect, + EuiSelectOption, + EuiFormErrorText, +} from '@elastic/eui'; + +import { CombinedField } from './types'; +import { + createGeoPointCombinedField, + isWithinLatRange, + isWithinLonRange, + getFieldNames, + getNameCollisionMsg, +} from './utils'; +import { FindFileStructureResponse } from '../../../../../../common/types/file_datavisualizer'; + +interface Props { + addCombinedField: (combinedField: CombinedField) => void; + hasNameCollision: (name: string) => boolean; + results: FindFileStructureResponse; +} + +interface State { + latField: string; + lonField: string; + geoPointField: string; + geoPointFieldError: string; + latFields: EuiSelectOption[]; + lonFields: EuiSelectOption[]; + submitError: string; +} + +export class GeoPointForm extends Component { + constructor(props: Props) { + super(props); + + const latFields: EuiSelectOption[] = [{ value: '', text: '' }]; + const lonFields: EuiSelectOption[] = [{ value: '', text: '' }]; + getFieldNames(props.results).forEach((columnName: string) => { + if (isWithinLatRange(columnName, props.results.field_stats)) { + latFields.push({ value: columnName, text: columnName }); + } + if (isWithinLonRange(columnName, props.results.field_stats)) { + lonFields.push({ value: columnName, text: columnName }); + } + }); + + this.state = { + latField: '', + lonField: '', + geoPointField: '', + geoPointFieldError: '', + submitError: '', + latFields, + lonFields, + }; + } + + onLatFieldChange = (e: ChangeEvent) => { + this.setState({ latField: e.target.value }); + }; + + onLonFieldChange = (e: ChangeEvent) => { + this.setState({ lonField: e.target.value }); + }; + + onGeoPointFieldChange = (e: ChangeEvent) => { + const geoPointField = e.target.value; + this.setState({ geoPointField }); + this.hasNameCollision(geoPointField); + }; + + hasNameCollision = debounce((name: string) => { + try { + const geoPointFieldError = this.props.hasNameCollision(name) ? getNameCollisionMsg(name) : ''; + this.setState({ geoPointFieldError }); + } catch (error) { + this.setState({ submitError: error.message }); + } + }, 200); + + onSubmit = () => { + try { + this.props.addCombinedField( + createGeoPointCombinedField( + this.state.latField, + this.state.lonField, + this.state.geoPointField + ) + ); + this.setState({ submitError: '' }); + } catch (error) { + this.setState({ submitError: error.message }); + } + }; + + render() { + let error; + if (this.state.submitError) { + error = {this.state.submitError}; + } + return ( + + + + + + + + + + + + + + + + {error} + + + + + + + + ); + } +} diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/index.ts b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/index.ts new file mode 100644 index 0000000000000..90b6bbab789f3 --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/index.ts @@ -0,0 +1,15 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +export { + addCombinedFieldsToPipeline, + addCombinedFieldsToMappings, + getDefaultCombinedFields, +} from './utils'; + +export { CombinedFieldsReadOnlyForm } from './combined_fields_read_only_form'; +export { CombinedFieldsForm } from './combined_fields_form'; +export { CombinedField } from './types'; diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/types.ts b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/types.ts new file mode 100644 index 0000000000000..1ec66f5c96661 --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/types.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +export interface CombinedField { + mappingType: string; + delimiter: string; + combinedFieldName: string; + fieldNames: string[]; +} diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.test.ts b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.test.ts new file mode 100644 index 0000000000000..17b39f9041ec0 --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.test.ts @@ -0,0 +1,235 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { + addCombinedFieldsToMappings, + addCombinedFieldsToPipeline, + createGeoPointCombinedField, + isWithinLatRange, + isWithinLonRange, + removeCombinedFieldsFromMappings, + removeCombinedFieldsFromPipeline, +} from './utils'; + +const combinedFields = [createGeoPointCombinedField('lat', 'lon', 'location')]; + +test('addCombinedFieldsToMappings', () => { + const mappings = { + _meta: { + created_by: '', + }, + properties: { + lat: { + type: 'number', + }, + lon: { + type: 'number', + }, + }, + }; + expect(addCombinedFieldsToMappings(mappings, combinedFields)).toEqual({ + _meta: { + created_by: '', + }, + properties: { + lat: { + type: 'number', + }, + lon: { + type: 'number', + }, + location: { + type: 'geo_point', + }, + }, + }); +}); + +test('removeCombinedFieldsFromMappings', () => { + const mappings = { + _meta: { + created_by: '', + }, + properties: { + lat: { + type: 'number', + }, + lon: { + type: 'number', + }, + location: { + type: 'geo_point', + }, + }, + }; + expect(removeCombinedFieldsFromMappings(mappings, combinedFields)).toEqual({ + _meta: { + created_by: '', + }, + properties: { + lat: { + type: 'number', + }, + lon: { + type: 'number', + }, + }, + }); +}); + +test('addCombinedFieldsToPipeline', () => { + const pipeline = { + description: '', + processors: [ + { + set: { + field: 'anotherfield', + value: '{{value}}', + }, + }, + ], + }; + expect(addCombinedFieldsToPipeline(pipeline, combinedFields)).toEqual({ + description: '', + processors: [ + { + set: { + field: 'anotherfield', + value: '{{value}}', + }, + }, + { + set: { + field: 'location', + value: '{{lat}},{{lon}}', + }, + }, + ], + }); +}); + +test('removeCombinedFieldsFromPipeline', () => { + const pipeline = { + description: '', + processors: [ + { + set: { + field: 'anotherfield', + value: '{{value}}', + }, + }, + { + set: { + field: 'location', + value: '{{lat}},{{lon}}', + }, + }, + ], + }; + expect(removeCombinedFieldsFromPipeline(pipeline, combinedFields)).toEqual({ + description: '', + processors: [ + { + set: { + field: 'anotherfield', + value: '{{value}}', + }, + }, + ], + }); +}); + +test('isWithinLatRange', () => { + expect(isWithinLatRange('fieldAlpha', {})).toBe(false); + expect( + isWithinLatRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: 1 }], + }, + }) + ).toBe(false); + expect( + isWithinLatRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: 100 }], + max_value: 100, + min_value: 0, + }, + }) + ).toBe(false); + expect( + isWithinLatRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: -100 }], + max_value: 0, + min_value: -100, + }, + }) + ).toBe(false); + expect( + isWithinLatRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: 0 }], + max_value: 0, + min_value: 0, + }, + }) + ).toBe(true); +}); + +test('isWithinLonRange', () => { + expect(isWithinLonRange('fieldAlpha', {})).toBe(false); + expect( + isWithinLonRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: 1 }], + }, + }) + ).toBe(false); + expect( + isWithinLonRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: 200 }], + max_value: 200, + min_value: 0, + }, + }) + ).toBe(false); + expect( + isWithinLonRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: -200 }], + max_value: 0, + min_value: -200, + }, + }) + ).toBe(false); + expect( + isWithinLonRange('fieldAlpha', { + fieldAlpha: { + count: 1, + cardinality: 1, + top_hits: [{ count: 1, value: 0 }], + max_value: 0, + min_value: 0, + }, + }) + ).toBe(true); +}); diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.ts b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.ts new file mode 100644 index 0000000000000..5e7de14f451c2 --- /dev/null +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/combined_fields/utils.ts @@ -0,0 +1,174 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { i18n } from '@kbn/i18n'; +import _ from 'lodash'; +import uuid from 'uuid/v4'; +import { CombinedField } from './types'; +import { + FindFileStructureResponse, + IngestPipeline, + Mappings, +} from '../../../../../../common/types/file_datavisualizer'; + +const COMMON_LAT_NAMES = ['latitude', 'lat']; +const COMMON_LON_NAMES = ['longitude', 'long', 'lon']; + +export function getDefaultCombinedFields(results: FindFileStructureResponse) { + const combinedFields: CombinedField[] = []; + const geoPointField = getGeoPointField(results); + if (geoPointField) { + combinedFields.push(geoPointField); + } + return combinedFields; +} + +export function addCombinedFieldsToMappings( + mappings: Mappings, + combinedFields: CombinedField[] +): Mappings { + const updatedMappings = { ...mappings }; + combinedFields.forEach((combinedField) => { + updatedMappings.properties[combinedField.combinedFieldName] = { + type: combinedField.mappingType, + }; + }); + return updatedMappings; +} + +export function removeCombinedFieldsFromMappings( + mappings: Mappings, + combinedFields: CombinedField[] +) { + const updatedMappings = { ...mappings }; + combinedFields.forEach((combinedField) => { + delete updatedMappings.properties[combinedField.combinedFieldName]; + }); + return updatedMappings; +} + +export function addCombinedFieldsToPipeline( + pipeline: IngestPipeline, + combinedFields: CombinedField[] +) { + const updatedPipeline = _.cloneDeep(pipeline); + combinedFields.forEach((combinedField) => { + updatedPipeline.processors.push({ + set: { + field: combinedField.combinedFieldName, + value: combinedField.fieldNames + .map((fieldName) => { + return `{{${fieldName}}}`; + }) + .join(combinedField.delimiter), + }, + }); + }); + return updatedPipeline; +} + +export function removeCombinedFieldsFromPipeline( + pipeline: IngestPipeline, + combinedFields: CombinedField[] +) { + return { + ...pipeline, + processors: pipeline.processors.filter((processor) => { + return 'set' in processor + ? !combinedFields.some((combinedField) => { + return processor.set.field === combinedField.combinedFieldName; + }) + : true; + }), + }; +} + +export function isWithinLatRange( + fieldName: string, + fieldStats: FindFileStructureResponse['field_stats'] +) { + return ( + fieldName in fieldStats && + 'max_value' in fieldStats[fieldName] && + fieldStats[fieldName]!.max_value! <= 90 && + 'min_value' in fieldStats[fieldName] && + fieldStats[fieldName]!.min_value! >= -90 + ); +} + +export function isWithinLonRange( + fieldName: string, + fieldStats: FindFileStructureResponse['field_stats'] +) { + return ( + fieldName in fieldStats && + 'max_value' in fieldStats[fieldName] && + fieldStats[fieldName]!.max_value! <= 180 && + 'min_value' in fieldStats[fieldName] && + fieldStats[fieldName]!.min_value! >= -180 + ); +} + +export function createGeoPointCombinedField( + latField: string, + lonField: string, + geoPointField: string +): CombinedField { + return { + mappingType: 'geo_point', + delimiter: ',', + combinedFieldName: geoPointField, + fieldNames: [latField, lonField], + }; +} + +export function getNameCollisionMsg(name: string) { + return i18n.translate('xpack.ml.fileDatavisualizer.nameCollisionMsg', { + defaultMessage: '"{name}" already exists, please provide a unique name', + values: { name }, + }); +} + +export function getFieldNames(results: FindFileStructureResponse): string[] { + return results.column_names !== undefined + ? results.column_names + : Object.keys(results.field_stats); +} + +function getGeoPointField(results: FindFileStructureResponse) { + const fieldNames = getFieldNames(results); + + const latField = fieldNames.find((columnName) => { + return ( + COMMON_LAT_NAMES.includes(columnName.toLowerCase()) && + isWithinLatRange(columnName, results.field_stats) + ); + }); + + const lonField = fieldNames.find((columnName) => { + return ( + COMMON_LON_NAMES.includes(columnName.toLowerCase()) && + isWithinLonRange(columnName, results.field_stats) + ); + }); + + if (!latField || !lonField) { + return null; + } + + const combinedFieldNames = [ + 'location', + 'point_location', + `${latField}_${lonField}`, + `location_${uuid()}`, + ]; + // Use first combinedFieldNames that does not have a naming collision + const geoPointField = combinedFieldNames.find((name) => { + return !fieldNames.includes(name); + }); + + return geoPointField ? createGeoPointCombinedField(latField, lonField, geoPointField) : null; +} diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.tsx index a79a7d36f3294..2b49746170f46 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.tsx +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.tsx @@ -17,7 +17,9 @@ import { EuiFlexItem, } from '@elastic/eui'; +import { CombinedField, CombinedFieldsForm } from '../combined_fields'; import { MLJobEditor, ML_EDITOR_MODE } from '../../../../jobs/jobs_list/components/ml_job_editor'; +import { FindFileStructureResponse } from '../../../../../../common/types/file_datavisualizer'; const EDITOR_HEIGHT = '300px'; interface Props { @@ -36,6 +38,9 @@ interface Props { onPipelineStringChange(): void; indexNameError: string; indexPatternNameError: string; + combinedFields: CombinedField[]; + onCombinedFieldsChange(combinedFields: CombinedField[]): void; + results: FindFileStructureResponse; } export const AdvancedSettings: FC = ({ @@ -54,6 +59,9 @@ export const AdvancedSettings: FC = ({ onPipelineStringChange, indexNameError, indexPatternNameError, + combinedFields, + onCombinedFieldsChange, + results, }) => { return ( @@ -123,6 +131,17 @@ export const AdvancedSettings: FC = ({ /> + + = ({ @@ -46,6 +51,9 @@ export const ImportSettings: FC = ({ onPipelineStringChange, indexNameError, indexPatternNameError, + combinedFields, + onCombinedFieldsChange, + results, }) => { const tabs = [ { @@ -64,6 +72,7 @@ export const ImportSettings: FC = ({ createIndexPattern={createIndexPattern} onCreateIndexPatternChange={onCreateIndexPatternChange} indexNameError={indexNameError} + combinedFields={combinedFields} /> ), @@ -93,6 +102,9 @@ export const ImportSettings: FC = ({ onPipelineStringChange={onPipelineStringChange} indexNameError={indexNameError} indexPatternNameError={indexPatternNameError} + combinedFields={combinedFields} + onCombinedFieldsChange={onCombinedFieldsChange} + results={results} /> ), diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/simple.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/simple.tsx index 1e716824729e3..f6cd5909cbb80 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/simple.tsx +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/simple.tsx @@ -9,6 +9,7 @@ import { FormattedMessage } from '@kbn/i18n/react'; import React, { FC } from 'react'; import { EuiFieldText, EuiFormRow, EuiCheckbox, EuiSpacer } from '@elastic/eui'; +import { CombinedField, CombinedFieldsReadOnlyForm } from '../combined_fields'; interface Props { index: string; @@ -17,6 +18,7 @@ interface Props { createIndexPattern: boolean; onCreateIndexPatternChange(): void; indexNameError: string; + combinedFields: CombinedField[]; } export const SimpleSettings: FC = ({ @@ -26,6 +28,7 @@ export const SimpleSettings: FC = ({ createIndexPattern, onCreateIndexPatternChange, indexNameError, + combinedFields, }) => { return ( @@ -75,6 +78,10 @@ export const SimpleSettings: FC = ({ onChange={onCreateIndexPatternChange} data-test-subj="mlFileDataVisCreateIndexPatternCheckbox" /> + + + + ); }; diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_view/import_view.js b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_view/import_view.js index 36b77a5a25e09..08b61a5fa4eed 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_view/import_view.js +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/import_view/import_view.js @@ -26,6 +26,11 @@ import { ImportProgress, IMPORT_STATUS } from '../import_progress'; import { ImportErrors } from '../import_errors'; import { ImportSummary } from '../import_summary'; import { ImportSettings } from '../import_settings'; +import { + addCombinedFieldsToPipeline, + addCombinedFieldsToMappings, + getDefaultCombinedFields, +} from '../combined_fields'; import { ExperimentalBadge } from '../experimental_badge'; import { getIndexPatternNames, loadIndexPatterns } from '../../../../util/index_utils'; import { ml } from '../../../../services/ml_api_service'; @@ -68,6 +73,7 @@ const DEFAULT_STATE = { timeFieldName: undefined, isFilebeatFlyoutVisible: false, checkingValidIndex: false, + combinedFields: [], }; export class ImportView extends Component { @@ -386,6 +392,10 @@ export class ImportView extends Component { }); }; + onCombinedFieldsChange = (combinedFields) => { + this.setState({ combinedFields }); + }; + setImportProgress = (progress) => { this.setState({ uploadProgress: progress, @@ -444,6 +454,7 @@ export class ImportView extends Component { timeFieldName, isFilebeatFlyoutVisible, checkingValidIndex, + combinedFields, } = this.state; const createPipeline = pipelineString !== ''; @@ -513,6 +524,9 @@ export class ImportView extends Component { onPipelineStringChange={this.onPipelineStringChange} indexNameError={indexNameError} indexPatternNameError={indexPatternNameError} + combinedFields={combinedFields} + onCombinedFieldsChange={this.onCombinedFieldsChange} + results={this.props.results} /> @@ -644,12 +658,22 @@ function getDefaultState(state, results) { ? JSON.stringify(DEFAULT_INDEX_SETTINGS, null, 2) : state.indexSettingsString; + const combinedFields = state.combinedFields.length + ? state.combinedFields + : getDefaultCombinedFields(results); + const mappingsString = - state.mappingsString === '' ? JSON.stringify(results.mappings, null, 2) : state.mappingsString; + state.mappingsString === '' + ? JSON.stringify(addCombinedFieldsToMappings(results.mappings, combinedFields), null, 2) + : state.mappingsString; const pipelineString = state.pipelineString === '' && results.ingest_pipeline !== undefined - ? JSON.stringify(results.ingest_pipeline, null, 2) + ? JSON.stringify( + addCombinedFieldsToPipeline(results.ingest_pipeline, combinedFields), + null, + 2 + ) : state.pipelineString; const timeFieldName = results.timestamp_field; @@ -660,6 +684,7 @@ function getDefaultState(state, results) { mappingsString, pipelineString, timeFieldName, + combinedFields, }; } From 3e5ae012c58e8011c9faf6b237657a2a18037fcf Mon Sep 17 00:00:00 2001 From: Kevin Logan <56395104+kevinlog@users.noreply.github.com> Date: Fri, 18 Sep 2020 12:28:40 -0400 Subject: [PATCH 07/27] skip snapshot tests in Trusted apps (#77905) --- .../pages/trusted_apps/view/trusted_apps_page.test.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_page.test.tsx b/x-pack/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_page.test.tsx index c0c9cdf227643..218cef36ed50a 100644 --- a/x-pack/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_page.test.tsx +++ b/x-pack/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_page.test.tsx @@ -34,7 +34,7 @@ describe('TrustedAppsPage', () => { }); }); - test('rendering', () => { + test.skip('rendering', () => { expect(render()).toMatchSnapshot(); }); @@ -78,7 +78,7 @@ describe('TrustedAppsPage', () => { expect(history.location.search).toBe('?page_index=2&page_size=20&show=create'); }); - it('should display create form', async () => { + it.skip('should display create form', async () => { const { getByTestId } = await renderAndClickAddButton(); expect(getByTestId('addTrustedAppFlyout-createForm')).toMatchSnapshot(); }); From cdb3c30ab9da70d4583d8a1e0f3942893c0eda5d Mon Sep 17 00:00:00 2001 From: Robert Austin Date: Fri, 18 Sep 2020 12:29:38 -0400 Subject: [PATCH 08/27] [Resolver] Refactor resolver assets (#77795) This PR splits the `assets` module into several other modules/hooks: * `calculateResolverFontSize` is now `fontSize` * `colorMap` is now `useColors` * `cubeAssetsForNow` is now `useCubeAssets` * `nodeAssets` is gone (inlined into `useCubeAssets`) The PaintServer and Symbol IDs no longer use random IDs. They are now based on the `resolverComponentInstanceID`. This sets us up to use a provider that can allow multiple resolver instances to share these assets. --- .../public/resolver/view/assets.tsx | 521 ------------------ .../public/resolver/view/edge_line.tsx | 17 +- .../public/resolver/view/font_size.ts | 12 + .../public/resolver/view/graph_controls.tsx | 4 +- .../resolver/view/panels/cube_for_process.tsx | 9 +- .../resolver/view/panels/node_details.tsx | 10 +- .../public/resolver/view/panels/node_list.tsx | 6 +- .../view/panels/panel_content_utilities.tsx | 11 +- .../resolver/view/process_event_dot.tsx | 17 +- .../view/resolver_without_providers.tsx | 5 +- .../public/resolver/view/submenu.tsx | 7 +- .../resolver/view/symbol_definitions.tsx | 354 ++++++++++++ .../public/resolver/view/use_colors.ts | 47 ++ .../public/resolver/view/use_cube_assets.ts | 121 ++++ .../resolver/view/use_paint_server_ids.ts | 28 + .../public/resolver/view/use_symbol_ids.ts | 30 + 16 files changed, 634 insertions(+), 565 deletions(-) delete mode 100644 x-pack/plugins/security_solution/public/resolver/view/assets.tsx create mode 100644 x-pack/plugins/security_solution/public/resolver/view/font_size.ts create mode 100644 x-pack/plugins/security_solution/public/resolver/view/symbol_definitions.tsx create mode 100644 x-pack/plugins/security_solution/public/resolver/view/use_colors.ts create mode 100644 x-pack/plugins/security_solution/public/resolver/view/use_cube_assets.ts create mode 100644 x-pack/plugins/security_solution/public/resolver/view/use_paint_server_ids.ts create mode 100644 x-pack/plugins/security_solution/public/resolver/view/use_symbol_ids.ts diff --git a/x-pack/plugins/security_solution/public/resolver/view/assets.tsx b/x-pack/plugins/security_solution/public/resolver/view/assets.tsx deleted file mode 100644 index db4b514a6c748..0000000000000 --- a/x-pack/plugins/security_solution/public/resolver/view/assets.tsx +++ /dev/null @@ -1,521 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -/* eslint-disable react/display-name */ - -import React, { memo } from 'react'; -import euiThemeAmsterdamDark from '@elastic/eui/dist/eui_theme_amsterdam_dark.json'; -import euiThemeAmsterdamLight from '@elastic/eui/dist/eui_theme_amsterdam_light.json'; -import { htmlIdGenerator, ButtonColor } from '@elastic/eui'; -import styled from 'styled-components'; -import { i18n } from '@kbn/i18n'; -import { ResolverProcessType } from '../types'; -import { useUiSetting } from '../../../../../../src/plugins/kibana_react/public'; - -type ResolverColorNames = - | 'descriptionText' - | 'full' - | 'graphControls' - | 'graphControlsBackground' - | 'resolverBackground' - | 'resolverEdge' - | 'resolverEdgeText' - | 'resolverBreadcrumbBackground' - | 'pillStroke'; - -type ColorMap = Record; -interface NodeStyleConfig { - backingFill: string; - cubeSymbol: string; - descriptionFill: string; - descriptionText: string; - isLabelFilled: boolean; - labelButtonFill: ButtonColor; - strokeColor: string; -} - -interface NodeStyleMap { - runningProcessCube: NodeStyleConfig; - runningTriggerCube: NodeStyleConfig; - terminatedProcessCube: NodeStyleConfig; - terminatedTriggerCube: NodeStyleConfig; -} - -const idGenerator = htmlIdGenerator(); - -/** - * Ids of paint servers to be referenced by fill and stroke attributes - */ -const PaintServerIds = { - runningProcessCube: idGenerator('psRunningProcessCube'), - runningTriggerCube: idGenerator('psRunningTriggerCube'), - terminatedProcessCube: idGenerator('psTerminatedProcessCube'), - terminatedTriggerCube: idGenerator('psTerminatedTriggerCube'), -}; - -/** - * PaintServers: Where color palettes, grandients, patterns and other similar concerns - * are exposed to the component - */ - -const PaintServers = memo(({ isDarkMode }: { isDarkMode: boolean }) => ( - <> - - - - - - - - - {isDarkMode ? ( - <> - - - - - - - - - - ) : ( - <> - - - - - - - - - - )} - -)); - -/** - * Ids of symbols to be linked by elements - */ -export const SymbolIds = { - processNodeLabel: idGenerator('nodeSymbol'), - runningProcessCube: idGenerator('runningCube'), - runningTriggerCube: idGenerator('runningTriggerCube'), - terminatedProcessCube: idGenerator('terminatedCube'), - terminatedTriggerCube: idGenerator('terminatedTriggerCube'), - processCubeActiveBacking: idGenerator('activeBacking'), -}; - -/** - * Defs entries that define shapes, masks and other spatial elements - */ -const SymbolsAndShapes = memo(({ isDarkMode }: { isDarkMode: boolean }) => ( - <> - - - - - {'Running Process'} - - - - - - - - - - - - - - {'resolver_dark process running'} - - - - - - - - - - - - - - {'Terminated Process'} - - - - - - - - - {'Terminated Trigger Process'} - {isDarkMode && ( - - )} - - {!isDarkMode && ( - - )} - - - - - - - {'resolver active backing'} - - - -)); - -/** - * This `` element is used to define the reusable assets for the Resolver - * It confers several advantages, including but not limited to: - * 1. Freedom of form for creative assets (beyond box-model constraints) - * 2. Separation of concerns between creative assets and more functional areas of the app - * 3. `` elements can be handled by compositor (faster) - */ -const SymbolDefinitionsComponent = memo(({ className }: { className?: string }) => { - const isDarkMode = useUiSetting('theme:darkMode'); - return ( - - - - - - - ); -}); - -export const SymbolDefinitions = styled(SymbolDefinitionsComponent)` - position: absolute; - left: 100%; - top: 100%; - width: 0; - height: 0; -`; - -const processTypeToCube: Record = { - processCreated: 'runningProcessCube', - processRan: 'runningProcessCube', - processTerminated: 'terminatedProcessCube', - unknownProcessEvent: 'runningProcessCube', - processCausedAlert: 'runningTriggerCube', - unknownEvent: 'runningProcessCube', -}; - -/** - * A hook to bring Resolver theming information into components. - */ -export const useResolverTheme = (): { - colorMap: ColorMap; - nodeAssets: NodeStyleMap; - cubeAssetsForNode: (isProcessTerimnated: boolean, isProcessTrigger: boolean) => NodeStyleConfig; -} => { - const isDarkMode = useUiSetting('theme:darkMode'); - const theme = isDarkMode ? euiThemeAmsterdamDark : euiThemeAmsterdamLight; - - const getThemedOption = (lightOption: string, darkOption: string): string => { - return isDarkMode ? darkOption : lightOption; - }; - - const colorMap = { - descriptionText: theme.euiTextColor, - full: theme.euiColorFullShade, - graphControls: theme.euiColorDarkestShade, - graphControlsBackground: theme.euiColorEmptyShade, - processBackingFill: `${theme.euiColorPrimary}${getThemedOption('0F', '1F')}`, // Add opacity 0F = 6% , 1F = 12% - resolverBackground: theme.euiColorEmptyShade, - resolverEdge: getThemedOption(theme.euiColorLightestShade, theme.euiColorLightShade), - resolverBreadcrumbBackground: theme.euiColorLightestShade, - resolverEdgeText: getThemedOption(theme.euiColorDarkShade, theme.euiColorFullShade), - triggerBackingFill: `${theme.euiColorDanger}${getThemedOption('0F', '1F')}`, - pillStroke: theme.euiColorLightShade, - }; - - const nodeAssets: NodeStyleMap = { - runningProcessCube: { - backingFill: colorMap.processBackingFill, - cubeSymbol: `#${SymbolIds.runningProcessCube}`, - descriptionFill: colorMap.descriptionText, - descriptionText: i18n.translate('xpack.securitySolution.endpoint.resolver.runningProcess', { - defaultMessage: 'Running Process', - }), - isLabelFilled: true, - labelButtonFill: 'primary', - strokeColor: theme.euiColorPrimary, - }, - runningTriggerCube: { - backingFill: colorMap.triggerBackingFill, - cubeSymbol: `#${SymbolIds.runningTriggerCube}`, - descriptionFill: colorMap.descriptionText, - descriptionText: i18n.translate('xpack.securitySolution.endpoint.resolver.runningTrigger', { - defaultMessage: 'Running Trigger', - }), - isLabelFilled: true, - labelButtonFill: 'danger', - strokeColor: theme.euiColorDanger, - }, - terminatedProcessCube: { - backingFill: colorMap.processBackingFill, - cubeSymbol: `#${SymbolIds.terminatedProcessCube}`, - descriptionFill: colorMap.descriptionText, - descriptionText: i18n.translate( - 'xpack.securitySolution.endpoint.resolver.terminatedProcess', - { - defaultMessage: 'Terminated Process', - } - ), - isLabelFilled: false, - labelButtonFill: 'primary', - strokeColor: theme.euiColorPrimary, - }, - terminatedTriggerCube: { - backingFill: colorMap.triggerBackingFill, - cubeSymbol: `#${SymbolIds.terminatedTriggerCube}`, - descriptionFill: colorMap.descriptionText, - descriptionText: i18n.translate( - 'xpack.securitySolution.endpoint.resolver.terminatedTrigger', - { - defaultMessage: 'Terminated Trigger', - } - ), - isLabelFilled: false, - labelButtonFill: 'danger', - strokeColor: theme.euiColorDanger, - }, - }; - - function cubeAssetsForNode(isProcessTerminated: boolean, isProcessTrigger: boolean) { - if (isProcessTerminated) { - if (isProcessTrigger) { - return nodeAssets.terminatedTriggerCube; - } else { - return nodeAssets[processTypeToCube.processTerminated]; - } - } else if (isProcessTrigger) { - return nodeAssets[processTypeToCube.processCausedAlert]; - } else { - return nodeAssets[processTypeToCube.processRan]; - } - } - - return { colorMap, nodeAssets, cubeAssetsForNode }; -}; - -export const calculateResolverFontSize = ( - magFactorX: number, - minFontSize: number, - slopeOfFontScale: number -): number => { - const fontSizeAdjustmentForScale = magFactorX > 1 ? slopeOfFontScale * (magFactorX - 1) : 0; - return minFontSize + fontSizeAdjustmentForScale; -}; diff --git a/x-pack/plugins/security_solution/public/resolver/view/edge_line.tsx b/x-pack/plugins/security_solution/public/resolver/view/edge_line.tsx index fcc363a1560d5..53b889004798f 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/edge_line.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/edge_line.tsx @@ -9,7 +9,8 @@ import styled from 'styled-components'; import { FormattedMessage } from '@kbn/i18n/react'; import { applyMatrix3, distance, angle } from '../models/vector2'; import { Vector2, Matrix3, EdgeLineMetadata } from '../types'; -import { useResolverTheme, calculateResolverFontSize } from './assets'; +import { fontSize } from './font_size'; +import { useColors } from './use_colors'; interface StyledEdgeLine { readonly resolverEdgeColor: string; @@ -19,7 +20,7 @@ interface StyledEdgeLine { const StyledEdgeLine = styled.div` position: absolute; height: ${(props) => { - return `${calculateResolverFontSize(props.magFactorX, 12, 8.5)}px`; + return `${fontSize(props.magFactorX, 12, 8.5)}px`; }}; background-color: ${(props) => props.resolverEdgeColor}; `; @@ -87,8 +88,8 @@ const EdgeLineComponent = React.memo( */ const screenStart = applyMatrix3(startPosition, projectionMatrix); const screenEnd = applyMatrix3(endPosition, projectionMatrix); - const [magFactorX] = projectionMatrix; - const { colorMap } = useResolverTheme(); + const [xScale] = projectionMatrix; + const colorMap = useColors(); const elapsedTime = edgeLineMetadata?.elapsedTime; /** @@ -96,7 +97,7 @@ const EdgeLineComponent = React.memo( * should be the same as the distance between the start and end points. */ const length = distance(screenStart, screenEnd); - const scaledTypeSize = calculateResolverFontSize(magFactorX, 10, 7.5); + const scaledTypeSize = fontSize(xScale, 10, 7.5); const style = { left: `${screenStart[0]}px`, @@ -120,8 +121,8 @@ const EdgeLineComponent = React.memo( /** * Calculates a fractional offset from 0 -> 5% as magFactorX decreases from 1 to a min of .5 */ - if (magFactorX < 1) { - const fractionalOffset = (1 / magFactorX) * ((1 - magFactorX) * 10); + if (xScale < 1) { + const fractionalOffset = (1 / xScale) * ((1 - xScale) * 10); elapsedTimeLeftPosPct += fractionalOffset; } @@ -130,7 +131,7 @@ const EdgeLineComponent = React.memo( className={className} style={style} resolverEdgeColor={colorMap.resolverEdge} - magFactorX={magFactorX} + magFactorX={xScale} data-test-subj="resolver:graph:edgeline" > {elapsedTime && ( diff --git a/x-pack/plugins/security_solution/public/resolver/view/font_size.ts b/x-pack/plugins/security_solution/public/resolver/view/font_size.ts new file mode 100644 index 0000000000000..d0340160eb539 --- /dev/null +++ b/x-pack/plugins/security_solution/public/resolver/view/font_size.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +/** + * Return a font-size based on a scale, minimum size, and a coefficient. + */ +export function fontSize(scale: number, minimum: number, slope: number): number { + return minimum + (scale > 1 ? slope * (scale - 1) : 0); +} diff --git a/x-pack/plugins/security_solution/public/resolver/view/graph_controls.tsx b/x-pack/plugins/security_solution/public/resolver/view/graph_controls.tsx index 610deef07775b..75aecf6747cca 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/graph_controls.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/graph_controls.tsx @@ -13,8 +13,8 @@ import { useSelector, useDispatch } from 'react-redux'; import { SideEffectContext } from './side_effect_context'; import { Vector2 } from '../types'; import * as selectors from '../store/selectors'; -import { useResolverTheme } from './assets'; import { ResolverAction } from '../store/actions'; +import { useColors } from './use_colors'; interface StyledGraphControls { graphControlsBackground: string; @@ -66,7 +66,7 @@ const GraphControlsComponent = React.memo( const dispatch: (action: ResolverAction) => unknown = useDispatch(); const scalingFactor = useSelector(selectors.scalingFactor); const { timestamp } = useContext(SideEffectContext); - const { colorMap } = useResolverTheme(); + const colorMap = useColors(); const handleZoomAmountChange = useCallback( (event: React.ChangeEvent | React.MouseEvent) => { diff --git a/x-pack/plugins/security_solution/public/resolver/view/panels/cube_for_process.tsx b/x-pack/plugins/security_solution/public/resolver/view/panels/cube_for_process.tsx index deddd17198229..4e9d64f5a76a4 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/panels/cube_for_process.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/panels/cube_for_process.tsx @@ -11,11 +11,12 @@ import { i18n } from '@kbn/i18n'; /* eslint-disable react/display-name */ import React, { memo } from 'react'; -import { useResolverTheme, SymbolIds } from '../assets'; interface StyledSVGCube { readonly isOrigin?: boolean; } +import { useCubeAssets } from '../use_cube_assets'; +import { useSymbolIDs } from '../use_symbol_ids'; /** * Icon representing a process node. @@ -34,8 +35,8 @@ export const CubeForProcess = memo(function ({ isOrigin?: boolean; className?: string; }) { - const { cubeAssetsForNode } = useResolverTheme(); - const { cubeSymbol, strokeColor } = cubeAssetsForNode(!running, false); + const { cubeSymbol, strokeColor } = useCubeAssets(!running, false); + const { processCubeActiveBacking } = useSymbolIDs(); return ( {isOrigin && ( { - if (!processEvent) { - return { descriptionText: '' }; - } - return cubeAssetsForNode(isProcessTerminated, false); - }, [processEvent, cubeAssetsForNode, isProcessTerminated]); + const { descriptionText } = useCubeAssets(isProcessTerminated, false); const nodeDetailHref = useSelector((state: ResolverState) => selectors.relativeHref(state)({ diff --git a/x-pack/plugins/security_solution/public/resolver/view/panels/node_list.tsx b/x-pack/plugins/security_solution/public/resolver/view/panels/node_list.tsx index fd564cde9d15c..6113cea4c4edc 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/panels/node_list.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/panels/node_list.tsx @@ -26,7 +26,7 @@ import { SafeResolverEvent } from '../../../../common/endpoint/types'; import { LimitWarning } from '../limit_warnings'; import { ResolverState } from '../../types'; import { useNavigateOrReplace } from '../use_navigate_or_replace'; -import { useResolverTheme } from '../assets'; +import { useColors } from '../use_colors'; const StyledLimitWarning = styled(LimitWarning)` flex-flow: row wrap; @@ -208,9 +208,7 @@ function NodeDetailLink({ name, item }: { name: string; item: ProcessTableView } const isTerminated = useSelector((state: ResolverState) => entityID === undefined ? false : selectors.isProcessTerminated(state)(entityID) ); - const { - colorMap: { descriptionText }, - } = useResolverTheme(); + const { descriptionText } = useColors(); return ( {name === '' ? ( diff --git a/x-pack/plugins/security_solution/public/resolver/view/panels/panel_content_utilities.tsx b/x-pack/plugins/security_solution/public/resolver/view/panels/panel_content_utilities.tsx index 19f0aa3fe1d67..a7d76277c6ab1 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/panels/panel_content_utilities.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/panels/panel_content_utilities.tsx @@ -4,11 +4,13 @@ * you may not use this file except in compliance with the Elastic License. */ +/* eslint-disable react/display-name */ + import { i18n } from '@kbn/i18n'; import { EuiBreadcrumbs, EuiCode, EuiBetaBadge } from '@elastic/eui'; import styled from 'styled-components'; import React, { memo } from 'react'; -import { useResolverTheme } from '../assets'; +import { useColors } from '../use_colors'; /** * A bold version of EuiCode to display certain titles with @@ -63,7 +65,7 @@ export const GeneratedText = React.memo(function ({ children }) { valueSplitByWordBoundaries[0], ...valueSplitByWordBoundaries .splice(1) - .reduce(function (generatedTextMemo: Array, value, index) { + .reduce(function (generatedTextMemo: Array, value) { return [...generatedTextMemo, value, ]; }, []), ]; @@ -73,7 +75,6 @@ export const GeneratedText = React.memo(function ({ children }) { }); } }); -GeneratedText.displayName = 'GeneratedText'; /** * A component to keep time representations in blocks so they don't wrap @@ -93,9 +94,7 @@ export const StyledBreadcrumbs = memo(function StyledBreadcrumbs({ }: { breadcrumbs: Breadcrumbs; }) { - const { - colorMap: { resolverBreadcrumbBackground, resolverEdgeText }, - } = useResolverTheme(); + const { resolverBreadcrumbBackground, resolverEdgeText } = useColors(); return ( <> diff --git a/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx b/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx index 3edfe36087e68..43b337c0603f6 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx @@ -12,12 +12,15 @@ import { FormattedMessage } from '@kbn/i18n/react'; import { NodeSubMenu } from './submenu'; import { applyMatrix3 } from '../models/vector2'; import { Vector2, Matrix3, ResolverState } from '../types'; -import { SymbolIds, useResolverTheme, calculateResolverFontSize } from './assets'; import { ResolverEvent, SafeResolverEvent } from '../../../common/endpoint/types'; import { useResolverDispatch } from './use_resolver_dispatch'; import * as eventModel from '../../../common/endpoint/models/event'; import * as selectors from '../store/selectors'; import { useNavigateOrReplace } from './use_navigate_or_replace'; +import { fontSize } from './font_size'; +import { useCubeAssets } from './use_cube_assets'; +import { useSymbolIDs } from './use_symbol_ids'; +import { useColors } from './use_colors'; interface StyledActionsContainer { readonly color: string; @@ -108,6 +111,8 @@ const UnstyledProcessEventDot = React.memo( // This should be unique to each instance of Resolver const htmlIDPrefix = `resolver:${resolverComponentInstanceID}`; + const symbolIDs = useSymbolIDs(); + /** * Convert the position, which is in 'world' coordinates, to screen coordinates. */ @@ -191,7 +196,7 @@ const UnstyledProcessEventDot = React.memo( * 18.75 : The smallest readable font size at which labels/descriptions can be read. Font size will not scale below this. * 12.5 : A 'slope' at which the font size will scale w.r.t. to zoom level otherwise */ - const scaledTypeSize = calculateResolverFontSize(xScale, 18.75, 12.5); + const scaledTypeSize = fontSize(xScale, 18.75, 12.5); const markerBaseSize = 15; const markerSize = markerBaseSize; @@ -212,7 +217,7 @@ const UnstyledProcessEventDot = React.memo( }) | null; } = React.createRef(); - const { colorMap, cubeAssetsForNode } = useResolverTheme(); + const colorMap = useColors(); const { backingFill, cubeSymbol, @@ -220,7 +225,7 @@ const UnstyledProcessEventDot = React.memo( isLabelFilled, labelButtonFill, strokeColor, - } = cubeAssetsForNode( + } = useCubeAssets( isProcessTerminated, /** * There is no definition for 'trigger process' yet. return false. @@ -323,7 +328,7 @@ const UnstyledProcessEventDot = React.memo( > {isOrigin && ( diff --git a/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx b/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx index dda90df0fff93..d6cc3e5249618 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx @@ -13,7 +13,7 @@ import styled from 'styled-components'; import { ResolverNodeStats } from '../../../common/endpoint/types'; import { useRelatedEventByCategoryNavigation } from './use_related_event_by_category_navigation'; import { Matrix3 } from '../types'; -import { useResolverTheme } from './assets'; +import { useColors } from './use_colors'; /** * i18n-translated titles for submenus and identifiers for display of states: @@ -182,9 +182,7 @@ const NodeSubMenuComponents = React.memo( // no matter what, keep track of the last project matrix that was used to size the popover projectionMatrixAtLastRender.current = projectionMatrix; }, [projectionMatrixAtLastRender, projectionMatrix]); - const { - colorMap: { pillStroke: pillBorderStroke, resolverBackground: pillFill }, - } = useResolverTheme(); + const { pillStroke: pillBorderStroke, resolverBackground: pillFill } = useColors(); const listStylesFromTheme = useMemo(() => { return { border: `1.5px solid ${pillBorderStroke}`, @@ -239,6 +237,7 @@ const NodeSubMenuComponents = React.memo( className="item" data-test-subj="resolver:map:node-submenu-item" style={listStylesFromTheme} + key={opt.optionTitle} > - } - closePopover={this.closePopover} - {...extraPopoverProps} - ownFocus={true} - isOpen={this.state.customizingAvatar} - > -
- -
- - - - + + + @@ -175,6 +134,37 @@ export class CustomizeSpace extends Component { rows={2} /> + + + + + + } + closePopover={this.closePopover} + {...extraPopoverProps} + ownFocus={true} + isOpen={this.state.customizingAvatar} + > +
+ +
+
+
); diff --git a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/__snapshots__/enabled_features.test.tsx.snap b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/__snapshots__/enabled_features.test.tsx.snap index 3835fa085c26e..ee1eb7c5e9aba 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/__snapshots__/enabled_features.test.tsx.snap +++ b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/__snapshots__/enabled_features.test.tsx.snap @@ -2,14 +2,14 @@ exports[`EnabledFeatures renders as expected 1`] = ` @@ -41,7 +41,7 @@ exports[`EnabledFeatures renders as expected 1`] = ` >

@@ -63,16 +63,16 @@ exports[`EnabledFeatures renders as expected 1`] = `

@@ -89,6 +89,12 @@ exports[`EnabledFeatures renders as expected 1`] = ` Array [ Object { "app": Array [], + "category": Object { + "euiIconType": "logoKibana", + "id": "kibana", + "label": "Kibana", + "order": 1000, + }, "icon": "spacesApp", "id": "feature-1", "name": "Feature 1", @@ -96,6 +102,12 @@ exports[`EnabledFeatures renders as expected 1`] = ` }, Object { "app": Array [], + "category": Object { + "euiIconType": "logoKibana", + "id": "kibana", + "label": "Kibana", + "order": 1000, + }, "icon": "spacesApp", "id": "feature-2", "name": "Feature 2", diff --git a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.test.tsx b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.test.tsx index 0eed6793ddbe0..4b22b92cfee16 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.test.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.test.tsx @@ -4,13 +4,13 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiLink } from '@elastic/eui'; import React from 'react'; -import { mountWithIntl, shallowWithIntl } from 'test_utils/enzyme_helpers'; -import { Space } from '../../../../common/model/space'; -import { SectionPanel } from '../section_panel'; +import { mountWithIntl, nextTick, shallowWithIntl } from 'test_utils/enzyme_helpers'; import { EnabledFeatures } from './enabled_features'; import { KibanaFeatureConfig } from '../../../../../features/public'; +import { DEFAULT_APP_CATEGORIES } from '../../../../../../../src/core/public'; +import { findTestSubject } from 'test_utils/find_test_subject'; +import { EuiCheckboxProps } from '@elastic/eui'; const features: KibanaFeatureConfig[] = [ { @@ -18,6 +18,7 @@ const features: KibanaFeatureConfig[] = [ name: 'Feature 1', icon: 'spacesApp', app: [], + category: DEFAULT_APP_CATEGORIES.kibana, privileges: null, }, { @@ -25,16 +26,11 @@ const features: KibanaFeatureConfig[] = [ name: 'Feature 2', icon: 'spacesApp', app: [], + category: DEFAULT_APP_CATEGORIES.kibana, privileges: null, }, ]; -const space: Space = { - id: 'my-space', - name: 'my space', - disabledFeatures: ['feature-1', 'feature-2'], -}; - describe('EnabledFeatures', () => { const getUrlForApp = (appId: string) => appId; @@ -43,7 +39,11 @@ describe('EnabledFeatures', () => { shallowWithIntl( { ).toMatchSnapshot(); }); - it('allows all features to be toggled on', () => { + it('allows all features in a category to be toggled on', () => { const changeHandler = jest.fn(); const wrapper = mountWithIntl( ); - // expand section panel - wrapper.find(SectionPanel).find(EuiLink).simulate('click'); - - // Click the "Change all" link - wrapper.find('.spcToggleAllFeatures__changeAllLink').first().simulate('click'); + // Click category-level toggle + const { + onChange = () => { + throw new Error('expected onChange to be defined'); + }, + } = wrapper.find('input#featureCategoryCheckbox_kibana').props() as EuiCheckboxProps; + onChange({ target: { checked: true } } as any); // Ask to show all features - wrapper.find('button[data-test-subj="spc-toggle-all-features-show"]').simulate('click'); + findTestSubject(wrapper, `featureCategoryButton_kibana`).simulate('click'); expect(changeHandler).toBeCalledTimes(1); @@ -81,27 +87,67 @@ describe('EnabledFeatures', () => { expect(updatedSpace.disabledFeatures).toEqual([]); }); - it('allows all features to be toggled off', () => { + it('allows all features in a category to be toggled off', async () => { const changeHandler = jest.fn(); const wrapper = mountWithIntl( ); - // expand section panel - wrapper.find(SectionPanel).find(EuiLink).simulate('click'); + // Click category-level toggle + const { + onChange = () => { + throw new Error('expected onChange to be defined'); + }, + } = wrapper.find('input#featureCategoryCheckbox_kibana').props() as EuiCheckboxProps; + onChange({ target: { checked: false } } as any); + + // Ask to show all features + findTestSubject(wrapper, `featureCategoryButton_kibana`).simulate('click'); + + await nextTick(); + wrapper.update(); + + expect(changeHandler).toBeCalledTimes(1); + + const updatedSpace = changeHandler.mock.calls[0][0]; + + expect(updatedSpace.disabledFeatures).toEqual(['feature-1', 'feature-2']); + }); + + it('allows all features to be toggled off', async () => { + const changeHandler = jest.fn(); + + const wrapper = mountWithIntl( + + ); - // Click the "Change all" link - wrapper.find('.spcToggleAllFeatures__changeAllLink').first().simulate('click'); + // show should not be visible when all features are already visible + expect(findTestSubject(wrapper, 'showAllFeaturesLink')).toHaveLength(0); + findTestSubject(wrapper, 'hideAllFeaturesLink').simulate('click'); - // Ask to hide all features - wrapper.find('button[data-test-subj="spc-toggle-all-features-hide"]').simulate('click'); + await nextTick(); + wrapper.update(); expect(changeHandler).toBeCalledTimes(1); @@ -109,4 +155,109 @@ describe('EnabledFeatures', () => { expect(updatedSpace.disabledFeatures).toEqual(['feature-1', 'feature-2']); }); + + it('allows all features to be toggled on', async () => { + const changeHandler = jest.fn(); + + const wrapper = mountWithIntl( + + ); + + // hide should not be visible when all features are already hidden + expect(findTestSubject(wrapper, 'hideAllFeaturesLink')).toHaveLength(0); + findTestSubject(wrapper, 'showAllFeaturesLink').simulate('click'); + + await nextTick(); + wrapper.update(); + + expect(changeHandler).toBeCalledTimes(1); + + const updatedSpace = changeHandler.mock.calls[0][0]; + + expect(updatedSpace.disabledFeatures).toEqual([]); + }); + + it('displays both show and hide options when a non-zero subset of features are toggled on', async () => { + const wrapper = mountWithIntl( + + ); + expect(findTestSubject(wrapper, 'hideAllFeaturesLink')).toHaveLength(1); + expect(findTestSubject(wrapper, 'showAllFeaturesLink')).toHaveLength(1); + }); + + describe('feature category button', () => { + it(`does not toggle visibility when it contains more than one item`, () => { + const changeHandler = jest.fn(); + const wrapper = mountWithIntl( + + ); + + findTestSubject(wrapper, `featureCategoryButton_kibana`).simulate('click'); + expect(changeHandler).not.toHaveBeenCalled(); + }); + + it('toggles item visibility when the category contains a single item', () => { + const changeHandler = jest.fn(); + const wrapper = mountWithIntl( + + ); + + findTestSubject(wrapper, `featureCategoryButton_management`).simulate('click'); + expect(changeHandler).toBeCalledTimes(1); + + const updatedSpace = changeHandler.mock.calls[0][0]; + + expect(updatedSpace.disabledFeatures).toEqual(['feature-3']); + }); + }); }); diff --git a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.tsx b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.tsx index 689bb610d5f38..5e7629c29bbdd 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/enabled_features.tsx @@ -34,8 +34,8 @@ export class EnabledFeatures extends Component { return ( {

@@ -114,7 +114,7 @@ export class EnabledFeatures extends Component { {' '} {details} @@ -135,16 +135,16 @@ export class EnabledFeatures extends Component {

), diff --git a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.scss b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.scss new file mode 100644 index 0000000000000..4f73349edac20 --- /dev/null +++ b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.scss @@ -0,0 +1,4 @@ +.spcFeatureTableAccordionContent { + // Align accordion content with the feature category logo in the accordion's buttonContent + padding-left: $euiSizeXL; +} \ No newline at end of file diff --git a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.tsx b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.tsx index 9265ca46e3a3a..95ff475ef4e30 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/enabled_features/feature_table.tsx @@ -4,14 +4,29 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiIcon, EuiInMemoryTable, EuiSwitch, EuiText, IconType } from '@elastic/eui'; +import { EuiCallOut } from '@elastic/eui'; + +import { + EuiAccordion, + EuiCheckbox, + EuiCheckboxProps, + EuiFlexGroup, + EuiFlexItem, + EuiHorizontalRule, + EuiIcon, + EuiLink, + EuiSpacer, + EuiText, + EuiTitle, +} from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { AppCategory } from 'kibana/public'; import _ from 'lodash'; -import React, { ChangeEvent, Component } from 'react'; +import React, { ChangeEvent, Component, ReactElement } from 'react'; import { KibanaFeatureConfig } from '../../../../../../plugins/features/public'; import { Space } from '../../../../common/model/space'; -import { ToggleAllFeatures } from './toggle_all_features'; +import { getEnabledFeatures } from '../../lib/feature_utils'; +import './feature_table.scss'; interface Props { space: Partial; @@ -20,15 +35,201 @@ interface Props { } export class FeatureTable extends Component { + private featureCategories: Map = new Map(); + + constructor(props: Props) { + super(props); + // features are static for the lifetime of the page, so this is safe to do here in a non-reactive manner + props.features.forEach((feature) => { + if (!this.featureCategories.has(feature.category.id)) { + this.featureCategories.set(feature.category.id, []); + } + this.featureCategories.get(feature.category.id)!.push(feature); + }); + } + public render() { - const { space, features } = this.props; + const { space } = this.props; + + const accordions: Array<{ order: number; element: ReactElement }> = []; + this.featureCategories.forEach((featuresInCategory) => { + const { category } = featuresInCategory[0]; + + const featureCount = featuresInCategory.length; + const enabledCount = getEnabledFeatures(featuresInCategory, space).length; + + const canExpandCategory = featuresInCategory.length > 1; + + const checkboxProps: EuiCheckboxProps = { + id: `featureCategoryCheckbox_${category.id}`, + indeterminate: enabledCount > 0 && enabledCount < featureCount, + checked: featureCount === enabledCount, + ['aria-label']: i18n.translate( + 'xpack.spaces.management.enabledFeatures.featureCategoryButtonLabel', + { defaultMessage: 'Category toggle' } + ), + onClick: (e) => { + // Clicking the checkbox should not cause the accordion to expand. + // Stopping event propagation ensures this. + e.stopPropagation(); + }, + onChange: (e) => { + this.setFeaturesVisibility( + featuresInCategory.map((f) => f.id), + e.target.checked + ); + }, + }; + + const buttonContent = ( + { + if (!canExpandCategory) { + const isChecked = enabledCount > 0; + this.setFeaturesVisibility( + featuresInCategory.map((f) => f.id), + !isChecked + ); + } + }} + > + + + + {category.euiIconType ? ( + + + + ) : null} + + +

{category.label}

+ + + + ); + + const label: string = i18n.translate('xpack.spaces.management.featureAccordionSwitchLabel', { + defaultMessage: '{enabledCount} / {featureCount} features visible', + values: { + enabledCount, + featureCount, + }, + }); + const extraAction = ( + + ); + + const helpText = this.getCategoryHelpText(category); + + const accordion = ( + +
+ + {helpText && ( + <> + + {helpText} + + + + )} + {featuresInCategory.map((feature) => { + const featureChecked = !( + space.disabledFeatures && space.disabledFeatures.includes(feature.id) + ); + + return ( + + + + + + ); + })} +
+
+ ); + + accordions.push({ + order: category.order ?? Number.MAX_SAFE_INTEGER, + element: accordion, + }); + }); - const items = features.map((feature) => ({ - feature, - space, - })); + accordions.sort((a1, a2) => a1.order - a2.order); - return ; + const featureCount = this.props.features.length; + const enabledCount = getEnabledFeatures(this.props.features, this.props.space).length; + const controls = []; + if (enabledCount < featureCount) { + controls.push( + this.showAll()} data-test-subj="showAllFeaturesLink"> + + {i18n.translate('xpack.spaces.management.selectAllFeaturesLink', { + defaultMessage: 'Select all', + })} + + + ); + } + if (enabledCount > 0) { + controls.push( + this.hideAll()} data-test-subj="hideAllFeaturesLink"> + + {i18n.translate('xpack.spaces.management.deselectAllFeaturesLink', { + defaultMessage: 'Deselect all', + })} + + + ); + } + + return ( +
+ + + + + {i18n.translate('xpack.spaces.management.featureVisibilityTitle', { + defaultMessage: 'Feature visibility', + })} + + + + {controls.map((control, idx) => ( + + {control} + + ))} + + + {accordions.flatMap((a, idx) => [ + a.element, + , + ])} +
+ ); } public onChange = (featureId: string) => (e: ChangeEvent) => { @@ -49,67 +250,41 @@ export class FeatureTable extends Component { this.props.onChange(updatedSpace); }; - private onChangeAll = (visible: boolean) => { + private getAllFeatureIds = () => + [...this.featureCategories.values()].flat().map((feature) => feature.id); + + private hideAll = () => { + this.setFeaturesVisibility(this.getAllFeatureIds(), false); + }; + + private showAll = () => { + this.setFeaturesVisibility(this.getAllFeatureIds(), true); + }; + + private setFeaturesVisibility = (features: string[], visible: boolean) => { const updatedSpace: Partial = { ...this.props.space, }; if (visible) { - updatedSpace.disabledFeatures = []; + updatedSpace.disabledFeatures = (updatedSpace.disabledFeatures ?? []).filter( + (df) => !features.includes(df) + ); } else { - updatedSpace.disabledFeatures = this.props.features.map((feature) => feature.id); + updatedSpace.disabledFeatures = Array.from( + new Set([...(updatedSpace.disabledFeatures ?? []), ...features]) + ); } this.props.onChange(updatedSpace); }; - private getColumns = () => [ - { - field: 'feature', - name: i18n.translate('xpack.spaces.management.enabledSpaceFeaturesFeatureColumnTitle', { - defaultMessage: 'Feature', - }), - render: ( - feature: KibanaFeatureConfig, - _item: { feature: KibanaFeatureConfig; space: Props['space'] } - ) => { - return ( - - -   {feature.name} - - ); - }, - }, - { - field: 'space', - width: '150', - name: ( - - - - - ), - - render: (spaceEntry: Space, record: Record) => { - const checked = !( - spaceEntry.disabledFeatures && spaceEntry.disabledFeatures.includes(record.feature.id) - ); - - return ( - - ); - }, - }, - ]; + private getCategoryHelpText = (category: AppCategory) => { + if (category.id === 'management') { + return i18n.translate('xpack.spaces.management.managementCategoryHelpText', { + defaultMessage: + 'Access to Stack Management is determined by your privileges, and cannot be hidden by Spaces.', + }); + } + }; } diff --git a/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.test.tsx b/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.test.tsx index f580720848875..66f5ea87551d3 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.test.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.test.tsx @@ -4,19 +4,19 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiButton, EuiLink, EuiSwitch } from '@elastic/eui'; +import { EuiButton, EuiCheckboxProps } from '@elastic/eui'; import { ReactWrapper } from 'enzyme'; import React from 'react'; import { mountWithIntl } from 'test_utils/enzyme_helpers'; import { ConfirmAlterActiveSpaceModal } from './confirm_alter_active_space_modal'; import { ManageSpacePage } from './manage_space_page'; -import { SectionPanel } from './section_panel'; import { spacesManagerMock } from '../../spaces_manager/mocks'; import { SpacesManager } from '../../spaces_manager'; import { notificationServiceMock, scopedHistoryMock } from 'src/core/public/mocks'; import { featuresPluginMock } from '../../../../features/public/mocks'; import { KibanaFeature } from '../../../../features/public'; +import { DEFAULT_APP_CATEGORIES } from '../../../../../../src/core/public'; // To be resolved by EUI team. // https://github.com/elastic/eui/issues/3712 @@ -39,6 +39,7 @@ featuresStart.getFeatures.mockResolvedValue([ name: 'feature 1', icon: 'spacesApp', app: [], + category: DEFAULT_APP_CATEGORIES.kibana, privileges: null, }), ]); @@ -309,16 +310,12 @@ function updateSpace(wrapper: ReactWrapper, updateFeature = true) { } function toggleFeature(wrapper: ReactWrapper) { - const featureSectionButton = wrapper - .find(SectionPanel) - .filter('[data-test-subj="enabled-features-panel"]') - .find(EuiLink); - - featureSectionButton.simulate('click'); - - wrapper.update(); - - wrapper.find(EuiSwitch).find('button').simulate('click'); + const { + onChange = () => { + throw new Error('expected onChange to be defined'); + }, + } = wrapper.find('input#featureCategoryCheckbox_kibana').props() as EuiCheckboxProps; + onChange({ target: { checked: false } } as any); wrapper.update(); } diff --git a/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.tsx b/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.tsx index 5338710b7c8a4..6943e27501554 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/manage_space_page.tsx @@ -177,11 +177,16 @@ export class ManageSpacePage extends Component { }; public getFormHeading = () => ( - -

- {this.getTitle()} -

-
+ + + +

{this.getTitle()}

+
+
+ + + +
); public getTitle = () => { diff --git a/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.test.tsx b/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.test.tsx index 2d1ec727b3348..d9ad63c30adde 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.test.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.test.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiIcon } from '@elastic/eui'; +import { EuiBadge } from '@elastic/eui'; import React from 'react'; import { shallowWithIntl } from 'test_utils/enzyme_helpers'; import { ReservedSpaceBadge } from './reserved_space_badge'; @@ -24,7 +24,7 @@ const unreservedSpace = { test('it renders without crashing', () => { const wrapper = shallowWithIntl(); - expect(wrapper.find(EuiIcon)).toHaveLength(1); + expect(wrapper.find(EuiBadge)).toHaveLength(1); }); test('it renders nothing for an unreserved space', () => { diff --git a/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.tsx b/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.tsx index 38bf351902096..f3a2273d90e8c 100644 --- a/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.tsx +++ b/x-pack/plugins/spaces/public/management/edit_space/reserved_space_badge.tsx @@ -6,7 +6,7 @@ import React from 'react'; -import { EuiIcon, EuiToolTip } from '@elastic/eui'; +import { EuiBadge, EuiToolTip } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; import { isReservedSpace } from '../../../common'; import { Space } from '../../../common/model/space'; @@ -28,7 +28,9 @@ export const ReservedSpaceBadge = (props: Props) => { /> } > - + + Reserved space + ); } diff --git a/x-pack/plugins/spaces/public/management/spaces_grid/spaces_grid_pages.test.tsx b/x-pack/plugins/spaces/public/management/spaces_grid/spaces_grid_pages.test.tsx index fe4bdc865094f..c1d19eb06c2e7 100644 --- a/x-pack/plugins/spaces/public/management/spaces_grid/spaces_grid_pages.test.tsx +++ b/x-pack/plugins/spaces/public/management/spaces_grid/spaces_grid_pages.test.tsx @@ -47,6 +47,7 @@ featuresStart.getFeatures.mockResolvedValue([ name: 'feature 1', icon: 'spacesApp', app: [], + category: { id: 'foo', label: 'foo' }, privileges: null, }), ]); diff --git a/x-pack/plugins/spaces/public/management/spaces_management_app.test.tsx b/x-pack/plugins/spaces/public/management/spaces_management_app.test.tsx index 1e8520a2617dd..e345657a785c1 100644 --- a/x-pack/plugins/spaces/public/management/spaces_management_app.test.tsx +++ b/x-pack/plugins/spaces/public/management/spaces_management_app.test.tsx @@ -88,7 +88,11 @@ describe('spacesManagementApp', () => { expect(setBreadcrumbs).toHaveBeenCalledWith([{ href: `/`, text: 'Spaces' }]); expect(container).toMatchInlineSnapshot(`
- Spaces Page: {"capabilities":{"catalogue":{},"management":{},"navLinks":{}},"notifications":{"toasts":{}},"spacesManager":{"onActiveSpaceChange$":{"_isScalar":false}},"history":{"action":"PUSH","length":1,"location":{"pathname":"/","search":"","hash":""}},"securityEnabled":true} +
`); @@ -107,7 +111,11 @@ describe('spacesManagementApp', () => { ]); expect(container).toMatchInlineSnapshot(`
- Spaces Edit Page: {"capabilities":{"catalogue":{},"management":{},"navLinks":{}},"notifications":{"toasts":{}},"spacesManager":{"onActiveSpaceChange$":{"_isScalar":false}},"history":{"action":"PUSH","length":1,"location":{"pathname":"/create","search":"","hash":""}},"securityEnabled":true} +
`); @@ -128,7 +136,11 @@ describe('spacesManagementApp', () => { ]); expect(container).toMatchInlineSnapshot(`
- Spaces Edit Page: {"capabilities":{"catalogue":{},"management":{},"navLinks":{}},"notifications":{"toasts":{}},"spacesManager":{"onActiveSpaceChange$":{"_isScalar":false}},"spaceId":"some-space","history":{"action":"PUSH","length":1,"location":{"pathname":"/edit/some-space","search":"","hash":""}},"securityEnabled":true} +
`); diff --git a/x-pack/plugins/spaces/public/management/spaces_management_app.tsx b/x-pack/plugins/spaces/public/management/spaces_management_app.tsx index 5b8b993d96adc..a328c50af4e7a 100644 --- a/x-pack/plugins/spaces/public/management/spaces_management_app.tsx +++ b/x-pack/plugins/spaces/public/management/spaces_management_app.tsx @@ -9,6 +9,7 @@ import { render, unmountComponentAtNode } from 'react-dom'; import { Router, Route, Switch, useParams } from 'react-router-dom'; import { i18n } from '@kbn/i18n'; import { StartServicesAccessor } from 'src/core/public'; +import { RedirectAppLinks } from '../../../../../src/plugins/kibana_react/public'; import { SecurityLicense } from '../../../security/public'; import { RegisterManagementAppArgs } from '../../../../../src/plugins/management/public'; import { PluginsStart } from '../plugin'; @@ -32,6 +33,7 @@ export const spacesManagementApp = Object.freeze({ title: i18n.translate('xpack.spaces.displayName', { defaultMessage: 'Spaces', }), + async mount({ element, setBreadcrumbs, history }) { const [ { notifications, i18n: i18nStart, application }, @@ -114,19 +116,21 @@ export const spacesManagementApp = Object.freeze({ render( - - - - - - - - - - - - - + + + + + + + + + + + + + + + , element ); diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 76a3b58a8f3e3..868fa8a7e6177 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -17539,13 +17539,10 @@ "xpack.spaces.management.enabledSpaceFeatures.allFeaturesEnabledMessage": "(表示されているすべての機能)", "xpack.spaces.management.enabledSpaceFeatures.enabledFeaturesSectionMessage": "機能の表示をカスタマイズ", "xpack.spaces.management.enabledSpaceFeatures.enableFeaturesInSpaceMessage": "このスペースでどの機能が表示されるかを管理します。", - "xpack.spaces.management.enabledSpaceFeatures.goToRolesLink": "セキュアなアクセスをご希望の場合は、{rolesLink} にアクセスしてください。", "xpack.spaces.management.enabledSpaceFeatures.noFeaturesEnabledMessage": "(表示されている機能がありません)", "xpack.spaces.management.enabledSpaceFeatures.notASecurityMechanismMessage": "この機能は UI で非表示になっていますが、無効ではありません。", "xpack.spaces.management.enabledSpaceFeatures.rolesLinkText": "ロール", "xpack.spaces.management.enabledSpaceFeatures.someFeaturesEnabledMessage": "({featureCount} 件中 {enabledCount} 件の機能を表示中)", - "xpack.spaces.management.enabledSpaceFeaturesEnabledColumnTitle": "表示しますか?", - "xpack.spaces.management.enabledSpaceFeaturesFeatureColumnTitle": "機能", "xpack.spaces.management.hideAllFeaturesText": "すべて非表示", "xpack.spaces.management.manageSpacePage.avatarFormRowLabel": "アバター", "xpack.spaces.management.manageSpacePage.awesomeSpacePlaceholder": "素晴らしいスペース", @@ -17553,10 +17550,8 @@ "xpack.spaces.management.manageSpacePage.clickToCustomizeTooltip": "クリックしてこのスペースのアバターをカスタマイズします", "xpack.spaces.management.manageSpacePage.createSpaceButton": "スペースを作成", "xpack.spaces.management.manageSpacePage.createSpaceTitle": "スペースの作成", - "xpack.spaces.management.manageSpacePage.customizeSpacePanelDescription": "スペースに名前を付けてアバターをカスタマイズします", "xpack.spaces.management.manageSpacePage.customizeSpacePanelUrlIdentifierEditable": "URL 識別子に注意してください。スペースの作成後に変更することはできません。", "xpack.spaces.management.manageSpacePage.customizeSpacePanelUrlIdentifierNotEditable": "URL 識別子は変更できません。", - "xpack.spaces.management.manageSpacePage.customizeSpaceTitle": "スペースのカスタマイズ", "xpack.spaces.management.manageSpacePage.customizeVisibleFeatures": "表示される機能のカスタマイズ", "xpack.spaces.management.manageSpacePage.errorLoadingSpaceTitle": "スペースの読み込み中にエラーが発生: {message}", "xpack.spaces.management.manageSpacePage.errorSavingSpaceTitle": "スペースの保存中にエラーが発生: {message}", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 89c7a03e099d3..8bd3fcb7c3a3f 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -17549,13 +17549,10 @@ "xpack.spaces.management.enabledSpaceFeatures.allFeaturesEnabledMessage": "(所有可见功能)", "xpack.spaces.management.enabledSpaceFeatures.enabledFeaturesSectionMessage": "定制功能显示", "xpack.spaces.management.enabledSpaceFeatures.enableFeaturesInSpaceMessage": "控制哪些功能在此工作区中可见。", - "xpack.spaces.management.enabledSpaceFeatures.goToRolesLink": "想保护访问?前往 {rolesLink}。", "xpack.spaces.management.enabledSpaceFeatures.noFeaturesEnabledMessage": "(没有可见功能)", "xpack.spaces.management.enabledSpaceFeatures.notASecurityMechanismMessage": "该功能在 UI 中已隐藏,但未禁用。", "xpack.spaces.management.enabledSpaceFeatures.rolesLinkText": "角色", "xpack.spaces.management.enabledSpaceFeatures.someFeaturesEnabledMessage": "({enabledCount} / {featureCount} 个功能可见)", - "xpack.spaces.management.enabledSpaceFeaturesEnabledColumnTitle": "显示?", - "xpack.spaces.management.enabledSpaceFeaturesFeatureColumnTitle": "功能", "xpack.spaces.management.hideAllFeaturesText": "全部隐藏", "xpack.spaces.management.manageSpacePage.avatarFormRowLabel": "头像", "xpack.spaces.management.manageSpacePage.awesomeSpacePlaceholder": "超卓的空间", @@ -17563,10 +17560,8 @@ "xpack.spaces.management.manageSpacePage.clickToCustomizeTooltip": "单击可定制此工作区头像", "xpack.spaces.management.manageSpacePage.createSpaceButton": "创建工作区", "xpack.spaces.management.manageSpacePage.createSpaceTitle": "创建一个空间", - "xpack.spaces.management.manageSpacePage.customizeSpacePanelDescription": "命名您的工作区并定制其头像。", "xpack.spaces.management.manageSpacePage.customizeSpacePanelUrlIdentifierEditable": "记下 URL 标识符。创建工作区后,将不能更改它。", "xpack.spaces.management.manageSpacePage.customizeSpacePanelUrlIdentifierNotEditable": "URL 标识符无法更改。", - "xpack.spaces.management.manageSpacePage.customizeSpaceTitle": "定制您的工作区", "xpack.spaces.management.manageSpacePage.customizeVisibleFeatures": "定制可见功能", "xpack.spaces.management.manageSpacePage.errorLoadingSpaceTitle": "加载空间时出错:{message}", "xpack.spaces.management.manageSpacePage.errorSavingSpaceTitle": "保存空间时出错:{message}", diff --git a/x-pack/plugins/uptime/server/kibana.index.ts b/x-pack/plugins/uptime/server/kibana.index.ts index 5c3211eff3b4e..cd2dc5018e110 100644 --- a/x-pack/plugins/uptime/server/kibana.index.ts +++ b/x-pack/plugins/uptime/server/kibana.index.ts @@ -5,6 +5,7 @@ */ import { Request, Server } from 'hapi'; +import { DEFAULT_APP_CATEGORIES } from '../../../../src/core/server'; import { PLUGIN } from '../common/constants/plugin'; import { compose } from './lib/compose/kibana'; import { initUptimeServer } from './uptime_server'; @@ -31,6 +32,7 @@ export const initServerWithKibana = (server: UptimeCoreSetup, plugins: UptimeCor id: PLUGIN.ID, name: PLUGIN.NAME, order: 1000, + category: DEFAULT_APP_CATEGORIES.observability, navLinkId: PLUGIN.ID, icon: 'uptimeApp', app: ['uptime', 'kibana'], diff --git a/x-pack/test/accessibility/apps/spaces.ts b/x-pack/test/accessibility/apps/spaces.ts index e11de1376e400..f4553e4c3a6fe 100644 --- a/x-pack/test/accessibility/apps/spaces.ts +++ b/x-pack/test/accessibility/apps/spaces.ts @@ -51,7 +51,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { it('a11y test for for customize space card', async () => { await PageObjects.spaceSelector.clickEnterSpaceName(); await PageObjects.spaceSelector.addSpaceName('space_a'); - await PageObjects.spaceSelector.clickSpaceAcustomAvatar(); + await PageObjects.spaceSelector.clickCustomizeSpaceAvatar('space_a'); await a11y.testAppSnapshot(); await browser.pressKeys(browser.keys.ESCAPE); }); @@ -75,30 +75,14 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await a11y.testAppSnapshot(); }); - it('a11y test for click on "show" button to open customize feature display', async () => { - await retry.waitFor( - 'show button is visible', - async () => await testSubjects.exists('show-hide-section-link') - ); - await PageObjects.spaceSelector.clickShowFeatures(); - await a11y.testAppSnapshot(); - }); - - it('a11y test for change all option for feature visibility popover', async () => { - await PageObjects.spaceSelector.clickFeaturesVisibilityButton(); + it('a11y test for toggling an entire feature category', async () => { + await PageObjects.spaceSelector.toggleFeatureCategoryVisibility('kibana'); await a11y.testAppSnapshot(); - }); - it('a11y test for hide all feature visibility popover option', async () => { - await PageObjects.spaceSelector.clickHideAllFeatures(); + await PageObjects.spaceSelector.openFeatureCategory('kibana'); await a11y.testAppSnapshot(); - }); - it('a11y test for toggle individual feature - using enterprise feature visibility', async () => { - await PageObjects.spaceSelector.clickFeaturesVisibilityButton(); - await PageObjects.spaceSelector.clickShowAllFeatures(); - await PageObjects.spaceSelector.toggleFeatureVisibility('enterpriseSearch'); - await a11y.testAppSnapshot(); + await PageObjects.spaceSelector.toggleFeatureCategoryVisibility('kibana'); }); it('a11y test for space listing page', async () => { diff --git a/x-pack/test/alerting_api_integration/common/fixtures/plugins/actions_simulators/server/plugin.ts b/x-pack/test/alerting_api_integration/common/fixtures/plugins/actions_simulators/server/plugin.ts index 68ff3dad9ae86..43e4f642bb943 100644 --- a/x-pack/test/alerting_api_integration/common/fixtures/plugins/actions_simulators/server/plugin.ts +++ b/x-pack/test/alerting_api_integration/common/fixtures/plugins/actions_simulators/server/plugin.ts @@ -76,6 +76,7 @@ export class FixturePlugin implements Plugin Date: Fri, 18 Sep 2020 11:33:15 -0500 Subject: [PATCH 10/27] [ML] Fix registerUrlGenerator broken on basic licensing (#77832) --- x-pack/plugins/ml/public/plugin.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/ml/public/plugin.ts b/x-pack/plugins/ml/public/plugin.ts index d8e0c7274b549..8feef489fdde1 100644 --- a/x-pack/plugins/ml/public/plugin.ts +++ b/x-pack/plugins/ml/public/plugin.ts @@ -106,12 +106,17 @@ export class MlPlugin implements Plugin { const licensing = pluginsSetup.licensing.license$.pipe(take(1)); licensing.subscribe(async (license) => { const [coreStart] = await core.getStartServices(); + if (isMlEnabled(license)) { // add ML to home page if (pluginsSetup.home) { registerFeature(pluginsSetup.home); } + // the mlUrlGenerator should be registered even without full license + // for other plugins to access ML links + registerUrlGenerator(pluginsSetup.share, core); + const { capabilities } = coreStart.application; // register ML for the index pattern management no data screen. @@ -129,7 +134,6 @@ export class MlPlugin implements Plugin { } registerEmbeddables(pluginsSetup.embeddable, core); registerMlUiActions(pluginsSetup.uiActions, core); - registerUrlGenerator(pluginsSetup.share, core); } else if (managementApp) { managementApp.disable(); } From 8ce495b6bc7874e23707e7802678d691cd3a9d3b Mon Sep 17 00:00:00 2001 From: Marta Bondyra Date: Fri, 18 Sep 2020 18:41:22 +0200 Subject: [PATCH 11/27] [Lens] adding some functional tests (#77863) --- .../definitions/filters/filter_popover.tsx | 1 + .../definitions/shared_components/buckets.tsx | 7 +- .../lens/public/pie_visualization/toolbar.tsx | 1 + .../legend_settings_popover.tsx | 1 + .../shared_components/toolbar_button.tsx | 3 + .../shared_components/toolbar_popover.tsx | 3 + .../axis_settings_popover.tsx | 12 +- .../xy_visualization/xy_config_panel.tsx | 3 + .../dashboard_mode/dashboard_empty_screen.js | 3 + x-pack/test/functional/apps/lens/dashboard.ts | 20 +++- x-pack/test/functional/apps/lens/rollup.ts | 3 + .../test/functional/apps/lens/smokescreen.ts | 103 +++++++++++++++--- .../test/functional/page_objects/lens_page.ts | 80 ++++++++++++-- 13 files changed, 213 insertions(+), 27 deletions(-) diff --git a/x-pack/plugins/lens/public/indexpattern_datasource/operations/definitions/filters/filter_popover.tsx b/x-pack/plugins/lens/public/indexpattern_datasource/operations/definitions/filters/filter_popover.tsx index 91adbcecaf897..077e07a89f788 100644 --- a/x-pack/plugins/lens/public/indexpattern_datasource/operations/definitions/filters/filter_popover.tsx +++ b/x-pack/plugins/lens/public/indexpattern_datasource/operations/definitions/filters/filter_popover.tsx @@ -118,6 +118,7 @@ export const QueryInput = ({ return ( void }) => ( - + {label} ); diff --git a/x-pack/plugins/lens/public/pie_visualization/toolbar.tsx b/x-pack/plugins/lens/public/pie_visualization/toolbar.tsx index 365e430a460fa..50b8f4c6fc40b 100644 --- a/x-pack/plugins/lens/public/pie_visualization/toolbar.tsx +++ b/x-pack/plugins/lens/public/pie_visualization/toolbar.tsx @@ -126,6 +126,7 @@ export function PieToolbar(props: VisualizationToolbarProps & { * Adjusts the borders for groupings */ groupPosition?: 'none' | 'left' | 'center' | 'right'; + dataTestSubj?: string; }; export const ToolbarButton: React.FunctionComponent = ({ @@ -42,6 +43,7 @@ export const ToolbarButton: React.FunctionComponent = ({ size = 'm', hasArrow = true, groupPosition = 'none', + dataTestSubj = '', ...rest }) => { const classes = classNames( @@ -52,6 +54,7 @@ export const ToolbarButton: React.FunctionComponent = ({ ); return ( = ({ @@ -39,6 +40,7 @@ export const ToolbarPopover: React.FunctionComponent = ({ type, isDisabled = false, groupPosition, + buttonDataTestSubj, }) => { const [open, setOpen] = useState(false); @@ -60,6 +62,7 @@ export const ToolbarPopover: React.FunctionComponent = ({ hasArrow={false} isDisabled={isDisabled} groupPosition={groupPosition} + dataTestSubj={buttonDataTestSubj} > diff --git a/x-pack/plugins/lens/public/xy_visualization/axis_settings_popover.tsx b/x-pack/plugins/lens/public/xy_visualization/axis_settings_popover.tsx index 835f3e2cde769..45ec7098aa639 100644 --- a/x-pack/plugins/lens/public/xy_visualization/axis_settings_popover.tsx +++ b/x-pack/plugins/lens/public/xy_visualization/axis_settings_popover.tsx @@ -73,7 +73,12 @@ export interface AxisSettingsPopoverProps { const popoverConfig = ( axis: AxesSettingsConfigKeys, isHorizontal: boolean -): { icon: IconType; groupPosition: ToolbarButtonProps['groupPosition']; popoverTitle: string } => { +): { + icon: IconType; + groupPosition: ToolbarButtonProps['groupPosition']; + popoverTitle: string; + buttonDataTestSubj: string; +} => { switch (axis) { case 'yLeft': return { @@ -86,6 +91,7 @@ const popoverConfig = ( : i18n.translate('xpack.lens.xyChart.leftAxisLabel', { defaultMessage: 'Left axis', }), + buttonDataTestSubj: 'lnsLeftAxisButton', }; case 'yRight': return { @@ -98,6 +104,7 @@ const popoverConfig = ( : i18n.translate('xpack.lens.xyChart.rightAxisLabel', { defaultMessage: 'Right axis', }), + buttonDataTestSubj: 'lnsRightAxisButton', }; case 'x': default: @@ -111,6 +118,8 @@ const popoverConfig = ( : i18n.translate('xpack.lens.xyChart.bottomAxisLabel', { defaultMessage: 'Bottom axis', }), + + buttonDataTestSubj: 'lnsBottomAxisButton', }; } }; @@ -143,6 +152,7 @@ export const AxisSettingsPopover: React.FunctionComponent diff --git a/x-pack/plugins/lens/public/xy_visualization/xy_config_panel.tsx b/x-pack/plugins/lens/public/xy_visualization/xy_config_panel.tsx index 4aa5bd62c05a5..c7781c2e1d50c 100644 --- a/x-pack/plugins/lens/public/xy_visualization/xy_config_panel.tsx +++ b/x-pack/plugins/lens/public/xy_visualization/xy_config_panel.tsx @@ -208,6 +208,7 @@ export function XyToolbar(props: VisualizationToolbarProps) { isDisabled={!hasNonBarSeries} type="values" groupPosition="left" + buttonDataTestSubj="lnsMissingValuesButton" > ) { })} > { return { @@ -488,6 +490,7 @@ const ColorPicker = ({ const colorPicker = ( lns-empty-dimension', operation: 'avg', field: 'bytes', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_splitDimensionPanel > lns-empty-dimension', operation: 'terms', field: 'ip', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.save(title, saveAsNew, redirectToOrigin); } diff --git a/x-pack/test/functional/apps/lens/dashboard.ts b/x-pack/test/functional/apps/lens/dashboard.ts index 4a68c9a8ff3f2..fa13d013ea115 100644 --- a/x-pack/test/functional/apps/lens/dashboard.ts +++ b/x-pack/test/functional/apps/lens/dashboard.ts @@ -51,7 +51,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await find.clickByButtonText('lnsXYvis'); await dashboardAddPanel.closeAddPanel(); await PageObjects.lens.goToTimeRange(); - await clickInChart(5, 5); // hardcoded position of bar + await clickInChart(5, 5); // hardcoded position of bar, depends heavy on data and charts implementation await retry.try(async () => { await testSubjects.click('applyFiltersPopoverButton'); @@ -68,5 +68,23 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const hasIpFilter = await filterBar.hasFilter('ip', '97.220.3.248'); expect(hasIpFilter).to.be(true); }); + it('should be able to add filters by clicking in pie chart', async () => { + await PageObjects.common.navigateToApp('dashboard'); + await PageObjects.dashboard.clickNewDashboard(); + await dashboardAddPanel.clickOpenAddPanel(); + await dashboardAddPanel.filterEmbeddableNames('lnsPieVis'); + await find.clickByButtonText('lnsPieVis'); + await dashboardAddPanel.closeAddPanel(); + + await PageObjects.lens.goToTimeRange(); + await clickInChart(5, 5); // hardcoded position of the slice, depends heavy on data and charts implementation + + await PageObjects.lens.assertExactText( + '[data-test-subj="embeddablePanelHeading-lnsPieVis"]', + 'lnsPieVis' + ); + const hasGeoDestFilter = await filterBar.hasFilter('geo.dest', 'LS'); + expect(hasGeoDestFilter).to.be(true); + }); }); } diff --git a/x-pack/test/functional/apps/lens/rollup.ts b/x-pack/test/functional/apps/lens/rollup.ts index f6882c8aed214..8e1dc231b6b1a 100644 --- a/x-pack/test/functional/apps/lens/rollup.ts +++ b/x-pack/test/functional/apps/lens/rollup.ts @@ -34,18 +34,21 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { operation: 'date_histogram', field: '@timestamp', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_yDimensionPanel > lns-empty-dimension', operation: 'sum', field: 'bytes', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_splitDimensionPanel > lns-empty-dimension', operation: 'terms', field: 'geo.src', }); + await PageObjects.lens.closeDimensionEditor(); expect(await find.allByCssSelector('.echLegendItem')).to.have.length(2); await PageObjects.lens.save('Afancilenstest'); diff --git a/x-pack/test/functional/apps/lens/smokescreen.ts b/x-pack/test/functional/apps/lens/smokescreen.ts index 8c4321d77acf4..42807a23cb13a 100644 --- a/x-pack/test/functional/apps/lens/smokescreen.ts +++ b/x-pack/test/functional/apps/lens/smokescreen.ts @@ -8,20 +8,12 @@ import expect from '@kbn/expect'; import { FtrProviderContext } from '../../ftr_provider_context'; export default function ({ getService, getPageObjects }: FtrProviderContext) { - const PageObjects = getPageObjects(['visualize', 'lens']); + const PageObjects = getPageObjects(['visualize', 'lens', 'common']); const find = getService('find'); const listingTable = getService('listingTable'); const testSubjects = getService('testSubjects'); describe('lens smokescreen tests', () => { - it('should allow editing saved visualizations', async () => { - await PageObjects.visualize.gotoVisualizationLandingPage(); - await listingTable.searchForItemWithName('Artistpreviouslyknownaslens'); - await PageObjects.lens.clickVisualizeListItemTitle('Artistpreviouslyknownaslens'); - await PageObjects.lens.goToTimeRange(); - await PageObjects.lens.assertMetric('Maximum of bytes', '19,986'); - }); - it('should allow creation of lens xy chart', async () => { await PageObjects.visualize.navigateToNewVisualization(); await PageObjects.visualize.clickVisType('lens'); @@ -32,18 +24,21 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { operation: 'date_histogram', field: '@timestamp', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_yDimensionPanel > lns-empty-dimension', operation: 'avg', field: 'bytes', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_splitDimensionPanel > lns-empty-dimension', operation: 'terms', field: '@message.raw', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.switchToVisualization('lnsDatatable'); await PageObjects.lens.removeDimension('lnsDatatable_column'); @@ -54,6 +49,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { operation: 'terms', field: 'ip', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.save('Afancilenstest'); @@ -70,8 +66,23 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { // legend item(s), so we're using a class selector here. expect(await find.allByCssSelector('.echLegendItem')).to.have.length(3); }); + it('should create an xy visualization with filters aggregation', async () => { + await PageObjects.visualize.gotoVisualizationLandingPage(); + await listingTable.searchForItemWithName('lnsXYvis'); + await PageObjects.lens.clickVisualizeListItemTitle('lnsXYvis'); + await PageObjects.lens.goToTimeRange(); + await PageObjects.lens.configureDimension({ + dimension: 'lnsXY_splitDimensionPanel > lns-dimensionTrigger', + operation: 'filters', + isPreviousIncompatible: true, + }); + await PageObjects.lens.addFilterToAgg(`geo.src : CN`); + + expect(await PageObjects.lens.getFiltersAggLabels()).to.eql([`ip : *`, `geo.src : CN`]); + expect(await find.allByCssSelector('.echLegendItem')).to.have.length(2); + }); - it('should allow seamless transition to and from table view', async () => { + it('should transition from metric to table to metric', async () => { await PageObjects.visualize.gotoVisualizationLandingPage(); await listingTable.searchForItemWithName('Artistpreviouslyknownaslens'); await PageObjects.lens.clickVisualizeListItemTitle('Artistpreviouslyknownaslens'); @@ -84,7 +95,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.lens.assertMetric('Maximum of bytes', '19,986'); }); - it('should switch from a multi-layer stacked bar to a multi-layer line chart', async () => { + it('should transition from a multi-layer stacked bar to a multi-layer line chart and correctly remove all layers', async () => { await PageObjects.visualize.navigateToNewVisualization(); await PageObjects.visualize.clickVisType('lens'); await PageObjects.lens.goToTimeRange(); @@ -95,22 +106,75 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { field: '@timestamp', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_yDimensionPanel > lns-empty-dimension', operation: 'avg', field: 'bytes', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.createLayer(); expect(await PageObjects.lens.hasChartSwitchWarning('line')).to.eql(false); await PageObjects.lens.switchToVisualization('line'); + await PageObjects.lens.configureDimension( + { + dimension: 'lnsXY_xDimensionPanel > lns-empty-dimension', + operation: 'terms', + field: 'geo.src', + }, + 1 + ); + + await PageObjects.lens.closeDimensionEditor(); + await PageObjects.lens.configureDimension( + { + dimension: 'lnsXY_yDimensionPanel > lns-empty-dimension', + operation: 'avg', + field: 'bytes', + }, + 1 + ); + await PageObjects.lens.closeDimensionEditor(); expect(await PageObjects.lens.getLayerCount()).to.eql(2); + await testSubjects.click('lnsLayerRemove'); + await testSubjects.click('lnsLayerRemove'); + await testSubjects.existOrFail('empty-workspace'); + }); + + it('should edit settings of xy line chart', async () => { + await PageObjects.visualize.gotoVisualizationLandingPage(); + await listingTable.searchForItemWithName('lnsXYvis'); + await PageObjects.lens.clickVisualizeListItemTitle('lnsXYvis'); + await PageObjects.lens.goToTimeRange(); + await testSubjects.click('lnsXY_splitDimensionPanel > indexPattern-dimension-remove'); + await PageObjects.lens.switchToVisualization('line'); + await PageObjects.lens.configureDimension({ + dimension: 'lnsXY_yDimensionPanel > lns-dimensionTrigger', + operation: 'max', + field: 'memory', + }); + await PageObjects.lens.editDimensionLabel('Test of label'); + await PageObjects.lens.editDimensionFormat('Percent'); + await PageObjects.lens.editDimensionColor('#ff0000'); + await PageObjects.lens.editMissingValues('Linear'); + + await PageObjects.lens.assertMissingValues('Linear'); + await PageObjects.lens.assertColor('#ff0000'); + + await testSubjects.existOrFail('indexPattern-dimension-formatDecimals'); + + await PageObjects.lens.closeDimensionEditor(); + + expect(await PageObjects.lens.getDimensionTriggerText('lnsXY_yDimensionPanel')).to.eql( + 'Test of label' + ); }); - it('should switch from a multi-layer stacked bar to donut chart using suggestions', async () => { + it('should transition from a multi-layer stacked bar to donut chart using suggestions', async () => { await PageObjects.visualize.navigateToNewVisualization(); await PageObjects.visualize.clickVisType('lens'); await PageObjects.lens.goToTimeRange(); @@ -121,12 +185,14 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { field: 'geo.dest', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsXY_yDimensionPanel > lns-empty-dimension', operation: 'avg', field: 'bytes', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.createLayer(); await PageObjects.lens.configureDimension( @@ -138,6 +204,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { 1 ); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension( { dimension: 'lnsXY_yDimensionPanel > lns-empty-dimension', @@ -146,6 +213,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }, 1 ); + + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.save('twolayerchart'); await testSubjects.click('lnsSuggestion-asDonut > lnsSuggestion'); @@ -158,7 +227,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); - it('should allow transition from line chart to donut chart and to bar chart', async () => { + it('should transition from line chart to donut chart and to bar chart', async () => { await PageObjects.visualize.gotoVisualizationLandingPage(); await listingTable.searchForItemWithName('lnsXYvis'); await PageObjects.lens.clickVisualizeListItemTitle('lnsXYvis'); @@ -185,7 +254,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); - it('should allow seamless transition from bar chart to line chart using layer chart switch', async () => { + it('should transition from bar chart to line chart using layer chart switch', async () => { await PageObjects.visualize.gotoVisualizationLandingPage(); await listingTable.searchForItemWithName('lnsXYvis'); await PageObjects.lens.clickVisualizeListItemTitle('lnsXYvis'); @@ -203,7 +272,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); - it('should allow seamless transition from pie chart to treemap chart', async () => { + it('should transition from pie chart to treemap chart', async () => { await PageObjects.visualize.gotoVisualizationLandingPage(); await listingTable.searchForItemWithName('lnsPieVis'); await PageObjects.lens.clickVisualizeListItemTitle('lnsPieVis'); @@ -221,7 +290,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); - it('should allow creating a pie chart and switching to datatable', async () => { + it('should create a pie chart and switch to datatable', async () => { await PageObjects.visualize.navigateToNewVisualization(); await PageObjects.visualize.clickVisType('lens'); await PageObjects.lens.goToTimeRange(); @@ -231,6 +300,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { operation: 'date_histogram', field: '@timestamp', }); + await PageObjects.lens.closeDimensionEditor(); await PageObjects.lens.configureDimension({ dimension: 'lnsPie_sizeByDimensionPanel > lns-empty-dimension', @@ -238,6 +308,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { field: 'bytes', }); + await PageObjects.lens.closeDimensionEditor(); expect(await PageObjects.lens.hasChartSwitchWarning('lnsDatatable')).to.eql(false); await PageObjects.lens.switchToVisualization('lnsDatatable'); diff --git a/x-pack/test/functional/page_objects/lens_page.ts b/x-pack/test/functional/page_objects/lens_page.ts index e3c21085b92d3..a1e62afbe14c8 100644 --- a/x-pack/test/functional/page_objects/lens_page.ts +++ b/x-pack/test/functional/page_objects/lens_page.ts @@ -13,7 +13,7 @@ export function LensPageProvider({ getService, getPageObjects }: FtrProviderCont const retry = getService('retry'); const find = getService('find'); const comboBox = getService('comboBox'); - const PageObjects = getPageObjects(['header', 'header', 'timePicker']); + const PageObjects = getPageObjects(['header', 'header', 'timePicker', 'common']); return logWrapper('lensPage', log, { /** @@ -85,19 +85,32 @@ export function LensPageProvider({ getService, getPageObjects }: FtrProviderCont * @param layerIndex - the index of the layer */ async configureDimension( - opts: { dimension: string; operation: string; field: string }, + opts: { + dimension: string; + operation: string; + field?: string; + isPreviousIncompatible?: boolean; + }, layerIndex = 0 ) { await retry.try(async () => { await testSubjects.click(`lns-layerPanel-${layerIndex} > ${opts.dimension}`); await testSubjects.exists(`lns-indexPatternDimension-${opts.operation}`); }); + const operationSelector = opts.isPreviousIncompatible + ? `lns-indexPatternDimension-${opts.operation} incompatible` + : `lns-indexPatternDimension-${opts.operation}`; + await testSubjects.click(operationSelector); + + if (opts.field) { + const target = await testSubjects.find('indexPattern-dimension-field'); + await comboBox.openOptionsList(target); + await comboBox.setElement(target, opts.field); + } + }, - await testSubjects.click(`lns-indexPatternDimension-${opts.operation}`); - - const target = await testSubjects.find('indexPattern-dimension-field'); - await comboBox.openOptionsList(target); - await comboBox.setElement(target, opts.field); + // closes the dimension editor flyout + async closeDimensionEditor() { await testSubjects.click('lns-indexPattern-dimensionContainerTitle'); }, @@ -107,7 +120,17 @@ export function LensPageProvider({ getService, getPageObjects }: FtrProviderCont async removeDimension(dimensionTestSubj: string) { await testSubjects.click(`${dimensionTestSubj} > indexPattern-dimension-remove`); }, - + /** + * adds new filter to filters agg + */ + async addFilterToAgg(queryString: string) { + await testSubjects.click('lns-newBucket-add'); + const queryInput = await testSubjects.find('indexPattern-filters-queryStringInput'); + await queryInput.type(queryString); + await PageObjects.common.pressEnterKey(); + await PageObjects.common.pressEnterKey(); + await PageObjects.common.sleep(1000); // give time for debounced components to rerender + }, /** * Save the current Lens visualization. */ @@ -141,10 +164,43 @@ export function LensPageProvider({ getService, getPageObjects }: FtrProviderCont await testSubjects.click('lnsApp_saveAndReturnButton'); }, + async editDimensionLabel(label: string) { + await testSubjects.setValue('indexPattern-label-edit', label); + }, + async editDimensionFormat(format: string) { + const formatInput = await testSubjects.find('indexPattern-dimension-format'); + await comboBox.openOptionsList(formatInput); + await comboBox.setElement(formatInput, format); + }, + async editDimensionColor(color: string) { + const colorPickerInput = await testSubjects.find('colorPickerAnchor'); + await colorPickerInput.type(color); + await PageObjects.common.sleep(1000); // give time for debounced components to rerender + }, + async editMissingValues(option: string) { + await retry.try(async () => { + await testSubjects.click('lnsMissingValuesButton'); + await testSubjects.exists('lnsMissingValuesSelect'); + }); + await testSubjects.click('lnsMissingValuesSelect'); + const optionSelector = await find.byCssSelector(`#${option}`); + await optionSelector.click(); + }, + getTitle() { return testSubjects.getVisibleText('lns_ChartTitle'); }, + async getFiltersAggLabels() { + const labels = []; + const filters = await testSubjects.findAll('indexPattern-filters-existingFilterContainer'); + for (let i = 0; i < filters.length; i++) { + labels.push(await filters[i].getVisibleText()); + } + log.debug(`Found ${labels.length} filters on current page`); + return labels; + }, + /** * Uses the Lens visualization switcher to switch visualizations. * @@ -275,5 +331,13 @@ export function LensPageProvider({ getService, getPageObjects }: FtrProviderCont await this.assertExactText('[data-test-subj="lns_metric_title"]', title); await this.assertExactText('[data-test-subj="lns_metric_value"]', count); }, + + async assertMissingValues(option: string) { + await this.assertExactText('[data-test-subj="lnsMissingValuesSelect"]', option); + }, + async assertColor(color: string) { + // TODO: target dimensionTrigger color element after merging https://github.com/elastic/kibana/pull/76871 + await testSubjects.getAttribute('colorPickerAnchor', color); + }, }); } From bf26dffb724bfa747357986452088ec22740b40f Mon Sep 17 00:00:00 2001 From: Tim Roes Date: Fri, 18 Sep 2020 19:02:26 +0200 Subject: [PATCH 12/27] Add charts plugin to codeowners file (#77907) --- .github/CODEOWNERS | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index ef8dbf2d25600..0bdddddab8de5 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -7,6 +7,7 @@ /x-pack/plugins/discover_enhanced/ @elastic/kibana-app /x-pack/plugins/lens/ @elastic/kibana-app /x-pack/plugins/graph/ @elastic/kibana-app +/src/plugins/charts/ @elastic/kibana-app /src/plugins/dashboard/ @elastic/kibana-app /src/plugins/discover/ @elastic/kibana-app /src/plugins/input_control_vis/ @elastic/kibana-app From 0f493facd1c5c7c24ae0f05c33634191d35fbae4 Mon Sep 17 00:00:00 2001 From: Luke Elmers Date: Fri, 18 Sep 2020 11:20:42 -0600 Subject: [PATCH 13/27] [data.search] Move SearchSource to common directory. (#77823) --- src/plugins/data/common/search/index.ts | 2 +- .../create_search_source.test.ts | 4 +- .../search_source/create_search_source.ts | 0 .../search_source/extract_references.ts | 4 +- .../fetch/get_search_params.test.ts | 3 +- .../search_source}/fetch/get_search_params.ts | 4 +- .../search/search_source/fetch/index.ts | 22 ++++++++ .../search_source}/fetch/request_error.ts | 2 +- .../search/search_source}/fetch/types.ts | 2 +- .../filter_docvalue_fields.test.ts | 0 .../search_source/filter_docvalue_fields.ts | 0 .../search/search_source/index.ts | 2 + .../search/search_source/inject_references.ts | 2 +- .../search_source}/legacy/call_client.test.ts | 0 .../search_source}/legacy/call_client.ts | 5 +- .../legacy/default_search_strategy.test.ts | 35 ++++++------ .../legacy/default_search_strategy.ts | 0 .../search_source}/legacy/fetch_soon.test.ts | 11 ++-- .../search_source}/legacy/fetch_soon.ts | 6 +-- .../search/search_source/legacy/index.ts | 21 ++++++++ .../search/search_source}/legacy/types.ts | 3 +- .../search_source/migrate_legacy_query.ts | 2 +- .../search/search_source/mocks.ts | 0 .../normalize_sort_request.test.ts | 2 +- .../search_source/normalize_sort_request.ts | 2 +- .../search/search_source/parse_json.ts | 0 .../search_source/search_source.test.ts | 10 ++-- .../search/search_source/search_source.ts | 7 +-- .../search/search_source/types.ts | 0 src/plugins/data/common/search/types.ts | 16 ++++++ src/plugins/data/public/public.api.md | 6 +-- .../data/public/search/expressions/esaggs.ts | 2 +- src/plugins/data/public/search/fetch/index.ts | 4 -- src/plugins/data/public/search/index.ts | 37 ++++++------- .../public/search/legacy/call_msearch.test.ts | 54 +++++++++++++++++++ .../data/public/search/legacy/call_msearch.ts | 2 +- .../data/public/search/legacy/index.ts | 2 +- src/plugins/data/public/search/mocks.ts | 4 +- .../data/public/search/search_service.ts | 10 ++-- src/plugins/data/public/search/types.ts | 24 +-------- src/plugins/visualizations/public/vis.test.ts | 2 +- .../es_geo_grid_source.test.ts | 2 +- .../es_search_source/es_search_source.test.ts | 2 +- 43 files changed, 206 insertions(+), 112 deletions(-) rename src/plugins/data/{public => common}/search/search_source/create_search_source.test.ts (96%) rename src/plugins/data/{public => common}/search/search_source/create_search_source.ts (100%) rename src/plugins/data/{public => common}/search/search_source/extract_references.ts (94%) rename src/plugins/data/{public/search => common/search/search_source}/fetch/get_search_params.test.ts (93%) rename src/plugins/data/{public/search => common/search/search_source}/fetch/get_search_params.ts (92%) create mode 100644 src/plugins/data/common/search/search_source/fetch/index.ts rename src/plugins/data/{public/search => common/search/search_source}/fetch/request_error.ts (95%) rename src/plugins/data/{public/search => common/search/search_source}/fetch/types.ts (97%) rename src/plugins/data/{public => common}/search/search_source/filter_docvalue_fields.test.ts (100%) rename src/plugins/data/{public => common}/search/search_source/filter_docvalue_fields.ts (100%) rename src/plugins/data/{public => common}/search/search_source/index.ts (95%) rename src/plugins/data/{public => common}/search/search_source/inject_references.ts (96%) rename src/plugins/data/{public/search => common/search/search_source}/legacy/call_client.test.ts (100%) rename src/plugins/data/{public/search => common/search/search_source}/legacy/call_client.ts (93%) rename src/plugins/data/{public/search => common/search/search_source}/legacy/default_search_strategy.test.ts (67%) rename src/plugins/data/{public/search => common/search/search_source}/legacy/default_search_strategy.ts (100%) rename src/plugins/data/{public/search => common/search/search_source}/legacy/fetch_soon.test.ts (96%) rename src/plugins/data/{public/search => common/search/search_source}/legacy/fetch_soon.ts (95%) create mode 100644 src/plugins/data/common/search/search_source/legacy/index.ts rename src/plugins/data/{public/search => common/search/search_source}/legacy/types.ts (95%) rename src/plugins/data/{public => common}/search/search_source/migrate_legacy_query.ts (96%) rename src/plugins/data/{public => common}/search/search_source/mocks.ts (100%) rename src/plugins/data/{public => common}/search/search_source/normalize_sort_request.test.ts (98%) rename src/plugins/data/{public => common}/search/search_source/normalize_sort_request.ts (98%) rename src/plugins/data/{public => common}/search/search_source/parse_json.ts (100%) rename src/plugins/data/{public => common}/search/search_source/search_source.test.ts (97%) rename src/plugins/data/{public => common}/search/search_source/search_source.ts (99%) rename src/plugins/data/{public => common}/search/search_source/types.ts (100%) create mode 100644 src/plugins/data/public/search/legacy/call_msearch.test.ts diff --git a/src/plugins/data/common/search/index.ts b/src/plugins/data/common/search/index.ts index 061974d860246..2ee0db384cf06 100644 --- a/src/plugins/data/common/search/index.ts +++ b/src/plugins/data/common/search/index.ts @@ -20,6 +20,6 @@ export * from './aggs'; export * from './es_search'; export * from './expressions'; +export * from './search_source'; export * from './tabify'; export * from './types'; -export * from './es_search'; diff --git a/src/plugins/data/public/search/search_source/create_search_source.test.ts b/src/plugins/data/common/search/search_source/create_search_source.test.ts similarity index 96% rename from src/plugins/data/public/search/search_source/create_search_source.test.ts rename to src/plugins/data/common/search/search_source/create_search_source.test.ts index 6b6cfb0c9b1ca..dde5983fe73fb 100644 --- a/src/plugins/data/public/search/search_source/create_search_source.test.ts +++ b/src/plugins/data/common/search/search_source/create_search_source.test.ts @@ -19,9 +19,9 @@ import { createSearchSource as createSearchSourceFactory } from './create_search_source'; import { SearchSourceDependencies } from './search_source'; -import { IIndexPattern } from '../../../common/index_patterns'; +import { IIndexPattern } from '../../index_patterns'; import { IndexPatternsContract } from '../../index_patterns/index_patterns'; -import { Filter } from '../../../common/es_query/filters'; +import { Filter } from '../../es_query/filters'; import { BehaviorSubject } from 'rxjs'; describe('createSearchSource', () => { diff --git a/src/plugins/data/public/search/search_source/create_search_source.ts b/src/plugins/data/common/search/search_source/create_search_source.ts similarity index 100% rename from src/plugins/data/public/search/search_source/create_search_source.ts rename to src/plugins/data/common/search/search_source/create_search_source.ts diff --git a/src/plugins/data/public/search/search_source/extract_references.ts b/src/plugins/data/common/search/search_source/extract_references.ts similarity index 94% rename from src/plugins/data/public/search/search_source/extract_references.ts rename to src/plugins/data/common/search/search_source/extract_references.ts index f9987767a9688..72d93e41305d1 100644 --- a/src/plugins/data/public/search/search_source/extract_references.ts +++ b/src/plugins/data/common/search/search_source/extract_references.ts @@ -17,8 +17,8 @@ * under the License. */ -import { SavedObjectReference } from '../../../../../core/types'; -import { Filter } from '../../../common/es_query/filters'; +import { SavedObjectReference } from 'src/core/types'; +import { Filter } from '../../es_query/filters'; import { SearchSourceFields } from './types'; export const extractReferences = ( diff --git a/src/plugins/data/public/search/fetch/get_search_params.test.ts b/src/plugins/data/common/search/search_source/fetch/get_search_params.test.ts similarity index 93% rename from src/plugins/data/public/search/fetch/get_search_params.test.ts rename to src/plugins/data/common/search/search_source/fetch/get_search_params.test.ts index 5e83e1f57bb6d..8778eb4fd559d 100644 --- a/src/plugins/data/public/search/fetch/get_search_params.test.ts +++ b/src/plugins/data/common/search/search_source/fetch/get_search_params.test.ts @@ -17,8 +17,9 @@ * under the License. */ +import { UI_SETTINGS } from '../../../constants'; +import { GetConfigFn } from '../../../types'; import { getSearchParams } from './get_search_params'; -import { GetConfigFn, UI_SETTINGS } from '../../../common'; function getConfigStub(config: any = {}): GetConfigFn { return (key) => config[key]; diff --git a/src/plugins/data/public/search/fetch/get_search_params.ts b/src/plugins/data/common/search/search_source/fetch/get_search_params.ts similarity index 92% rename from src/plugins/data/public/search/fetch/get_search_params.ts rename to src/plugins/data/common/search/search_source/fetch/get_search_params.ts index ed87c4813951c..556fb4924da56 100644 --- a/src/plugins/data/public/search/fetch/get_search_params.ts +++ b/src/plugins/data/common/search/search_source/fetch/get_search_params.ts @@ -17,7 +17,9 @@ * under the License. */ -import { UI_SETTINGS, ISearchRequestParams, GetConfigFn } from '../../../common'; +import { UI_SETTINGS } from '../../../constants'; +import { GetConfigFn } from '../../../types'; +import { ISearchRequestParams } from '../../index'; import { SearchRequest } from './types'; const sessionId = Date.now(); diff --git a/src/plugins/data/common/search/search_source/fetch/index.ts b/src/plugins/data/common/search/search_source/fetch/index.ts new file mode 100644 index 0000000000000..1b9a9677e4a99 --- /dev/null +++ b/src/plugins/data/common/search/search_source/fetch/index.ts @@ -0,0 +1,22 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +export { getSearchParams, getSearchParamsFromRequest, getPreference } from './get_search_params'; +export { RequestFailure } from './request_error'; +export * from './types'; diff --git a/src/plugins/data/public/search/fetch/request_error.ts b/src/plugins/data/common/search/search_source/fetch/request_error.ts similarity index 95% rename from src/plugins/data/public/search/fetch/request_error.ts rename to src/plugins/data/common/search/search_source/fetch/request_error.ts index efaaafadf404e..ba5eb6f2897a9 100644 --- a/src/plugins/data/public/search/fetch/request_error.ts +++ b/src/plugins/data/common/search/search_source/fetch/request_error.ts @@ -18,7 +18,7 @@ */ import { SearchResponse } from 'elasticsearch'; -import { KbnError } from '../../../../kibana_utils/common'; +import { KbnError } from '../../../../../kibana_utils/common'; import { SearchError } from './types'; /** diff --git a/src/plugins/data/public/search/fetch/types.ts b/src/plugins/data/common/search/search_source/fetch/types.ts similarity index 97% rename from src/plugins/data/public/search/fetch/types.ts rename to src/plugins/data/common/search/search_source/fetch/types.ts index cdf10d8f1a1b0..30055f88012f2 100644 --- a/src/plugins/data/public/search/fetch/types.ts +++ b/src/plugins/data/common/search/search_source/fetch/types.ts @@ -18,8 +18,8 @@ */ import { SearchResponse } from 'elasticsearch'; -import { GetConfigFn } from '../../../common'; import { LegacyFetchHandlers } from '../legacy/types'; +import { GetConfigFn } from '../../../types'; /** * @internal diff --git a/src/plugins/data/public/search/search_source/filter_docvalue_fields.test.ts b/src/plugins/data/common/search/search_source/filter_docvalue_fields.test.ts similarity index 100% rename from src/plugins/data/public/search/search_source/filter_docvalue_fields.test.ts rename to src/plugins/data/common/search/search_source/filter_docvalue_fields.test.ts diff --git a/src/plugins/data/public/search/search_source/filter_docvalue_fields.ts b/src/plugins/data/common/search/search_source/filter_docvalue_fields.ts similarity index 100% rename from src/plugins/data/public/search/search_source/filter_docvalue_fields.ts rename to src/plugins/data/common/search/search_source/filter_docvalue_fields.ts diff --git a/src/plugins/data/public/search/search_source/index.ts b/src/plugins/data/common/search/search_source/index.ts similarity index 95% rename from src/plugins/data/public/search/search_source/index.ts rename to src/plugins/data/common/search/search_source/index.ts index 48c0338f7e981..70c9cfcee2348 100644 --- a/src/plugins/data/public/search/search_source/index.ts +++ b/src/plugins/data/common/search/search_source/index.ts @@ -23,3 +23,5 @@ export { SortDirection, EsQuerySortValue, SearchSourceFields } from './types'; export { injectReferences } from './inject_references'; export { extractReferences } from './extract_references'; export { parseSearchSourceJSON } from './parse_json'; +export * from './fetch'; +export * from './legacy'; diff --git a/src/plugins/data/public/search/search_source/inject_references.ts b/src/plugins/data/common/search/search_source/inject_references.ts similarity index 96% rename from src/plugins/data/public/search/search_source/inject_references.ts rename to src/plugins/data/common/search/search_source/inject_references.ts index 07f37c3c11275..81fafc6dcae06 100644 --- a/src/plugins/data/public/search/search_source/inject_references.ts +++ b/src/plugins/data/common/search/search_source/inject_references.ts @@ -17,8 +17,8 @@ * under the License. */ +import { SavedObjectReference } from 'src/core/types'; import { SearchSourceFields } from './types'; -import { SavedObjectReference } from '../../../../../core/types'; export const injectReferences = ( searchSourceFields: SearchSourceFields & { indexRefName: string }, diff --git a/src/plugins/data/public/search/legacy/call_client.test.ts b/src/plugins/data/common/search/search_source/legacy/call_client.test.ts similarity index 100% rename from src/plugins/data/public/search/legacy/call_client.test.ts rename to src/plugins/data/common/search/search_source/legacy/call_client.test.ts diff --git a/src/plugins/data/public/search/legacy/call_client.ts b/src/plugins/data/common/search/search_source/legacy/call_client.ts similarity index 93% rename from src/plugins/data/public/search/legacy/call_client.ts rename to src/plugins/data/common/search/search_source/legacy/call_client.ts index b87affdd59c54..cb6295dd701ee 100644 --- a/src/plugins/data/public/search/legacy/call_client.ts +++ b/src/plugins/data/common/search/search_source/legacy/call_client.ts @@ -18,10 +18,9 @@ */ import { SearchResponse } from 'elasticsearch'; -import { ISearchOptions } from 'src/plugins/data/common'; -import { FetchHandlers } from '../fetch'; +import { FetchHandlers, SearchRequest } from '../fetch'; import { defaultSearchStrategy } from './default_search_strategy'; -import { SearchRequest } from '../index'; +import { ISearchOptions } from '../../index'; export function callClient( searchRequests: SearchRequest[], diff --git a/src/plugins/data/public/search/legacy/default_search_strategy.test.ts b/src/plugins/data/common/search/search_source/legacy/default_search_strategy.test.ts similarity index 67% rename from src/plugins/data/public/search/legacy/default_search_strategy.test.ts rename to src/plugins/data/common/search/search_source/legacy/default_search_strategy.test.ts index ad59e5c6c9625..3badd456bd72a 100644 --- a/src/plugins/data/public/search/legacy/default_search_strategy.test.ts +++ b/src/plugins/data/common/search/search_source/legacy/default_search_strategy.test.ts @@ -17,51 +17,50 @@ * under the License. */ -import { HttpStart } from 'src/core/public'; -import { coreMock } from '../../../../../core/public/mocks'; -import { getCallMsearch } from './call_msearch'; import { defaultSearchStrategy } from './default_search_strategy'; import { LegacyFetchHandlers, SearchStrategySearchParams } from './types'; import { BehaviorSubject } from 'rxjs'; const { search } = defaultSearchStrategy; -const msearchMock = jest.fn().mockResolvedValue({ body: { responses: [] } }); - -describe('defaultSearchStrategy', function () { - describe('search', function () { +describe('defaultSearchStrategy', () => { + describe('search', () => { let searchArgs: MockedKeys; - let http: jest.Mocked; beforeEach(() => { - msearchMock.mockClear(); - - http = coreMock.createStart().http; - http.post.mockResolvedValue(msearchMock); - searchArgs = { searchRequests: [ { index: { title: 'foo' }, + body: {}, }, ], getConfig: jest.fn(), onResponse: (req, res) => res, legacy: { - callMsearch: getCallMsearch({ http }), + callMsearch: jest.fn().mockResolvedValue(undefined), loadingCount$: new BehaviorSubject(0) as any, } as jest.Mocked, }; }); - test('calls http.post with the correct arguments', async () => { + test('calls callMsearch with the correct arguments', async () => { await search({ ...searchArgs }); - expect(http.post.mock.calls).toMatchInlineSnapshot(` + expect(searchArgs.legacy.callMsearch.mock.calls).toMatchInlineSnapshot(` Array [ Array [ - "/internal/_msearch", Object { - "body": "{\\"searches\\":[{\\"header\\":{\\"index\\":\\"foo\\"}}]}", + "body": Object { + "searches": Array [ + Object { + "body": Object {}, + "header": Object { + "index": "foo", + "preference": undefined, + }, + }, + ], + }, "signal": AbortSignal {}, }, ], diff --git a/src/plugins/data/public/search/legacy/default_search_strategy.ts b/src/plugins/data/common/search/search_source/legacy/default_search_strategy.ts similarity index 100% rename from src/plugins/data/public/search/legacy/default_search_strategy.ts rename to src/plugins/data/common/search/search_source/legacy/default_search_strategy.ts diff --git a/src/plugins/data/public/search/legacy/fetch_soon.test.ts b/src/plugins/data/common/search/search_source/legacy/fetch_soon.test.ts similarity index 96% rename from src/plugins/data/public/search/legacy/fetch_soon.test.ts rename to src/plugins/data/common/search/search_source/legacy/fetch_soon.test.ts index 7243ab158009a..81117513917c0 100644 --- a/src/plugins/data/public/search/legacy/fetch_soon.test.ts +++ b/src/plugins/data/common/search/search_source/legacy/fetch_soon.test.ts @@ -17,12 +17,13 @@ * under the License. */ -import { fetchSoon } from './fetch_soon'; -import { callClient } from './call_client'; -import { FetchHandlers } from '../fetch/types'; -import { SearchRequest } from '../index'; import { SearchResponse } from 'elasticsearch'; -import { GetConfigFn, UI_SETTINGS, ISearchOptions } from '../../../common'; +import { UI_SETTINGS } from '../../../constants'; +import { GetConfigFn } from '../../../types'; +import { FetchHandlers, SearchRequest } from '../fetch'; +import { ISearchOptions } from '../../index'; +import { callClient } from './call_client'; +import { fetchSoon } from './fetch_soon'; function getConfigStub(config: any = {}): GetConfigFn { return (key) => config[key]; diff --git a/src/plugins/data/public/search/legacy/fetch_soon.ts b/src/plugins/data/common/search/search_source/legacy/fetch_soon.ts similarity index 95% rename from src/plugins/data/public/search/legacy/fetch_soon.ts rename to src/plugins/data/common/search/search_source/legacy/fetch_soon.ts index 1c0573aa895d7..01ffc3876f6af 100644 --- a/src/plugins/data/public/search/legacy/fetch_soon.ts +++ b/src/plugins/data/common/search/search_source/legacy/fetch_soon.ts @@ -18,10 +18,10 @@ */ import { SearchResponse } from 'elasticsearch'; +import { UI_SETTINGS } from '../../../constants'; +import { FetchHandlers, SearchRequest } from '../fetch'; +import { ISearchOptions } from '../../index'; import { callClient } from './call_client'; -import { FetchHandlers } from '../fetch/types'; -import { SearchRequest } from '../index'; -import { UI_SETTINGS, ISearchOptions } from '../../../common'; /** * This function introduces a slight delay in the request process to allow multiple requests to queue diff --git a/src/plugins/data/common/search/search_source/legacy/index.ts b/src/plugins/data/common/search/search_source/legacy/index.ts new file mode 100644 index 0000000000000..26587b09ffd9e --- /dev/null +++ b/src/plugins/data/common/search/search_source/legacy/index.ts @@ -0,0 +1,21 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +export { fetchSoon } from './fetch_soon'; +export * from './types'; diff --git a/src/plugins/data/public/search/legacy/types.ts b/src/plugins/data/common/search/search_source/legacy/types.ts similarity index 95% rename from src/plugins/data/public/search/legacy/types.ts rename to src/plugins/data/common/search/search_source/legacy/types.ts index 740bc22a7485c..1a0a96a76a703 100644 --- a/src/plugins/data/public/search/legacy/types.ts +++ b/src/plugins/data/common/search/search_source/legacy/types.ts @@ -19,8 +19,7 @@ import { BehaviorSubject } from 'rxjs'; import { SearchResponse } from 'elasticsearch'; -import { FetchHandlers } from '../fetch'; -import { SearchRequest } from '..'; +import { FetchHandlers, SearchRequest } from '../fetch'; // @internal export interface LegacyFetchHandlers { diff --git a/src/plugins/data/public/search/search_source/migrate_legacy_query.ts b/src/plugins/data/common/search/search_source/migrate_legacy_query.ts similarity index 96% rename from src/plugins/data/public/search/search_source/migrate_legacy_query.ts rename to src/plugins/data/common/search/search_source/migrate_legacy_query.ts index 8d9b50d5a66b2..f271280170166 100644 --- a/src/plugins/data/public/search/search_source/migrate_legacy_query.ts +++ b/src/plugins/data/common/search/search_source/migrate_legacy_query.ts @@ -18,7 +18,7 @@ */ import { has } from 'lodash'; -import { Query } from 'src/plugins/data/public'; +import { Query } from '../../query/types'; /** * Creates a standardized query object from old queries that were either strings or pure ES query DSL diff --git a/src/plugins/data/public/search/search_source/mocks.ts b/src/plugins/data/common/search/search_source/mocks.ts similarity index 100% rename from src/plugins/data/public/search/search_source/mocks.ts rename to src/plugins/data/common/search/search_source/mocks.ts diff --git a/src/plugins/data/public/search/search_source/normalize_sort_request.test.ts b/src/plugins/data/common/search/search_source/normalize_sort_request.test.ts similarity index 98% rename from src/plugins/data/public/search/search_source/normalize_sort_request.test.ts rename to src/plugins/data/common/search/search_source/normalize_sort_request.test.ts index 10004b87ca690..1899efbf3598d 100644 --- a/src/plugins/data/public/search/search_source/normalize_sort_request.test.ts +++ b/src/plugins/data/common/search/search_source/normalize_sort_request.test.ts @@ -19,7 +19,7 @@ import { normalizeSortRequest } from './normalize_sort_request'; import { SortDirection } from './types'; -import { IIndexPattern } from '../..'; +import { IIndexPattern } from '../../index_patterns'; describe('SearchSource#normalizeSortRequest', function () { const scriptedField = { diff --git a/src/plugins/data/public/search/search_source/normalize_sort_request.ts b/src/plugins/data/common/search/search_source/normalize_sort_request.ts similarity index 98% rename from src/plugins/data/public/search/search_source/normalize_sort_request.ts rename to src/plugins/data/common/search/search_source/normalize_sort_request.ts index 3ec0a13282d3e..e41c4482df9c9 100644 --- a/src/plugins/data/public/search/search_source/normalize_sort_request.ts +++ b/src/plugins/data/common/search/search_source/normalize_sort_request.ts @@ -17,7 +17,7 @@ * under the License. */ -import { IIndexPattern } from '../..'; +import { IIndexPattern } from '../../index_patterns'; import { EsQuerySortValue, SortOptions } from './types'; export function normalizeSortRequest( diff --git a/src/plugins/data/public/search/search_source/parse_json.ts b/src/plugins/data/common/search/search_source/parse_json.ts similarity index 100% rename from src/plugins/data/public/search/search_source/parse_json.ts rename to src/plugins/data/common/search/search_source/parse_json.ts diff --git a/src/plugins/data/public/search/search_source/search_source.test.ts b/src/plugins/data/common/search/search_source/search_source.test.ts similarity index 97% rename from src/plugins/data/public/search/search_source/search_source.test.ts rename to src/plugins/data/common/search/search_source/search_source.test.ts index d9a9fb2f4fef3..74abd9238bc2b 100644 --- a/src/plugins/data/public/search/search_source/search_source.test.ts +++ b/src/plugins/data/common/search/search_source/search_source.test.ts @@ -18,12 +18,12 @@ */ import { Observable, BehaviorSubject } from 'rxjs'; -import { GetConfigFn } from 'src/plugins/data/common'; -import { SearchSource, SearchSourceDependencies } from './search_source'; -import { IndexPattern, SortDirection } from '../..'; -import { fetchSoon } from '../legacy'; +import { IndexPattern } from '../../index_patterns'; +import { GetConfigFn } from '../../types'; +import { fetchSoon } from './legacy'; +import { SearchSource, SearchSourceDependencies, SortDirection } from './'; -jest.mock('../legacy', () => ({ +jest.mock('./legacy', () => ({ fetchSoon: jest.fn().mockResolvedValue({}), })); diff --git a/src/plugins/data/public/search/search_source/search_source.ts b/src/plugins/data/common/search/search_source/search_source.ts similarity index 99% rename from src/plugins/data/public/search/search_source/search_source.ts rename to src/plugins/data/common/search/search_source/search_source.ts index 4afee223454e4..d8a036ce970dd 100644 --- a/src/plugins/data/public/search/search_source/search_source.ts +++ b/src/plugins/data/common/search/search_source/search_source.ts @@ -75,9 +75,10 @@ import { map } from 'rxjs/operators'; import { normalizeSortRequest } from './normalize_sort_request'; import { filterDocvalueFields } from './filter_docvalue_fields'; import { fieldWildcardFilter } from '../../../../kibana_utils/common'; -import { IIndexPattern, ISearchGeneric } from '../..'; +import { IIndexPattern } from '../../index_patterns'; +import { ISearchGeneric } from '../..'; import { SearchSourceOptions, SearchSourceFields } from './types'; -import { FetchHandlers, RequestFailure, getSearchParamsFromRequest, SearchRequest } from '../fetch'; +import { FetchHandlers, RequestFailure, getSearchParamsFromRequest, SearchRequest } from './fetch'; import { getEsQueryConfig, @@ -87,7 +88,7 @@ import { ISearchOptions, } from '../../../common'; import { getHighlightRequest } from '../../../common/field_formats'; -import { fetchSoon } from '../legacy'; +import { fetchSoon } from './legacy'; import { extractReferences } from './extract_references'; /** @internal */ diff --git a/src/plugins/data/public/search/search_source/types.ts b/src/plugins/data/common/search/search_source/types.ts similarity index 100% rename from src/plugins/data/public/search/search_source/types.ts rename to src/plugins/data/common/search/search_source/types.ts diff --git a/src/plugins/data/common/search/types.ts b/src/plugins/data/common/search/types.ts index 7600bd9db6094..0a299b57275f8 100644 --- a/src/plugins/data/common/search/types.ts +++ b/src/plugins/data/common/search/types.ts @@ -17,6 +17,22 @@ * under the License. */ +import { Observable } from 'rxjs'; +import { IEsSearchRequest, IEsSearchResponse, ISearchOptions } from '../../common/search'; + +export type ISearch = ( + request: IKibanaSearchRequest, + options?: ISearchOptions +) => Observable; + +export type ISearchGeneric = < + SearchStrategyRequest extends IEsSearchRequest = IEsSearchRequest, + SearchStrategyResponse extends IEsSearchResponse = IEsSearchResponse +>( + request: SearchStrategyRequest, + options?: ISearchOptions +) => Observable; + export interface IKibanaSearchResponse { /** * Some responses may contain a unique id to identify the request this response came from. diff --git a/src/plugins/data/public/public.api.md b/src/plugins/data/public/public.api.md index 26e72a82d4bb5..db8d9dba4e0c7 100644 --- a/src/plugins/data/public/public.api.md +++ b/src/plugins/data/public/public.api.md @@ -64,6 +64,7 @@ import { Required } from '@kbn/utility-types'; import * as Rx from 'rxjs'; import { SavedObject } from 'src/core/server'; import { SavedObject as SavedObject_3 } from 'src/core/public'; +import { SavedObjectReference as SavedObjectReference_2 } from 'src/core/types'; import { SavedObjectsClientContract } from 'src/core/public'; import { Search } from '@elastic/elasticsearch/api/requestParams'; import { SearchResponse } from 'elasticsearch'; @@ -651,13 +652,12 @@ export type ExistsFilter = Filter & { // @public (undocumented) export const expandShorthand: (sh: Record) => MappingObject; -// Warning: (ae-forgotten-export) The symbol "SavedObjectReference" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "extractReferences" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) export const extractSearchSourceReferences: (state: SearchSourceFields) => [SearchSourceFields & { indexRefName?: string; -}, SavedObjectReference[]]; +}, SavedObjectReference_2[]]; // Warning: (ae-missing-release-tag) "FieldFormat" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -1371,7 +1371,7 @@ export interface IndexPatternTypeMeta { // @public (undocumented) export const injectSearchSourceReferences: (searchSourceFields: SearchSourceFields & { indexRefName: string; -}, references: SavedObjectReference[]) => SearchSourceFields; +}, references: SavedObjectReference_2[]) => SearchSourceFields; // Warning: (ae-missing-release-tag) "InputTimeRange" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // diff --git a/src/plugins/data/public/search/expressions/esaggs.ts b/src/plugins/data/public/search/expressions/esaggs.ts index 50fbb114b39fd..9b89bd1dcbfa6 100644 --- a/src/plugins/data/public/search/expressions/esaggs.ts +++ b/src/plugins/data/public/search/expressions/esaggs.ts @@ -38,6 +38,7 @@ import { getRequestInspectorStats, getResponseInspectorStats, IAggConfigs, + ISearchSource, tabifyAggResponse, } from '../../../common/search'; @@ -48,7 +49,6 @@ import { getQueryService, getSearchService, } from '../../services'; -import { ISearchSource } from '../search_source'; import { buildTabularInspectorData } from './build_tabular_inspector_data'; import { serializeAggConfig } from './utils'; diff --git a/src/plugins/data/public/search/fetch/index.ts b/src/plugins/data/public/search/fetch/index.ts index 4b8511edfc26f..340a795d37bfb 100644 --- a/src/plugins/data/public/search/fetch/index.ts +++ b/src/plugins/data/public/search/fetch/index.ts @@ -17,8 +17,4 @@ * under the License. */ -export * from './types'; -export { getSearchParams, getSearchParamsFromRequest, getPreference } from './get_search_params'; - -export { RequestFailure } from './request_error'; export { handleResponse } from './handle_response'; diff --git a/src/plugins/data/public/search/index.ts b/src/plugins/data/public/search/index.ts index c1af9699acbb2..fc3d71936a859 100644 --- a/src/plugins/data/public/search/index.ts +++ b/src/plugins/data/public/search/index.ts @@ -19,34 +19,31 @@ export * from './expressions'; +export { ISearchSetup, ISearchStart, ISearchStartSearchSource, SearchEnhancements } from './types'; + export { + ES_SEARCH_STRATEGY, + EsQuerySortValue, + extractReferences as extractSearchSourceReferences, + getSearchParamsFromRequest, + IEsSearchRequest, + IEsSearchResponse, + IKibanaSearchRequest, + IKibanaSearchResponse, + injectReferences as injectSearchSourceReferences, ISearch, ISearchGeneric, - ISearchSetup, - ISearchStart, - ISearchStartSearchSource, - SearchEnhancements, -} from './types'; - -export { IEsSearchResponse, IEsSearchRequest, ES_SEARCH_STRATEGY } from '../../common/search'; - -export { getEsPreference } from './es_search'; - -export { IKibanaSearchResponse, IKibanaSearchRequest } from '../../common/search'; - -export { SearchError, getSearchParamsFromRequest, SearchRequest } from './fetch'; - -export { ISearchSource, + parseSearchSourceJSON, + SearchError, + SearchRequest, SearchSource, SearchSourceDependencies, SearchSourceFields, - EsQuerySortValue, SortDirection, - extractReferences as extractSearchSourceReferences, - injectReferences as injectSearchSourceReferences, - parseSearchSourceJSON, -} from './search_source'; +} from '../../common/search'; + +export { getEsPreference } from './es_search'; export { SearchInterceptor, SearchInterceptorDeps } from './search_interceptor'; export { RequestTimeoutError } from './request_timeout_error'; diff --git a/src/plugins/data/public/search/legacy/call_msearch.test.ts b/src/plugins/data/public/search/legacy/call_msearch.test.ts new file mode 100644 index 0000000000000..da39bf521fe3d --- /dev/null +++ b/src/plugins/data/public/search/legacy/call_msearch.test.ts @@ -0,0 +1,54 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { HttpStart } from 'src/core/public'; +import { coreMock } from '../../../../../core/public/mocks'; +import { getCallMsearch } from './call_msearch'; + +describe('callMsearch', () => { + const msearchMock = jest.fn().mockResolvedValue({ body: { responses: [] } }); + let http: jest.Mocked; + + beforeEach(() => { + msearchMock.mockClear(); + http = coreMock.createStart().http; + http.post.mockResolvedValue(msearchMock); + }); + + test('calls http.post with the correct arguments', async () => { + const searches = [{ header: { index: 'foo' }, body: {} }]; + const callMsearch = getCallMsearch({ http }); + await callMsearch({ + body: { searches }, + signal: new AbortController().signal, + }); + + expect(http.post.mock.calls).toMatchInlineSnapshot(` + Array [ + Array [ + "/internal/_msearch", + Object { + "body": "{\\"searches\\":[{\\"header\\":{\\"index\\":\\"foo\\"},\\"body\\":{}}]}", + "signal": AbortSignal {}, + }, + ], + ] + `); + }); +}); diff --git a/src/plugins/data/public/search/legacy/call_msearch.ts b/src/plugins/data/public/search/legacy/call_msearch.ts index fd4f8a07919f8..6b2b9b4da020b 100644 --- a/src/plugins/data/public/search/legacy/call_msearch.ts +++ b/src/plugins/data/public/search/legacy/call_msearch.ts @@ -18,7 +18,7 @@ */ import { HttpStart } from 'src/core/public'; -import { LegacyFetchHandlers } from './types'; +import { LegacyFetchHandlers } from '../../../common/search/search_source'; /** * Wrapper for calling the internal msearch endpoint from the client. diff --git a/src/plugins/data/public/search/legacy/index.ts b/src/plugins/data/public/search/legacy/index.ts index 74e516f407e8c..08e5eab788e76 100644 --- a/src/plugins/data/public/search/legacy/index.ts +++ b/src/plugins/data/public/search/legacy/index.ts @@ -17,4 +17,4 @@ * under the License. */ -export { fetchSoon } from './fetch_soon'; +export * from './call_msearch'; diff --git a/src/plugins/data/public/search/mocks.ts b/src/plugins/data/public/search/mocks.ts index f4ed7d8b122b9..fdd6a90013413 100644 --- a/src/plugins/data/public/search/mocks.ts +++ b/src/plugins/data/public/search/mocks.ts @@ -19,9 +19,9 @@ import { searchAggsSetupMock, searchAggsStartMock } from './aggs/mocks'; import { ISearchSetup, ISearchStart } from './types'; -import { searchSourceMock, createSearchSourceMock } from './search_source/mocks'; +import { searchSourceMock, createSearchSourceMock } from '../../common/search/search_source/mocks'; -export * from './search_source/mocks'; +export * from '../../common/search/search_source/mocks'; function createSetupContract(): jest.Mocked { return { diff --git a/src/plugins/data/public/search/search_service.ts b/src/plugins/data/public/search/search_service.ts index c41e1f78ee74e..d8937ed30e401 100644 --- a/src/plugins/data/public/search/search_service.ts +++ b/src/plugins/data/public/search/search_service.ts @@ -22,12 +22,16 @@ import { BehaviorSubject } from 'rxjs'; import { ISearchSetup, ISearchStart, SearchEnhancements } from './types'; import { handleResponse } from './fetch'; -import { getCallMsearch } from './legacy/call_msearch'; -import { createSearchSource, SearchSource, SearchSourceDependencies } from './search_source'; +import { + createSearchSource, + ISearchGeneric, + SearchSource, + SearchSourceDependencies, +} from '../../common/search'; +import { getCallMsearch } from './legacy'; import { AggsService, AggsStartDependencies } from './aggs'; import { IndexPatternsContract } from '../index_patterns/index_patterns'; import { ISearchInterceptor, SearchInterceptor } from './search_interceptor'; -import { ISearchGeneric } from './types'; import { SearchUsageCollector, createUsageCollector } from './collectors'; import { UsageCollectionSetup } from '../../../usage_collection/public'; import { esdsl, esRawResponse } from './expressions'; diff --git a/src/plugins/data/public/search/types.ts b/src/plugins/data/public/search/types.ts index 83a542269046f..6ae5d83499aa6 100644 --- a/src/plugins/data/public/search/types.ts +++ b/src/plugins/data/public/search/types.ts @@ -17,38 +17,18 @@ * under the License. */ -import { Observable } from 'rxjs'; import { PackageInfo } from 'kibana/server'; import { ISearchInterceptor } from './search_interceptor'; -import { ISearchSource, SearchSourceFields } from './search_source'; import { SearchUsageCollector } from './collectors'; import { AggsSetup, AggsSetupDependencies, AggsStartDependencies, AggsStart } from './aggs'; -import { - IKibanaSearchRequest, - IKibanaSearchResponse, - IEsSearchRequest, - IEsSearchResponse, - ISearchOptions, -} from '../../common/search'; +import { ISearchGeneric, ISearchSource, SearchSourceFields } from '../../common/search'; import { IndexPatternsContract } from '../../common/index_patterns/index_patterns'; import { UsageCollectionSetup } from '../../../usage_collection/public'; -export type ISearch = ( - request: IKibanaSearchRequest, - options?: ISearchOptions -) => Observable; - -export type ISearchGeneric = < - SearchStrategyRequest extends IEsSearchRequest = IEsSearchRequest, - SearchStrategyResponse extends IEsSearchResponse = IEsSearchResponse ->( - request: SearchStrategyRequest, - options?: ISearchOptions -) => Observable; - export interface SearchEnhancements { searchInterceptor: ISearchInterceptor; } + /** * The setup contract exposed by the Search plugin exposes the search strategy extension * point. diff --git a/src/plugins/visualizations/public/vis.test.ts b/src/plugins/visualizations/public/vis.test.ts index a0da8d83bed51..c271888b7c7a4 100644 --- a/src/plugins/visualizations/public/vis.test.ts +++ b/src/plugins/visualizations/public/vis.test.ts @@ -35,7 +35,7 @@ jest.mock('./services', () => { // eslint-disable-next-line const { BaseVisType } = require('./vis_types/base_vis_type'); // eslint-disable-next-line - const { SearchSource } = require('../../data/public/search/search_source'); + const { SearchSource } = require('../../data/common/search/search_source'); // eslint-disable-next-line const fixturesStubbedLogstashIndexPatternProvider = require('../../../fixtures/stubbed_logstash_index_pattern'); const visType = new BaseVisType({ diff --git a/x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/es_geo_grid_source.test.ts b/x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/es_geo_grid_source.test.ts index 2e0ba7cf3efee..f565321f87ef7 100644 --- a/x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/es_geo_grid_source.test.ts +++ b/x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/es_geo_grid_source.test.ts @@ -15,7 +15,7 @@ import { RENDER_AS, SOURCE_TYPES, } from '../../../../common/constants'; -import { SearchSource } from '../../../../../../../src/plugins/data/public/search/search_source'; +import { SearchSource } from 'src/plugins/data/public'; export class MockSearchSource { setField = jest.fn(); diff --git a/x-pack/plugins/maps/public/classes/sources/es_search_source/es_search_source.test.ts b/x-pack/plugins/maps/public/classes/sources/es_search_source/es_search_source.test.ts index 3223d0c94178f..0bc9bba7816ca 100644 --- a/x-pack/plugins/maps/public/classes/sources/es_search_source/es_search_source.test.ts +++ b/x-pack/plugins/maps/public/classes/sources/es_search_source/es_search_source.test.ts @@ -9,7 +9,7 @@ jest.mock('../../../kibana_services'); jest.mock('./load_index_settings'); import { getIndexPatternService, getSearchService, getHttp } from '../../../kibana_services'; -import { SearchSource } from '../../../../../../../src/plugins/data/public/search/search_source'; +import { SearchSource } from 'src/plugins/data/public'; // @ts-expect-error import { loadIndexSettings } from './load_index_settings'; From 07891be8fd9f43ec71feeb332dc626b9ab62b4cd Mon Sep 17 00:00:00 2001 From: Greg Thompson Date: Fri, 18 Sep 2020 12:25:37 -0600 Subject: [PATCH 14/27] Upgrade EUI to v29.0.0 (#77802) * eui to 29.0.0 * src snapshot updates * x-pack snapshot updates Co-authored-by: Elastic Machine --- package.json | 2 +- packages/kbn-ui-shared-deps/package.json | 2 +- .../__snapshots__/collapsible_nav.test.tsx.snap | 14 ++++---------- .../ui/header/__snapshots__/header.test.tsx.snap | 7 ++----- .../plugins/kbn_tp_run_pipeline/package.json | 2 +- .../plugins/kbn_sample_panel_action/package.json | 2 +- .../kbn_tp_custom_visualizations/package.json | 2 +- x-pack/package.json | 2 +- .../__snapshots__/search_bar.test.tsx.snap | 10 +++++----- yarn.lock | 8 ++++---- 10 files changed, 21 insertions(+), 30 deletions(-) diff --git a/package.json b/package.json index fb1d7e50d7d22..1f2749ea44a90 100644 --- a/package.json +++ b/package.json @@ -119,7 +119,7 @@ "@babel/register": "^7.10.5", "@elastic/datemath": "5.0.3", "@elastic/elasticsearch": "7.9.0-rc.2", - "@elastic/eui": "28.4.0", + "@elastic/eui": "29.0.0", "@elastic/good": "8.1.1-kibana2", "@elastic/numeral": "^2.5.0", "@elastic/request-crypto": "1.1.4", diff --git a/packages/kbn-ui-shared-deps/package.json b/packages/kbn-ui-shared-deps/package.json index 8095e05e8b855..372126c4418f5 100644 --- a/packages/kbn-ui-shared-deps/package.json +++ b/packages/kbn-ui-shared-deps/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@elastic/charts": "21.1.2", - "@elastic/eui": "28.4.0", + "@elastic/eui": "29.0.0", "@elastic/numeral": "^2.5.0", "@kbn/i18n": "1.0.0", "@kbn/monaco": "1.0.0", diff --git a/src/core/public/chrome/ui/header/__snapshots__/collapsible_nav.test.tsx.snap b/src/core/public/chrome/ui/header/__snapshots__/collapsible_nav.test.tsx.snap index dc5ed3c44f25a..47b8aaefaf86a 100644 --- a/src/core/public/chrome/ui/header/__snapshots__/collapsible_nav.test.tsx.snap +++ b/src/core/public/chrome/ui/header/__snapshots__/collapsible_nav.test.tsx.snap @@ -1876,12 +1876,9 @@ exports[`CollapsibleNav renders links grouped by category 1`] = ` ] } > - +
- +
- +
Date: Fri, 18 Sep 2020 14:31:30 -0400 Subject: [PATCH 15/27] [Security Solution][Resolver] Show all event counts on nodes (#77819) * [Security Solution][Resolver] Show all event counts Co-authored-by: Elastic Machine --- .../resolver/view/clickthrough.test.tsx | 46 +---- .../resolver/view/process_event_dot.tsx | 11 - .../public/resolver/view/submenu.tsx | 193 +++--------------- .../apps/endpoint/resolver.ts | 1 - 4 files changed, 28 insertions(+), 223 deletions(-) diff --git a/x-pack/plugins/security_solution/public/resolver/view/clickthrough.test.tsx b/x-pack/plugins/security_solution/public/resolver/view/clickthrough.test.tsx index 935e565be039e..dba1136193ee1 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/clickthrough.test.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/clickthrough.test.tsx @@ -276,48 +276,12 @@ describe('Resolver, when analyzing a tree that has two related events for the or ); expect(edgesThatTerminateUnderneathSecondChild).toHaveLength(1); }); - - it('should render a related events button', async () => { + it('should show exactly one option with the correct count', async () => { await expect( - simulator.map(() => ({ - relatedEventButtons: simulator.processNodeSubmenuButton(entityIDs.origin).length, - })) - ).toYieldEqualTo({ - relatedEventButtons: 1, - }); - }); - describe('when the related events button is clicked', () => { - beforeEach(async () => { - const button = await simulator.resolveWrapper(() => - simulator.processNodeSubmenuButton(entityIDs.origin) - ); - if (button) { - button.simulate('click', { button: 0 }); - } - }); - it('should open the submenu and display exactly one option with the correct count', async () => { - await expect( - simulator.map(() => - simulator.testSubject('resolver:map:node-submenu-item').map((node) => node.text()) - ) - ).toYieldEqualTo(['2 registry']); - }); - }); - describe('and when the related events button is clicked again', () => { - beforeEach(async () => { - const button = await simulator.resolveWrapper(() => - simulator.processNodeSubmenuButton(entityIDs.origin) - ); - if (button) { - button.simulate('click', { button: 0 }); - button.simulate('click', { button: 0 }); // The first click opened the menu, this second click closes it - } - }); - it('should close the submenu', async () => { - await expect( - simulator.map(() => simulator.testSubject('resolver:map:node-submenu-item').length) - ).toYieldEqualTo(0); - }); + simulator.map(() => + simulator.testSubject('resolver:map:node-submenu-item').map((node) => node.text()) + ) + ).toYieldEqualTo(['2 registry']); }); }); }); diff --git a/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx b/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx index 43b337c0603f6..65ec395080f86 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/process_event_dot.tsx @@ -257,13 +257,6 @@ const UnstyledProcessEventDot = React.memo( }); }, [dispatch, nodeID]); - const handleRelatedEventRequest = useCallback(() => { - dispatch({ - type: 'userRequestedRelatedEventData', - payload: nodeID, - }); - }, [dispatch, nodeID]); - const handleClick = useCallback( (clickEvent) => { if (animationTarget.current?.beginElement) { @@ -439,11 +432,7 @@ const UnstyledProcessEventDot = React.memo( {grandTotal !== null && grandTotal > 0 && ( diff --git a/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx b/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx index d6cc3e5249618..d40aa0b26a94b 100644 --- a/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx +++ b/x-pack/plugins/security_solution/public/resolver/view/submenu.tsx @@ -4,15 +4,12 @@ * you may not use this file except in compliance with the Elastic License. */ -/* eslint-disable react/display-name */ - import { i18n } from '@kbn/i18n'; -import React, { useState, useCallback, useRef, useLayoutEffect, useMemo } from 'react'; -import { EuiI18nNumber, EuiButton, EuiPopover, ButtonColor } from '@elastic/eui'; +import React, { useMemo } from 'react'; +import { EuiI18nNumber } from '@elastic/eui'; import styled from 'styled-components'; import { ResolverNodeStats } from '../../../common/endpoint/types'; import { useRelatedEventByCategoryNavigation } from './use_related_event_by_category_navigation'; -import { Matrix3 } from '../types'; import { useColors } from './use_colors'; /** @@ -45,53 +42,6 @@ interface ResolverSubmenuOption { export type ResolverSubmenuOptionList = ResolverSubmenuOption[] | string; -const StyledActionButton = styled(EuiButton)` - &.euiButton--small { - height: fit-content; - line-height: 1; - padding: 0.25em; - font-size: 0.85rem; - } -`; - -/** - * This will be the "host button" that displays the "total number of related events" and opens - * the sumbmenu (with counts by category) when clicked. - */ -const SubButton = React.memo( - ({ - hasMenu, - menuIsOpen, - action, - count, - nodeID, - }: { - hasMenu: boolean; - menuIsOpen?: boolean; - action: (evt: React.MouseEvent) => void; - count?: number; - nodeID: string; - }) => { - const iconType = menuIsOpen === true ? 'arrowUp' : 'arrowDown'; - return ( - - {count ? : ''} {subMenuAssets.relatedEvents.title} - - ); - } -); - /** * A Submenu to be displayed in one of two forms: * 1) Provided a collection of `optionsWithActions`: it will call `menuAction` then - if and when menuData becomes available - display each item with an optional prefix and call the supplied action for the options when that option is clicked. @@ -99,53 +49,20 @@ const SubButton = React.memo( */ const NodeSubMenuComponents = React.memo( ({ - count, - buttonBorderColor, - menuAction, className, - projectionMatrix, nodeID, relatedEventStats, }: { className?: string; - menuAction?: () => unknown; - buttonBorderColor: ButtonColor; // eslint-disable-next-line react/no-unused-prop-types buttonFill: string; - count?: number; /** * Receive the projection matrix, so we can see when the camera position changed, so we can force the submenu to reposition itself. */ - projectionMatrix: Matrix3; nodeID: string; relatedEventStats: ResolverNodeStats | undefined; }) => { - // keep a ref to the popover so we can call its reposition method - const popoverRef = useRef(null); - - const [menuIsOpen, setMenuOpen] = useState(false); - const handleMenuOpenClick = useCallback( - (clickEvent: React.MouseEvent) => { - // stopping propagation/default to prevent other node animations from triggering - clickEvent.preventDefault(); - clickEvent.stopPropagation(); - setMenuOpen(!menuIsOpen); - }, - [menuIsOpen] - ); - const handleMenuActionClick = useCallback( - (clickEvent: React.MouseEvent) => { - // stopping propagation/default to prevent other node animations from triggering - clickEvent.preventDefault(); - clickEvent.stopPropagation(); - if (typeof menuAction === 'function') menuAction(); - setMenuOpen(true); - }, - [menuAction] - ); - // The last projection matrix that was used to position the popover - const projectionMatrixAtLastRender = useRef(); const relatedEventCallbacks = useRelatedEventByCategoryNavigation({ nodeID, categories: relatedEventStats?.events?.byCategory, @@ -164,24 +81,6 @@ const NodeSubMenuComponents = React.memo( } }, [relatedEventStats, relatedEventCallbacks]); - useLayoutEffect(() => { - if ( - /** - * If there is a popover component reference, - * and this isn't the first render, - * and the projectionMatrix has changed since last render, - * then force the popover to reposition itself. - */ - popoverRef.current && - projectionMatrixAtLastRender.current && - projectionMatrixAtLastRender.current !== projectionMatrix - ) { - popoverRef.current.positionPopoverFixed(); - } - - // no matter what, keep track of the last project matrix that was used to size the popover - projectionMatrixAtLastRender.current = projectionMatrix; - }, [projectionMatrixAtLastRender, projectionMatrix]); const { pillStroke: pillBorderStroke, resolverBackground: pillFill } = useColors(); const listStylesFromTheme = useMemo(() => { return { @@ -189,65 +88,32 @@ const NodeSubMenuComponents = React.memo( backgroundColor: pillFill, }; }, [pillBorderStroke, pillFill]); - if (relatedEventStats === undefined) { - /** - * When called with a `menuAction` - * Render without dropdown and call the supplied action when host button is clicked - */ - return ( -
- - {subMenuAssets.relatedEvents.title} - -
- ); - } if (relatedEventOptions === undefined) { return null; } return ( - <> - - {menuIsOpen ? ( -
    - {relatedEventOptions - .sort((opta, optb) => { - return opta.optionTitle.localeCompare(optb.optionTitle); - }) - .map((opt) => { - return ( -
  • - -
  • - ); - })} -
- ) : null} - +
    + {relatedEventOptions + .sort((opta, optb) => { + return opta.optionTitle.localeCompare(optb.optionTitle); + }) + .map((opt) => { + return ( +
  • + +
  • + ); + })} +
); } ); @@ -265,7 +131,7 @@ export const NodeSubMenu = styled(NodeSubMenuComponents)` flex-flow: row wrap; background: transparent; position: absolute; - top: 6.5em; + top: 4.5em; contain: content; width: 12em; z-index: 2; @@ -300,17 +166,4 @@ export const NodeSubMenu = styled(NodeSubMenuComponents)` &.options .item button:active { transform: scale(0.95); } - - & .euiButton { - background-color: ${(props) => props.buttonFill}; - border-color: ${(props) => props.buttonBorderColor}; - border-style: solid; - border-width: 1px; - - &:hover, - &:active, - &:focus { - background-color: ${(props) => props.buttonFill}; - } - } `; diff --git a/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts b/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts index e48d952ce82c3..620eab37f9b46 100644 --- a/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts +++ b/x-pack/test/security_solution_endpoint/apps/endpoint/resolver.ts @@ -13,7 +13,6 @@ export default function ({ getPageObjects, getService }: FtrProviderContext) { const esArchiver = getService('esArchiver'); const queryBar = getService('queryBar'); - // FLAKY: https://github.com/elastic/kibana/issues/77835 describe('Endpoint Event Resolver', function () { before(async () => { await esArchiver.load('endpoint/resolver_tree', { useCreate: true }); From 9cf546f3d0a3033e28f89f1159044a4cac36c017 Mon Sep 17 00:00:00 2001 From: Zacqary Adam Xeper Date: Fri, 18 Sep 2020 14:42:23 -0500 Subject: [PATCH 16/27] [Metrics UI] Use Notify Every in Alert Preview (#74401) Co-authored-by: Elastic Machine --- .../infra/common/alerting/metrics/types.ts | 3 + .../common/components/alert_preview.tsx | 77 +++++++++++++++---- .../infra/public/alerting/common/index.ts | 7 -- .../inventory/components/expression.test.tsx | 1 + .../inventory/components/expression.tsx | 11 ++- .../components/expression.test.tsx | 1 + .../components/expression.tsx | 11 ++- ...review_inventory_metric_threshold_alert.ts | 38 ++++++++- .../preview_metric_threshold_alert.test.ts | 42 ++++++++-- .../preview_metric_threshold_alert.ts | 51 ++++++++++-- .../infra/server/routes/alerting/preview.ts | 23 +++++- .../translations/translations/ja-JP.json | 3 +- .../translations/translations/zh-CN.json | 3 +- .../sections/alert_form/alert_form.tsx | 1 + .../triggers_actions_ui/public/types.ts | 1 + 15 files changed, 225 insertions(+), 48 deletions(-) diff --git a/x-pack/plugins/infra/common/alerting/metrics/types.ts b/x-pack/plugins/infra/common/alerting/metrics/types.ts index 4862b2a7e6a59..5cc976969d79c 100644 --- a/x-pack/plugins/infra/common/alerting/metrics/types.ts +++ b/x-pack/plugins/infra/common/alerting/metrics/types.ts @@ -52,6 +52,8 @@ const baseAlertRequestParamsRT = rt.intersection([ ]), criteria: rt.array(rt.any), alertInterval: rt.string, + alertThrottle: rt.string, + alertOnNoData: rt.boolean, }), ]); @@ -91,6 +93,7 @@ export const alertPreviewSuccessResponsePayloadRT = rt.type({ fired: rt.number, noData: rt.number, error: rt.number, + notifications: rt.number, }), }); export type AlertPreviewSuccessResponsePayload = rt.TypeOf< diff --git a/x-pack/plugins/infra/public/alerting/common/components/alert_preview.tsx b/x-pack/plugins/infra/public/alerting/common/components/alert_preview.tsx index 877d047c941d4..02c3ea29c1846 100644 --- a/x-pack/plugins/infra/public/alerting/common/components/alert_preview.tsx +++ b/x-pack/plugins/infra/public/alerting/common/components/alert_preview.tsx @@ -33,6 +33,7 @@ import { getAlertPreview, PreviewableAlertTypes } from './get_alert_preview'; interface Props { alertInterval: string; + alertThrottle: string; alertType: PreviewableAlertTypes; fetch: HttpSetup['fetch']; alertParams: { criteria: any[]; sourceId: string } & Record; @@ -45,6 +46,7 @@ export const AlertPreview: React.FC = (props) => { const { alertParams, alertInterval, + alertThrottle, fetch, alertType, validate, @@ -73,16 +75,27 @@ export const AlertPreview: React.FC = (props) => { ...alertParams, lookback: previewLookbackInterval as 'h' | 'd' | 'w' | 'M', alertInterval, + alertThrottle, + alertOnNoData: showNoDataResults ?? false, } as AlertPreviewRequestParams, alertType, }); - setPreviewResult({ ...result, groupByDisplayName, previewLookbackInterval }); + setPreviewResult({ ...result, groupByDisplayName, previewLookbackInterval, alertThrottle }); } catch (e) { setPreviewError(e); } finally { setIsPreviewLoading(false); } - }, [alertParams, alertInterval, fetch, alertType, groupByDisplayName, previewLookbackInterval]); + }, [ + alertParams, + alertInterval, + fetch, + alertType, + groupByDisplayName, + previewLookbackInterval, + alertThrottle, + showNoDataResults, + ]); const previewIntervalError = useMemo(() => { const intervalInSeconds = getIntervalInSeconds(alertInterval); @@ -101,6 +114,13 @@ export const AlertPreview: React.FC = (props) => { return hasValidationErrors || previewIntervalError; }, [alertParams.criteria, previewIntervalError, validate]); + const showNumberOfNotifications = useMemo(() => { + if (!previewResult) return false; + const { notifications, fired, noData, error } = previewResult.resultTotals; + const unthrottledNotifications = fired + (showNoDataResults ? noData + error : 0); + return unthrottledNotifications > notifications; + }, [previewResult, showNoDataResults]); + return ( = (props) => { <> - {previewResult.resultTotals.fired}{' '} - {previewResult.resultTotals.fired === 1 - ? firedTimeLabel - : firedTimesLabel} + ), }} @@ -173,7 +196,7 @@ export const AlertPreview: React.FC = (props) => { ) : null} e.value === previewResult.previewLookbackInterval @@ -211,6 +234,32 @@ export const AlertPreview: React.FC = (props) => { defaultMessage="An error occurred when trying to evaluate some of the data." /> ) : null} + {showNumberOfNotifications ? ( + <> + + + {i18n.translate( + 'xpack.infra.metrics.alertFlyout.alertPreviewTotalNotificationsNumber', + { + defaultMessage: + '{notifs, plural, one {# notification} other {# notifications}}', + values: { + notifs: previewResult.resultTotals.notifications, + }, + } + )} + + ), + }} + /> + + ) : null}{' '} )} @@ -218,6 +267,7 @@ export const AlertPreview: React.FC = (props) => { <> = (props) => { {previewError.body?.statusCode === 508 ? ( = (props) => { ) : ( = previewOptions.map((o) => omit(o, 'shortText') ); - -const firedTimeLabel = i18n.translate('xpack.infra.metrics.alertFlyout.firedTime', { - defaultMessage: 'time', -}); -const firedTimesLabel = i18n.translate('xpack.infra.metrics.alertFlyout.firedTimes', { - defaultMessage: 'times', -}); diff --git a/x-pack/plugins/infra/public/alerting/common/index.ts b/x-pack/plugins/infra/public/alerting/common/index.ts index e1b4a70cfb1fc..384391578f0c6 100644 --- a/x-pack/plugins/infra/public/alerting/common/index.ts +++ b/x-pack/plugins/infra/public/alerting/common/index.ts @@ -45,10 +45,3 @@ export const previewOptions = [ }), }, ]; - -export const firedTimeLabel = i18n.translate('xpack.infra.metrics.alertFlyout.firedTime', { - defaultMessage: 'time', -}); -export const firedTimesLabel = i18n.translate('xpack.infra.metrics.alertFlyout.firedTimes', { - defaultMessage: 'times', -}); diff --git a/x-pack/plugins/infra/public/alerting/inventory/components/expression.test.tsx b/x-pack/plugins/infra/public/alerting/inventory/components/expression.test.tsx index ada7a30a859e0..60a00371e5ade 100644 --- a/x-pack/plugins/infra/public/alerting/inventory/components/expression.test.tsx +++ b/x-pack/plugins/infra/public/alerting/inventory/components/expression.test.tsx @@ -69,6 +69,7 @@ describe('Expression', () => { Reflect.set(alertParams, key, value)} diff --git a/x-pack/plugins/infra/public/alerting/inventory/components/expression.tsx b/x-pack/plugins/infra/public/alerting/inventory/components/expression.tsx index 5ac2f407839e4..f47f30c280b2a 100644 --- a/x-pack/plugins/infra/public/alerting/inventory/components/expression.tsx +++ b/x-pack/plugins/infra/public/alerting/inventory/components/expression.tsx @@ -89,6 +89,7 @@ interface Props { alertOnNoData?: boolean; }; alertInterval: string; + alertThrottle: string; alertsContext: AlertsContextValue; setAlertParams(key: string, value: any): void; setAlertProperty(key: string, value: any): void; @@ -104,7 +105,14 @@ const defaultExpression = { } as InventoryMetricConditions; export const Expressions: React.FC = (props) => { - const { setAlertParams, alertParams, errors, alertsContext, alertInterval } = props; + const { + setAlertParams, + alertParams, + errors, + alertsContext, + alertInterval, + alertThrottle, + } = props; const { source, createDerivedIndexPattern } = useSourceViaHttp({ sourceId: 'default', type: 'metrics', @@ -378,6 +386,7 @@ export const Expressions: React.FC = (props) => { { Reflect.set(alertParams, key, value)} diff --git a/x-pack/plugins/infra/public/alerting/metric_threshold/components/expression.tsx b/x-pack/plugins/infra/public/alerting/metric_threshold/components/expression.tsx index 6b102045fa516..c71a3b6b13338 100644 --- a/x-pack/plugins/infra/public/alerting/metric_threshold/components/expression.tsx +++ b/x-pack/plugins/infra/public/alerting/metric_threshold/components/expression.tsx @@ -51,6 +51,7 @@ interface Props { alertParams: AlertParams; alertsContext: AlertsContextValue; alertInterval: string; + alertThrottle: string; setAlertParams(key: string, value: any): void; setAlertProperty(key: string, value: any): void; } @@ -65,7 +66,14 @@ const defaultExpression = { export { defaultExpression }; export const Expressions: React.FC = (props) => { - const { setAlertParams, alertParams, errors, alertsContext, alertInterval } = props; + const { + setAlertParams, + alertParams, + errors, + alertsContext, + alertInterval, + alertThrottle, + } = props; const { source, createDerivedIndexPattern } = useSourceViaHttp({ sourceId: 'default', type: 'metrics', @@ -399,6 +407,7 @@ export const Expressions: React.FC = (props) => { { const { criteria, filterQuery, nodeType } = params as InventoryMetricThresholdParams; @@ -52,6 +56,10 @@ export const previewInventoryMetricThresholdAlert = async ({ const alertIntervalInSeconds = getIntervalInSeconds(alertInterval); const alertResultsPerExecution = alertIntervalInSeconds / bucketIntervalInSeconds; + const throttleIntervalInSeconds = getIntervalInSeconds(alertThrottle); + const executionsPerThrottle = Math.floor( + (throttleIntervalInSeconds / alertIntervalInSeconds) * alertResultsPerExecution + ); try { const results = await Promise.all( criteria.map((c) => @@ -66,6 +74,12 @@ export const previewInventoryMetricThresholdAlert = async ({ let numberOfTimesFired = 0; let numberOfNoDataResults = 0; let numberOfErrors = 0; + let numberOfNotifications = 0; + let throttleTracker = 0; + const notifyWithThrottle = () => { + if (throttleTracker === 0) numberOfNotifications++; + throttleTracker++; + }; for (let i = 0; i < numberOfExecutionBuckets; i++) { const mappedBucketIndex = Math.floor(i * alertResultsPerExecution); const allConditionsFiredInMappedBucket = results.every((result) => { @@ -79,11 +93,27 @@ export const previewInventoryMetricThresholdAlert = async ({ const someConditionsErrorInMappedBucket = results.some((result) => { return result[item].isError; }); - if (allConditionsFiredInMappedBucket) numberOfTimesFired++; - if (someConditionsNoDataInMappedBucket) numberOfNoDataResults++; - if (someConditionsErrorInMappedBucket) numberOfErrors++; + if (someConditionsErrorInMappedBucket) { + numberOfErrors++; + if (alertOnNoData) { + notifyWithThrottle(); + } + } else if (someConditionsNoDataInMappedBucket) { + numberOfNoDataResults++; + if (alertOnNoData) { + notifyWithThrottle(); + } + } else if (allConditionsFiredInMappedBucket) { + numberOfTimesFired++; + notifyWithThrottle(); + } else if (throttleTracker > 0) { + throttleTracker++; + } + if (throttleTracker === executionsPerThrottle) { + throttleTracker = 0; + } } - return [numberOfTimesFired, numberOfNoDataResults, numberOfErrors]; + return [numberOfTimesFired, numberOfNoDataResults, numberOfErrors, numberOfNotifications]; }); return previewResults; diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.test.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.test.ts index c26b44dfe8ff8..73e17537476c8 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.test.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.test.ts @@ -16,11 +16,14 @@ describe('Previewing the metric threshold alert type', () => { ...baseParams, lookback: 'h', alertInterval: '1m', + alertThrottle: '1m', + alertOnNoData: true, }); - const [firedResults, noDataResults, errorResults] = ungroupedResult; + const [firedResults, noDataResults, errorResults, notifications] = ungroupedResult; expect(firedResults).toBe(30); expect(noDataResults).toBe(0); expect(errorResults).toBe(0); + expect(notifications).toBe(30); }); test('returns the expected results using a bucket interval shorter than the alert interval', async () => { @@ -28,22 +31,42 @@ describe('Previewing the metric threshold alert type', () => { ...baseParams, lookback: 'h', alertInterval: '3m', + alertThrottle: '3m', + alertOnNoData: true, }); - const [firedResults, noDataResults, errorResults] = ungroupedResult; + const [firedResults, noDataResults, errorResults, notifications] = ungroupedResult; expect(firedResults).toBe(10); expect(noDataResults).toBe(0); expect(errorResults).toBe(0); + expect(notifications).toBe(10); }); test('returns the expected results using a bucket interval longer than the alert interval', async () => { const [ungroupedResult] = await previewMetricThresholdAlert({ ...baseParams, lookback: 'h', alertInterval: '30s', + alertThrottle: '30s', + alertOnNoData: true, }); - const [firedResults, noDataResults, errorResults] = ungroupedResult; + const [firedResults, noDataResults, errorResults, notifications] = ungroupedResult; expect(firedResults).toBe(60); expect(noDataResults).toBe(0); expect(errorResults).toBe(0); + expect(notifications).toBe(60); + }); + test('returns the expected results using a throttle interval longer than the alert interval', async () => { + const [ungroupedResult] = await previewMetricThresholdAlert({ + ...baseParams, + lookback: 'h', + alertInterval: '1m', + alertThrottle: '3m', + alertOnNoData: true, + }); + const [firedResults, noDataResults, errorResults, notifications] = ungroupedResult; + expect(firedResults).toBe(30); + expect(noDataResults).toBe(0); + expect(errorResults).toBe(0); + expect(notifications).toBe(15); }); }); describe('querying with a groupBy parameter', () => { @@ -56,15 +79,19 @@ describe('Previewing the metric threshold alert type', () => { }, lookback: 'h', alertInterval: '1m', + alertThrottle: '1m', + alertOnNoData: true, }); - const [firedResultsA, noDataResultsA, errorResultsA] = resultA; + const [firedResultsA, noDataResultsA, errorResultsA, notificationsA] = resultA; expect(firedResultsA).toBe(30); expect(noDataResultsA).toBe(0); expect(errorResultsA).toBe(0); - const [firedResultsB, noDataResultsB, errorResultsB] = resultB; + expect(notificationsA).toBe(30); + const [firedResultsB, noDataResultsB, errorResultsB, notificationsB] = resultB; expect(firedResultsB).toBe(60); expect(noDataResultsB).toBe(0); expect(errorResultsB).toBe(0); + expect(notificationsB).toBe(60); }); }); describe('querying a data set with a period of No Data', () => { @@ -82,11 +109,14 @@ describe('Previewing the metric threshold alert type', () => { }, lookback: 'h', alertInterval: '1m', + alertThrottle: '1m', + alertOnNoData: true, }); - const [firedResults, noDataResults, errorResults] = ungroupedResult; + const [firedResults, noDataResults, errorResults, notifications] = ungroupedResult; expect(firedResults).toBe(25); expect(noDataResults).toBe(10); expect(errorResults).toBe(0); + expect(notifications).toBe(35); }); }); }); diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.ts index 0f2afda663da8..e1615625d605a 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/preview_metric_threshold_alert.ts @@ -28,6 +28,8 @@ interface PreviewMetricThresholdAlertParams { config: InfraSource['configuration']; lookback: Unit; alertInterval: string; + alertThrottle: string; + alertOnNoData: boolean; end?: number; overrideLookbackIntervalInSeconds?: number; } @@ -43,6 +45,8 @@ export const previewMetricThresholdAlert: ( config, lookback, alertInterval, + alertThrottle, + alertOnNoData, end = Date.now(), overrideLookbackIntervalInSeconds, }, @@ -77,6 +81,11 @@ export const previewMetricThresholdAlert: ( // Now determine how to interpolate this histogram based on the alert interval const alertIntervalInSeconds = getIntervalInSeconds(alertInterval); const alertResultsPerExecution = alertIntervalInSeconds / bucketIntervalInSeconds; + const throttleIntervalInSeconds = Math.max( + getIntervalInSeconds(alertThrottle), + alertIntervalInSeconds + ); + const previewResults = await Promise.all( groups.map(async (group) => { // Interpolate the buckets returned by evaluateAlert and return a count of how many of these @@ -90,6 +99,12 @@ export const previewMetricThresholdAlert: ( let numberOfTimesFired = 0; let numberOfNoDataResults = 0; let numberOfErrors = 0; + let numberOfNotifications = 0; + let throttleTracker = 0; + const notifyWithThrottle = () => { + if (throttleTracker === 0) numberOfNotifications++; + throttleTracker += alertIntervalInSeconds; + }; for (let i = 0; i < numberOfExecutionBuckets; i++) { const mappedBucketIndex = Math.floor(i * alertResultsPerExecution); const allConditionsFiredInMappedBucket = alertResults.every( @@ -102,11 +117,27 @@ export const previewMetricThresholdAlert: ( const someConditionsErrorInMappedBucket = alertResults.some((alertResult) => { return alertResult[group].isError; }); - if (allConditionsFiredInMappedBucket) numberOfTimesFired++; - if (someConditionsNoDataInMappedBucket) numberOfNoDataResults++; - if (someConditionsErrorInMappedBucket) numberOfErrors++; + if (someConditionsErrorInMappedBucket) { + numberOfErrors++; + if (alertOnNoData) { + notifyWithThrottle(); + } + } else if (someConditionsNoDataInMappedBucket) { + numberOfNoDataResults++; + if (alertOnNoData) { + notifyWithThrottle(); + } + } else if (allConditionsFiredInMappedBucket) { + numberOfTimesFired++; + notifyWithThrottle(); + } else if (throttleTracker > 0) { + throttleTracker += alertIntervalInSeconds; + } + if (throttleTracker >= throttleIntervalInSeconds) { + throttleTracker = 0; + } } - return [numberOfTimesFired, numberOfNoDataResults, numberOfErrors]; + return [numberOfTimesFired, numberOfNoDataResults, numberOfErrors, numberOfNotifications]; }) ); return previewResults; @@ -114,7 +145,15 @@ export const previewMetricThresholdAlert: ( if (isTooManyBucketsPreviewException(e)) { // If there's too much data on the first request, recursively slice the lookback interval // until all the data can be retrieved - const basePreviewParams = { callCluster, params, config, lookback, alertInterval }; + const basePreviewParams = { + callCluster, + params, + config, + lookback, + alertInterval, + alertThrottle, + alertOnNoData, + }; const { maxBuckets } = e; // If this is still the first iteration, try to get the number of groups in order to // calculate max buckets. If this fails, just estimate based on 1 group @@ -159,7 +198,7 @@ export const previewMetricThresholdAlert: ( .reduce((a, b) => { if (!a) return b; if (!b) return a; - return [a[0] + b[0], a[1] + b[1], a[2] + b[2]]; + return [a[0] + b[0], a[1] + b[1], a[2] + b[2], a[3] + b[3]]; }) ); return zippedResult; diff --git a/x-pack/plugins/infra/server/routes/alerting/preview.ts b/x-pack/plugins/infra/server/routes/alerting/preview.ts index 40d09dadfe050..1233e9d2d1357 100644 --- a/x-pack/plugins/infra/server/routes/alerting/preview.ts +++ b/x-pack/plugins/infra/server/routes/alerting/preview.ts @@ -30,7 +30,16 @@ export const initAlertPreviewRoute = ({ framework, sources }: InfraBackendLibs) }, }, framework.router.handleLegacyErrors(async (requestContext, request, response) => { - const { criteria, filterQuery, lookback, sourceId, alertType, alertInterval } = request.body; + const { + criteria, + filterQuery, + lookback, + sourceId, + alertType, + alertInterval, + alertThrottle, + alertOnNoData, + } = request.body; const callCluster = (endpoint: string, opts: Record) => { return callWithRequest(requestContext, endpoint, opts); @@ -51,22 +60,26 @@ export const initAlertPreviewRoute = ({ framework, sources }: InfraBackendLibs) lookback, config: source.configuration, alertInterval, + alertThrottle, + alertOnNoData, }); const numberOfGroups = previewResult.length; const resultTotals = previewResult.reduce( - (totals, [firedResult, noDataResult, errorResult]) => { + (totals, [firedResult, noDataResult, errorResult, notifications]) => { return { ...totals, fired: totals.fired + firedResult, noData: totals.noData + noDataResult, error: totals.error + errorResult, + notifications: totals.notifications + notifications, }; }, { fired: 0, noData: 0, error: 0, + notifications: 0, } ); return response.ok({ @@ -84,22 +97,26 @@ export const initAlertPreviewRoute = ({ framework, sources }: InfraBackendLibs) lookback, source, alertInterval, + alertThrottle, + alertOnNoData, }); const numberOfGroups = previewResult.length; const resultTotals = previewResult.reduce( - (totals, [firedResult, noDataResult, errorResult]) => { + (totals, [firedResult, noDataResult, errorResult, notifications]) => { return { ...totals, fired: totals.fired + firedResult, noData: totals.noData + noDataResult, error: totals.error + errorResult, + notifications: totals.notifications + notifications, }; }, { fired: 0, noData: 0, error: 0, + notifications: 0, } ); diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 868fa8a7e6177..bd4b81608acd6 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -8677,8 +8677,7 @@ "xpack.infra.metrics.alertFlyout.expression.metric.whenLabel": "タイミング", "xpack.infra.metrics.alertFlyout.filterHelpText": "KQL式を使用して、アラートトリガーの範囲を制限します。", "xpack.infra.metrics.alertFlyout.filterLabel": "フィルター(任意)", - "xpack.infra.metrics.alertFlyout.firedTime": "時間", - "xpack.infra.metrics.alertFlyout.firedTimes": "回数", + "xpack.infra.metrics.alertFlyout.firedTimes": "{fired, plural, one {# 時間} other {# 回数}}", "xpack.infra.metrics.alertFlyout.hourLabel": "時間", "xpack.infra.metrics.alertFlyout.lastDayLabel": "昨日", "xpack.infra.metrics.alertFlyout.lastHourLabel": "過去1時間", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 8bd3fcb7c3a3f..fbbd8ae4053b8 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -8683,8 +8683,7 @@ "xpack.infra.metrics.alertFlyout.expression.metric.whenLabel": "当", "xpack.infra.metrics.alertFlyout.filterHelpText": "使用 KQL 表达式限制告警触发器的范围。", "xpack.infra.metrics.alertFlyout.filterLabel": "筛选(可选)", - "xpack.infra.metrics.alertFlyout.firedTime": "次", - "xpack.infra.metrics.alertFlyout.firedTimes": "次", + "xpack.infra.metrics.alertFlyout.firedTimes": "{fired, plural, one {# 次} other {# 次}}", "xpack.infra.metrics.alertFlyout.hourLabel": "小时", "xpack.infra.metrics.alertFlyout.lastDayLabel": "昨天", "xpack.infra.metrics.alertFlyout.lastHourLabel": "上一小时", diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_form/alert_form.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_form/alert_form.tsx index 6177262557e07..c69c33c0fe22e 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_form/alert_form.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_form/alert_form.tsx @@ -248,6 +248,7 @@ export const AlertForm = ({ { alertParams: AlertParamsType; alertInterval: string; + alertThrottle: string; setAlertParams: (property: string, value: any) => void; setAlertProperty: (key: string, value: any) => void; errors: IErrorObject; From 6908fe7619ce5080db4bd6120559f38a5e270535 Mon Sep 17 00:00:00 2001 From: Tim Sullivan Date: Fri, 18 Sep 2020 13:08:15 -0700 Subject: [PATCH 17/27] [Reporting] Use spaceId from request in export generation (#76998) * [Reporting] Use spaceId from request in export generation * remove todo that has been done * whitespace * use post params api in test * add logging to core * Update x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.ts Co-authored-by: Joel Griffith * more logging * fix interdependence and remove Promise.all * getAbsoluteUrl have only 1 way to provide basePath * --wip-- [skip ci] * log apipath * deleteAllReports at the end * tests pass locally * set config in the tests * re-add skips of flaky tests * test using csv:quoteValues Co-authored-by: Joel Griffith Co-authored-by: Elastic Machine --- x-pack/plugins/reporting/common/constants.ts | 2 + x-pack/plugins/reporting/kibana.json | 1 + x-pack/plugins/reporting/server/core.ts | 62 ++++++++++-- .../common/decrypt_job_headers.ts | 1 - .../common/get_absolute_url.test.ts | 6 +- .../export_types/common/get_absolute_url.ts | 11 +-- .../common/get_conditional_headers.test.ts | 91 +---------------- .../export_types/common/get_custom_logo.ts | 40 -------- .../export_types/common/get_full_urls.ts | 8 +- .../server/export_types/common/index.ts | 1 - .../server/export_types/csv/create_job.ts | 1 + .../server/export_types/csv/execute_job.ts | 57 +---------- .../csv/generate_csv/get_ui_settings.ts | 8 +- .../export_types/csv/generate_csv/index.ts | 11 +-- .../export_types/csv/lib/get_request.ts | 55 ----------- .../server/export_types/csv/types.d.ts | 2 + .../csv_from_savedobject/execute_job.ts | 7 +- .../lib/get_csv_job.test.ts | 20 +--- .../csv_from_savedobject/lib/get_csv_job.ts | 7 +- .../export_types/png/create_job/index.ts | 4 +- .../server/export_types/png/types.d.ts | 1 - .../printable_pdf/create_job/index.ts | 4 +- .../printable_pdf/execute_job/index.ts | 6 +- .../lib}/get_custom_logo.test.ts | 18 ++-- .../printable_pdf/lib/get_custom_logo.ts | 23 +++++ .../export_types/printable_pdf/types.d.ts | 1 - .../reporting/server/lib/store/store.ts | 1 + x-pack/plugins/reporting/server/plugin.ts | 7 +- .../server/routes/diagnostic/screenshot.ts | 15 +-- .../create_mock_reportingplugin.ts | 7 +- x-pack/plugins/reporting/server/types.ts | 4 +- .../translations/translations/ja-JP.json | 2 - .../translations/translations/zh-CN.json | 2 - .../reporting/ecommerce/data.json.gz | Bin 1007932 -> 957893 bytes .../ecommerce_kibana_spaces/data.json.gz | Bin 1752 -> 2354 bytes .../reporting_api_integration/fixtures.ts | 19 ++-- .../csv_saved_search.ts | 16 +-- .../reporting_and_security/spaces.ts | 92 ++++++++++++++---- .../reporting_and_security/usage.ts | 9 +- .../reporting_api_integration/services.ts | 8 +- 40 files changed, 252 insertions(+), 378 deletions(-) delete mode 100644 x-pack/plugins/reporting/server/export_types/common/get_custom_logo.ts delete mode 100644 x-pack/plugins/reporting/server/export_types/csv/lib/get_request.ts rename x-pack/plugins/reporting/server/export_types/{common => printable_pdf/lib}/get_custom_logo.test.ts (74%) create mode 100644 x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.ts diff --git a/x-pack/plugins/reporting/common/constants.ts b/x-pack/plugins/reporting/common/constants.ts index 79449e5d229b8..07a239494da23 100644 --- a/x-pack/plugins/reporting/common/constants.ts +++ b/x-pack/plugins/reporting/common/constants.ts @@ -54,6 +54,8 @@ export const KBN_SCREENSHOT_HEADER_BLOCK_LIST = [ export const KBN_SCREENSHOT_HEADER_BLOCK_LIST_STARTS_WITH_PATTERN = ['proxy-']; export const UI_SETTINGS_CUSTOM_PDF_LOGO = 'xpackReporting:customPdfLogo'; +export const UI_SETTINGS_CSV_SEPARATOR = 'csv:separator'; +export const UI_SETTINGS_CSV_QUOTE_VALUES = 'csv:quoteValues'; export const PDF_JOB_TYPE = 'printable_pdf'; export const PNG_JOB_TYPE = 'PNG'; diff --git a/x-pack/plugins/reporting/kibana.json b/x-pack/plugins/reporting/kibana.json index 33141eec46299..93f914a78fe10 100644 --- a/x-pack/plugins/reporting/kibana.json +++ b/x-pack/plugins/reporting/kibana.json @@ -4,6 +4,7 @@ "kibanaVersion": "kibana", "optionalPlugins": [ "security", + "spaces", "usageCollection" ], "configPath": ["xpack", "reporting"], diff --git a/x-pack/plugins/reporting/server/core.ts b/x-pack/plugins/reporting/server/core.ts index 3657d323b3edf..c7a1c79748b5b 100644 --- a/x-pack/plugins/reporting/server/core.ts +++ b/x-pack/plugins/reporting/server/core.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ +import Hapi from 'hapi'; import * as Rx from 'rxjs'; import { first, map, take } from 'rxjs/operators'; import { @@ -14,24 +15,27 @@ import { SavedObjectsClientContract, SavedObjectsServiceStart, UiSettingsServiceStart, -} from 'src/core/server'; +} from '../../../../src/core/server'; import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server'; import { LicensingPluginSetup } from '../../licensing/server'; import { SecurityPluginSetup } from '../../security/server'; +import { DEFAULT_SPACE_ID } from '../../spaces/common/constants'; +import { SpacesPluginSetup } from '../../spaces/server'; import { ReportingConfig } from './'; import { HeadlessChromiumDriverFactory } from './browsers/chromium/driver_factory'; -import { checkLicense, getExportTypesRegistry } from './lib'; +import { checkLicense, getExportTypesRegistry, LevelLogger } from './lib'; import { ESQueueInstance } from './lib/create_queue'; import { screenshotsObservableFactory, ScreenshotsObservableFn } from './lib/screenshots'; import { ReportingStore } from './lib/store'; export interface ReportingInternalSetup { + basePath: Pick; + router: IRouter; features: FeaturesPluginSetup; elasticsearch: ElasticsearchServiceSetup; licensing: LicensingPluginSetup; - basePath: BasePath['get']; - router: IRouter; security?: SecurityPluginSetup; + spaces?: SpacesPluginSetup; } export interface ReportingInternalStart { @@ -50,7 +54,7 @@ export class ReportingCore { private exportTypesRegistry = getExportTypesRegistry(); private config?: ReportingConfig; - constructor() {} + constructor(private logger: LevelLogger) {} /* * Register setupDeps @@ -180,9 +184,9 @@ export class ReportingCore { return this.getPluginSetupDeps().elasticsearch; } - public async getSavedObjectsClient(fakeRequest: KibanaRequest) { + private async getSavedObjectsClient(request: KibanaRequest) { const { savedObjects } = await this.getPluginStartDeps(); - return savedObjects.getScopedClient(fakeRequest) as SavedObjectsClientContract; + return savedObjects.getScopedClient(request) as SavedObjectsClientContract; } public async getUiSettingsServiceFactory(savedObjectsClient: SavedObjectsClientContract) { @@ -190,4 +194,48 @@ export class ReportingCore { const scopedUiSettingsService = uiSettingsService.asScopedToClient(savedObjectsClient); return scopedUiSettingsService; } + + public getSpaceId(request: KibanaRequest): string | undefined { + const spacesService = this.getPluginSetupDeps().spaces?.spacesService; + if (spacesService) { + const spaceId = spacesService?.getSpaceId(request); + + if (spaceId !== DEFAULT_SPACE_ID) { + this.logger.info(`Request uses Space ID: ` + spaceId); + return spaceId; + } else { + this.logger.info(`Request uses default Space`); + } + } + } + + public getFakeRequest(baseRequest: object, spaceId?: string) { + const fakeRequest = KibanaRequest.from({ + path: '/', + route: { settings: {} }, + url: { href: '/' }, + raw: { req: { url: '/' } }, + ...baseRequest, + } as Hapi.Request); + + const spacesService = this.getPluginSetupDeps().spaces?.spacesService; + if (spacesService) { + if (spaceId && spaceId !== DEFAULT_SPACE_ID) { + this.logger.info(`Generating request for space: ` + spaceId); + this.getPluginSetupDeps().basePath.set(fakeRequest, `/s/${spaceId}`); + } + } + + return fakeRequest; + } + + public async getUiSettingsClient(request: KibanaRequest) { + const spacesService = this.getPluginSetupDeps().spaces?.spacesService; + const spaceId = this.getSpaceId(request); + if (spacesService && spaceId) { + this.logger.info(`Creating UI Settings Client for space: ${spaceId}`); + } + const savedObjectsClient = await this.getSavedObjectsClient(request); + return await this.getUiSettingsServiceFactory(savedObjectsClient); + } } diff --git a/x-pack/plugins/reporting/server/export_types/common/decrypt_job_headers.ts b/x-pack/plugins/reporting/server/export_types/common/decrypt_job_headers.ts index 5ab029bfd9f29..4f0088467dd68 100644 --- a/x-pack/plugins/reporting/server/export_types/common/decrypt_job_headers.ts +++ b/x-pack/plugins/reporting/server/export_types/common/decrypt_job_headers.ts @@ -11,7 +11,6 @@ interface HasEncryptedHeaders { headers?: string; } -// TODO merge functionality with CSV execute job export const decryptJobHeaders = async < JobParamsType, TaskPayloadType extends HasEncryptedHeaders diff --git a/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.test.ts b/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.test.ts index cb792fbd6ae03..0b06beabfd24d 100644 --- a/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.test.ts +++ b/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.test.ts @@ -7,7 +7,7 @@ import { getAbsoluteUrlFactory } from './get_absolute_url'; const defaultOptions = { - defaultBasePath: 'sbp', + basePath: 'sbp', protocol: 'http:', hostname: 'localhost', port: 5601, @@ -64,8 +64,8 @@ test(`uses the provided hash with queryString`, () => { }); test(`uses the provided basePath`, () => { - const getAbsoluteUrl = getAbsoluteUrlFactory(defaultOptions); - const absoluteUrl = getAbsoluteUrl({ basePath: '/s/marketing' }); + const getAbsoluteUrl = getAbsoluteUrlFactory({ ...defaultOptions, basePath: '/s/marketing' }); + const absoluteUrl = getAbsoluteUrl(); expect(absoluteUrl).toBe(`http://localhost:5601/s/marketing/app/kibana`); }); diff --git a/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.ts b/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.ts index f996a49e5eadc..72305f47e7189 100644 --- a/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.ts +++ b/x-pack/plugins/reporting/server/export_types/common/get_absolute_url.ts @@ -7,7 +7,7 @@ import url from 'url'; interface AbsoluteURLFactoryOptions { - defaultBasePath: string; + basePath: string; protocol: string; hostname: string; port: string | number; @@ -17,14 +17,9 @@ export const getAbsoluteUrlFactory = ({ protocol, hostname, port, - defaultBasePath, + basePath, }: AbsoluteURLFactoryOptions) => { - return function getAbsoluteUrl({ - basePath = defaultBasePath, - hash = '', - path = '/app/kibana', - search = '', - } = {}) { + return function getAbsoluteUrl({ hash = '', path = '/app/kibana', search = '' } = {}) { return url.format({ protocol, hostname, diff --git a/x-pack/plugins/reporting/server/export_types/common/get_conditional_headers.test.ts b/x-pack/plugins/reporting/server/export_types/common/get_conditional_headers.test.ts index a0d8ff0852544..794ea9febb5c0 100644 --- a/x-pack/plugins/reporting/server/export_types/common/get_conditional_headers.test.ts +++ b/x-pack/plugins/reporting/server/export_types/common/get_conditional_headers.test.ts @@ -5,24 +5,16 @@ */ import { ReportingConfig } from '../../'; -import { ReportingCore } from '../../core'; -import { - createMockConfig, - createMockConfigSchema, - createMockReportingCore, -} from '../../test_helpers'; +import { createMockConfig, createMockConfigSchema } from '../../test_helpers'; import { BasePayload } from '../../types'; -import { TaskPayloadPDF } from '../printable_pdf/types'; -import { getConditionalHeaders, getCustomLogo } from './'; +import { getConditionalHeaders } from './'; let mockConfig: ReportingConfig; -let mockReportingPlugin: ReportingCore; beforeEach(async () => { const reportingConfig = { kibanaServer: { hostname: 'custom-hostname' } }; const mockSchema = createMockConfigSchema(reportingConfig); mockConfig = createMockConfig(mockSchema); - mockReportingPlugin = await createMockReportingCore(mockConfig); }); describe('conditions', () => { @@ -32,7 +24,7 @@ describe('conditions', () => { baz: 'quix', }; - const conditionalHeaders = await getConditionalHeaders({ + const conditionalHeaders = getConditionalHeaders({ job: {} as BasePayload, filteredHeaders: permittedHeaders, config: mockConfig, @@ -51,83 +43,6 @@ describe('conditions', () => { }); }); -test('uses basePath from job when creating saved object service', async () => { - const mockGetSavedObjectsClient = jest.fn(); - mockReportingPlugin.getSavedObjectsClient = mockGetSavedObjectsClient; - - const permittedHeaders = { - foo: 'bar', - baz: 'quix', - }; - const conditionalHeaders = await getConditionalHeaders({ - job: {} as BasePayload, - filteredHeaders: permittedHeaders, - config: mockConfig, - }); - const jobBasePath = '/sbp/s/marketing'; - await getCustomLogo({ - reporting: mockReportingPlugin, - job: { basePath: jobBasePath } as TaskPayloadPDF, - conditionalHeaders, - config: mockConfig, - }); - - const getBasePath = mockGetSavedObjectsClient.mock.calls[0][0].getBasePath; - expect(getBasePath()).toBe(jobBasePath); -}); - -test(`uses basePath from server if job doesn't have a basePath when creating saved object service`, async () => { - const mockGetSavedObjectsClient = jest.fn(); - mockReportingPlugin.getSavedObjectsClient = mockGetSavedObjectsClient; - - const reportingConfig = { kibanaServer: { hostname: 'localhost' }, server: { basePath: '/sbp' } }; - const mockSchema = createMockConfigSchema(reportingConfig); - mockConfig = createMockConfig(mockSchema); - - const permittedHeaders = { - foo: 'bar', - baz: 'quix', - }; - const conditionalHeaders = await getConditionalHeaders({ - job: {} as BasePayload, - filteredHeaders: permittedHeaders, - config: mockConfig, - }); - - await getCustomLogo({ - reporting: mockReportingPlugin, - job: {} as TaskPayloadPDF, - conditionalHeaders, - config: mockConfig, - }); - - const getBasePath = mockGetSavedObjectsClient.mock.calls[0][0].getBasePath; - expect(getBasePath()).toBe(`/sbp`); - expect(mockGetSavedObjectsClient.mock.calls[0]).toMatchInlineSnapshot(` - Array [ - Object { - "getBasePath": [Function], - "headers": Object { - "baz": "quix", - "foo": "bar", - }, - "path": "/", - "raw": Object { - "req": Object { - "url": "/", - }, - }, - "route": Object { - "settings": Object {}, - }, - "url": Object { - "href": "/", - }, - }, - ] - `); -}); - describe('config formatting', () => { test(`lowercases kibanaServer.hostname`, async () => { const reportingConfig = { kibanaServer: { hostname: 'GREAT-HOSTNAME' } }; diff --git a/x-pack/plugins/reporting/server/export_types/common/get_custom_logo.ts b/x-pack/plugins/reporting/server/export_types/common/get_custom_logo.ts deleted file mode 100644 index ee61d76c8a933..0000000000000 --- a/x-pack/plugins/reporting/server/export_types/common/get_custom_logo.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { ReportingConfig, ReportingCore } from '../../'; -import { UI_SETTINGS_CUSTOM_PDF_LOGO } from '../../../common/constants'; -import { ConditionalHeaders } from '../../types'; -import { TaskPayloadPDF } from '../printable_pdf/types'; // Logo is PDF only - -export const getCustomLogo = async ({ - reporting, - config, - job, - conditionalHeaders, -}: { - reporting: ReportingCore; - config: ReportingConfig; - job: TaskPayloadPDF; - conditionalHeaders: ConditionalHeaders; -}) => { - const serverBasePath: string = config.kbnConfig.get('server', 'basePath'); - const fakeRequest: any = { - headers: conditionalHeaders.headers, - // This is used by the spaces SavedObjectClientWrapper to determine the existing space. - // We use the basePath from the saved job, which we'll have post spaces being implemented; - // or we use the server base path, which uses the default space - getBasePath: () => job.basePath || serverBasePath, - path: '/', - route: { settings: {} }, - url: { href: '/' }, - raw: { req: { url: '/' } }, - }; - - const savedObjectsClient = await reporting.getSavedObjectsClient(fakeRequest); - const uiSettings = await reporting.getUiSettingsServiceFactory(savedObjectsClient); - const logo: string = await uiSettings.get(UI_SETTINGS_CUSTOM_PDF_LOGO); - return { conditionalHeaders, logo }; -}; diff --git a/x-pack/plugins/reporting/server/export_types/common/get_full_urls.ts b/x-pack/plugins/reporting/server/export_types/common/get_full_urls.ts index d6f472e18bc7b..f4e3a7b723c08 100644 --- a/x-pack/plugins/reporting/server/export_types/common/get_full_urls.ts +++ b/x-pack/plugins/reporting/server/export_types/common/get_full_urls.ts @@ -36,12 +36,7 @@ export function getFullUrls({ config.get('kibanaServer', 'hostname'), config.get('kibanaServer', 'port'), ] as string[]; - const getAbsoluteUrl = getAbsoluteUrlFactory({ - defaultBasePath: basePath, - protocol, - hostname, - port, - }); + const getAbsoluteUrl = getAbsoluteUrlFactory({ basePath, protocol, hostname, port }); // PDF and PNG job params put in the url differently let relativeUrls: string[] = []; @@ -61,7 +56,6 @@ export function getFullUrls({ const urls = relativeUrls.map((relativeUrl) => { const parsedRelative: UrlWithStringQuery = urlParse(relativeUrl); const jobUrl = getAbsoluteUrl({ - basePath: job.basePath, path: parsedRelative.pathname, hash: parsedRelative.hash, search: parsedRelative.search, diff --git a/x-pack/plugins/reporting/server/export_types/common/index.ts b/x-pack/plugins/reporting/server/export_types/common/index.ts index e0d03eb4864ca..80eaa52d0951b 100644 --- a/x-pack/plugins/reporting/server/export_types/common/index.ts +++ b/x-pack/plugins/reporting/server/export_types/common/index.ts @@ -6,7 +6,6 @@ export { decryptJobHeaders } from './decrypt_job_headers'; export { getConditionalHeaders } from './get_conditional_headers'; -export { getCustomLogo } from './get_custom_logo'; export { getFullUrls } from './get_full_urls'; export { omitBlockedHeaders } from './omit_blocked_headers'; export { validateUrls } from './validate_urls'; diff --git a/x-pack/plugins/reporting/server/export_types/csv/create_job.ts b/x-pack/plugins/reporting/server/export_types/csv/create_job.ts index be18bd7fff361..d768dc6f8e084 100644 --- a/x-pack/plugins/reporting/server/export_types/csv/create_job.ts +++ b/x-pack/plugins/reporting/server/export_types/csv/create_job.ts @@ -25,6 +25,7 @@ export const createJobFnFactory: CreateJobFnFactory { - const decryptHeaders = async () => { - try { - if (typeof headers !== 'string') { - throw new Error( - i18n.translate( - 'xpack.reporting.exportTypes.csv.executeJob.missingJobHeadersErrorMessage', - { - defaultMessage: 'Job headers are missing', - } - ) - ); - } - return await crypto.decrypt(headers); - } catch (err) { - logger.error(err); - throw new Error( - i18n.translate( - 'xpack.reporting.exportTypes.csv.executeJob.failedToDecryptReportJobDataErrorMessage', - { - defaultMessage: 'Failed to decrypt report job data. Please ensure that {encryptionKey} is set and re-generate this report. {err}', - values: { encryptionKey: 'xpack.reporting.encryptionKey', err: err.toString() }, - } - ) - ); // prettier-ignore - } - }; - - return KibanaRequest.from({ - headers: await decryptHeaders(), - // This is used by the spaces SavedObjectClientWrapper to determine the existing space. - // We use the basePath from the saved job, which we'll have post spaces being implemented; - // or we use the server base path, which uses the default space - path: '/', - route: { settings: {} }, - url: { href: '/' }, - app: {}, - raw: { req: { url: '/' } }, - } as Hapi.Request); -}; - export const runTaskFnFactory: RunTaskFnFactory> = function executeJobFactoryFn(reporting, parentLogger) { const config = reporting.getConfig(); - const crypto = cryptoFactory(config.get('encryptionKey')); const logger = parentLogger.clone([CSV_JOB_TYPE, 'execute-job']); return async function runTask(jobId, job, cancellationToken) { @@ -67,16 +21,15 @@ export const runTaskFnFactory: RunTaskFnFactory callAsCurrentUser(endpoint, clientParams, options); - const savedObjectsClient = await reporting.getSavedObjectsClient(fakeRequest); - const uiSettingsClient = await reporting.getUiSettingsServiceFactory(savedObjectsClient); - const { content, maxSizeReached, size, csvContainsFormulas, warnings } = await generateCsv( job, config, diff --git a/x-pack/plugins/reporting/server/export_types/csv/generate_csv/get_ui_settings.ts b/x-pack/plugins/reporting/server/export_types/csv/generate_csv/get_ui_settings.ts index 915d5010a4885..1f3354debc305 100644 --- a/x-pack/plugins/reporting/server/export_types/csv/generate_csv/get_ui_settings.ts +++ b/x-pack/plugins/reporting/server/export_types/csv/generate_csv/get_ui_settings.ts @@ -6,6 +6,10 @@ import { i18n } from '@kbn/i18n'; import { IUiSettingsClient } from 'kibana/server'; +import { + UI_SETTINGS_CSV_QUOTE_VALUES, + UI_SETTINGS_CSV_SEPARATOR, +} from '../../../../common/constants'; import { ReportingConfig } from '../../../'; import { LevelLogger } from '../../../lib'; @@ -38,8 +42,8 @@ export const getUiSettings = async ( // Separator, QuoteValues const [separator, quoteValues] = await Promise.all([ - client.get('csv:separator'), - client.get('csv:quoteValues'), + client.get(UI_SETTINGS_CSV_SEPARATOR), + client.get(UI_SETTINGS_CSV_QUOTE_VALUES), ]); return { diff --git a/x-pack/plugins/reporting/server/export_types/csv/generate_csv/index.ts b/x-pack/plugins/reporting/server/export_types/csv/generate_csv/index.ts index e383f21143149..6ecddae12a988 100644 --- a/x-pack/plugins/reporting/server/export_types/csv/generate_csv/index.ts +++ b/x-pack/plugins/reporting/server/export_types/csv/generate_csv/index.ts @@ -37,9 +37,7 @@ interface SearchRequest { } export interface GenerateCsvParams { - jobParams: { - browserTimezone: string; - }; + browserTimezone: string; searchRequest: SearchRequest; indexPatternSavedObject: IndexPatternSavedObject; fields: string[]; @@ -57,12 +55,7 @@ export function createGenerateCsv(logger: LevelLogger) { callEndpoint: EndpointCaller, cancellationToken: CancellationToken ): Promise { - const settings = await getUiSettings( - job.jobParams?.browserTimezone, - uiSettingsClient, - config, - logger - ); + const settings = await getUiSettings(job.browserTimezone, uiSettingsClient, config, logger); const escapeValue = createEscapeValue(settings.quoteValues, settings.escapeFormulaValues); const bom = config.get('csv', 'useByteOrderMarkEncoding') ? CSV_BOM_CHARS : ''; const builder = new MaxSizeStringBuilder(byteSizeValueToNumber(settings.maxSizeBytes), bom); diff --git a/x-pack/plugins/reporting/server/export_types/csv/lib/get_request.ts b/x-pack/plugins/reporting/server/export_types/csv/lib/get_request.ts deleted file mode 100644 index 09e6becc2baec..0000000000000 --- a/x-pack/plugins/reporting/server/export_types/csv/lib/get_request.ts +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { Crypto } from '@elastic/node-crypto'; -import { i18n } from '@kbn/i18n'; -import Hapi from 'hapi'; -import { KibanaRequest } from '../../../../../../../src/core/server'; -import { LevelLogger } from '../../../lib'; - -export const getRequest = async ( - headers: string | undefined, - crypto: Crypto, - logger: LevelLogger -) => { - const decryptHeaders = async () => { - try { - if (typeof headers !== 'string') { - throw new Error( - i18n.translate( - 'xpack.reporting.exportTypes.csv.executeJob.missingJobHeadersErrorMessage', - { - defaultMessage: 'Job headers are missing', - } - ) - ); - } - return await crypto.decrypt(headers); - } catch (err) { - logger.error(err); - throw new Error( - i18n.translate( - 'xpack.reporting.exportTypes.csv.executeJob.failedToDecryptReportJobDataErrorMessage', - { - defaultMessage: 'Failed to decrypt report job data. Please ensure that {encryptionKey} is set and re-generate this report. {err}', - values: { encryptionKey: 'xpack.reporting.encryptionKey', err: err.toString() }, - } - ) - ); // prettier-ignore - } - }; - - return KibanaRequest.from({ - headers: await decryptHeaders(), - // This is used by the spaces SavedObjectClientWrapper to determine the existing space. - // We use the basePath from the saved job, which we'll have post spaces being implemented; - // or we use the server base path, which uses the default space - path: '/', - route: { settings: {} }, - url: { href: '/' }, - raw: { req: { url: '/' } }, - } as Hapi.Request); -}; diff --git a/x-pack/plugins/reporting/server/export_types/csv/types.d.ts b/x-pack/plugins/reporting/server/export_types/csv/types.d.ts index f420d8b033170..214157db51cb7 100644 --- a/x-pack/plugins/reporting/server/export_types/csv/types.d.ts +++ b/x-pack/plugins/reporting/server/export_types/csv/types.d.ts @@ -29,6 +29,7 @@ export interface IndexPatternSavedObject { } export interface JobParamsDiscoverCsv extends BaseParams { + browserTimezone: string; indexPatternId: string; title: string; searchRequest: SearchRequest; @@ -38,6 +39,7 @@ export interface JobParamsDiscoverCsv extends BaseParams { } export interface TaskPayloadCSV extends BasePayload { + browserTimezone: string; basePath: string; searchRequest: any; fields: any; diff --git a/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/execute_job.ts b/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/execute_job.ts index 3a5deda176b8c..0ca80581fcc83 100644 --- a/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/execute_job.ts +++ b/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/execute_job.ts @@ -48,9 +48,8 @@ export const runTaskFnFactory: RunTaskFnFactory = function e jobLogger.debug(`Execute job generating [${visType}] csv`); const savedObjectsClient = context.core.savedObjects.client; - - const uiConfig = await reporting.getUiSettingsServiceFactory(savedObjectsClient); - const job = await getGenerateCsvParams(jobParams, panel, savedObjectsClient, uiConfig); + const uiSettingsClient = await reporting.getUiSettingsServiceFactory(savedObjectsClient); + const job = await getGenerateCsvParams(jobParams, panel, savedObjectsClient, uiSettingsClient); const elasticsearch = reporting.getElasticsearchService(); const { callAsCurrentUser } = elasticsearch.legacy.client.asScoped(req); @@ -58,7 +57,7 @@ export const runTaskFnFactory: RunTaskFnFactory = function e const { content, maxSizeReached, size, csvContainsFormulas, warnings } = await generateCsv( job, config, - uiConfig, + uiSettingsClient, callAsCurrentUser, new CancellationToken() // can not be cancelled ); diff --git a/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.test.ts b/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.test.ts index 9646d7eecd5b5..b387245406fbb 100644 --- a/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.test.ts +++ b/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.test.ts @@ -45,6 +45,7 @@ describe('Get CSV Job', () => { ); expect(result).toMatchInlineSnapshot(` Object { + "browserTimezone": "PST", "conflictedTypesFields": Array [], "fields": Array [], "indexPatternSavedObject": Object { @@ -57,9 +58,6 @@ describe('Get CSV Job', () => { "timeFieldName": null, "title": null, }, - "jobParams": Object { - "browserTimezone": "PST", - }, "metaFields": Array [], "searchRequest": Object { "body": Object { @@ -99,6 +97,7 @@ describe('Get CSV Job', () => { ); expect(result).toMatchInlineSnapshot(` Object { + "browserTimezone": "PST", "conflictedTypesFields": Array [], "fields": Array [], "indexPatternSavedObject": Object { @@ -111,9 +110,6 @@ describe('Get CSV Job', () => { "timeFieldName": null, "title": null, }, - "jobParams": Object { - "browserTimezone": "PST", - }, "metaFields": Array [], "searchRequest": Object { "body": Object { @@ -156,6 +152,7 @@ describe('Get CSV Job', () => { ); expect(result).toMatchInlineSnapshot(` Object { + "browserTimezone": "Africa/Timbuktu", "conflictedTypesFields": Array [], "fields": Array [], "indexPatternSavedObject": Object { @@ -168,9 +165,6 @@ describe('Get CSV Job', () => { "timeFieldName": null, "title": null, }, - "jobParams": Object { - "browserTimezone": "Africa/Timbuktu", - }, "metaFields": Array [], "searchRequest": Object { "body": Object { @@ -212,6 +206,7 @@ describe('Get CSV Job', () => { ); expect(result).toMatchInlineSnapshot(` Object { + "browserTimezone": "Africa/Timbuktu", "conflictedTypesFields": Array [], "fields": Array [ "@test_time", @@ -226,9 +221,6 @@ describe('Get CSV Job', () => { "timeFieldName": "@test_time", "title": "test search", }, - "jobParams": Object { - "browserTimezone": "Africa/Timbuktu", - }, "metaFields": Array [], "searchRequest": Object { "body": Object { @@ -286,6 +278,7 @@ describe('Get CSV Job', () => { ); expect(result).toMatchInlineSnapshot(` Object { + "browserTimezone": "Africa/Timbuktu", "conflictedTypesFields": Array [], "fields": Array [ "@test_time", @@ -300,9 +293,6 @@ describe('Get CSV Job', () => { "timeFieldName": "@test_time", "title": "test search", }, - "jobParams": Object { - "browserTimezone": "Africa/Timbuktu", - }, "metaFields": Array [], "searchRequest": Object { "body": Object { diff --git a/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.ts b/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.ts index 0fc29c5b208d9..26a4b17aaf71f 100644 --- a/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.ts +++ b/x-pack/plugins/reporting/server/export_types/csv_from_savedobject/lib/get_csv_job.ts @@ -12,6 +12,8 @@ import { IIndexPattern, Query, } from '../../../../../../../src/plugins/data/server'; +import { TimeRangeParams } from '../../../types'; +import { GenerateCsvParams } from '../../csv/generate_csv'; import { DocValueFields, IndexPatternField, @@ -23,7 +25,6 @@ import { } from '../types'; import { getDataSource } from './get_data_source'; import { getFilters } from './get_filters'; -import { GenerateCsvParams } from '../../csv/generate_csv'; export const getEsQueryConfig = async (config: IUiSettingsClient) => { const configs = await Promise.all([ @@ -49,7 +50,7 @@ export const getGenerateCsvParams = async ( savedObjectsClient: SavedObjectsClientContract, uiConfig: IUiSettingsClient ): Promise => { - let timerange; + let timerange: TimeRangeParams; if (jobParams.post?.timerange) { timerange = jobParams.post?.timerange; } else { @@ -136,7 +137,7 @@ export const getGenerateCsvParams = async ( }; return { - jobParams: { browserTimezone: timerange.timezone }, + browserTimezone: timerange.timezone, indexPatternSavedObject, searchRequest, fields: includes, diff --git a/x-pack/plugins/reporting/server/export_types/png/create_job/index.ts b/x-pack/plugins/reporting/server/export_types/png/create_job/index.ts index 173a67ad18edf..3727b2ec7b432 100644 --- a/x-pack/plugins/reporting/server/export_types/png/create_job/index.ts +++ b/x-pack/plugins/reporting/server/export_types/png/create_job/index.ts @@ -25,13 +25,13 @@ export const createJobFnFactory: CreateJobFnFactory { - basePath?: string; browserTimezone: string; forceNow?: string; layout: LayoutParams; diff --git a/x-pack/plugins/reporting/server/export_types/printable_pdf/create_job/index.ts b/x-pack/plugins/reporting/server/export_types/printable_pdf/create_job/index.ts index 96e634337e6a9..cae706a479b7f 100644 --- a/x-pack/plugins/reporting/server/export_types/printable_pdf/create_job/index.ts +++ b/x-pack/plugins/reporting/server/export_types/printable_pdf/create_job/index.ts @@ -25,10 +25,10 @@ export const createJobFnFactory: CreateJobFnFactory>; @@ -42,9 +42,7 @@ export const runTaskFnFactory: QueuedPdfExecutorFactory = function executeJobFac mergeMap(() => decryptJobHeaders({ encryptionKey, job, logger })), map((decryptedHeaders) => omitBlockedHeaders({ job, decryptedHeaders })), map((filteredHeaders) => getConditionalHeaders({ config, job, filteredHeaders })), - mergeMap((conditionalHeaders) => - getCustomLogo({ reporting, config, job, conditionalHeaders }) - ), + mergeMap((conditionalHeaders) => getCustomLogo(reporting, conditionalHeaders, job.spaceId)), mergeMap(({ logo, conditionalHeaders }) => { const urls = getFullUrls({ config, job }); diff --git a/x-pack/plugins/reporting/server/export_types/common/get_custom_logo.test.ts b/x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.test.ts similarity index 74% rename from x-pack/plugins/reporting/server/export_types/common/get_custom_logo.test.ts rename to x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.test.ts index ec4e54632eef5..8fa8fa5cbe3cb 100644 --- a/x-pack/plugins/reporting/server/export_types/common/get_custom_logo.test.ts +++ b/x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.test.ts @@ -4,14 +4,15 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ReportingConfig, ReportingCore } from '../../'; +import { ReportingConfig, ReportingCore } from '../../../'; import { createMockConfig, createMockConfigSchema, createMockReportingCore, -} from '../../test_helpers'; -import { TaskPayloadPDF } from '../printable_pdf/types'; -import { getConditionalHeaders, getCustomLogo } from './'; +} from '../../../test_helpers'; +import { getConditionalHeaders } from '../../common'; +import { TaskPayloadPDF } from '../types'; +import { getCustomLogo } from './get_custom_logo'; let mockConfig: ReportingConfig; let mockReportingPlugin: ReportingCore; @@ -38,18 +39,13 @@ test(`gets logo from uiSettings`, async () => { get: mockGet, }); - const conditionalHeaders = await getConditionalHeaders({ + const conditionalHeaders = getConditionalHeaders({ job: {} as TaskPayloadPDF, filteredHeaders: permittedHeaders, config: mockConfig, }); - const { logo } = await getCustomLogo({ - reporting: mockReportingPlugin, - config: mockConfig, - job: {} as TaskPayloadPDF, - conditionalHeaders, - }); + const { logo } = await getCustomLogo(mockReportingPlugin, conditionalHeaders); expect(mockGet).toBeCalledWith('xpackReporting:customPdfLogo'); expect(logo).toBe('purple pony'); diff --git a/x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.ts b/x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.ts new file mode 100644 index 0000000000000..35ab7001ecbe4 --- /dev/null +++ b/x-pack/plugins/reporting/server/export_types/printable_pdf/lib/get_custom_logo.ts @@ -0,0 +1,23 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { ReportingCore } from '../../../'; +import { UI_SETTINGS_CUSTOM_PDF_LOGO } from '../../../../common/constants'; +import { ConditionalHeaders } from '../../../types'; + +export const getCustomLogo = async ( + reporting: ReportingCore, + conditionalHeaders: ConditionalHeaders, + spaceId?: string +) => { + const fakeRequest = reporting.getFakeRequest({ headers: conditionalHeaders.headers }, spaceId); + const uiSettingsClient = await reporting.getUiSettingsClient(fakeRequest); + + const logo: string = await uiSettingsClient.get(UI_SETTINGS_CUSTOM_PDF_LOGO); + + // continue the pipeline + return { conditionalHeaders, logo }; +}; diff --git a/x-pack/plugins/reporting/server/export_types/printable_pdf/types.d.ts b/x-pack/plugins/reporting/server/export_types/printable_pdf/types.d.ts index 3020cbb5f28b0..7fd176e71f2d5 100644 --- a/x-pack/plugins/reporting/server/export_types/printable_pdf/types.d.ts +++ b/x-pack/plugins/reporting/server/export_types/printable_pdf/types.d.ts @@ -16,7 +16,6 @@ export interface JobParamsPDF extends BaseParams { // Job payload: structure of stored job data provided by create_job export interface TaskPayloadPDF extends BasePayload { - basePath?: string; browserTimezone: string; forceNow?: string; layout: LayoutParams; diff --git a/x-pack/plugins/reporting/server/lib/store/store.ts b/x-pack/plugins/reporting/server/lib/store/store.ts index 0aae8b567bcdb..03d88ca60e2c0 100644 --- a/x-pack/plugins/reporting/server/lib/store/store.ts +++ b/x-pack/plugins/reporting/server/lib/store/store.ts @@ -12,6 +12,7 @@ import { BaseParams, BaseParamsEncryptedFields, ReportingUser } from '../../type import { indexTimestamp } from './index_timestamp'; import { mapping } from './mapping'; import { Report } from './report'; + interface JobSettings { timeout: number; browser_type: string; diff --git a/x-pack/plugins/reporting/server/plugin.ts b/x-pack/plugins/reporting/server/plugin.ts index adb89abe20280..6a93a35bfcc84 100644 --- a/x-pack/plugins/reporting/server/plugin.ts +++ b/x-pack/plugins/reporting/server/plugin.ts @@ -34,7 +34,7 @@ export class ReportingPlugin constructor(context: PluginInitializerContext) { this.logger = new LevelLogger(context.logger.get()); this.initializerContext = context; - this.reportingCore = new ReportingCore(); + this.reportingCore = new ReportingCore(this.logger); } public setup(core: CoreSetup, plugins: ReportingSetupDeps) { @@ -70,11 +70,11 @@ export class ReportingPlugin }); const { elasticsearch, http } = core; - const { features, licensing, security } = plugins; + const { features, licensing, security, spaces } = plugins; const { initializerContext: initContext, reportingCore } = this; const router = http.createRouter(); - const basePath = http.basePath.get; + const basePath = http.basePath; reportingCore.pluginSetup({ features, @@ -83,6 +83,7 @@ export class ReportingPlugin basePath, router, security, + spaces, }); registerReportingUsageCollector(reportingCore, plugins); diff --git a/x-pack/plugins/reporting/server/routes/diagnostic/screenshot.ts b/x-pack/plugins/reporting/server/routes/diagnostic/screenshot.ts index 979283f9f037c..0acf384869ded 100644 --- a/x-pack/plugins/reporting/server/routes/diagnostic/screenshot.ts +++ b/x-pack/plugins/reporting/server/routes/diagnostic/screenshot.ts @@ -35,19 +35,8 @@ export const registerDiagnoseScreenshot = (reporting: ReportingCore, logger: Log config.get('kibanaServer', 'port'), ] as string[]; - const getAbsoluteUrl = getAbsoluteUrlFactory({ - defaultBasePath: basePath, - protocol, - hostname, - port, - }); - - const hashUrl = getAbsoluteUrl({ - basePath, - path: '/', - hash: '', - search: '', - }); + const getAbsoluteUrl = getAbsoluteUrlFactory({ basePath, protocol, hostname, port }); + const hashUrl = getAbsoluteUrl({ path: '/', hash: '', search: '' }); // Hack the layout to make the base/login page work const layout = { diff --git a/x-pack/plugins/reporting/server/test_helpers/create_mock_reportingplugin.ts b/x-pack/plugins/reporting/server/test_helpers/create_mock_reportingplugin.ts index 6ec35db5caec6..72772f9f7b755 100644 --- a/x-pack/plugins/reporting/server/test_helpers/create_mock_reportingplugin.ts +++ b/x-pack/plugins/reporting/server/test_helpers/create_mock_reportingplugin.ts @@ -37,18 +37,19 @@ const createMockPluginSetup = ( return { features: featuresPluginMock.createSetup(), elasticsearch: setupMock.elasticsearch || { legacy: { client: {} } }, - basePath: setupMock.basePath || '/all-about-that-basepath', + basePath: { set: jest.fn() }, router: setupMock.router, security: setupMock.security, licensing: { license$: Rx.of({ isAvailable: true, isActive: true, type: 'basic' }) } as any, }; }; +const logger = createMockLevelLogger(); + const createMockPluginStart = ( mockReportingCore: ReportingCore, startMock?: any ): ReportingInternalStart => { - const logger = createMockLevelLogger(); const store = new ReportingStore(mockReportingCore, logger); return { browserDriverFactory: startMock.browserDriverFactory, @@ -134,7 +135,7 @@ export const createMockReportingCore = async ( } config = config || {}; - const core = new ReportingCore(); + const core = new ReportingCore(logger); core.pluginSetup(setupDepsMock); core.setConfig(config); diff --git a/x-pack/plugins/reporting/server/types.ts b/x-pack/plugins/reporting/server/types.ts index c67a95c2de754..a3c63a0fb539d 100644 --- a/x-pack/plugins/reporting/server/types.ts +++ b/x-pack/plugins/reporting/server/types.ts @@ -8,6 +8,7 @@ import { KibanaRequest, RequestHandlerContext } from 'src/core/server'; // eslint-disable-next-line @kbn/eslint/no-restricted-paths import { DataPluginStart } from 'src/plugins/data/server/plugin'; import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; +import { SpacesPluginSetup } from '../../spaces/server'; import { CancellationToken } from '../../../plugins/reporting/common'; import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server'; import { LicensingPluginSetup } from '../../licensing/server'; @@ -53,6 +54,7 @@ export interface BasePayload { jobParams: JobParamsType; title: string; type: string; + spaceId?: string; } export interface JobSource { @@ -95,6 +97,7 @@ export interface ReportingSetupDeps { licensing: LicensingPluginSetup; features: FeaturesPluginSetup; security?: SecurityPluginSetup; + spaces?: SpacesPluginSetup; usageCollection?: UsageCollectionSetup; } @@ -121,7 +124,6 @@ export interface BaseParams { } export interface BaseParamsEncryptedFields extends BaseParams { - basePath?: string; // for screenshot type reports headers: string; // encrypted headers } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index bd4b81608acd6..1223b3f42f8cd 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -13936,8 +13936,6 @@ "xpack.reporting.exportTypes.common.failedToDecryptReportJobDataErrorMessage": "レポートジョブデータの解読に失敗しました。{encryptionKey}が設定されていることを確認してこのレポートを再生成してください。{err}", "xpack.reporting.exportTypes.common.missingJobHeadersErrorMessage": "ジョブヘッダーがありません", "xpack.reporting.exportTypes.csv.executeJob.dateFormateSetting": "Kibana の高度な設定「{dateFormatTimezone}」が「ブラウザー」に設定されていますあいまいさを避けるために日付は UTC 形式に変換されます。", - "xpack.reporting.exportTypes.csv.executeJob.failedToDecryptReportJobDataErrorMessage": "レポートジョブデータの解読に失敗しました{encryptionKey} が設定されていることを確認してこのレポートを再生成してください。{err}", - "xpack.reporting.exportTypes.csv.executeJob.missingJobHeadersErrorMessage": "ジョブヘッダーがありません", "xpack.reporting.exportTypes.csv.generateCsv.escapedFormulaValues": "CSVには、値がエスケープされた式が含まれる場合があります", "xpack.reporting.exportTypes.csv.hitIterator.expectedHitsErrorMessage": "次の Elasticsearch からの応答で期待される {hits}: {response}", "xpack.reporting.exportTypes.csv.hitIterator.expectedScrollIdErrorMessage": "次の Elasticsearch からの応答で期待される {scrollId}: {response}", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index fbbd8ae4053b8..f1bab383d53f5 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -13945,8 +13945,6 @@ "xpack.reporting.exportTypes.common.failedToDecryptReportJobDataErrorMessage": "无法解密报告作业数据。请确保已设置 {encryptionKey},然后重新生成此报告。{err}", "xpack.reporting.exportTypes.common.missingJobHeadersErrorMessage": "作业标头缺失", "xpack.reporting.exportTypes.csv.executeJob.dateFormateSetting": "Kibana 高级设置“{dateFormatTimezone}”已设置为“浏览器”。日期将格式化为 UTC 以避免混淆。", - "xpack.reporting.exportTypes.csv.executeJob.failedToDecryptReportJobDataErrorMessage": "无法解密报告作业数据。请确保已设置 {encryptionKey},然后重新生成此报告。{err}", - "xpack.reporting.exportTypes.csv.executeJob.missingJobHeadersErrorMessage": "作业标头缺失", "xpack.reporting.exportTypes.csv.generateCsv.escapedFormulaValues": "CSV 可能包含值已转义的公式", "xpack.reporting.exportTypes.csv.hitIterator.expectedHitsErrorMessage": "在以下 Elasticsearch 响应中预期 {hits}:{response}", "xpack.reporting.exportTypes.csv.hitIterator.expectedScrollIdErrorMessage": "在以下 Elasticsearch 响应中预期 {scrollId}:{response}", diff --git a/x-pack/test/functional/es_archives/reporting/ecommerce/data.json.gz b/x-pack/test/functional/es_archives/reporting/ecommerce/data.json.gz index 58ac5616651d418e55f05da71976467b171aa390..7736287bc9a37e5203c887d89bcfbe7d98fe1dd9 100644 GIT binary patch literal 957893 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%0A3HHN2`ifuK!xgG5&!P$BBRL#;a7l*QPwWWzx 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
c(sT>^bn0kTIb^G_c^K;9>r= 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

q$7m^M3d*W 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

%o@mL(_*$%SosXU!QECizsJ+)*Wpo6G^S`E| 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

Ye&$E?>^bO>S&s;jT4 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

w({hj`n0Q(KH|kFeEM!QLa}0tXp-Kqj&|AwuS#4 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

C0v4du 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

;Y^$O5^NwNHJ)3Na$ZPA8t>j;RuXuS2wIsqdA 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%0D`^*phy)**g}_`T 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 z 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�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�^|;run9RC}2+t@{$eg(frO&5O*vDm-f&m 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

W#ldv}5E$L=861~F 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

eM8X_9D$Z5TuX_Nk3@9W$&p` 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�vYwRwQm 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 q|^F$aD4uSd{MFXHvi`6o2 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

ufUdkMWXl>|PBtPjqT>MV4p+N>=w`{+aU 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�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◊TfJGYIwOFadSdu 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 ubBwXUgzfn~p^WdX@ahr%HnX^n!MqXay6#DbmTp { - describe('Saved Search Features', () => { - after(async () => { - await reportingAPI.deleteAllReports(); - }); + after(async () => { + await reportingAPI.deleteAllReports(); + }); + describe('Saved Search Features', () => { it('With filters and timebased data, explicit UTC format', async () => { // load test data that contains a saved search and documents await esArchiver.load('reporting/logs'); @@ -350,8 +350,8 @@ export default function ({ getService }: FtrProviderContext) { searchId: 'search:6091ead0-1c6d-11ea-a100-8589bb9d7c6b', postPayload: { timerange: { - min: '2019-06-26T06:20:28Z', - max: '2019-06-26T07:27:58Z', + min: '2019-05-28T00:00:00Z', + max: '2019-06-26T00:00:00Z', timezone: 'UTC', }, state: { @@ -370,8 +370,8 @@ export default function ({ getService }: FtrProviderContext) { { range: { order_date: { - gte: '2019-06-26T06:20:28.066Z', - lte: '2019-06-26T07:27:58.573Z', + gte: '2019-05-28T00:00:00.000Z', + lte: '2019-06-26T00:00:00.000Z', format: 'strict_date_optional_time', }, }, diff --git a/x-pack/test/reporting_api_integration/reporting_and_security/spaces.ts b/x-pack/test/reporting_api_integration/reporting_and_security/spaces.ts index 9eafd0c318383..3f2b2e7116206 100644 --- a/x-pack/test/reporting_api_integration/reporting_and_security/spaces.ts +++ b/x-pack/test/reporting_api_integration/reporting_and_security/spaces.ts @@ -12,51 +12,106 @@ import { FtrProviderContext } from '../ftr_provider_context'; // eslint-disable-next-line import/no-default-export export default function ({ getService }: FtrProviderContext) { const esArchiver = getService('esArchiver'); + const kibanaServer = getService('kibanaServer'); const reportingAPI = getService('reportingAPI'); const supertest = getService('supertest'); const log = getService('log'); + const setSpaceConfig = async (spaceId: string, settings: object) => { + return await kibanaServer.request({ + path: `/s/${spaceId}/api/kibana/settings`, + method: 'POST', + body: { changes: settings }, + }); + }; + const getCompleted$ = (downloadPath: string) => { return Rx.interval(2000).pipe( tap(() => log.debug(`checking report status at ${downloadPath}...`)), switchMap(() => supertest.get(downloadPath)), filter(({ status: statusCode }) => statusCode === 200), + tap(() => log.debug(`report at ${downloadPath} is done`)), map((response) => response.text), first(), timeout(15000) ); }; - describe('Exports from Non-default Space', () => { + describe('Exports and Spaces', () => { before(async () => { await esArchiver.load('reporting/ecommerce'); - await esArchiver.load('reporting/ecommerce_kibana_spaces'); // dashboard in non default space + await esArchiver.load('reporting/ecommerce_kibana_spaces'); // multiple spaces with different config settings }); after(async () => { await esArchiver.unload('reporting/ecommerce'); await esArchiver.unload('reporting/ecommerce_kibana_spaces'); - }); - - afterEach(async () => { await reportingAPI.deleteAllReports(); }); - it('should complete a job of CSV saved search export in non-default space', async () => { - const downloadPath = await reportingAPI.postJob( - `/s/non_default_space/api/reporting/generate/csv?jobParams=%28browserTimezone%3AUTC%2CconflictedTypesFields%3A%21%28%29%2Cfields%3A%21%28order_date%2Ccategory%2Ccustomer_first_name%2Ccustomer_full_name%2Ctotal_quantity%2Ctotal_unique_products%2Ctaxless_total_price%2Ctaxful_total_price%2Ccurrency%29%2CindexPatternId%3A%27067dec90-e7ee-11ea-a730-d58e9ea7581b%27%2CmetaFields%3A%21%28_source%2C_id%2C_type%2C_index%2C_score%29%2CobjectType%3Asearch%2CsearchRequest%3A%28body%3A%28_source%3A%28includes%3A%21%28order_date%2Ccategory%2Ccustomer_first_name%2Ccustomer_full_name%2Ctotal_quantity%2Ctotal_unique_products%2Ctaxless_total_price%2Ctaxful_total_price%2Ccurrency%29%29%2Cdocvalue_fields%3A%21%28%28field%3Aorder_date%2Cformat%3Adate_time%29%29%2Cquery%3A%28bool%3A%28filter%3A%21%28%28match_all%3A%28%29%29%2C%28range%3A%28order_date%3A%28format%3Astrict_date_optional_time%2Cgte%3A%272019-06-11T08%3A24%3A16.425Z%27%2Clte%3A%272019-07-13T09%3A31%3A07.520Z%27%29%29%29%29%2Cmust%3A%21%28%29%2Cmust_not%3A%21%28%29%2Cshould%3A%21%28%29%29%29%2Cscript_fields%3A%28%29%2Csort%3A%21%28%28order_date%3A%28order%3Adesc%2Cunmapped_type%3Aboolean%29%29%29%2Cstored_fields%3A%21%28order_date%2Ccategory%2Ccustomer_first_name%2Ccustomer_full_name%2Ctotal_quantity%2Ctotal_unique_products%2Ctaxless_total_price%2Ctaxful_total_price%2Ccurrency%29%2Cversion%3A%21t%29%2Cindex%3A%27ecommerce%2A%27%29%2Ctitle%3A%27Ecom%20Search%27%29` - ); + describe('CSV saved search export', () => { + it('should use formats from the default space', async () => { + kibanaServer.uiSettings.update({ 'csv:separator': ',', 'dateFormat:tz': 'UTC' }); + const path = await reportingAPI.postJobJSON(`/api/reporting/generate/csv`, { + jobParams: `(conflictedTypesFields:!(),fields:!(order_date,order_date,customer_full_name,taxful_total_price),indexPatternId:aac3e500-f2c7-11ea-8250-fb138aa491e7,metaFields:!(_source,_id,_type,_index,_score),objectType:search,searchRequest:(body:(_source:(includes:!(order_date,customer_full_name,taxful_total_price)),docvalue_fields:!((field:order_date,format:date_time)),query:(bool:(filter:!((match_all:()),(range:(order_date:(format:strict_date_optional_time,gte:'2019-06-11T04:49:43.495Z',lte:'2019-07-14T10:25:34.149Z')))),must:!(),must_not:!(),should:!())),script_fields:(),sort:!((order_date:(order:desc,unmapped_type:boolean))),stored_fields:!(order_date,customer_full_name,taxful_total_price),version:!t),index:'ec*'),title:'EC SEARCH')`, + }); + const csv = await getCompleted$(path).toPromise(); + expect(csv).to.match( + /^"order_date","order_date","customer_full_name","taxful_total_price"\n"Jul 12, 2019 @ 00:00:00.000","Jul 12, 2019 @ 00:00:00.000","Sultan Al Boone","173.96"/ + ); + }); - // Retry the download URL until a "completed" response status is returned - const completed$ = getCompleted$(downloadPath); - const reportCompleted = await completed$.toPromise(); - expect(reportCompleted).to.match(/^"order_date",/); + it('should use formats from non-default spaces', async () => { + setSpaceConfig('non_default_space', { + 'csv:separator': ';', + 'csv:quoteValues': false, + 'dateFormat:tz': 'US/Alaska', + }); + const path = await reportingAPI.postJobJSON( + `/s/non_default_space/api/reporting/generate/csv`, + { + jobParams: `(conflictedTypesFields:!(),fields:!(order_date,category,customer_first_name,customer_full_name,total_quantity,total_unique_products,taxless_total_price,taxful_total_price,currency),indexPatternId:'067dec90-e7ee-11ea-a730-d58e9ea7581b',metaFields:!(_source,_id,_type,_index,_score),objectType:search,searchRequest:(body:(_source:(includes:!(order_date,category,customer_first_name,customer_full_name,total_quantity,total_unique_products,taxless_total_price,taxful_total_price,currency)),docvalue_fields:!((field:order_date,format:date_time)),query:(bool:(filter:!((match_all:()),(range:(order_date:(format:strict_date_optional_time,gte:'2019-06-11T08:24:16.425Z',lte:'2019-07-13T09:31:07.520Z')))),must:!(),must_not:!(),should:!())),script_fields:(),sort:!((order_date:(order:desc,unmapped_type:boolean))),stored_fields:!(order_date,category,customer_first_name,customer_full_name,total_quantity,total_unique_products,taxless_total_price,taxful_total_price,currency),version:!t),index:'ecommerce*'),title:'Ecom Search')`, + } + ); + const csv = await getCompleted$(path).toPromise(); + expect(csv).to.match( + /^order_date;category;customer_first_name;customer_full_name;total_quantity;total_unique_products;taxless_total_price;taxful_total_price;currency\nJul 11, 2019 @ 16:00:00.000;/ + ); + }); + + it(`should use browserTimezone in jobParams for date formatting`, async () => { + const tzParam = 'America/Phoenix'; + const tzSettings = 'Browser'; + setSpaceConfig('non_default_space', { 'csv:separator': ';', 'dateFormat:tz': tzSettings }); + const path = await reportingAPI.postJobJSON(`/api/reporting/generate/csv`, { + jobParams: `(browserTimezone:${tzParam},conflictedTypesFields:!(),fields:!(order_date,category,customer_full_name,taxful_total_price,currency),indexPatternId:aac3e500-f2c7-11ea-8250-fb138aa491e7,metaFields:!(_source,_id,_type,_index,_score),objectType:search,searchRequest:(body:(_source:(includes:!(order_date,category,customer_full_name,taxful_total_price,currency)),docvalue_fields:!((field:order_date,format:date_time)),query:(bool:(filter:!((match_all:()),(range:(order_date:(format:strict_date_optional_time,gte:'2019-05-30T05:09:59.743Z',lte:'2019-07-26T08:47:09.682Z')))),must:!(),must_not:!(),should:!())),script_fields:(),sort:!((order_date:(order:desc,unmapped_type:boolean))),stored_fields:!(order_date,category,customer_full_name,taxful_total_price,currency),version:!t),index:'ec*'),title:'EC SEARCH from DEFAULT')`, + }); + + const csv = await getCompleted$(path).toPromise(); + expect(csv).to.match( + /^"order_date",category,"customer_full_name","taxful_total_price",currency\n"Jul 11, 2019 @ 17:00:00.000"/ + ); + }); + + it(`should default to UTC for date formatting when timezone is not known`, async () => { + kibanaServer.uiSettings.update({ 'csv:separator': ',', 'dateFormat:tz': 'Browser' }); + const path = await reportingAPI.postJobJSON(`/api/reporting/generate/csv`, { + jobParams: `(conflictedTypesFields:!(),fields:!(order_date,order_date,customer_full_name,taxful_total_price),indexPatternId:aac3e500-f2c7-11ea-8250-fb138aa491e7,metaFields:!(_source,_id,_type,_index,_score),objectType:search,searchRequest:(body:(_source:(includes:!(order_date,customer_full_name,taxful_total_price)),docvalue_fields:!((field:order_date,format:date_time)),query:(bool:(filter:!((match_all:()),(range:(order_date:(format:strict_date_optional_time,gte:'2019-06-11T04:49:43.495Z',lte:'2019-07-14T10:25:34.149Z')))),must:!(),must_not:!(),should:!())),script_fields:(),sort:!((order_date:(order:desc,unmapped_type:boolean))),stored_fields:!(order_date,customer_full_name,taxful_total_price),version:!t),index:'ec*'),title:'EC SEARCH')`, + }); + const csv = await getCompleted$(path).toPromise(); + expect(csv).to.match( + /^"order_date","order_date","customer_full_name","taxful_total_price"\n"Jul 12, 2019 @ 00:00:00.000","Jul 12, 2019 @ 00:00:00.000","Sultan Al Boone","173.96"/ + ); + }); }); // FLAKY: https://github.com/elastic/kibana/issues/76551 it.skip('should complete a job of PNG export of a dashboard in non-default space', async () => { - const downloadPath = await reportingAPI.postJob( - `/s/non_default_space/api/reporting/generate/png?jobParams=%28browserTimezone%3AUTC%2Clayout%3A%28dimensions%3A%28height%3A512%2Cwidth%3A2402%29%2Cid%3Apng%29%2CobjectType%3Adashboard%2CrelativeUrl%3A%27%2Fs%2Fnon_default_space%2Fapp%2Fdashboards%23%2Fview%2F3c9ee360-e7ee-11ea-a730-d58e9ea7581b%3F_g%3D%28filters%3A%21%21%28%29%2CrefreshInterval%3A%28pause%3A%21%21t%2Cvalue%3A0%29%2Ctime%3A%28from%3A%21%272019-06-10T03%3A17%3A28.800Z%21%27%2Cto%3A%21%272019-07-14T19%3A25%3A06.385Z%21%27%29%29%26_a%3D%28description%3A%21%27%21%27%2Cfilters%3A%21%21%28%29%2CfullScreenMode%3A%21%21f%2Coptions%3A%28hidePanelTitles%3A%21%21f%2CuseMargins%3A%21%21t%29%2Cquery%3A%28language%3Akuery%2Cquery%3A%21%27%21%27%29%2CtimeRestore%3A%21%21t%2Ctitle%3A%21%27Ecom%2520Dashboard%2520Non%2520Default%2520Space%21%27%2CviewMode%3Aview%29%27%2Ctitle%3A%27Ecom%20Dashboard%20Non%20Default%20Space%27%29` + const downloadPath = await reportingAPI.postJobJSON( + `/s/non_default_space/api/reporting/generate/png`, + { + jobParams: `(browserTimezone:UTC,layout:(dimensions:(height:512,width:2402),id:png),objectType:dashboard,relativeUrl:'/s/non_default_space/app/dashboards#/view/3c9ee360-e7ee-11ea-a730-d58e9ea7581b?_g=(filters:!!(),refreshInterval:(pause:!!t,value:0),time:(from:!'2019-06-10T03:17:28.800Z!',to:!'2019-07-14T19:25:06.385Z!'))&_a=(description:!'!',filters:!!(),fullScreenMode:!!f,options:(hidePanelTitles:!!f,useMargins:!!t),query:(language:kuery,query:!'!'),timeRestore:!!t,title:!'Ecom%20Dashboard%20Non%20Default%20Space!',viewMode:view)',title:'Ecom Dashboard Non Default Space')`, + } ); const completed$: Rx.Observable = getCompleted$(downloadPath); @@ -66,8 +121,11 @@ export default function ({ getService }: FtrProviderContext) { // FLAKY: https://github.com/elastic/kibana/issues/76551 it.skip('should complete a job of PDF export of a dashboard in non-default space', async () => { - const downloadPath = await reportingAPI.postJob( - `/s/non_default_space/api/reporting/generate/printablePdf?jobParams=%28browserTimezone%3AUTC%2Clayout%3A%28dimensions%3A%28height%3A512%2Cwidth%3A2402%29%2Cid%3Apreserve_layout%29%2CobjectType%3Adashboard%2CrelativeUrls%3A%21%28%27%2Fs%2Fnon_default_space%2Fapp%2Fdashboards%23%2Fview%2F3c9ee360-e7ee-11ea-a730-d58e9ea7581b%3F_g%3D%28filters%3A%21%21%28%29%2CrefreshInterval%3A%28pause%3A%21%21t%2Cvalue%3A0%29%2Ctime%3A%28from%3A%21%272019-06-10T03%3A17%3A28.800Z%21%27%2Cto%3A%21%272019-07-14T19%3A25%3A06.385Z%21%27%29%29%26_a%3D%28description%3A%21%27%21%27%2Cfilters%3A%21%21%28%29%2CfullScreenMode%3A%21%21f%2Coptions%3A%28hidePanelTitles%3A%21%21f%2CuseMargins%3A%21%21t%29%2Cquery%3A%28language%3Akuery%2Cquery%3A%21%27%21%27%29%2CtimeRestore%3A%21%21t%2Ctitle%3A%21%27Ecom%2520Dashboard%2520Non%2520Default%2520Space%21%27%2CviewMode%3Aview%29%27%29%2Ctitle%3A%27Ecom%20Dashboard%20Non%20Default%20Space%27%29` + const downloadPath = await reportingAPI.postJobJSON( + `/s/non_default_space/api/reporting/generate/printablePdf`, + { + jobParams: `(browserTimezone:UTC,layout:(dimensions:(height:512,width:2402),id:preserve_layout),objectType:dashboard,relativeUrls:!('/s/non_default_space/app/dashboards#/view/3c9ee360-e7ee-11ea-a730-d58e9ea7581b?_g=(filters:!!(),refreshInterval:(pause:!!t,value:0),time:(from:!'2019-06-10T03:17:28.800Z!',to:!'2019-07-14T19:25:06.385Z!'))&_a=(description:!'!',filters:!!(),fullScreenMode:!!f,options:(hidePanelTitles:!!f,useMargins:!!t),query:(language:kuery,query:!'!'),timeRestore:!!t,title:!'Ecom%20Dashboard%20Non%20Default%20Space!',viewMode:view)'),title:'Ecom Dashboard Non Default Space')`, + } ); const completed$ = getCompleted$(downloadPath); diff --git a/x-pack/test/reporting_api_integration/reporting_and_security/usage.ts b/x-pack/test/reporting_api_integration/reporting_and_security/usage.ts index aaf4dd3926411..99a46684d8a67 100644 --- a/x-pack/test/reporting_api_integration/reporting_and_security/usage.ts +++ b/x-pack/test/reporting_api_integration/reporting_and_security/usage.ts @@ -115,8 +115,7 @@ export default function ({ getService }: FtrProviderContext) { }); }); - // FAILING: https://github.com/elastic/kibana/issues/76581 - describe.skip('from new jobs posted', () => { + describe('from new jobs posted', () => { it('should handle csv', async () => { await reportingAPI.expectAllJobsToFinishSuccessfully( await Promise.all([ @@ -133,7 +132,8 @@ export default function ({ getService }: FtrProviderContext) { reportingAPI.expectRecentJobTypeTotalStats(usage, 'printable_pdf', 0); }); - it('should handle preserve_layout pdf', async () => { + // FLAKY: https://github.com/elastic/kibana/issues/76581 + it.skip('should handle preserve_layout pdf', async () => { await reportingAPI.expectAllJobsToFinishSuccessfully( await Promise.all([ reportingAPI.postJob(GenerationUrls.PDF_PRESERVE_DASHBOARD_FILTER_6_3), @@ -150,7 +150,8 @@ export default function ({ getService }: FtrProviderContext) { reportingAPI.expectRecentJobTypeTotalStats(usage, 'printable_pdf', 2); }); - it('should handle print_layout pdf', async () => { + // FLAKY: https://github.com/elastic/kibana/issues/76581 + it.skip('should handle print_layout pdf', async () => { await reportingAPI.expectAllJobsToFinishSuccessfully( await Promise.all([ reportingAPI.postJob(GenerationUrls.PDF_PRINT_DASHBOARD_6_3), diff --git a/x-pack/test/reporting_api_integration/services.ts b/x-pack/test/reporting_api_integration/services.ts index e61e6483855af..2c0252fde7693 100644 --- a/x-pack/test/reporting_api_integration/services.ts +++ b/x-pack/test/reporting_api_integration/services.ts @@ -84,7 +84,7 @@ export function ReportingAPIProvider({ getService }: FtrProviderContext) { ); }, - async postJob(apiPath: string) { + async postJob(apiPath: string): Promise { log.debug(`ReportingAPI.postJob(${apiPath})`); const { body } = await supertest .post(removeWhitespace(apiPath)) @@ -93,6 +93,12 @@ export function ReportingAPIProvider({ getService }: FtrProviderContext) { return body.path; }, + async postJobJSON(apiPath: string, jobJSON: object = {}): Promise { + log.debug(`ReportingAPI.postJobJSON((${apiPath}): ${JSON.stringify(jobJSON)})`); + const { body } = await supertest.post(apiPath).set('kbn-xsrf', 'xxx').send(jobJSON); + return body.path; + }, + /** * * @return {Promise} A function to call to clean up the index alias that was added. From 35bf9e7b6a33af2e8dfb4b9ee5b8fbdc5ef58562 Mon Sep 17 00:00:00 2001 From: spalger Date: Fri, 18 Sep 2020 19:42:02 -0700 Subject: [PATCH 18/27] skip flaky suite (#77870) --- .../basic/tests/metrics_charts/metrics_charts.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts b/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts index f82e16e090eae..ad3d1b0ccc4d9 100644 --- a/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts +++ b/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts @@ -19,7 +19,8 @@ export default function ApiTest({ getService }: FtrProviderContext) { const supertest = getService('supertest'); const esArchiver = getService('esArchiver'); - describe('when data is loaded', () => { + // FLAKY: https://github.com/elastic/kibana/issues/77870 + describe.skip('when data is loaded', () => { before(() => esArchiver.load('metrics_8.0.0')); after(() => esArchiver.unload('metrics_8.0.0')); From 8408e268d5dc01346129539004bdd30a2a556c12 Mon Sep 17 00:00:00 2001 From: Peter Pisljar Date: Sat, 19 Sep 2020 05:02:07 +0200 Subject: [PATCH 19/27] cleaning up esaggs (#77646) --- .../data/public/search/expressions/esaggs.ts | 87 +++++++------------ .../helpers/timelion_request_handler.ts | 1 - .../public/timelion_vis_fn.ts | 1 - .../expressions/visualization_function.ts | 1 - 4 files changed, 32 insertions(+), 58 deletions(-) diff --git a/src/plugins/data/public/search/expressions/esaggs.ts b/src/plugins/data/public/search/expressions/esaggs.ts index 9b89bd1dcbfa6..1021ef0f91d52 100644 --- a/src/plugins/data/public/search/expressions/esaggs.ts +++ b/src/plugins/data/public/search/expressions/esaggs.ts @@ -20,7 +20,6 @@ import { get, hasIn } from 'lodash'; import { i18n } from '@kbn/i18n'; import { KibanaDatatable, KibanaDatatableColumn } from 'src/plugins/expressions/public'; -import { calculateObjectHash } from '../../../../../plugins/kibana_utils/public'; import { PersistedState } from '../../../../../plugins/visualizations/public'; import { Adapters } from '../../../../../plugins/inspector/public'; @@ -60,7 +59,6 @@ export interface RequestHandlerParams { indexPattern?: IIndexPattern; query?: Query; filters?: Filter[]; - forceFetch: boolean; filterManager: FilterManager; uiState?: PersistedState; partialRows?: boolean; @@ -80,7 +78,6 @@ const handleCourierRequest = async ({ indexPattern, query, filters, - forceFetch, partialRows, metricsAtAllLevels, inspectorAdapters, @@ -137,46 +134,35 @@ const handleCourierRequest = async ({ requestSearchSource.setField('filter', filters); requestSearchSource.setField('query', query); - const reqBody = await requestSearchSource.getSearchRequestBody(); - - const queryHash = calculateObjectHash(reqBody); - // We only need to reexecute the query, if forceFetch was true or the hash of the request body has changed - // since the last request - const shouldQuery = forceFetch || (searchSource as any).lastQuery !== queryHash; - - if (shouldQuery) { - inspectorAdapters.requests.reset(); - const request = inspectorAdapters.requests.start( - i18n.translate('data.functions.esaggs.inspector.dataRequest.title', { - defaultMessage: 'Data', + inspectorAdapters.requests.reset(); + const request = inspectorAdapters.requests.start( + i18n.translate('data.functions.esaggs.inspector.dataRequest.title', { + defaultMessage: 'Data', + }), + { + description: i18n.translate('data.functions.esaggs.inspector.dataRequest.description', { + defaultMessage: + 'This request queries Elasticsearch to fetch the data for the visualization.', }), - { - description: i18n.translate('data.functions.esaggs.inspector.dataRequest.description', { - defaultMessage: - 'This request queries Elasticsearch to fetch the data for the visualization.', - }), - } - ); - request.stats(getRequestInspectorStats(requestSearchSource)); - - try { - const response = await requestSearchSource.fetch({ abortSignal }); - - (searchSource as any).lastQuery = queryHash; - - request.stats(getResponseInspectorStats(response, searchSource)).ok({ json: response }); - - (searchSource as any).rawResponse = response; - } catch (e) { - // Log any error during request to the inspector - request.error({ json: e }); - throw e; - } finally { - // Add the request body no matter if things went fine or not - requestSearchSource.getSearchRequestBody().then((req: unknown) => { - request.json(req); - }); } + ); + request.stats(getRequestInspectorStats(requestSearchSource)); + + try { + const response = await requestSearchSource.fetch({ abortSignal }); + + request.stats(getResponseInspectorStats(response, searchSource)).ok({ json: response }); + + (searchSource as any).rawResponse = response; + } catch (e) { + // Log any error during request to the inspector + request.error({ json: e }); + throw e; + } finally { + // Add the request body no matter if things went fine or not + requestSearchSource.getSearchRequestBody().then((req: unknown) => { + request.json(req); + }); } // Note that rawResponse is not deeply cloned here, so downstream applications using courier @@ -207,19 +193,11 @@ const handleCourierRequest = async ({ : undefined, }; - const tabifyCacheHash = calculateObjectHash({ tabifyAggs: aggs, ...tabifyParams }); - // We only need to reexecute tabify, if either we did a new request or some input params to tabify changed - const shouldCalculateNewTabify = - shouldQuery || (searchSource as any).lastTabifyHash !== tabifyCacheHash; - - if (shouldCalculateNewTabify) { - (searchSource as any).lastTabifyHash = tabifyCacheHash; - (searchSource as any).tabifiedResponse = tabifyAggResponse( - aggs, - (searchSource as any).finalResponse, - tabifyParams - ); - } + (searchSource as any).tabifiedResponse = tabifyAggResponse( + aggs, + (searchSource as any).finalResponse, + tabifyParams + ); inspectorAdapters.data.setTabularLoader( () => @@ -294,7 +272,6 @@ export const esaggs = (): EsaggsExpressionFunctionDefinition => ({ query: get(input, 'query', undefined) as any, filters: get(input, 'filters', undefined), timeFields: args.timeFields, - forceFetch: true, metricsAtAllLevels: args.metricsAtAllLevels, partialRows: args.partialRows, inspectorAdapters: inspectorAdapters as Adapters, diff --git a/src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts b/src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts index 0cf6f3723a639..3442f84599fb8 100644 --- a/src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts +++ b/src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts @@ -78,7 +78,6 @@ export function getTimelionRequestHandler({ filters: Filter[]; query: Query; visParams: VisParams; - forceFetch?: boolean; }): Promise { const expression = visParams.expression; diff --git a/src/plugins/vis_type_timelion/public/timelion_vis_fn.ts b/src/plugins/vis_type_timelion/public/timelion_vis_fn.ts index 7be18a4774d94..d3c6ca5d90371 100644 --- a/src/plugins/vis_type_timelion/public/timelion_vis_fn.ts +++ b/src/plugins/vis_type_timelion/public/timelion_vis_fn.ts @@ -76,7 +76,6 @@ export const getTimelionVisualizationConfig = ( query: get(input, 'query') as Query, filters: get(input, 'filters') as Filter[], visParams, - forceFetch: true, }); response.visType = TIMELION_VIS_NAME; diff --git a/src/plugins/visualizations/public/expressions/visualization_function.ts b/src/plugins/visualizations/public/expressions/visualization_function.ts index 68a153f4272a3..f4241808940b2 100644 --- a/src/plugins/visualizations/public/expressions/visualization_function.ts +++ b/src/plugins/visualizations/public/expressions/visualization_function.ts @@ -117,7 +117,6 @@ export const visualization = (): ExpressionFunctionVisualization => ({ uiState, inspectorAdapters, queryFilter: getFilterManager(), - forceFetch: true, aggs, }); } From cd51289bf839f1fc5c306fe9081fb3cf0aab42b9 Mon Sep 17 00:00:00 2001 From: Frank Hassanabad Date: Sun, 20 Sep 2020 11:34:50 -0600 Subject: [PATCH 20/27] [Security Solution][Detection Engine] Bubbles up errors when it cannot create signal documents (#77687) ## Summary Fixes: https://github.com/elastic/kibana/issues/77255, https://github.com/elastic/kibana/issues/63712 This bubbles up errors when we cannot correctly create signal documents. Before this PR, we sometimes would mark documents as being in the error state for the end user but ask them to look in their Kibana logs for the specific error. In some cases we did not bubble up any error states and the signal would look like it had 0 signals when that wasn't true. It had valid signals but could not write the signals to its index because the source index had incompatibilities with ECS and cannot write the document to the signals index. This fixes those issues to correctly bubble up the errors. If you're interested in manual testing there are two ways. The first way is to take advantage of an existing "threshold bug" by making a "threshold rule" which has a CIDR in it like so below: Screen Shot 2020-09-10 at 4 08 18 PM On output you should see that the threshold is in an error state for the rule and also additional details: Screen Shot 2020-09-16 at 1 26 37 PM The second way to trigger this is to create a mock invalid ECS index with an invalid mapping in dev tools: ```ts # This is invalid because it has an odd "original" inside of it PUT mock-bad-ecs-index { "mappings": { "properties": { "@timestamp": { "type": "date" }, "message": { "properties": { "original": { "type": "text", "index": false, "doc_values": false } } } } } } # You might have to change your timestamp to be 5 minutes from now to catch it as a signal or use a really long look back time PUT mock-bad-ecs-index/_doc/1 { "@timestamp": "2020-09-17T21:50:54.240Z", "message": { "original": "invalid subobject" } } ``` Then create a rule against this index: Screen Shot 2020-09-17 at 3 52 40 PM And you should see an error banner and error state where before it would not show the error message: Screen Shot 2020-09-17 at 3 53 20 PM ### Checklist Delete any items that are not applicable to this PR. - [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 --- .../signals/search_after_bulk_create.test.ts | 113 +++++++++++++++++- .../signals/search_after_bulk_create.ts | 15 ++- .../signals/signal_rule_alert_type.test.ts | 13 +- .../signals/signal_rule_alert_type.ts | 14 ++- .../signals/single_bulk_create.test.ts | 8 +- .../signals/single_bulk_create.ts | 38 ++++-- .../lib/detection_engine/signals/types.ts | 2 +- .../detection_engine/signals/utils.test.ts | 8 ++ .../lib/detection_engine/signals/utils.ts | 2 +- 9 files changed, 183 insertions(+), 30 deletions(-) diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.test.ts index 0cf0c3880fc98..68c6a51b4e6f6 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.test.ts @@ -22,6 +22,7 @@ import uuid from 'uuid'; import { getListItemResponseMock } from '../../../../../lists/common/schemas/response/list_item_schema.mock'; import { listMock } from '../../../../../lists/server/mocks'; import { getExceptionListItemSchemaMock } from '../../../../../lists/common/schemas/response/exception_list_item_schema.mock'; +import { BulkResponse } from './types'; const buildRuleMessage = buildRuleMessageFactory({ id: 'fake id', @@ -759,7 +760,7 @@ describe('searchAfterAndBulkCreate', () => { ], }) .mockImplementation(() => { - throw Error('Fake Error'); + throw Error('Fake Error'); // throws the exception we are testing }); listClient.getListItemByValues = jest.fn(({ value }) => Promise.resolve( @@ -811,4 +812,114 @@ describe('searchAfterAndBulkCreate', () => { expect(createdSignalsCount).toEqual(0); // should not create signals if search threw error expect(lastLookBackDate).toEqual(null); }); + + test('it returns error array when singleSearchAfter returns errors', async () => { + const sampleParams = sampleRuleAlertParams(30); + const bulkItem: BulkResponse = { + took: 100, + errors: true, + items: [ + { + create: { + _version: 1, + _index: 'index-123', + _id: 'id-123', + status: 201, + error: { + type: 'network', + reason: 'error on creation', + shard: 'shard-123', + index: 'index-123', + }, + }, + }, + ], + }; + mockService.callCluster + .mockResolvedValueOnce(repeatedSearchResultsWithSortId(4, 1, someGuids.slice(0, 3))) + .mockResolvedValueOnce(bulkItem) // adds the response with errors we are testing + .mockResolvedValueOnce(repeatedSearchResultsWithSortId(4, 1, someGuids.slice(3, 6))) + .mockResolvedValueOnce({ + took: 100, + errors: false, + items: [ + { + fakeItemValue: 'fakeItemKey', + }, + { + create: { + status: 201, + }, + }, + ], + }) + .mockResolvedValueOnce(repeatedSearchResultsWithSortId(4, 1, someGuids.slice(6, 9))) + .mockResolvedValueOnce({ + took: 100, + errors: false, + items: [ + { + fakeItemValue: 'fakeItemKey', + }, + { + create: { + status: 201, + }, + }, + ], + }) + .mockResolvedValueOnce(repeatedSearchResultsWithSortId(4, 1, someGuids.slice(9, 12))) + .mockResolvedValueOnce({ + took: 100, + errors: false, + items: [ + { + fakeItemValue: 'fakeItemKey', + }, + { + create: { + status: 201, + }, + }, + ], + }) + .mockResolvedValueOnce(sampleDocSearchResultsNoSortIdNoHits()); + + const { + success, + createdSignalsCount, + lastLookBackDate, + errors, + } = await searchAfterAndBulkCreate({ + ruleParams: sampleParams, + gap: null, + previousStartedAt: new Date(), + listClient, + exceptionsList: [], + services: mockService, + logger: mockLogger, + id: sampleRuleGuid, + inputIndexPattern, + signalsIndex: DEFAULT_SIGNALS_INDEX, + name: 'rule-name', + actions: [], + createdAt: '2020-01-28T15:58:34.810Z', + updatedAt: '2020-01-28T15:59:14.004Z', + createdBy: 'elastic', + updatedBy: 'elastic', + interval: '5m', + enabled: true, + pageSize: 1, + filter: undefined, + refresh: false, + tags: ['some fake tag 1', 'some fake tag 2'], + throttle: 'no_actions', + buildRuleMessage, + }); + expect(success).toEqual(false); + expect(errors).toEqual(['error on creation']); + expect(mockService.callCluster).toHaveBeenCalledTimes(9); + expect(createdSignalsCount).toEqual(4); + expect(lastLookBackDate).toEqual(new Date('2020-04-20T21:27:45+0000')); + }); }); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.ts index be1c44de593a4..756aedd5273d3 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/search_after_bulk_create.ts @@ -51,6 +51,7 @@ export interface SearchAfterAndBulkCreateReturnType { bulkCreateTimes: string[]; lastLookBackDate: Date | null | undefined; createdSignalsCount: number; + errors: string[]; } // search_after through documents and re-index using bulk endpoint. @@ -81,11 +82,12 @@ export const searchAfterAndBulkCreate = async ({ buildRuleMessage, }: SearchAfterAndBulkCreateParams): Promise => { const toReturn: SearchAfterAndBulkCreateReturnType = { - success: false, + success: true, searchAfterTimes: [], bulkCreateTimes: [], lastLookBackDate: null, createdSignalsCount: 0, + errors: [], }; // sortId tells us where to start our next consecutive search_after query @@ -111,6 +113,7 @@ export const searchAfterAndBulkCreate = async ({ if (tuple == null || tuple.to == null || tuple.from == null) { logger.error(buildRuleMessage(`[-] malformed date tuple`)); toReturn.success = false; + toReturn.errors = [...new Set([...toReturn.errors, 'malformed date tuple'])]; return toReturn; } signalsCreatedCount = 0; @@ -163,7 +166,6 @@ export const searchAfterAndBulkCreate = async ({ } was 0, exiting and moving on to next tuple` ) ); - toReturn.success = true; break; } toReturn.lastLookBackDate = @@ -199,6 +201,8 @@ export const searchAfterAndBulkCreate = async ({ const { bulkCreateDuration: bulkDuration, createdItemsCount: createdCount, + success: bulkSuccess, + errors: bulkErrors, } = await singleBulkCreate({ filteredEvents, ruleParams, @@ -229,6 +233,8 @@ export const searchAfterAndBulkCreate = async ({ logger.debug( buildRuleMessage(`filteredEvents.hits.hits: ${filteredEvents.hits.hits.length}`) ); + toReturn.success = toReturn.success && bulkSuccess; + toReturn.errors = [...new Set([...toReturn.errors, ...bulkErrors])]; } // we are guaranteed to have searchResult hits at this point @@ -239,17 +245,16 @@ export const searchAfterAndBulkCreate = async ({ sortId = lastSortId[0]; } else { logger.debug(buildRuleMessage('sortIds was empty on searchResult')); - toReturn.success = true; break; } - } catch (exc) { + } catch (exc: unknown) { logger.error(buildRuleMessage(`[-] search_after and bulk threw an error ${exc}`)); toReturn.success = false; + toReturn.errors = [...new Set([...toReturn.errors, `${exc}`])]; return toReturn; } } } logger.debug(buildRuleMessage(`[+] completed bulk index of ${toReturn.createdSignalsCount}`)); - toReturn.success = true; return toReturn; }; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts index b8311182f3ca8..5f9e0a08065c4 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts @@ -19,7 +19,10 @@ import { } from './utils'; import { parseScheduleDates } from '../../../../common/detection_engine/parse_schedule_dates'; import { RuleExecutorOptions } from './types'; -import { searchAfterAndBulkCreate } from './search_after_bulk_create'; +import { + searchAfterAndBulkCreate, + SearchAfterAndBulkCreateReturnType, +} from './search_after_bulk_create'; import { scheduleNotificationActions } from '../notifications/schedule_notification_actions'; import { RuleAlertType } from '../rules/types'; import { findMlSignals } from './find_ml_signals'; @@ -481,17 +484,19 @@ describe('rules_notification_alert_type', () => { describe('should catch error', () => { it('when bulk indexing failed', async () => { - (searchAfterAndBulkCreate as jest.Mock).mockResolvedValue({ + const result: SearchAfterAndBulkCreateReturnType = { success: false, searchAfterTimes: [], bulkCreateTimes: [], lastLookBackDate: null, createdSignalsCount: 0, - }); + errors: ['Error that bubbled up.'], + }; + (searchAfterAndBulkCreate as jest.Mock).mockResolvedValue(result); await alert.executor(payload); expect(logger.error).toHaveBeenCalled(); expect(logger.error.mock.calls[0][0]).toContain( - 'Bulk Indexing of signals failed. Check logs for further details.' + 'Bulk Indexing of signals failed: Error that bubbled up. name: "Detect Root/Admin Users" id: "04128c15-0d1b-4716-a4c5-46997ac7f3bd" rule id: "rule-1" signals index: ".siem-signals"' ); expect(ruleStatusService.error).toHaveBeenCalled(); }); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts index d48b5b434c9c0..8ea94f943336e 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts @@ -101,6 +101,7 @@ export const signalRulesAlertType = ({ searchAfterTimes: [], lastLookBackDate: null, createdSignalsCount: 0, + errors: [], }; const ruleStatusClient = ruleStatusSavedObjectsClientFactory(services.savedObjectsClient); const ruleStatusService = await ruleStatusServiceFactory({ @@ -221,7 +222,12 @@ export const signalRulesAlertType = ({ logger.info(buildRuleMessage(`Found ${anomalyCount} signals from ML anomalies.`)); } - const { success, bulkCreateDuration, createdItemsCount } = await bulkCreateMlSignals({ + const { + success, + errors, + bulkCreateDuration, + createdItemsCount, + } = await bulkCreateMlSignals({ actions, throttle, someResult: anomalyResults, @@ -241,6 +247,7 @@ export const signalRulesAlertType = ({ tags, }); result.success = success; + result.errors = errors; result.createdSignalsCount = createdItemsCount; if (bulkCreateDuration) { result.bulkCreateTimes.push(bulkCreateDuration); @@ -274,6 +281,7 @@ export const signalRulesAlertType = ({ success, bulkCreateDuration, createdItemsCount, + errors, } = await bulkCreateThresholdSignals({ actions, throttle, @@ -297,6 +305,7 @@ export const signalRulesAlertType = ({ tags, }); result.success = success; + result.errors = errors; result.createdSignalsCount = createdItemsCount; if (bulkCreateDuration) { result.bulkCreateTimes.push(bulkCreateDuration); @@ -391,7 +400,8 @@ export const signalRulesAlertType = ({ } } else { const errorMessage = buildRuleMessage( - 'Bulk Indexing of signals failed. Check logs for further details.' + 'Bulk Indexing of signals failed:', + result.errors.join() ); logger.error(errorMessage); await ruleStatusService.error(errorMessage, { diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.test.ts index 41c825ea4d978..374b967d1e77f 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.test.ts @@ -252,11 +252,11 @@ describe('singleBulkCreate', () => { expect(createdItemsCount).toEqual(1); }); - test('create successful bulk create when bulk create has multiple error statuses', async () => { + test('create failed bulk create when bulk create has multiple error statuses', async () => { const sampleParams = sampleRuleAlertParams(); const sampleSearchResult = sampleDocSearchResultsNoSortId; mockService.callCluster.mockResolvedValue(sampleBulkCreateErrorResult); - const { success, createdItemsCount } = await singleBulkCreate({ + const { success, createdItemsCount, errors } = await singleBulkCreate({ filteredEvents: sampleSearchResult(), ruleParams: sampleParams, services: mockService, @@ -275,9 +275,9 @@ describe('singleBulkCreate', () => { tags: ['some fake tag 1', 'some fake tag 2'], throttle: 'no_actions', }); - expect(mockLogger.error).toHaveBeenCalled(); - expect(success).toEqual(true); + expect(errors).toEqual(['[4]: internal server error']); + expect(success).toEqual(false); expect(createdItemsCount).toEqual(1); }); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.ts index be71c67615a4c..e8f254e6a8966 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/single_bulk_create.ts @@ -63,6 +63,7 @@ export interface SingleBulkCreateResponse { success: boolean; bulkCreateDuration?: string; createdItemsCount: number; + errors: string[]; } // Bulk Index documents. @@ -89,7 +90,7 @@ export const singleBulkCreate = async ({ logger.debug(`about to bulk create ${filteredEvents.hits.hits.length} events`); if (filteredEvents.hits.hits.length === 0) { logger.debug(`all events were duplicates`); - return { success: true, createdItemsCount: 0 }; + return { success: true, createdItemsCount: 0, errors: [] }; } // index documents after creating an ID based on the // source documents' originating index, and the original @@ -138,18 +139,31 @@ export const singleBulkCreate = async ({ logger.debug(`individual bulk process time took: ${makeFloatString(end - start)} milliseconds`); logger.debug(`took property says bulk took: ${response.took} milliseconds`); - if (response.errors) { - const duplicateSignalsCount = countBy(response.items, 'create.status')['409']; + const createdItemsCount = countBy(response.items, 'create.status')['201'] ?? 0; + const duplicateSignalsCount = countBy(response.items, 'create.status')['409']; + const errorCountByMessage = errorAggregator(response, [409]); + + logger.debug(`bulk created ${createdItemsCount} signals`); + if (duplicateSignalsCount > 0) { logger.debug(`ignored ${duplicateSignalsCount} duplicate signals`); - const errorCountByMessage = errorAggregator(response, [409]); - if (!isEmpty(errorCountByMessage)) { - logger.error( - `[-] bulkResponse had errors with responses of: ${JSON.stringify(errorCountByMessage)}` - ); - } } - const createdItemsCount = countBy(response.items, 'create.status')['201'] ?? 0; - logger.debug(`bulk created ${createdItemsCount} signals`); - return { success: true, bulkCreateDuration: makeFloatString(end - start), createdItemsCount }; + if (!isEmpty(errorCountByMessage)) { + logger.error( + `[-] bulkResponse had errors with responses of: ${JSON.stringify(errorCountByMessage)}` + ); + return { + errors: Object.keys(errorCountByMessage), + success: false, + bulkCreateDuration: makeFloatString(end - start), + createdItemsCount, + }; + } else { + return { + errors: [], + success: true, + bulkCreateDuration: makeFloatString(end - start), + createdItemsCount, + }; + } }; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts index 700a8fb5022d7..b101bc5754764 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts @@ -58,7 +58,7 @@ export interface SignalSource { } export interface BulkItem { - create: { + create?: { _index: string; _type?: string; _id: string; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.test.ts index 9d22ba9dcc02b..123b9c9bdffa2 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.test.ts @@ -356,6 +356,14 @@ describe('utils', () => { expect(aggregated).toEqual(expected); }); + test('it should aggregate with an empty create object', () => { + const empty = sampleBulkResponse(); + empty.items = [{}]; + const aggregated = errorAggregator(empty, []); + const expected: BulkResponseErrorAggregation = {}; + expect(aggregated).toEqual(expected); + }); + test('it should aggregate with an empty object when given a valid bulk response with no errors', () => { const validResponse = sampleBulkResponse(); const aggregated = errorAggregator(validResponse, []); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.ts index 4a6ea96e1854b..9f1e5d6980466 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/utils.ts @@ -292,7 +292,7 @@ export const errorAggregator = ( ignoreStatusCodes: number[] ): BulkResponseErrorAggregation => { return response.items.reduce((accum, item) => { - if (item.create.error != null && !ignoreStatusCodes.includes(item.create.status)) { + if (item.create?.error != null && !ignoreStatusCodes.includes(item.create.status)) { if (accum[item.create.error.reason] == null) { accum[item.create.error.reason] = { count: 1, From 496152eea7cb3f6c724a3348e3633bd8bc37b84a Mon Sep 17 00:00:00 2001 From: Frank Hassanabad Date: Sun, 20 Sep 2020 14:40:22 -0600 Subject: [PATCH 21/27] [Security Solutions][Detection Engine] Adds threat matching API and rule type (#77395) ## Summary This is the backend, first iteration of threat matching API and rule type. You see elements using the backend API on the front end but cannot use the UI to add or edit a threshold rule with this PR. Screen shots of it running in the UI elements that do work: Screen Shot 2020-09-16 at 10 34 26 AM Screen Shot 2020-09-16 at 10 34 48 AM **Usage** Since this is only backend API work and does not have the front end add/edit at the moment, you can use the existing UI's (for the most part) to validate the work here through CURL scripts below: Go to the folder: ```ts /kibana/x-pack/plugins/security_solution/server/lib/detection_engine/scripts ``` And post a small ECS threat mapping to the index called `mock-threat-list`: ```ts ./create_threat_mapping.sh ``` Then to post a small number of threats that represent simple port numbers you can run: ```ts ./create_threat_data.sh ``` However, feel free to also manually create them directly in your dev tools like so: ```ts # Posts a threat list item called some-name with an IP but change these out for valid data in your system PUT mock-threat-list-1/_doc/9999 { "@timestamp": "2020-09-09T20:30:45.725Z", "host": { "name": "some-name", "ip": "127.0.0.1" } } ``` ```ts # Posts a destination port number to watch PUT mock-threat-list-1/_doc/10000 { "@timestamp": "2020-09-08T20:30:45.725Z", "destination": { "port": "443" } } ``` ```ts # Posts a source port number to watch PUT mock-threat-list-1/_doc/10001 { "@timestamp": "2020-09-08T20:30:45.725Z", "source": { "port": "443" } } ``` Then you can post a threat match rule: ```ts ./post_rule.sh ./rules/queries/query_with_threat_mapping.json ```

Click here to see Response ```ts { "actions": [], "author": [], "created_at": "2020-09-16T04:25:58.041Z", "created_by": "yo", "description": "Query with a threat mapping", "enabled": true, "exceptions_list": [], "false_positives": [], "from": "now-6m", "id": "f4226ab0-6f88-49c3-8f09-84cf5946ee7a", "immutable": false, "interval": "5m", "language": "kuery", "max_signals": 100, "name": "Query with a threat mapping", "output_index": ".siem-signals-hassanabad3-default", "query": "*:*", "references": [], "risk_score": 1, "risk_score_mapping": [], "rule_id": "threat-mapping", "severity": "high", "severity_mapping": [], "tags": [ "tag_1", "tag_2" ], "threat": [], "threat_index": "mock-threat-list-1", "threat_mapping": [ { "entries": [ { "field": "host.name", "type": "mapping", "value": "host.name" }, { "field": "host.ip", "type": "mapping", "value": "host.ip" } ] }, { "entries": [ { "field": "destination.ip", "type": "mapping", "value": "destination.ip" }, { "field": "destination.port", "type": "mapping", "value": "destination.port" } ] }, { "entries": [ { "field": "source.port", "type": "mapping", "value": "source.port" } ] }, { "entries": [ { "field": "source.ip", "type": "mapping", "value": "source.ip" } ] } ], "threat_query": "*:*", "throttle": "no_actions", "to": "now", "type": "threat_match", "updated_at": "2020-09-16T04:25:58.051Z", "updated_by": "yo", "version": 1 } ```
**Structure** You can see the rule structure in the file: ```ts x-pack/plugins/security_solution/server/lib/detection_engine/scripts/rules/queries/query_with_threat_mapping.json ```
Click here to see JSON ```ts { "name": "Query with a threat mapping", "description": "Query with a threat mapping", "rule_id": "threat-mapping", "risk_score": 1, "severity": "high", "type": "threat_match", "query": "*:*", "tags": ["tag_1", "tag_2"], "threat_index": "mock-threat-list", "threat_query": "*:*", "threat_mapping": [ { "entries": [ { "field": "host.name", "type": "mapping", "value": "host.name" }, { "field": "host.ip", "type": "mapping", "value": "host.ip" } ] }, { "entries": [ { "field": "destination.ip", "type": "mapping", "value": "destination.ip" }, { "field": "destination.port", "type": "mapping", "value": "destination.port" } ] }, { "entries": [ { "field": "source.port", "type": "mapping", "value": "source.port" } ] }, { "entries": [ { "field": "source.ip", "type": "mapping", "value": "source.ip" } ] } ] } ```
Structural elements that are new: New type enum called "threat_match" ```ts "type": "threat_match", ``` New `threat_index` string which can be set to a single threat index (This might change to an array in the near future before release): ```ts "threat_index": "mock-threat-list" ``` New `threat_query` string which can be set any valid query to filter the threat list before executing the rule. This can be undefined, if you are only pushing in filters from the API. ```ts "threat_query": "*:*", ``` New `threat_filters` array which can be set to any valid filter like `filters`. This can be `undefined` if you are only using the query from the API. ```ts threat_filter": [] ``` New `threat_mapping` array which can be set to a valid mapping between the threat list and the ECS list. This structure has an inner array called `entries` which represent a 2 level tree of 1st level OR elements followed by 2nd level AND elements. For example, if you want to find all threat matches where ECS documents will match against some ${threatList} index where it would be like so:
Click here to see array from the boolean ```ts "threat_mapping": [ { "entries": [ { "field": "host.name", "type": "mapping", "value": "host.name" }, { "field": "host.ip", "type": "mapping", "value": "host.ip" } ] }, { "entries": [ { "field": "destination.ip", "type": "mapping", "value": "destination.ip" }, { "field": "destination.port", "type": "mapping", "value": "destination.port" } ] }, { "entries": [ { "field": "source.port", "type": "mapping", "value": "source.port" } ] }, { "entries": [ { "field": "source.ip", "type": "mapping", "value": "source.ip" } ] } ] ```
What that array represents in pseudo boolean logic is:
Click here to see pseduo logic ```ts (host.name: ${threatList.host.name} AND host.ip: ${threatList.host.name}) OR (destination.ip: ${threatList.destination.ip} AND destination.port: ${threatList.destination.port}) OR (source.port ${threatList.source.port}) OR (source.ip ${threatList.source.ip}) ```
### Checklist - [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 --- .../schemas/common/schemas.ts | 1 + .../add_prepackaged_rules_schema.mock.ts | 101 ++++ .../request/add_prepackaged_rules_schema.ts | 10 + .../add_prepackged_rules_schema.test.ts | 14 + .../request/create_rules_schema.mock.ts | 100 ++++ .../request/create_rules_schema.test.ts | 14 + .../schemas/request/create_rules_schema.ts | 10 + .../create_rules_type_dependents.test.ts | 40 +- .../request/create_rules_type_dependents.ts | 21 +- .../request/import_rules_schema.mock.ts | 91 ++++ .../request/import_rules_schema.test.ts | 14 + .../schemas/request/import_rules_schema.ts | 10 + .../schemas/response/rules_schema.mocks.ts | 28 ++ .../schemas/response/rules_schema.test.ts | 55 ++- .../schemas/response/rules_schema.ts | 34 +- .../schemas/types/threat_mapping.test.ts | 176 +++++++ .../schemas/types/threat_mapping.ts | 47 ++ .../common/detection_engine/utils.test.ts | 12 +- .../common/detection_engine/utils.ts | 7 +- .../rules/description_step/helpers.test.tsx | 6 + .../rules/description_step/helpers.tsx | 8 + .../rules/description_step/translations.tsx | 7 + .../detection_engine/rules/create/helpers.ts | 1 + .../pages/detection_engine/rules/helpers.tsx | 1 + .../routes/__mocks__/request_responses.ts | 4 + .../routes/rules/create_rules_bulk_route.ts | 8 + .../routes/rules/create_rules_route.ts | 8 + .../routes/rules/import_rules_route.ts | 8 + .../routes/rules/utils.test.ts | 52 +- .../detection_engine/routes/rules/utils.ts | 4 + .../rules/create_rules.mock.ts | 8 + .../detection_engine/rules/create_rules.ts | 8 + .../rules/install_prepacked_rules.ts | 8 + .../lib/detection_engine/rules/types.ts | 11 + .../scripts/create_threat_data.sh | 33 ++ .../scripts/create_threat_mapping.sh | 61 +++ .../scripts/delete_threat_list.sh | 18 + .../queries/query_with_threat_mapping.json | 60 +++ .../signals/__mocks__/es_results.ts | 4 + .../detection_engine/signals/get_filter.ts | 4 +- .../signals/signal_params_schema.mock.ts | 1 + .../signals/signal_params_schema.ts | 4 + .../signals/signal_rule_alert_type.test.ts | 14 +- .../signals/signal_rule_alert_type.ts | 62 ++- .../build_threat_mapping_filter.mock.ts | 237 +++++++++ .../build_threat_mapping_filter.test.ts | 457 ++++++++++++++++++ .../build_threat_mapping_filter.ts | 152 ++++++ .../threat_mapping/create_threat_signal.ts | 116 +++++ .../threat_mapping/create_threat_signals.ts | 106 ++++ .../threat_mapping/get_threat_list.test.ts | 31 ++ .../signals/threat_mapping/get_threat_list.ts | 60 +++ .../signals/threat_mapping/types.ts | 163 +++++++ .../signals/threat_mapping/utils.test.ts | 159 ++++++ .../signals/threat_mapping/utils.ts | 40 ++ .../lib/detection_engine/signals/types.ts | 13 + .../server/lib/detection_engine/types.ts | 10 + 56 files changed, 2719 insertions(+), 13 deletions(-) create mode 100644 x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.test.ts create mode 100644 x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.ts create mode 100755 x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_data.sh create mode 100755 x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_mapping.sh create mode 100755 x-pack/plugins/security_solution/server/lib/detection_engine/scripts/delete_threat_list.sh create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/scripts/rules/queries/query_with_threat_mapping.json create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.mock.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.test.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signal.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signals.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.test.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/types.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.test.ts create mode 100644 x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.ts diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/common/schemas.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/common/schemas.ts index f002e13a07cf1..5fbba84467ecf 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/common/schemas.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/common/schemas.ts @@ -299,6 +299,7 @@ export const type = t.keyof({ query: null, saved_query: null, threshold: null, + threat_match: null, }); export type Type = t.TypeOf; diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.mock.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.mock.ts index b666b95ea1e97..777256ff961f9 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.mock.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.mock.ts @@ -48,3 +48,104 @@ export const getAddPrepackagedRulesSchemaDecodedMock = (): AddPrepackagedRulesSc exceptions_list: [], rule_id: 'rule-1', }); + +export const getAddPrepackagedThreatMatchRulesSchemaMock = (): AddPrepackagedRulesSchema => ({ + description: 'some description', + name: 'Query with a rule id', + query: 'user.name: root or user.name: admin', + severity: 'high', + type: 'threat_match', + risk_score: 55, + language: 'kuery', + rule_id: 'rule-1', + version: 1, + threat_query: '*:*', + threat_index: 'list-index', + threat_mapping: [ + { + entries: [ + { + field: 'host.name', + value: 'host.name', + type: 'mapping', + }, + ], + }, + ], + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], +}); + +export const getAddPrepackagedThreatMatchRulesSchemaDecodedMock = (): AddPrepackagedRulesSchemaDecoded => ({ + author: [], + description: 'some description', + name: 'Query with a rule id', + query: 'user.name: root or user.name: admin', + severity: 'high', + severity_mapping: [], + type: 'threat_match', + risk_score: 55, + risk_score_mapping: [], + language: 'kuery', + references: [], + actions: [], + enabled: false, + false_positives: [], + from: 'now-6m', + interval: '5m', + max_signals: DEFAULT_MAX_SIGNALS, + tags: [], + to: 'now', + threat: [], + throttle: null, + version: 1, + exceptions_list: [], + rule_id: 'rule-1', + threat_query: '*:*', + threat_index: 'list-index', + threat_mapping: [ + { + entries: [ + { + field: 'host.name', + value: 'host.name', + type: 'mapping', + }, + ], + }, + ], + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], +}); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.ts index 9b90cf9fdf782..69538f025d95d 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackaged_rules_schema.ts @@ -45,6 +45,12 @@ import { RiskScoreMapping, SeverityMapping, } from '../common/schemas'; +import { + threat_index, + threat_query, + threat_filters, + threat_mapping, +} from '../types/threat_mapping'; import { DefaultStringArray, @@ -116,6 +122,10 @@ export const addPrepackagedRulesSchema = t.intersection([ references: DefaultStringArray, // defaults to empty array of strings if not set during decode note, // defaults to "undefined" if not set during decode exceptions_list: DefaultListArray, // defaults to empty array if not set during decode + threat_filters, // defaults to "undefined" if not set during decode + threat_mapping, // defaults to "undefined" if not set during decode + threat_query, // defaults to "undefined" if not set during decode + threat_index, // defaults to "undefined" if not set during decode }) ), ]); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackged_rules_schema.test.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackged_rules_schema.test.ts index 137b40eb648ba..8c916e4f013b4 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackged_rules_schema.test.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/add_prepackged_rules_schema.test.ts @@ -17,6 +17,8 @@ import { left } from 'fp-ts/lib/Either'; import { getAddPrepackagedRulesSchemaMock, getAddPrepackagedRulesSchemaDecodedMock, + getAddPrepackagedThreatMatchRulesSchemaMock, + getAddPrepackagedThreatMatchRulesSchemaDecodedMock, } from './add_prepackaged_rules_schema.mock'; import { DEFAULT_MAX_SIGNALS } from '../../../constants'; import { getListArrayMock } from '../types/lists.mock'; @@ -1597,4 +1599,16 @@ describe('add prepackaged rules schema', () => { expect(message.schema).toEqual(expected); }); }); + + describe('threat_mapping', () => { + test('You can set a threat query, index, mapping, filters on a pre-packaged rule', () => { + const payload = getAddPrepackagedThreatMatchRulesSchemaMock(); + const decoded = addPrepackagedRulesSchema.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + const expected = getAddPrepackagedThreatMatchRulesSchemaDecodedMock(); + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(expected); + }); + }); }); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.mock.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.mock.ts index f1e87bdb11e75..32299be500b45 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.mock.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.mock.ts @@ -55,3 +55,103 @@ export const getCreateRulesSchemaDecodedMock = (): CreateRulesSchemaDecoded => ( exceptions_list: [], rule_id: 'rule-1', }); + +export const getCreateThreatMatchRulesSchemaMock = (ruleId = 'rule-1'): CreateRulesSchema => ({ + description: 'Detecting root and admin users', + name: 'Query with a rule id', + query: 'user.name: root or user.name: admin', + severity: 'high', + type: 'threat_match', + risk_score: 55, + language: 'kuery', + rule_id: ruleId, + threat_query: '*:*', + threat_index: 'list-index', + threat_mapping: [ + { + entries: [ + { + field: 'host.name', + value: 'host.name', + type: 'mapping', + }, + ], + }, + ], + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], +}); + +export const getCreateThreatMatchRulesSchemaDecodedMock = (): CreateRulesSchemaDecoded => ({ + author: [], + severity_mapping: [], + risk_score_mapping: [], + description: 'Detecting root and admin users', + name: 'Query with a rule id', + query: 'user.name: root or user.name: admin', + severity: 'high', + type: 'threat_match', + risk_score: 55, + language: 'kuery', + references: [], + actions: [], + enabled: true, + false_positives: [], + from: 'now-6m', + interval: '5m', + max_signals: DEFAULT_MAX_SIGNALS, + tags: [], + to: 'now', + threat: [], + throttle: null, + version: 1, + exceptions_list: [], + rule_id: 'rule-1', + threat_query: '*:*', + threat_index: 'list-index', + threat_mapping: [ + { + entries: [ + { + field: 'host.name', + value: 'host.name', + type: 'mapping', + }, + ], + }, + ], + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], +}); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.test.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.test.ts index 56bc68a275ee4..19517017743f1 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.test.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.test.ts @@ -16,6 +16,8 @@ import { left } from 'fp-ts/lib/Either'; import { getCreateRulesSchemaMock, getCreateRulesSchemaDecodedMock, + getCreateThreatMatchRulesSchemaMock, + getCreateThreatMatchRulesSchemaDecodedMock, } from './create_rules_schema.mock'; import { DEFAULT_MAX_SIGNALS } from '../../../constants'; import { getListArrayMock } from '../types/lists.mock'; @@ -1661,4 +1663,16 @@ describe('create rules schema', () => { expect(message.schema).toEqual(expected); }); }); + + describe('threat_mapping', () => { + test('You can set a threat query, index, mapping, filters when creating a rule', () => { + const payload = getCreateThreatMatchRulesSchemaMock(); + const decoded = createRulesSchema.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + const expected = getCreateThreatMatchRulesSchemaDecodedMock(); + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(expected); + }); + }); }); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.ts index 7b6b98383cc33..c024ba1c48f8d 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_schema.ts @@ -46,6 +46,12 @@ import { RiskScoreMapping, SeverityMapping, } from '../common/schemas'; +import { + threat_index, + threat_query, + threat_filters, + threat_mapping, +} from '../types/threat_mapping'; import { DefaultStringArray, @@ -112,6 +118,10 @@ export const createRulesSchema = t.intersection([ note, // defaults to "undefined" if not set during decode version: DefaultVersionNumber, // defaults to 1 if not set during decode exceptions_list: DefaultListArray, // defaults to empty array if not set during decode + threat_mapping, // defaults to "undefined" if not set during decode + threat_query, // defaults to "undefined" if not set during decode + threat_filters, // defaults to "undefined" if not set during decode + threat_index, // defaults to "undefined" if not set during decode }) ), ]); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.test.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.test.ts index 43f0901912271..75ad92578318c 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.test.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.test.ts @@ -4,7 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import { getCreateRulesSchemaMock } from './create_rules_schema.mock'; +import { + getCreateRulesSchemaMock, + getCreateThreatMatchRulesSchemaMock, +} from './create_rules_schema.mock'; import { CreateRulesSchema } from './create_rules_schema'; import { createRuleValidateTypeDependents } from './create_rules_type_dependents'; @@ -87,4 +90,39 @@ describe('create_rules_type_dependents', () => { const errors = createRuleValidateTypeDependents(schema); expect(errors).toEqual(['"threshold.value" has to be bigger than 0']); }); + + test('threat_index, threat_query, and threat_mapping are required when type is "threat_match" and validates with it', () => { + const schema: CreateRulesSchema = { + ...getCreateRulesSchemaMock(), + type: 'threat_match', + }; + const errors = createRuleValidateTypeDependents(schema); + expect(errors).toEqual([ + 'when "type" is "threat_match", "threat_index" is required', + 'when "type" is "threat_match", "threat_query" is required', + 'when "type" is "threat_match", "threat_mapping" is required', + ]); + }); + + test('validates with threat_index, threat_query, and threat_mapping when type is "threat_match"', () => { + const schema = getCreateThreatMatchRulesSchemaMock(); + const { threat_filters: threatFilters, ...noThreatFilters } = schema; + const errors = createRuleValidateTypeDependents(noThreatFilters); + expect(errors).toEqual([]); + }); + + test('does NOT validate when threat_mapping is an empty array', () => { + const schema: CreateRulesSchema = { + ...getCreateThreatMatchRulesSchemaMock(), + threat_mapping: [], + }; + const errors = createRuleValidateTypeDependents(schema); + expect(errors).toEqual(['threat_mapping" must have at least one element']); + }); + + test('validates with threat_index, threat_query, threat_mapping, and an optional threat_filters, when type is "threat_match"', () => { + const schema = getCreateThreatMatchRulesSchemaMock(); + const errors = createRuleValidateTypeDependents(schema); + expect(errors).toEqual([]); + }); }); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.ts index 91b14fa9b999c..c2a41005ebf4d 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/create_rules_type_dependents.ts @@ -5,7 +5,7 @@ */ import { isMlRule } from '../../../machine_learning/helpers'; -import { isThresholdRule } from '../../utils'; +import { isThreatMatchRule, isThresholdRule } from '../../utils'; import { CreateRulesSchema } from './create_rules_schema'; export const validateAnomalyThreshold = (rule: CreateRulesSchema): string[] => { @@ -107,6 +107,24 @@ export const validateThreshold = (rule: CreateRulesSchema): string[] => { return []; }; +export const validateThreatMapping = (rule: CreateRulesSchema): string[] => { + let errors: string[] = []; + if (isThreatMatchRule(rule.type)) { + if (!rule.threat_mapping) { + errors = ['when "type" is "threat_match", "threat_mapping" is required', ...errors]; + } else if (rule.threat_mapping.length === 0) { + errors = ['threat_mapping" must have at least one element', ...errors]; + } + if (!rule.threat_query) { + errors = ['when "type" is "threat_match", "threat_query" is required', ...errors]; + } + if (!rule.threat_index) { + errors = ['when "type" is "threat_match", "threat_index" is required', ...errors]; + } + } + return errors; +}; + export const createRuleValidateTypeDependents = (schema: CreateRulesSchema): string[] => { return [ ...validateAnomalyThreshold(schema), @@ -117,5 +135,6 @@ export const createRuleValidateTypeDependents = (schema: CreateRulesSchema): str ...validateTimelineId(schema), ...validateTimelineTitle(schema), ...validateThreshold(schema), + ...validateThreatMapping(schema), ]; }; diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.mock.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.mock.ts index e3b4196c90c6c..160dbb92b74cd 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.mock.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.mock.ts @@ -76,3 +76,94 @@ export const ruleIdsToNdJsonString = (ruleIds: string[]) => { const rules = ruleIds.map((ruleId) => getImportRulesSchemaMock(ruleId)); return rulesToNdJsonString(rules); }; + +export const getImportThreatMatchRulesSchemaMock = (ruleId = 'rule-1'): ImportRulesSchema => ({ + description: 'some description', + name: 'Query with a rule id', + query: 'user.name: root or user.name: admin', + severity: 'high', + type: 'threat_match', + risk_score: 55, + language: 'kuery', + rule_id: ruleId, + threat_index: 'index-123', + threat_mapping: [{ entries: [{ field: 'host.name', type: 'mapping', value: 'host.name' }] }], + threat_query: '*:*', + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], +}); + +export const getImportThreatMatchRulesSchemaDecodedMock = (): ImportRulesSchemaDecoded => ({ + author: [], + description: 'some description', + name: 'Query with a rule id', + query: 'user.name: root or user.name: admin', + severity: 'high', + severity_mapping: [], + type: 'threat_match', + risk_score: 55, + risk_score_mapping: [], + language: 'kuery', + references: [], + actions: [], + enabled: true, + false_positives: [], + from: 'now-6m', + interval: '5m', + max_signals: DEFAULT_MAX_SIGNALS, + tags: [], + to: 'now', + threat: [], + throttle: null, + version: 1, + exceptions_list: [], + rule_id: 'rule-1', + immutable: false, + threat_query: '*:*', + threat_index: 'index-123', + threat_mapping: [ + { + entries: [ + { + field: 'host.name', + value: 'host.name', + type: 'mapping', + }, + ], + }, + ], + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], +}); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.test.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.test.ts index 0515bee0052d7..bd25a63e153dd 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.test.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.test.ts @@ -20,6 +20,8 @@ import { import { getImportRulesSchemaMock, getImportRulesSchemaDecodedMock, + getImportThreatMatchRulesSchemaMock, + getImportThreatMatchRulesSchemaDecodedMock, } from './import_rules_schema.mock'; import { DEFAULT_MAX_SIGNALS } from '../../../constants'; import { getListArrayMock } from '../types/lists.mock'; @@ -1792,4 +1794,16 @@ describe('import rules schema', () => { expect(message.schema).toEqual(expected); }); }); + + describe('threat_mapping', () => { + test('You can set a threat query, index, mapping, filters on an imported rule', () => { + const payload = getImportThreatMatchRulesSchemaMock(); + const decoded = importRulesSchema.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + const expected = getImportThreatMatchRulesSchemaDecodedMock(); + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(expected); + }); + }); }); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.ts index 698716fea696e..b63d70783b7b5 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/request/import_rules_schema.ts @@ -52,6 +52,12 @@ import { RiskScoreMapping, SeverityMapping, } from '../common/schemas'; +import { + threat_index, + threat_query, + threat_filters, + threat_mapping, +} from '../types/threat_mapping'; import { DefaultStringArray, @@ -135,6 +141,10 @@ export const importRulesSchema = t.intersection([ updated_at, // defaults "undefined" if not set during decode created_by, // defaults "undefined" if not set during decode updated_by, // defaults "undefined" if not set during decode + threat_filters, // defaults to "undefined" if not set during decode + threat_mapping, // defaults to "undefined" if not set during decode + threat_query, // defaults to "undefined" if not set during decode + threat_index, // defaults to "undefined" if not set during decode }) ), ]); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.mocks.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.mocks.ts index ed9fb8930ea1b..a462b297d37f8 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.mocks.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.mocks.ts @@ -82,3 +82,31 @@ export const getRulesMlSchemaMock = (anchorDate: string = ANCHOR_DATE): RulesSch machine_learning_job_id: 'some_machine_learning_job_id', }; }; + +export const getThreatMatchingSchemaMock = (anchorDate: string = ANCHOR_DATE): RulesSchema => { + return { + ...getRulesSchemaMock(anchorDate), + type: 'threat_match', + threat_index: 'index-123', + threat_mapping: [{ entries: [{ field: 'host.name', type: 'mapping', value: 'host.name' }] }], + threat_query: '*:*', + threat_filters: [ + { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + ], + }; +}; diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.test.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.test.ts index 36fc063761840..3a47d4af6ac14 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.test.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.test.ts @@ -17,11 +17,16 @@ import { addQueryFields, addTimelineTitle, addMlFields, + addThreatMatchFields, } from './rules_schema'; import { exactCheck } from '../../../exact_check'; import { foldLeftRight, getPaths } from '../../../test_utils'; import { TypeAndTimelineOnly } from './type_timeline_only_schema'; -import { getRulesSchemaMock, getRulesMlSchemaMock } from './rules_schema.mocks'; +import { + getRulesSchemaMock, + getRulesMlSchemaMock, + getThreatMatchingSchemaMock, +} from './rules_schema.mocks'; import { ListArray } from '../types/lists'; export const ANCHOR_DATE = '2020-02-20T03:57:54.037Z'; @@ -593,6 +598,36 @@ describe('rules_schema', () => { expect(getPaths(left(message.errors))).toEqual(['invalid keys "query,language"']); expect(message.schema).toEqual({}); }); + + test('it validates a threat_match response', () => { + const payload = getThreatMatchingSchemaMock(); + + const dependents = getDependents(payload); + const decoded = dependents.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + const expected = getThreatMatchingSchemaMock(); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(expected); + }); + + test('it rejects a response with threat_match properties but type of "query"', () => { + const payload: RulesSchema = { + ...getThreatMatchingSchemaMock(), + type: 'query', + }; + + const dependents = getDependents(payload); + const decoded = dependents.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([ + 'invalid keys "threat_index,threat_mapping,[{"entries":[{"field":"host.name","type":"mapping","value":"host.name"}]}],threat_query,threat_filters,[{"bool":{"must":[{"query_string":{"query":"host.name: linux","analyze_wildcard":true,"time_zone":"Zulu"}}],"filter":[],"should":[],"must_not":[]}}]"', + ]); + expect(message.schema).toEqual({}); + }); }); describe('addSavedId', () => { @@ -647,6 +682,11 @@ describe('rules_schema', () => { const fields = addQueryFields({ type: 'saved_query' }); expect(fields.length).toEqual(2); }); + + test('should return two fields for a rule of type "threat_match"', () => { + const fields = addQueryFields({ type: 'threat_match' }); + expect(fields.length).toEqual(2); + }); }); describe('addMlFields', () => { @@ -704,4 +744,17 @@ describe('rules_schema', () => { expect(message.schema).toEqual({ ...payload, exceptions_list: [] }); }); }); + + describe('addThreatMatchFields', () => { + test('should return empty array if type is not "threat_match"', () => { + const fields = addThreatMatchFields({ type: 'query' }); + const expected: t.Mixed[] = []; + expect(fields).toEqual(expected); + }); + + test('should return 5 fields for a rule of type "threat_match"', () => { + const fields = addThreatMatchFields({ type: 'threat_match' }); + expect(fields.length).toEqual(5); + }); + }); }); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.ts index c26a7efb0c288..1c2254f9f8f09 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/response/rules_schema.ts @@ -60,6 +60,13 @@ import { rule_name_override, timestamp_override, } from '../common/schemas'; +import { + threat_index, + threat_query, + threat_filters, + threat_mapping, +} from '../types/threat_mapping'; + import { DefaultListArray } from '../types/lists_default_array'; import { DefaultStringArray, @@ -114,7 +121,7 @@ export const dependentRulesSchema = t.partial({ language, query, - // when type = saved_query, saved_is is required + // when type = saved_query, saved_id is required saved_id, // These two are required together or not at all. @@ -127,6 +134,12 @@ export const dependentRulesSchema = t.partial({ // Threshold fields threshold, + + // Threat Match fields + threat_filters, + threat_index, + threat_query, + threat_mapping, }); /** @@ -206,7 +219,9 @@ export const addTimelineTitle = (typeAndTimelineOnly: TypeAndTimelineOnly): t.Mi }; export const addQueryFields = (typeAndTimelineOnly: TypeAndTimelineOnly): t.Mixed[] => { - if (['eql', 'query', 'saved_query', 'threshold'].includes(typeAndTimelineOnly.type)) { + if ( + ['eql', 'query', 'saved_query', 'threshold', 'threat_match'].includes(typeAndTimelineOnly.type) + ) { return [ t.exact(t.type({ query: dependentRulesSchema.props.query })), t.exact(t.type({ language: dependentRulesSchema.props.language })), @@ -240,6 +255,20 @@ export const addThresholdFields = (typeAndTimelineOnly: TypeAndTimelineOnly): t. } }; +export const addThreatMatchFields = (typeAndTimelineOnly: TypeAndTimelineOnly): t.Mixed[] => { + if (typeAndTimelineOnly.type === 'threat_match') { + return [ + t.exact(t.type({ threat_query: dependentRulesSchema.props.threat_query })), + t.exact(t.type({ threat_index: dependentRulesSchema.props.threat_index })), + t.exact(t.type({ threat_mapping: dependentRulesSchema.props.threat_mapping })), + t.exact(t.partial({ threat_filters: dependentRulesSchema.props.threat_filters })), + t.exact(t.partial({ saved_id: dependentRulesSchema.props.saved_id })), + ]; + } else { + return []; + } +}; + export const getDependents = (typeAndTimelineOnly: TypeAndTimelineOnly): t.Mixed => { const dependents: t.Mixed[] = [ t.exact(requiredRulesSchema), @@ -249,6 +278,7 @@ export const getDependents = (typeAndTimelineOnly: TypeAndTimelineOnly): t.Mixed ...addQueryFields(typeAndTimelineOnly), ...addMlFields(typeAndTimelineOnly), ...addThresholdFields(typeAndTimelineOnly), + ...addThreatMatchFields(typeAndTimelineOnly), ]; if (dependents.length > 1) { diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.test.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.test.ts new file mode 100644 index 0000000000000..63d593ea84e67 --- /dev/null +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.test.ts @@ -0,0 +1,176 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { + ThreatMapping, + threatMappingEntries, + ThreatMappingEntries, + threat_mapping, +} from './threat_mapping'; +import { pipe } from 'fp-ts/lib/pipeable'; +import { left } from 'fp-ts/lib/Either'; +import { foldLeftRight, getPaths } from '../../../test_utils'; +import { exactCheck } from '../../../exact_check'; + +describe('threat_mapping', () => { + describe('threatMappingEntries', () => { + test('it should validate an entry', () => { + const payload: ThreatMappingEntries = [ + { + field: 'field.one', + type: 'mapping', + value: 'field.one', + }, + ]; + const decoded = threatMappingEntries.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(payload); + }); + + test('it should NOT validate an extra entry item', () => { + const payload: ThreatMappingEntries & Array<{ extra: string }> = [ + { + field: 'field.one', + type: 'mapping', + value: 'field.one', + extra: 'blah', + }, + ]; + const decoded = threatMappingEntries.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual(['invalid keys "extra"']); + expect(message.schema).toEqual({}); + }); + + test('it should NOT validate a non string', () => { + const payload = ([ + { + field: 5, + type: 'mapping', + value: 'field.one', + }, + ] as unknown) as ThreatMappingEntries[]; + const decoded = threatMappingEntries.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual(['Invalid value "5" supplied to "field"']); + expect(message.schema).toEqual({}); + }); + + test('it should NOT validate a wrong type', () => { + const payload = ([ + { + field: 'field.one', + type: 'invalid', + value: 'field.one', + }, + ] as unknown) as ThreatMappingEntries[]; + const decoded = threatMappingEntries.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([ + 'Invalid value "invalid" supplied to "type"', + ]); + expect(message.schema).toEqual({}); + }); + }); + + describe('threat_mapping', () => { + test('it should validate a threat mapping', () => { + const payload: ThreatMapping = [ + { + entries: [ + { + field: 'field.one', + type: 'mapping', + value: 'field.one', + }, + ], + }, + ]; + const decoded = threat_mapping.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(payload); + }); + }); + + test('it should NOT validate an extra key', () => { + const payload: ThreatMapping & Array<{ extra: string }> = [ + { + entries: [ + { + field: 'field.one', + type: 'mapping', + value: 'field.one', + }, + ], + extra: 'invalid', + }, + ]; + + const decoded = threat_mapping.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual(['invalid keys "extra"']); + expect(message.schema).toEqual({}); + }); + + test('it should NOT validate an extra inner entry', () => { + const payload: ThreatMapping & Array<{ entries: Array<{ extra: string }> }> = [ + { + entries: [ + { + field: 'field.one', + type: 'mapping', + value: 'field.one', + extra: 'blah', + }, + ], + }, + ]; + + const decoded = threat_mapping.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual(['invalid keys "extra"']); + expect(message.schema).toEqual({}); + }); + + test('it should NOT validate an extra inner entry with the wrong data type', () => { + const payload = ([ + { + entries: [ + { + field: 5, + type: 'mapping', + value: 'field.one', + }, + ], + }, + ] as unknown) as ThreatMapping; + + const decoded = threat_mapping.decode(payload); + const checked = exactCheck(payload, decoded); + const message = pipe(checked, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([ + 'Invalid value "5" supplied to "entries,field"', + ]); + expect(message.schema).toEqual({}); + }); +}); diff --git a/x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.ts b/x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.ts new file mode 100644 index 0000000000000..f2b4754c2d113 --- /dev/null +++ b/x-pack/plugins/security_solution/common/detection_engine/schemas/types/threat_mapping.ts @@ -0,0 +1,47 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +/* eslint-disable @typescript-eslint/naming-convention */ + +import * as t from 'io-ts'; +import { NonEmptyString } from './non_empty_string'; + +export const threat_query = t.string; +export type ThreatQuery = t.TypeOf; +export const threatQueryOrUndefined = t.union([threat_query, t.undefined]); +export type ThreatQueryOrUndefined = t.TypeOf; + +export const threat_filters = t.array(t.unknown); // Filters are not easily type-able yet +export type ThreatFilters = t.TypeOf; +export const threatFiltersOrUndefined = t.union([threat_filters, t.undefined]); +export type ThreatFiltersOrUndefined = t.TypeOf; + +export const threatMappingEntries = t.array( + t.exact( + t.type({ + field: NonEmptyString, + type: t.keyof({ mapping: null }), + value: NonEmptyString, + }) + ) +); +export type ThreatMappingEntries = t.TypeOf; + +export const threat_mapping = t.array( + t.exact( + t.type({ + entries: threatMappingEntries, + }) + ) +); +export type ThreatMapping = t.TypeOf; + +export const threatMappingOrUndefined = t.union([threat_mapping, t.undefined]); +export type ThreatMappingOrUndefined = t.TypeOf; + +export const threat_index = t.string; +export const threatIndexOrUndefined = t.union([threat_index, t.undefined]); +export type ThreatIndexOrUndefined = t.TypeOf; diff --git a/x-pack/plugins/security_solution/common/detection_engine/utils.test.ts b/x-pack/plugins/security_solution/common/detection_engine/utils.test.ts index 99680ffe41d44..ea50acc9b46be 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/utils.test.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/utils.test.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { hasLargeValueList, hasNestedEntry } from './utils'; +import { hasLargeValueList, hasNestedEntry, isThreatMatchRule } from './utils'; import { EntriesArray } from '../shared_imports'; describe('#hasLargeValueList', () => { @@ -102,4 +102,14 @@ describe('#hasNestedEntry', () => { expect(hasLists).toBeFalsy(); }); + + describe('isThreatMatchRule', () => { + test('it returns true if a threat match rule', () => { + expect(isThreatMatchRule('threat_match')).toEqual(true); + }); + + test('it returns false if not a threat match rule', () => { + expect(isThreatMatchRule('query')).toEqual(false); + }); + }); }); diff --git a/x-pack/plugins/security_solution/common/detection_engine/utils.ts b/x-pack/plugins/security_solution/common/detection_engine/utils.ts index 170d28cb5a725..f76417099bb17 100644 --- a/x-pack/plugins/security_solution/common/detection_engine/utils.ts +++ b/x-pack/plugins/security_solution/common/detection_engine/utils.ts @@ -17,6 +17,7 @@ export const hasNestedEntry = (entries: EntriesArray): boolean => { return found.length > 0; }; -export const isEqlRule = (ruleType: Type | undefined) => ruleType === 'eql'; -export const isThresholdRule = (ruleType: Type | undefined) => ruleType === 'threshold'; -export const isQueryRule = (ruleType: Type | undefined) => ruleType === 'query'; +export const isEqlRule = (ruleType: Type | undefined): boolean => ruleType === 'eql'; +export const isThresholdRule = (ruleType: Type | undefined): boolean => ruleType === 'threshold'; +export const isQueryRule = (ruleType: Type | undefined): boolean => ruleType === 'query'; +export const isThreatMatchRule = (ruleType: Type): boolean => ruleType === 'threat_match'; diff --git a/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.test.tsx b/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.test.tsx index 073cb46d3949a..f2eb5cf5b94f3 100644 --- a/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.test.tsx +++ b/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.test.tsx @@ -429,5 +429,11 @@ describe('helpers', () => { expect(result.description).toEqual('Threshold'); }); + + it('returns a humanized description for a threat_match type', () => { + const [result]: ListItems[] = buildRuleTypeDescription('Test label', 'threat_match'); + + expect(result.description).toEqual('Threat Match'); + }); }); }); diff --git a/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.tsx b/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.tsx index 0c866ae0bd926..4d46d4dc86846 100644 --- a/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.tsx +++ b/x-pack/plugins/security_solution/public/detections/components/rules/description_step/helpers.tsx @@ -391,6 +391,14 @@ export const buildRuleTypeDescription = (label: string, ruleType: Type): ListIte }, ]; } + case 'threat_match': { + return [ + { + title: label, + description: i18n.THREAT_MATCH_TYPE_DESCRIPTION, + }, + ]; + } default: return assertUnreachable(ruleType); } diff --git a/x-pack/plugins/security_solution/public/detections/components/rules/description_step/translations.tsx b/x-pack/plugins/security_solution/public/detections/components/rules/description_step/translations.tsx index 124ef9e648403..d714f04f519d4 100644 --- a/x-pack/plugins/security_solution/public/detections/components/rules/description_step/translations.tsx +++ b/x-pack/plugins/security_solution/public/detections/components/rules/description_step/translations.tsx @@ -55,6 +55,13 @@ export const THRESHOLD_TYPE_DESCRIPTION = i18n.translate( } ); +export const THREAT_MATCH_TYPE_DESCRIPTION = i18n.translate( + 'xpack.securitySolution.detectionEngine.createRule.threatMatchRuleTypeDescription', + { + defaultMessage: 'Threat Match', + } +); + export const ML_JOB_STARTED = i18n.translate( 'xpack.securitySolution.detectionEngine.ruleDescription.mlJobStartedDescription', { diff --git a/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/create/helpers.ts b/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/create/helpers.ts index 2acb3e57c5a3b..65a5c6aca0050 100644 --- a/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/create/helpers.ts +++ b/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/create/helpers.ts @@ -94,6 +94,7 @@ export const filterRuleFieldsForType = (fields: T, type: T case 'threshold': const { anomalyThreshold, machineLearningJobId, ...thresholdRuleFields } = fields; return thresholdRuleFields; + case 'threat_match': case 'query': case 'saved_query': case 'eql': diff --git a/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/helpers.tsx b/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/helpers.tsx index dbfb0333e48ee..42fbe40d690ea 100644 --- a/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/helpers.tsx +++ b/x-pack/plugins/security_solution/public/detections/pages/detection_engine/rules/helpers.tsx @@ -315,6 +315,7 @@ const getRuleSpecificRuleParamKeys = (ruleType: Type) => { return ['anomaly_threshold', 'machine_learning_job_id']; case 'threshold': return ['threshold', ...queryRuleParams]; + case 'threat_match': case 'query': case 'saved_query': case 'eql': diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_responses.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_responses.ts index 29c56e8ed80b1..fb01f92255516 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_responses.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_responses.ts @@ -396,6 +396,10 @@ export const getResult = (): RuleAlertType => ({ ], threshold: undefined, timestampOverride: undefined, + threatFilters: undefined, + threatMapping: undefined, + threatIndex: undefined, + threatQuery: undefined, references: ['http://www.example.com', 'https://ww.example.com'], note: '# Investigative notes', version: 1, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts index 959bf3186f136..dd887233c36a3 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts @@ -91,6 +91,10 @@ export const createRulesBulkRoute = (router: IRouter, ml: SetupPlugins['ml']) => severity_mapping: severityMapping, tags, threat, + threat_filters: threatFilters, + threat_index: threatIndex, + threat_mapping: threatMapping, + threat_query: threatQuery, threshold, throttle, timestamp_override: timestampOverride, @@ -176,6 +180,10 @@ export const createRulesBulkRoute = (router: IRouter, ml: SetupPlugins['ml']) => to, type, threat, + threatFilters, + threatMapping, + threatQuery, + threatIndex, threshold, timestampOverride, references, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_route.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_route.ts index 701e5b5e706ed..26ab89ad8ea7c 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_route.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/create_rules_route.ts @@ -78,6 +78,10 @@ export const createRulesRoute = (router: IRouter, ml: SetupPlugins['ml']): void tags, threat, threshold, + threat_filters: threatFilters, + threat_index: threatIndex, + threat_query: threatQuery, + threat_mapping: threatMapping, throttle, timestamp_override: timestampOverride, to, @@ -162,6 +166,10 @@ export const createRulesRoute = (router: IRouter, ml: SetupPlugins['ml']): void type, threat, threshold, + threatFilters, + threatIndex, + threatQuery, + threatMapping, timestampOverride, references, note, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/import_rules_route.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/import_rules_route.ts index 0f44b50d4bc74..0f5d0304f5ca0 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/import_rules_route.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/import_rules_route.ts @@ -158,6 +158,10 @@ export const importRulesRoute = (router: IRouter, config: ConfigType, ml: SetupP severity_mapping: severityMapping, tags, threat, + threat_filters: threatFilters, + threat_index: threatIndex, + threat_query: threatQuery, + threat_mapping: threatMapping, threshold, timestamp_override: timestampOverride, to, @@ -217,7 +221,11 @@ export const importRulesRoute = (router: IRouter, config: ConfigType, ml: SetupP to, type, threat, + threatFilters, + threatIndex, + threatQuery, threshold, + threatMapping, timestampOverride, references, note, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.test.ts index 11f74c264ae0c..2159245f2f735 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.test.ts @@ -19,7 +19,7 @@ import { } from './utils'; import { getResult } from '../__mocks__/request_responses'; import { INTERNAL_IDENTIFIER } from '../../../../../common/constants'; -import { RuleTypeParams } from '../../types'; +import { PartialFilter, RuleTypeParams } from '../../types'; import { BulkError, ImportSuccessError } from '../utils'; import { getOutputRuleAlertForRest } from '../__mocks__/utils'; import { createPromiseFromStreams } from '../../../../../../../../src/core/server/utils'; @@ -30,6 +30,7 @@ import { RuleAlertType } from '../../rules/types'; import { CreateRulesBulkSchemaDecoded } from '../../../../../common/detection_engine/schemas/request/create_rules_bulk_schema'; import { ImportRulesSchemaDecoded } from '../../../../../common/detection_engine/schemas/request/import_rules_schema'; import { getCreateRulesSchemaMock } from '../../../../../common/detection_engine/schemas/request/create_rules_schema.mock'; +import { ThreatMapping } from '../../../../../common/detection_engine/schemas/types/threat_mapping'; type PromiseFromStreams = ImportRulesSchemaDecoded | Error; @@ -122,6 +123,55 @@ describe('utils', () => { ); }); + test('transforms threat_matching fields', () => { + const threatRule = getResult(); + const threatFilters: PartialFilter[] = [ + { + query: { + bool: { + must: [ + { + query_string: { + query: 'host.name: linux', + analyze_wildcard: true, + time_zone: 'Zulu', + }, + }, + ], + filter: [], + should: [], + must_not: [], + }, + }, + }, + ]; + const threatMapping: ThreatMapping = [ + { + entries: [ + { + field: 'host.name', + value: 'host.name', + type: 'mapping', + }, + ], + }, + ]; + threatRule.params.threatIndex = 'index-123'; + threatRule.params.threatFilters = threatFilters; + threatRule.params.threatMapping = threatMapping; + threatRule.params.threatQuery = '*:*'; + + const rule = transformAlertToRule(threatRule); + expect(rule).toEqual( + expect.objectContaining({ + threat_index: 'index-123', + threat_filters: threatFilters, + threat_mapping: threatMapping, + threat_query: '*:*', + }) + ); + }); + // This has to stay here until we do data migration of saved objects and lists is removed from: // signal_params_schema.ts test('does not leak a lists structure in the transform which would cause validation issues', () => { diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.ts index ee83ea91578c5..556ea209152e6 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/rules/utils.ts @@ -145,6 +145,10 @@ export const transformAlertToRule = ( type: alert.params.type, threat: alert.params.threat ?? [], threshold: alert.params.threshold, + threat_filters: alert.params.threatFilters, + threat_index: alert.params.threatIndex, + threat_query: alert.params.threatQuery, + threat_mapping: alert.params.threatMapping, throttle: ruleActions?.ruleThrottle || 'no_actions', timestamp_override: alert.params.timestampOverride, note: alert.params.note, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.mock.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.mock.ts index 1117f34b6f8c5..95067e57868d1 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.mock.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.mock.ts @@ -39,6 +39,10 @@ export const getCreateRulesOptionsMock = (): CreateRulesOptions => ({ severityMapping: [], tags: [], threat: [], + threatFilters: undefined, + threatMapping: undefined, + threatQuery: undefined, + threatIndex: undefined, threshold: undefined, timestampOverride: undefined, to: 'now', @@ -82,6 +86,10 @@ export const getCreateMlRulesOptionsMock = (): CreateRulesOptions => ({ severityMapping: [], tags: [], threat: [], + threatFilters: undefined, + threatIndex: undefined, + threatMapping: undefined, + threatQuery: undefined, threshold: undefined, timestampOverride: undefined, to: 'now', diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.ts index 0c67d9ca77146..9ed94cd7bff2e 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/create_rules.ts @@ -42,6 +42,10 @@ export const createRules = async ({ severityMapping, tags, threat, + threatFilters, + threatIndex, + threatQuery, + threatMapping, threshold, timestampOverride, to, @@ -86,6 +90,10 @@ export const createRules = async ({ severityMapping, threat, threshold, + threatFilters, + threatIndex, + threatQuery, + threatMapping, timestampOverride, to, type, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/install_prepacked_rules.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/install_prepacked_rules.ts index 3af0c3f55b485..59e14dcffc3c0 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/install_prepacked_rules.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/install_prepacked_rules.ts @@ -47,6 +47,10 @@ export const installPrepackagedRules = ( to, type, threat, + threat_filters: threatFilters, + threat_mapping: threatMapping, + threat_query: threatQuery, + threat_index: threatIndex, threshold, timestamp_override: timestampOverride, references, @@ -93,6 +97,10 @@ export const installPrepackagedRules = ( to, type, threat, + threatFilters, + threatMapping, + threatQuery, + threatIndex, threshold, timestampOverride, references, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/types.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/types.ts index b845990fd94ef..6b851351f27f2 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rules/types.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rules/types.ts @@ -85,6 +85,13 @@ import { BuildingBlockTypeOrUndefined, RuleNameOverrideOrUndefined, } from '../../../../common/detection_engine/schemas/common/schemas'; +import { + ThreatIndexOrUndefined, + ThreatQueryOrUndefined, + ThreatMappingOrUndefined, + ThreatFiltersOrUndefined, +} from '../../../../common/detection_engine/schemas/types/threat_mapping'; + import { AlertsClient, PartialAlert } from '../../../../../alerts/server'; import { Alert, SanitizedAlert } from '../../../../../alerts/common'; import { SIGNALS_ID } from '../../../../common/constants'; @@ -206,6 +213,10 @@ export interface CreateRulesOptions { tags: Tags; threat: Threat; threshold: ThresholdOrUndefined; + threatFilters: ThreatFiltersOrUndefined; + threatIndex: ThreatIndexOrUndefined; + threatQuery: ThreatQueryOrUndefined; + threatMapping: ThreatMappingOrUndefined; timestampOverride: TimestampOverrideOrUndefined; to: To; type: Type; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_data.sh b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_data.sh new file mode 100755 index 0000000000000..23c1914387c44 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_data.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# +# Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +# or more contributor license agreements. Licensed under the Elastic License; +# you may not use this file except in compliance with the Elastic License. +# + +set -e +./check_env_variables.sh + + +# Adds port mock data to a threat list for testing. +# Example: ./create_threat_data.sh +# Example: ./create_threat_data.sh 1000 2000 + +START=${1:-1} +END=${2:-1000} + +for (( i=$START; i<=$END; i++ )) +do { +curl -s -k \ + -H "Content-Type: application/json" \ + -u ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD} \ + -X PUT ${ELASTICSEARCH_URL}/mock-threat-list/_doc/$i \ + --data " +{ + \"@timestamp\": \"$(date -u +"%Y-%m-%dT%H:%M:%SZ")\", + \"source\": { \"ip\": \"127.0.0.1\", \"port\": \"${i}\" }, + \"destination\": { \"ip\": \"127.0.0.1\", \"port\": \"${i}\" } +}" +} > /dev/null +done diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_mapping.sh b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_mapping.sh new file mode 100755 index 0000000000000..b0ec2973b2dd9 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/create_threat_mapping.sh @@ -0,0 +1,61 @@ +#!/bin/sh + +# +# Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +# or more contributor license agreements. Licensed under the Elastic License; +# you may not use this file except in compliance with the Elastic License. +# + +set -e +./check_env_variables.sh + +# Add a small partial ECS based mapping of just source.ip, source.port, destination.ip, destination.port +# dnd then adds a large volume of threat lists to it + +# Example: .create_threat_mapping.sh + +curl -s -k \ + -H "Content-Type: application/json" \ + -u ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD} \ + -X PUT ${ELASTICSEARCH_URL}/mock-threat-list \ + --data ' +{ + "mappings": { + "dynamic": "strict", + "properties": { + "@timestamp": { + "type": "date" + }, + "source": { + "properties": { + "ip": { + "type": "ip" + }, + "port": { + "type": "long" + } + } + }, + "destination": { + "properties": { + "ip": { + "type": "ip" + }, + "port": { + "type": "long" + } + } + }, + "host": { + "properties": { + "name": { + "type": "keyword" + }, + "ip" : { + "type" : "ip" + } + } + } + } + } +}' | jq . diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/delete_threat_list.sh b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/delete_threat_list.sh new file mode 100755 index 0000000000000..85eac94a2991f --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/delete_threat_list.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +# +# Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +# or more contributor license agreements. Licensed under the Elastic License; +# you may not use this file except in compliance with the Elastic License. +# + +set -e +./check_env_variables.sh + +# Deletes a mock threat list +# Example: ./delete_threat_list.sh + +curl -s -k \ + -H "Content-Type: application/json" \ + -u ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD} \ + -X DELETE ${ELASTICSEARCH_URL}/mock-threat-list \ diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/rules/queries/query_with_threat_mapping.json b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/rules/queries/query_with_threat_mapping.json new file mode 100644 index 0000000000000..c914e568048a1 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/scripts/rules/queries/query_with_threat_mapping.json @@ -0,0 +1,60 @@ +{ + "name": "Query with a threat mapping", + "description": "Query with a threat mapping", + "rule_id": "threat-mapping", + "risk_score": 1, + "severity": "high", + "type": "threat_match", + "query": "*:*", + "tags": ["tag_1", "tag_2"], + "threat_index": "mock-threat-list", + "threat_query": "*:*", + "threat_mapping": [ + { + "entries": [ + { + "field": "host.name", + "type": "mapping", + "value": "host.name" + }, + { + "field": "host.ip", + "type": "mapping", + "value": "host.ip" + } + ] + }, + { + "entries": [ + { + "field": "destination.ip", + "type": "mapping", + "value": "destination.ip" + }, + { + "field": "destination.port", + "type": "mapping", + "value": "destination.port" + } + ] + }, + { + "entries": [ + { + "field": "source.port", + "type": "mapping", + "value": "source.port" + } + ] + }, + { + "entries": [ + { + "field": "source.ip", + "type": "mapping", + "value": "source.ip" + } + ] + } + ] +} diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/__mocks__/es_results.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/__mocks__/es_results.ts index 9d3eb29be08dd..bbdb8ea0a36ed 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/__mocks__/es_results.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/__mocks__/es_results.ts @@ -47,6 +47,10 @@ export const sampleRuleAlertParams = ( filters: undefined, savedId: undefined, threshold: undefined, + threatFilters: undefined, + threatQuery: undefined, + threatMapping: undefined, + threatIndex: undefined, timelineId: undefined, timelineTitle: undefined, timestampOverride: undefined, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/get_filter.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/get_filter.ts index 6323938d6903b..6ce0be54a9e7b 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/get_filter.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/get_filter.ts @@ -18,6 +18,7 @@ import { ExceptionListItemSchema } from '../../../../../lists/common/schemas'; import { AlertServices } from '../../../../../alerts/server'; import { PartialFilter } from '../types'; import { BadRequestError } from '../errors/bad_request_error'; +import { QueryFilter } from './types'; interface GetFilterArgs { type: Type; @@ -48,7 +49,7 @@ export const getFilter = async ({ type, query, lists, -}: GetFilterArgs): Promise => { +}: GetFilterArgs): Promise => { const queryFilter = () => { if (query != null && language != null && index != null) { return getQueryFilter(query, language, filters || [], index, lists); @@ -90,6 +91,7 @@ export const getFilter = async ({ switch (type) { case 'eql': + case 'threat_match': case 'threshold': { return savedId != null ? savedQueryFilter() : queryFilter(); } diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.mock.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.mock.ts index 0c56ed300cb48..c8f8341392553 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.mock.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.mock.ts @@ -42,6 +42,7 @@ export const getSignalParamsSchemaDecodedMock = (): SignalParamsSchema => ({ savedId: null, severity: 'high', severityMapping: null, + threatFilters: null, threat: null, timelineId: null, timelineTitle: null, diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.ts index d08ca90f3e353..dbb48d59d3a3f 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_params_schema.ts @@ -48,6 +48,10 @@ const signalSchema = schema.object({ lists: schema.maybe(schema.arrayOf(schema.object({}, { unknowns: 'allow' }))), // For backwards compatibility with customers that had a data bug in 7.7. Once we use a migration script please remove this. exceptions_list: schema.maybe(schema.arrayOf(schema.object({}, { unknowns: 'allow' }))), // For backwards compatibility with customers that had a data bug in 7.8. Once we use a migration script please remove this. exceptionsList: schema.maybe(schema.arrayOf(schema.object({}, { unknowns: 'allow' }))), + threatFilters: schema.nullable(schema.arrayOf(schema.object({}, { unknowns: 'allow' }))), + threatIndex: schema.maybe(schema.string()), + threatQuery: schema.maybe(schema.string()), + threatMapping: schema.maybe(schema.arrayOf(schema.object({}, { unknowns: 'allow' }))), }); /** diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts index 5f9e0a08065c4..3ff5d5d2a6e13 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts @@ -40,7 +40,6 @@ jest.mock('./utils'); jest.mock('../notifications/schedule_notification_actions'); jest.mock('./find_ml_signals'); jest.mock('./bulk_create_ml_signals'); -jest.mock('./../../../../common/detection_engine/utils'); jest.mock('../../../../common/detection_engine/parse_schedule_dates'); const getPayload = (ruleAlert: RuleAlertType, services: AlertServicesMock) => ({ @@ -480,6 +479,19 @@ describe('rules_notification_alert_type', () => { ); }); }); + + describe('threat match', () => { + it('should throw an error if threatQuery or threatIndex or threatMapping was not null', async () => { + const result = getResult(); + result.params.type = 'threat_match'; + payload = getPayload(result, alertServices) as jest.Mocked; + await alert.executor(payload); + expect(logger.error).toHaveBeenCalled(); + expect(logger.error.mock.calls[0][0]).toContain( + 'An error occurred during rule execution: message: "Threat Match rule is missing threatQuery and/or threatIndex and/or threatMapping: threatQuery: "undefined" threatIndex: "undefined" threatMapping: "undefined"" name: "Detect Root/Admin Users" id: "04128c15-0d1b-4716-a4c5-46997ac7f3bd" rule id: "rule-1" signals index: ".siem-signals"' + ); + }); + }); }); describe('should catch error', () => { diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts index 8ea94f943336e..196c17b42221b 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/signal_rule_alert_type.ts @@ -14,7 +14,11 @@ import { SERVER_APP_ID, } from '../../../../common/constants'; import { isJobStarted, isMlRule } from '../../../../common/machine_learning/helpers'; -import { isThresholdRule, isEqlRule } from '../../../../common/detection_engine/utils'; +import { + isThresholdRule, + isEqlRule, + isThreatMatchRule, +} from '../../../../common/detection_engine/utils'; import { parseScheduleDates } from '../../../../common/detection_engine/parse_schedule_dates'; import { SetupPlugins } from '../../../plugin'; import { getInputIndex } from './get_input_output_index'; @@ -45,6 +49,7 @@ import { ruleStatusServiceFactory } from './rule_status_service'; import { buildRuleMessageFactory } from './rule_messages'; import { ruleStatusSavedObjectsClientFactory } from './rule_status_saved_objects_client'; import { getNotificationResultsLink } from '../notifications/utils'; +import { createThreatSignals } from './threat_mapping/create_threat_signals'; export const signalRulesAlertType = ({ logger, @@ -90,6 +95,10 @@ export const signalRulesAlertType = ({ query, to, threshold, + threatFilters, + threatQuery, + threatIndex, + threatMapping, type, exceptionsList, } = params; @@ -310,6 +319,57 @@ export const signalRulesAlertType = ({ if (bulkCreateDuration) { result.bulkCreateTimes.push(bulkCreateDuration); } + } else if (isThreatMatchRule(type)) { + if ( + threatQuery == null || + threatIndex == null || + threatMapping == null || + query == null + ) { + throw new Error( + [ + 'Threat Match rule is missing threatQuery and/or threatIndex and/or threatMapping:', + `threatQuery: "${threatQuery}"`, + `threatIndex: "${threatIndex}"`, + `threatMapping: "${threatMapping}"`, + ].join(' ') + ); + } + const inputIndex = await getInputIndex(services, version, index); + result = await createThreatSignals({ + threatMapping, + query, + inputIndex, + type, + filters: filters ?? [], + language, + name, + savedId, + services, + exceptionItems: exceptionItems ?? [], + gap, + previousStartedAt, + listClient, + logger, + alertId, + outputIndex, + params, + searchAfterSize, + actions, + createdBy, + createdAt, + updatedBy, + interval, + updatedAt, + enabled, + refresh, + tags, + throttle, + threatFilters: threatFilters ?? [], + threatQuery, + buildRuleMessage, + threatIndex, + }); } else { const inputIndex = await getInputIndex(services, version, index); const esFilter = await getFilter({ diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.mock.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.mock.ts new file mode 100644 index 0000000000000..b1fab34d66ab8 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.mock.ts @@ -0,0 +1,237 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { ThreatMapping } from '../../../../../common/detection_engine/schemas/types/threat_mapping'; +import { Filter } from 'src/plugins/data/common'; + +import { SearchResponse } from 'elasticsearch'; +import { ThreatListItem } from './types'; + +export const getThreatMappingMock = (): ThreatMapping => { + return [ + { + entries: [ + { + field: 'host.name', + type: 'mapping', + value: 'host.name', + }, + { + field: 'host.ip', + type: 'mapping', + value: 'host.ip', + }, + ], + }, + { + entries: [ + { + field: 'destination.ip', + type: 'mapping', + value: 'destination.ip', + }, + { + field: 'destination.port', + type: 'mapping', + value: 'destination.port', + }, + ], + }, + { + entries: [ + { + field: 'source.port', + type: 'mapping', + value: 'source.port', + }, + ], + }, + { + entries: [ + { + field: 'source.ip', + type: 'mapping', + value: 'source.ip', + }, + ], + }, + ]; +}; + +export const getThreatListSearchResponseMock = (): SearchResponse => ({ + took: 0, + timed_out: false, + _shards: { + total: 1, + successful: 1, + failed: 0, + skipped: 0, + }, + hits: { + total: 1, + max_score: 0, + hits: [ + { + _index: 'index', + _type: 'type', + _id: '123', + _score: 0, + _source: getThreatListItemMock(), + }, + ], + }, +}); + +export const getThreatListItemMock = (): ThreatListItem => ({ + '@timestamp': '2020-09-09T21:59:13Z', + host: { + name: 'host-1', + ip: '192.168.0.0.1', + }, + source: { + ip: '127.0.0.1', + port: 1, + }, + destination: { + ip: '127.0.0.1', + port: 1, + }, +}); + +export const getFilterThreatMapping = (): ThreatMapping => [ + { + entries: [ + { + field: 'host.name', + type: 'mapping', + value: 'host.name', + }, + { + field: 'host.ip', + type: 'mapping', + value: 'host.ip', + }, + ], + }, + { + entries: [ + { + field: 'destination.ip', + type: 'mapping', + value: 'destination.ip', + }, + { + field: 'destination.port', + type: 'mapping', + value: 'destination.port', + }, + ], + }, + { + entries: [ + { + field: 'source.port', + type: 'mapping', + value: 'source.port', + }, + ], + }, + { + entries: [ + { + field: 'source.ip', + type: 'mapping', + value: 'source.ip', + }, + ], + }, +]; + +export const getThreatMappingFilterMock = (): Filter => ({ + meta: { + alias: null, + negate: false, + disabled: false, + }, + query: { + bool: { + should: getThreatMappingFiltersShouldMock(), + minimum_should_match: 1, + }, + }, +}); + +export const getThreatMappingFiltersShouldMock = (count = 1) => { + return new Array(count).fill(null).map((_, index) => getThreatMappingFilterShouldMock(index + 1)); +}; + +export const getThreatMappingFilterShouldMock = (port = 1) => ({ + bool: { + should: [ + { + bool: { + filter: [ + { + bool: { + should: [{ match: { 'host.name': 'host-1' } }], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [{ match: { 'host.ip': '192.168.0.0.1' } }], + minimum_should_match: 1, + }, + }, + ], + }, + }, + { + bool: { + filter: [ + { + bool: { + should: [{ match: { 'destination.ip': '127.0.0.1' } }], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [{ match: { 'destination.port': port } }], + minimum_should_match: 1, + }, + }, + ], + }, + }, + { + bool: { + filter: [ + { + bool: { + should: [{ match: { 'source.port': port } }], + minimum_should_match: 1, + }, + }, + ], + }, + }, + { + bool: { + filter: [ + { + bool: { + should: [{ match: { 'source.ip': '127.0.0.1' } }], + minimum_should_match: 1, + }, + }, + ], + }, + }, + ], + minimum_should_match: 1, + }, +}); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.test.ts new file mode 100644 index 0000000000000..cf4a570248c99 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.test.ts @@ -0,0 +1,457 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { + ThreatMapping, + ThreatMappingEntries, +} from '../../../../../common/detection_engine/schemas/types/threat_mapping'; + +import { + filterThreatMapping, + buildThreatMappingFilter, + splitShouldClauses, + createInnerAndClauses, + createAndOrClauses, + buildEntriesMappingFilter, +} from './build_threat_mapping_filter'; +import { + getThreatMappingMock, + getThreatListSearchResponseMock, + getThreatListItemMock, + getThreatMappingFilterMock, + getFilterThreatMapping, + getThreatMappingFiltersShouldMock, + getThreatMappingFilterShouldMock, +} from './build_threat_mapping_filter.mock'; +import { BooleanFilter } from './types'; + +describe('build_threat_mapping_filter', () => { + describe('buildThreatMappingFilter', () => { + test('it should throw if given a chunk over 1024 in size', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + expect(() => + buildThreatMappingFilter({ threatMapping, threatList, chunkSize: 1025 }) + ).toThrow('chunk sizes cannot exceed 1024 in size'); + }); + + test('it should NOT throw if given a chunk under 1024 in size', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + expect(() => + buildThreatMappingFilter({ threatMapping, threatList, chunkSize: 1023 }) + ).not.toThrow(); + }); + + test('it should create the correct entries when using the default mocks', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + const filter = buildThreatMappingFilter({ threatMapping, threatList }); + expect(filter).toEqual(getThreatMappingFilterMock()); + }); + + test('it should not mutate the original threatMapping', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + buildThreatMappingFilter({ threatMapping, threatList }); + expect(threatMapping).toEqual(getThreatMappingMock()); + }); + + test('it should not mutate the original threatListItem', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + buildThreatMappingFilter({ threatMapping, threatList }); + expect(threatList).toEqual(getThreatListSearchResponseMock()); + }); + }); + + describe('filterThreatMapping', () => { + test('it should not remove any entries when using the default mocks', () => { + const threatMapping = getThreatMappingMock(); + const threatListItem = getThreatListItemMock(); + + const item = filterThreatMapping({ threatMapping, threatListItem }); + const expected = getFilterThreatMapping(); + expect(item).toEqual(expected); + }); + + test('it should only give one filtered element if only 1 element is defined', () => { + const [firstElement] = getThreatMappingMock(); // get only the first element + const threatListItem = getThreatListItemMock(); + + const item = filterThreatMapping({ threatMapping: [firstElement], threatListItem }); + const [firstElementFilter] = getFilterThreatMapping(); // get only the first element to compare + expect(item).toEqual([firstElementFilter]); + }); + + test('it should not mutate the original threatMapping', () => { + const threatMapping = getThreatMappingMock(); + const threatListItem = getThreatListItemMock(); + + filterThreatMapping({ + threatMapping, + threatListItem, + }); + expect(threatMapping).toEqual(getThreatMappingMock()); + }); + + test('it should not mutate the original threatListItem', () => { + const threatMapping = getThreatMappingMock(); + const threatListItem = getThreatListItemMock(); + + filterThreatMapping({ + threatMapping, + threatListItem, + }); + expect(threatListItem).toEqual(getThreatListItemMock()); + }); + }); + + describe('createInnerAndClauses', () => { + test('it should return two clauses given a single entry', () => { + const [{ entries: threatMappingEntries }] = getThreatMappingMock(); // get the first element + const threatListItem = getThreatListItemMock(); + const innerClause = createInnerAndClauses({ threatMappingEntries, threatListItem }); + const { + bool: { + should: [ + { + bool: { filter }, + }, + ], + }, + } = getThreatMappingFilterShouldMock(); // get the first element + expect(innerClause).toEqual(filter); + }); + + test('it should return an empty array given an empty array', () => { + const threatListItem = getThreatListItemMock(); + const innerClause = createInnerAndClauses({ threatMappingEntries: [], threatListItem }); + expect(innerClause).toEqual([]); + }); + + test('it should filter out a single unknown value', () => { + const [{ entries }] = getThreatMappingMock(); // get the first element + const threatMappingEntries: ThreatMappingEntries = [ + ...entries, + { + field: 'host.name', // add second invalid entry which should be filtered away + value: 'invalid', + type: 'mapping', + }, + ]; + const threatListItem = getThreatListItemMock(); + const innerClause = createInnerAndClauses({ threatMappingEntries, threatListItem }); + const { + bool: { + should: [ + { + bool: { filter }, + }, + ], + }, + } = getThreatMappingFilterShouldMock(); // get the first element + expect(innerClause).toEqual(filter); + }); + + test('it should filter out 2 unknown values', () => { + const [{ entries }] = getThreatMappingMock(); // get the first element + const threatMappingEntries: ThreatMappingEntries = [ + ...entries, + { + field: 'host.name', // add second invalid entry which should be filtered away + value: 'invalid', + type: 'mapping', + }, + { + field: 'host.ip', // add second invalid entry which should be filtered away + value: 'invalid', + type: 'mapping', + }, + ]; + const threatListItem = getThreatListItemMock(); + const innerClause = createInnerAndClauses({ threatMappingEntries, threatListItem }); + const { + bool: { + should: [ + { + bool: { filter }, + }, + ], + }, + } = getThreatMappingFilterShouldMock(); // get the first element + expect(innerClause).toEqual(filter); + }); + + test('it should filter out all unknown values as an empty array', () => { + const threatMappingEntries: ThreatMappingEntries = [ + { + field: 'host.name', // add second invalid entry which should be filtered away + value: 'invalid', + type: 'mapping', + }, + { + field: 'host.ip', // add second invalid entry which should be filtered away + value: 'invalid', + type: 'mapping', + }, + ]; + const threatListItem = getThreatListItemMock(); + const innerClause = createInnerAndClauses({ threatMappingEntries, threatListItem }); + expect(innerClause).toEqual([]); + }); + }); + + describe('createAndOrClauses', () => { + test('it should return all clauses given the entries', () => { + const threatMapping = getThreatMappingMock(); + const threatListItem = getThreatListItemMock(); + const innerClause = createAndOrClauses({ threatMapping, threatListItem }); + expect(innerClause).toEqual(getThreatMappingFilterShouldMock()); + }); + + test('it should filter out data from entries that do not have mappings', () => { + const threatMapping = getThreatMappingMock(); + const threatListItem = { ...getThreatListItemMock(), foo: 'bar' }; + const innerClause = createAndOrClauses({ threatMapping, threatListItem }); + expect(innerClause).toEqual(getThreatMappingFilterShouldMock()); + }); + + test('it should return an empty boolean given an empty array', () => { + const threatListItem = getThreatListItemMock(); + const innerClause = createAndOrClauses({ threatMapping: [], threatListItem }); + expect(innerClause).toEqual({ bool: { minimum_should_match: 1, should: [] } }); + }); + + test('it should return an empty boolean clause given an empty object for a threat list item', () => { + const threatMapping = getThreatMappingMock(); + const innerClause = createAndOrClauses({ threatMapping, threatListItem: {} }); + expect(innerClause).toEqual({ bool: { minimum_should_match: 1, should: [] } }); + }); + }); + + describe('buildEntriesMappingFilter', () => { + test('it should return all clauses given the entries', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + const mapping = buildEntriesMappingFilter({ + threatMapping, + threatList, + chunkSize: 1024, + }); + const expected: BooleanFilter = { + bool: { should: [getThreatMappingFilterShouldMock()], minimum_should_match: 1 }, + }; + expect(mapping).toEqual(expected); + }); + + test('it should return empty "should" given an empty threat list', () => { + const threatMapping = getThreatMappingMock(); + const threatList = getThreatListSearchResponseMock(); + threatList.hits.hits = []; + const mapping = buildEntriesMappingFilter({ + threatMapping, + threatList, + chunkSize: 1024, + }); + const expected: BooleanFilter = { + bool: { should: [], minimum_should_match: 1 }, + }; + expect(mapping).toEqual(expected); + }); + + test('it should return empty "should" given an empty threat mapping', () => { + const threatList = getThreatListSearchResponseMock(); + const mapping = buildEntriesMappingFilter({ + threatMapping: [], + threatList, + chunkSize: 1024, + }); + const expected: BooleanFilter = { + bool: { should: [], minimum_should_match: 1 }, + }; + expect(mapping).toEqual(expected); + }); + + test('it should ignore entries that are invalid', () => { + const entries: ThreatMappingEntries = [ + { + field: 'host.name', + type: 'mapping', + value: 'invalid', + }, + { + field: 'host.ip', + type: 'mapping', + value: 'invalid', + }, + ]; + + const threatMapping: ThreatMapping = [ + ...getThreatMappingMock(), + ...[ + { + entries, + }, + ], + ]; + const threatList = getThreatListSearchResponseMock(); + const mapping = buildEntriesMappingFilter({ + threatMapping, + threatList, + chunkSize: 1024, + }); + const expected: BooleanFilter = { + bool: { should: [getThreatMappingFilterShouldMock()], minimum_should_match: 1 }, + }; + expect(mapping).toEqual(expected); + }); + }); + + describe('splitShouldClauses', () => { + test('it should NOT split a single should clause as there is nothing to split on with chunkSize 1', () => { + const should = getThreatMappingFiltersShouldMock(); + const clauses = splitShouldClauses({ should, chunkSize: 1 }); + expect(clauses).toEqual(getThreatMappingFiltersShouldMock()); + }); + + test('it should NOT mutate the original should clause passed in', () => { + const should = getThreatMappingFiltersShouldMock(); + expect(should).toEqual(getThreatMappingFiltersShouldMock()); + }); + + test('it should NOT split a single should clause as there is nothing to split on with chunkSize 2', () => { + const should = getThreatMappingFiltersShouldMock(); + const clauses = splitShouldClauses({ should, chunkSize: 2 }); + expect(clauses).toEqual(getThreatMappingFiltersShouldMock()); + }); + + test('it should return an empty array given an empty array', () => { + const clauses = splitShouldClauses({ should: [], chunkSize: 2 }); + expect(clauses).toEqual([]); + }); + + test('it should split an array of size 2 into a length 2 array with chunks on "chunkSize: 1"', () => { + const should = getThreatMappingFiltersShouldMock(2); + const clauses = splitShouldClauses({ should, chunkSize: 1 }); + expect(clauses.length).toEqual(2); + }); + + test('it should not mutate the original when splitting on chunks', () => { + const should = getThreatMappingFiltersShouldMock(2); + splitShouldClauses({ should, chunkSize: 1 }); + expect(should).toEqual(getThreatMappingFiltersShouldMock(2)); + }); + + test('it should split an array of size 2 into 2 different chunks on "chunkSize: 1"', () => { + const should = getThreatMappingFiltersShouldMock(2); + const clauses = splitShouldClauses({ should, chunkSize: 1 }); + const expected: BooleanFilter[] = [ + { + bool: { + should: [getThreatMappingFilterShouldMock(1)], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [getThreatMappingFilterShouldMock(2)], + minimum_should_match: 1, + }, + }, + ]; + expect(clauses).toEqual(expected); + }); + + test('it should split an array of size 4 into 4 groups of 4 chunks on "chunkSize: 1"', () => { + const should = getThreatMappingFiltersShouldMock(4); + const clauses = splitShouldClauses({ should, chunkSize: 1 }); + const expected: BooleanFilter[] = [ + { + bool: { + should: [getThreatMappingFilterShouldMock(1)], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [getThreatMappingFilterShouldMock(2)], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [getThreatMappingFilterShouldMock(3)], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [getThreatMappingFilterShouldMock(4)], + minimum_should_match: 1, + }, + }, + ]; + expect(clauses).toEqual(expected); + }); + + test('it should split an array of size 4 into 2 groups of 2 chunks on "chunkSize: 2"', () => { + const should = getThreatMappingFiltersShouldMock(4); + const clauses = splitShouldClauses({ should, chunkSize: 2 }); + const expected: BooleanFilter[] = [ + { + bool: { + should: [getThreatMappingFilterShouldMock(1), getThreatMappingFilterShouldMock(2)], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [getThreatMappingFilterShouldMock(3), getThreatMappingFilterShouldMock(4)], + minimum_should_match: 1, + }, + }, + ]; + expect(clauses).toEqual(expected); + }); + + test('it should NOT split an array of size 4 into any groups on "chunkSize: 5"', () => { + const should = getThreatMappingFiltersShouldMock(4); + const clauses = splitShouldClauses({ should, chunkSize: 5 }); + const expected: BooleanFilter[] = [ + getThreatMappingFilterShouldMock(1), + getThreatMappingFilterShouldMock(2), + getThreatMappingFilterShouldMock(3), + getThreatMappingFilterShouldMock(4), + ]; + expect(clauses).toEqual(expected); + }); + + test('it should split an array of size 4 into 2 groups on "chunkSize: 3"', () => { + const should = getThreatMappingFiltersShouldMock(4); + const clauses = splitShouldClauses({ should, chunkSize: 3 }); + const expected: BooleanFilter[] = [ + { + bool: { + should: [ + getThreatMappingFilterShouldMock(1), + getThreatMappingFilterShouldMock(2), + getThreatMappingFilterShouldMock(3), + ], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [getThreatMappingFilterShouldMock(4)], + minimum_should_match: 1, + }, + }, + ]; + expect(clauses).toEqual(expected); + }); + }); +}); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.ts new file mode 100644 index 0000000000000..3299b6ae34e4d --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/build_threat_mapping_filter.ts @@ -0,0 +1,152 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import get from 'lodash/fp/get'; +import { Filter } from 'src/plugins/data/common'; +import { ThreatMapping } from '../../../../../common/detection_engine/schemas/types/threat_mapping'; +import { + BooleanFilter, + BuildEntriesMappingFilterOptions, + BuildThreatMappingFilterOptions, + CreateAndOrClausesOptions, + CreateInnerAndClausesOptions, + FilterThreatMappingOptions, + SplitShouldClausesOptions, +} from './types'; + +export const MAX_CHUNK_SIZE = 1024; + +export const buildThreatMappingFilter = ({ + threatMapping, + threatList, + chunkSize, +}: BuildThreatMappingFilterOptions): Filter => { + const computedChunkSize = chunkSize ?? MAX_CHUNK_SIZE; + if (computedChunkSize > 1024) { + throw new TypeError('chunk sizes cannot exceed 1024 in size'); + } + const query = buildEntriesMappingFilter({ + threatMapping, + threatList, + chunkSize: computedChunkSize, + }); + const filterChunk: Filter = { + meta: { + alias: null, + negate: false, + disabled: false, + }, + query, + }; + return filterChunk; +}; + +/** + * Filters out any entries which do not include the threat list item. + */ +export const filterThreatMapping = ({ + threatMapping, + threatListItem, +}: FilterThreatMappingOptions): ThreatMapping => + threatMapping + .map((threatMap) => { + const entries = threatMap.entries.filter((entry) => get(entry.value, threatListItem) != null); + return { ...threatMap, entries }; + }) + .filter((threatMap) => threatMap.entries.length !== 0); + +export const createInnerAndClauses = ({ + threatMappingEntries, + threatListItem, +}: CreateInnerAndClausesOptions): BooleanFilter[] => { + return threatMappingEntries.reduce((accum, threatMappingEntry) => { + const value = get(threatMappingEntry.value, threatListItem); + if (value != null) { + // These values could be potentially 10k+ large so mutating the array intentionally + accum.push({ + bool: { + should: [ + { + match: { + [threatMappingEntry.field]: value, + }, + }, + ], + minimum_should_match: 1, + }, + }); + } + return accum; + }, []); +}; + +export const createAndOrClauses = ({ + threatMapping, + threatListItem, +}: CreateAndOrClausesOptions): BooleanFilter => { + const should = threatMapping.reduce((accum, threatMap) => { + const innerAndClauses = createInnerAndClauses({ + threatMappingEntries: threatMap.entries, + threatListItem, + }); + if (innerAndClauses.length !== 0) { + // These values could be potentially 10k+ large so mutating the array intentionally + accum.push({ + bool: { filter: innerAndClauses }, + }); + } + return accum; + }, []); + return { bool: { should, minimum_should_match: 1 } }; +}; + +export const buildEntriesMappingFilter = ({ + threatMapping, + threatList, + chunkSize, +}: BuildEntriesMappingFilterOptions): BooleanFilter => { + const combinedShould = threatList.hits.hits.reduce( + (accum, threatListSearchItem) => { + const filteredEntries = filterThreatMapping({ + threatMapping, + threatListItem: threatListSearchItem._source, + }); + const queryWithAndOrClause = createAndOrClauses({ + threatMapping: filteredEntries, + threatListItem: threatListSearchItem._source, + }); + if (queryWithAndOrClause.bool.should.length !== 0) { + // These values can be 10k+ large, so using a push here for performance + accum.push(queryWithAndOrClause); + } + return accum; + }, + [] + ); + const should = splitShouldClauses({ should: combinedShould, chunkSize }); + return { bool: { should, minimum_should_match: 1 } }; +}; + +export const splitShouldClauses = ({ + should, + chunkSize, +}: SplitShouldClausesOptions): BooleanFilter[] => { + if (should.length <= chunkSize) { + return should; + } else { + return should.reduce((accum, item, index) => { + const chunkIndex = Math.floor(index / chunkSize); + const currentChunk = accum[chunkIndex]; + if (!currentChunk) { + // create a new element in the array at the correct spot + accum[chunkIndex] = { bool: { should: [], minimum_should_match: 1 } }; + } + // Add to the existing array element. Using mutatious push here since these arrays can get very large such as 10k+ and this is going to be a hot code spot. + accum[chunkIndex].bool.should.push(item); + return accum; + }, []); + } +}; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signal.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signal.ts new file mode 100644 index 0000000000000..7542128d83769 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signal.ts @@ -0,0 +1,116 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { SearchResponse } from 'elasticsearch'; +import { getThreatList } from './get_threat_list'; +import { buildThreatMappingFilter } from './build_threat_mapping_filter'; + +import { getFilter } from '../get_filter'; +import { + searchAfterAndBulkCreate, + SearchAfterAndBulkCreateReturnType, +} from '../search_after_bulk_create'; +import { CreateThreatSignalOptions, ThreatListItem } from './types'; +import { combineResults } from './utils'; + +export const createThreatSignal = async ({ + threatMapping, + query, + inputIndex, + type, + filters, + language, + savedId, + services, + exceptionItems, + gap, + previousStartedAt, + listClient, + logger, + alertId, + outputIndex, + params, + searchAfterSize, + actions, + createdBy, + createdAt, + updatedBy, + interval, + updatedAt, + enabled, + refresh, + tags, + throttle, + threatFilters, + threatQuery, + buildRuleMessage, + threatIndex, + name, + currentThreatList, + currentResult, +}: CreateThreatSignalOptions): Promise<{ + threatList: SearchResponse; + results: SearchAfterAndBulkCreateReturnType; +}> => { + const threatFilter = buildThreatMappingFilter({ + threatMapping, + threatList: currentThreatList, + }); + + const esFilter = await getFilter({ + type, + filters: [...filters, threatFilter], + language, + query, + savedId, + services, + index: inputIndex, + lists: exceptionItems, + }); + + const newResult = await searchAfterAndBulkCreate({ + gap, + previousStartedAt, + listClient, + exceptionsList: exceptionItems, + ruleParams: params, + services, + logger, + id: alertId, + inputIndexPattern: inputIndex, + signalsIndex: outputIndex, + filter: esFilter, + actions, + name, + createdBy, + createdAt, + updatedBy, + updatedAt, + interval, + enabled, + pageSize: searchAfterSize, + refresh, + tags, + throttle, + buildRuleMessage, + }); + + const results = combineResults(currentResult, newResult); + const searchAfter = currentThreatList.hits.hits[currentThreatList.hits.hits.length - 1].sort; + + const threatList = await getThreatList({ + callCluster: services.callCluster, + exceptionItems, + query: threatQuery, + threatFilters, + index: [threatIndex], + searchAfter, + sortField: undefined, + sortOrder: undefined, + }); + + return { threatList, results }; +}; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signals.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signals.ts new file mode 100644 index 0000000000000..9027475d71c4a --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/create_threat_signals.ts @@ -0,0 +1,106 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { getThreatList } from './get_threat_list'; + +import { SearchAfterAndBulkCreateReturnType } from '../search_after_bulk_create'; +import { CreateThreatSignalsOptions } from './types'; +import { createThreatSignal } from './create_threat_signal'; + +export const createThreatSignals = async ({ + threatMapping, + query, + inputIndex, + type, + filters, + language, + savedId, + services, + exceptionItems, + gap, + previousStartedAt, + listClient, + logger, + alertId, + outputIndex, + params, + searchAfterSize, + actions, + createdBy, + createdAt, + updatedBy, + interval, + updatedAt, + enabled, + refresh, + tags, + throttle, + threatFilters, + threatQuery, + buildRuleMessage, + threatIndex, + name, +}: CreateThreatSignalsOptions): Promise => { + let results: SearchAfterAndBulkCreateReturnType = { + success: true, + bulkCreateTimes: [], + searchAfterTimes: [], + lastLookBackDate: null, + createdSignalsCount: 0, + errors: [], + }; + + let threatList = await getThreatList({ + callCluster: services.callCluster, + exceptionItems, + threatFilters, + query: threatQuery, + index: [threatIndex], + searchAfter: undefined, + sortField: undefined, + sortOrder: undefined, + }); + + while (threatList.hits.hits.length !== 0 && results.createdSignalsCount <= params.maxSignals) { + ({ threatList, results } = await createThreatSignal({ + threatMapping, + query, + inputIndex, + type, + filters, + language, + savedId, + services, + exceptionItems, + gap, + previousStartedAt, + listClient, + logger, + alertId, + outputIndex, + params, + searchAfterSize, + actions, + createdBy, + createdAt, + updatedBy, + updatedAt, + interval, + enabled, + tags, + refresh, + throttle, + threatFilters, + threatQuery, + buildRuleMessage, + threatIndex, + name, + currentThreatList: threatList, + currentResult: results, + })); + } + return results; +}; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.test.ts new file mode 100644 index 0000000000000..f600463c213c2 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.test.ts @@ -0,0 +1,31 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { getSortWithTieBreaker } from './get_threat_list'; + +describe('get_threat_signals', () => { + describe('getSortWithTieBreaker', () => { + test('it should return sort field of just timestamp if given no sort order', () => { + const sortOrder = getSortWithTieBreaker({ sortField: undefined, sortOrder: undefined }); + expect(sortOrder).toEqual([{ '@timestamp': 'asc' }]); + }); + + test('it should return sort field of timestamp with asc even if sortOrder is changed as it is hard wired in', () => { + const sortOrder = getSortWithTieBreaker({ sortField: undefined, sortOrder: 'desc' }); + expect(sortOrder).toEqual([{ '@timestamp': 'asc' }]); + }); + + test('it should return sort field of an extra field if given one', () => { + const sortOrder = getSortWithTieBreaker({ sortField: 'some-field', sortOrder: undefined }); + expect(sortOrder).toEqual([{ 'some-field': 'asc', '@timestamp': 'asc' }]); + }); + + test('it should return sort field of desc if given one', () => { + const sortOrder = getSortWithTieBreaker({ sortField: 'some-field', sortOrder: 'desc' }); + expect(sortOrder).toEqual([{ 'some-field': 'desc', '@timestamp': 'asc' }]); + }); + }); +}); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.ts new file mode 100644 index 0000000000000..8b381ca0d96dc --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/get_threat_list.ts @@ -0,0 +1,60 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { SearchResponse } from 'elasticsearch'; +import { getQueryFilter } from '../../../../../common/detection_engine/get_query_filter'; +import { + GetSortWithTieBreakerOptions, + GetThreatListOptions, + SortWithTieBreaker, + ThreatListItem, +} from './types'; + +/** + * This should not exceed 10000 (10k) + */ +export const MAX_PER_PAGE = 9000; + +export const getThreatList = async ({ + callCluster, + query, + index, + perPage, + searchAfter, + sortField, + sortOrder, + exceptionItems, + threatFilters, +}: GetThreatListOptions): Promise> => { + const calculatedPerPage = perPage ?? MAX_PER_PAGE; + if (calculatedPerPage > 10000) { + throw new TypeError('perPage cannot exceed the size of 10000'); + } + const queryFilter = getQueryFilter(query, 'kuery', threatFilters, index, exceptionItems); + const response: SearchResponse = await callCluster('search', { + body: { + query: queryFilter, + search_after: searchAfter, + sort: getSortWithTieBreaker({ sortField, sortOrder }), + }, + ignoreUnavailable: true, + index, + size: calculatedPerPage, + }); + return response; +}; + +export const getSortWithTieBreaker = ({ + sortField, + sortOrder, +}: GetSortWithTieBreakerOptions): SortWithTieBreaker[] => { + const ascOrDesc = sortOrder ?? 'asc'; + if (sortField != null) { + return [{ [sortField]: ascOrDesc, '@timestamp': 'asc' }]; + } else { + return [{ '@timestamp': 'asc' }]; + } +}; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/types.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/types.ts new file mode 100644 index 0000000000000..4c3cd9943adb4 --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/types.ts @@ -0,0 +1,163 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { Duration } from 'moment'; +import { SearchResponse } from 'elasticsearch'; +import { ListClient } from '../../../../../../lists/server'; +import { + Type, + LanguageOrUndefined, +} from '../../../../../common/detection_engine/schemas/common/schemas'; +import { + ThreatQuery, + ThreatMapping, + ThreatMappingEntries, +} from '../../../../../common/detection_engine/schemas/types/threat_mapping'; +import { PartialFilter, RuleTypeParams } from '../../types'; +import { AlertServices } from '../../../../../../alerts/server'; +import { ExceptionListItemSchema } from '../../../../../../lists/common/schemas'; +import { SearchAfterAndBulkCreateReturnType } from '../search_after_bulk_create'; +import { ILegacyScopedClusterClient, Logger } from '../../../../../../../../src/core/server'; +import { RuleAlertAction } from '../../../../../common/detection_engine/types'; +import { BuildRuleMessage } from '../rule_messages'; + +export interface CreateThreatSignalsOptions { + threatMapping: ThreatMapping; + query: string; + inputIndex: string[]; + type: Type; + filters: PartialFilter[]; + language: LanguageOrUndefined; + savedId: string | undefined; + services: AlertServices; + exceptionItems: ExceptionListItemSchema[]; + gap: Duration | null; + previousStartedAt: Date | null; + listClient: ListClient; + logger: Logger; + alertId: string; + outputIndex: string; + params: RuleTypeParams; + searchAfterSize: number; + actions: RuleAlertAction[]; + createdBy: string; + createdAt: string; + updatedBy: string; + updatedAt: string; + interval: string; + enabled: boolean; + tags: string[]; + refresh: false | 'wait_for'; + throttle: string; + threatFilters: PartialFilter[]; + threatQuery: ThreatQuery; + buildRuleMessage: BuildRuleMessage; + threatIndex: string; + name: string; +} + +export interface CreateThreatSignalOptions { + threatMapping: ThreatMapping; + query: string; + inputIndex: string[]; + type: Type; + filters: PartialFilter[]; + language: LanguageOrUndefined; + savedId: string | undefined; + services: AlertServices; + exceptionItems: ExceptionListItemSchema[]; + gap: Duration | null; + previousStartedAt: Date | null; + listClient: ListClient; + logger: Logger; + alertId: string; + outputIndex: string; + params: RuleTypeParams; + searchAfterSize: number; + actions: RuleAlertAction[]; + createdBy: string; + createdAt: string; + updatedBy: string; + updatedAt: string; + interval: string; + enabled: boolean; + tags: string[]; + refresh: false | 'wait_for'; + throttle: string; + threatFilters: PartialFilter[]; + threatQuery: ThreatQuery; + buildRuleMessage: BuildRuleMessage; + threatIndex: string; + name: string; + currentThreatList: SearchResponse; + currentResult: SearchAfterAndBulkCreateReturnType; +} + +export interface BuildThreatMappingFilterOptions { + threatMapping: ThreatMapping; + threatList: SearchResponse; + chunkSize?: number; +} + +export interface FilterThreatMappingOptions { + threatMapping: ThreatMapping; + threatListItem: ThreatListItem; +} + +export interface CreateInnerAndClausesOptions { + threatMappingEntries: ThreatMappingEntries; + threatListItem: ThreatListItem; +} + +export interface CreateAndOrClausesOptions { + threatMapping: ThreatMapping; + threatListItem: ThreatListItem; +} + +export interface BuildEntriesMappingFilterOptions { + threatMapping: ThreatMapping; + threatList: SearchResponse; + chunkSize: number; +} + +export interface SplitShouldClausesOptions { + should: BooleanFilter[]; + chunkSize: number; +} + +export interface BooleanFilter { + bool: { should: unknown[]; minimum_should_match: number }; +} + +export interface GetThreatListOptions { + callCluster: ILegacyScopedClusterClient['callAsCurrentUser']; + query: string; + index: string[]; + perPage?: number; + searchAfter: string[] | undefined; + sortField: string | undefined; + sortOrder: 'asc' | 'desc' | undefined; + threatFilters: PartialFilter[]; + exceptionItems: ExceptionListItemSchema[]; +} + +export interface GetSortWithTieBreakerOptions { + sortField: string | undefined; + sortOrder: 'asc' | 'desc' | undefined; +} + +/** + * This is an ECS document being returned, but the user could return or use non-ecs based + * documents potentially. + */ +export interface ThreatListItem { + [key: string]: unknown; +} + +export interface SortWithTieBreaker { + '@timestamp': 'asc'; + [key: string]: string; +} diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.test.ts new file mode 100644 index 0000000000000..48bdf430b940e --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.test.ts @@ -0,0 +1,159 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { SearchAfterAndBulkCreateReturnType } from '../search_after_bulk_create'; + +import { calculateAdditiveMax, combineResults } from './utils'; + +describe('utils', () => { + describe('calculateAdditiveMax', () => { + test('it should return 0 for two empty arrays', () => { + const max = calculateAdditiveMax([], []); + expect(max).toEqual(['0']); + }); + + test('it should return 10 for two arrays with the numbers 5', () => { + const max = calculateAdditiveMax(['5'], ['5']); + expect(max).toEqual(['10']); + }); + + test('it should return 5 for two arrays with second array having just 5', () => { + const max = calculateAdditiveMax([], ['5']); + expect(max).toEqual(['5']); + }); + + test('it should return 5 for two arrays with first array having just 5', () => { + const max = calculateAdditiveMax(['5'], []); + expect(max).toEqual(['5']); + }); + + test('it should return 10 for the max of the two arrays added together when the max of each array is 5, "5 + 5 = 10"', () => { + const max = calculateAdditiveMax(['3', '5', '1'], ['3', '5', '1']); + expect(max).toEqual(['10']); + }); + }); + + describe('combineResults', () => { + test('it should combine two results with success set to "true" if both are "true"', () => { + const existingResult: SearchAfterAndBulkCreateReturnType = { + success: true, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: [], + }; + + const newResult: SearchAfterAndBulkCreateReturnType = { + success: true, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: [], + }; + const combinedResults = combineResults(existingResult, newResult); + expect(combinedResults.success).toEqual(true); + }); + + test('it should combine two results with success set to "false" if one of them is "false"', () => { + const existingResult: SearchAfterAndBulkCreateReturnType = { + success: false, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: [], + }; + + const newResult: SearchAfterAndBulkCreateReturnType = { + success: true, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: [], + }; + const combinedResults = combineResults(existingResult, newResult); + expect(combinedResults.success).toEqual(false); + }); + + test('it should use the latest date if it is set in the new result', () => { + const existingResult: SearchAfterAndBulkCreateReturnType = { + success: false, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: [], + }; + + const newResult: SearchAfterAndBulkCreateReturnType = { + success: true, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: new Date('2020-09-16T03:34:32.390Z'), + createdSignalsCount: 3, + errors: [], + }; + const combinedResults = combineResults(existingResult, newResult); + expect(combinedResults.lastLookBackDate?.toISOString()).toEqual('2020-09-16T03:34:32.390Z'); + }); + + test('it should combine the searchAfterTimes and the bulkCreateTimes', () => { + const existingResult: SearchAfterAndBulkCreateReturnType = { + success: false, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: [], + }; + + const newResult: SearchAfterAndBulkCreateReturnType = { + success: true, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: new Date('2020-09-16T03:34:32.390Z'), + createdSignalsCount: 3, + errors: [], + }; + const combinedResults = combineResults(existingResult, newResult); + expect(combinedResults).toEqual( + expect.objectContaining({ + searchAfterTimes: ['60'], + bulkCreateTimes: ['50'], + }) + ); + }); + + test('it should combine errors together without duplicates', () => { + const existingResult: SearchAfterAndBulkCreateReturnType = { + success: false, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: undefined, + createdSignalsCount: 3, + errors: ['error 1', 'error 2', 'error 3'], + }; + + const newResult: SearchAfterAndBulkCreateReturnType = { + success: true, + searchAfterTimes: ['10', '20', '30'], + bulkCreateTimes: ['5', '15', '25'], + lastLookBackDate: new Date('2020-09-16T03:34:32.390Z'), + createdSignalsCount: 3, + errors: ['error 4', 'error 1', 'error 3', 'error 5'], + }; + const combinedResults = combineResults(existingResult, newResult); + expect(combinedResults).toEqual( + expect.objectContaining({ + errors: ['error 1', 'error 2', 'error 3', 'error 4', 'error 5'], + }) + ); + }); + }); +}); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.ts new file mode 100644 index 0000000000000..38bbb70b6c4ec --- /dev/null +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/threat_mapping/utils.ts @@ -0,0 +1,40 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { SearchAfterAndBulkCreateReturnType } from '../search_after_bulk_create'; + +/** + * Given two timers this will take the max of each and add them to each other and return that addition. + * Max(timer_array_1) + Max(timer_array_2) + * @param existingTimers String array of existing timers + * @param newTimers String array of new timers. + * @returns String array of the new maximum between the two timers + */ +export const calculateAdditiveMax = (existingTimers: string[], newTimers: string[]): string[] => { + const numericNewTimerMax = Math.max(0, ...newTimers.map((time) => +time)); + const numericExistingTimerMax = Math.max(0, ...existingTimers.map((time) => +time)); + return [String(numericNewTimerMax + numericExistingTimerMax)]; +}; + +/** + * Combines two results together and returns the results combined + * @param currentResult The current result to combine with a newResult + * @param newResult The new result to combine + */ +export const combineResults = ( + currentResult: SearchAfterAndBulkCreateReturnType, + newResult: SearchAfterAndBulkCreateReturnType +): SearchAfterAndBulkCreateReturnType => ({ + success: currentResult.success === false ? false : newResult.success, + bulkCreateTimes: calculateAdditiveMax(currentResult.bulkCreateTimes, newResult.bulkCreateTimes), + searchAfterTimes: calculateAdditiveMax( + currentResult.searchAfterTimes, + newResult.searchAfterTimes + ), + lastLookBackDate: newResult.lastLookBackDate, + createdSignalsCount: currentResult.createdSignalsCount + newResult.createdSignalsCount, + errors: [...new Set([...currentResult.errors, ...newResult.errors])], +}); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts index b101bc5754764..23aa786558a99 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/signals/types.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ +import { DslQuery, Filter } from 'src/plugins/data/common'; import { Status } from '../../../../common/detection_engine/schemas/common/schemas'; import { RulesSchema } from '../../../../common/detection_engine/schemas/response/rules_schema'; import { AlertType, AlertTypeState, AlertExecutorOptions } from '../../../../../alerts/server'; @@ -166,3 +167,15 @@ export interface RuleAlertAttributes extends AlertAttributes { } export type BulkResponseErrorAggregation = Record; + +/** + * TODO: Remove this if/when the return filter has its own type exposed + */ +export interface QueryFilter { + bool: { + must: DslQuery[]; + filter: Filter[]; + should: unknown[]; + must_not: Filter[]; + }; +} diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/types.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/types.ts index cbe756064b72b..b0554adcc46b0 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/types.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/types.ts @@ -38,6 +38,12 @@ import { TimestampOverrideOrUndefined, Type, } from '../../../common/detection_engine/schemas/common/schemas'; +import { + ThreatIndexOrUndefined, + ThreatQueryOrUndefined, + ThreatMappingOrUndefined, +} from '../../../common/detection_engine/schemas/types/threat_mapping'; + import { LegacyCallAPIOptions } from '../../../../../../src/core/server'; import { Filter } from '../../../../../../src/plugins/data/server'; import { ListArrayOrUndefined } from '../../../common/detection_engine/schemas/types'; @@ -73,6 +79,10 @@ export interface RuleTypeParams { severityMapping: SeverityMappingOrUndefined; threat: ThreatOrUndefined; threshold: ThresholdOrUndefined; + threatFilters: PartialFilter[] | undefined; + threatIndex: ThreatIndexOrUndefined; + threatQuery: ThreatQueryOrUndefined; + threatMapping: ThreatMappingOrUndefined; timestampOverride: TimestampOverrideOrUndefined; to: To; type: Type; From 53142d8bfb4a538db265fb2470a2371c24f9d13a Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Mon, 21 Sep 2020 11:46:05 +0200 Subject: [PATCH 22/27] Make vis_default_editor a proper plugin (#77869) --- docs/developer/plugin-list.asciidoc | 6 ++++++ src/plugins/charts/kibana.json | 2 +- src/plugins/input_control_vis/kibana.json | 2 +- src/plugins/region_map/kibana.json | 4 ++-- src/plugins/tile_map/kibana.json | 4 ++-- src/plugins/vis_default_editor/kibana.json | 6 ++++++ src/plugins/vis_default_editor/public/index.ts | 8 ++++++++ src/plugins/vis_type_markdown/kibana.json | 2 +- src/plugins/vis_type_metric/kibana.json | 2 +- src/plugins/vis_type_table/kibana.json | 4 ++-- src/plugins/vis_type_tagcloud/kibana.json | 2 +- src/plugins/vis_type_timelion/kibana.json | 2 +- src/plugins/vis_type_vega/kibana.json | 2 +- src/plugins/vis_type_vislib/kibana.json | 2 +- src/plugins/visualize/kibana.json | 3 ++- 15 files changed, 36 insertions(+), 15 deletions(-) create mode 100644 src/plugins/vis_default_editor/kibana.json diff --git a/docs/developer/plugin-list.asciidoc b/docs/developer/plugin-list.asciidoc index 501a3698d07d9..b426621fed296 100644 --- a/docs/developer/plugin-list.asciidoc +++ b/docs/developer/plugin-list.asciidoc @@ -181,6 +181,12 @@ which also contains the timelion APIs and backend, look at the vis_type_timelion To integrate with the telemetry services for usage collection of your feature, there are 2 steps: +|{kib-repo}blob/{branch}/src/plugins/vis_default_editor/README.md[visDefaultEditor] +|The default editor is used in most primary visualizations, e.x. Area, Data table, Pie, etc. +It acts as a container for a particular visualization and options tabs. Contains the default "Data" tab in public/components/sidebar/data_tab.tsx. +The plugin exposes the static DefaultEditorController class to consume. + + |{kib-repo}blob/{branch}/src/plugins/vis_type_markdown/README.md[visTypeMarkdown] |The markdown visualization that can be used to place text panels on dashboards. diff --git a/src/plugins/charts/kibana.json b/src/plugins/charts/kibana.json index c4643d541c31c..8967e931a0b10 100644 --- a/src/plugins/charts/kibana.json +++ b/src/plugins/charts/kibana.json @@ -3,5 +3,5 @@ "version": "kibana", "server": true, "ui": true, - "requiredBundles": ["kibanaUtils", "kibanaReact", "data"] + "requiredBundles": ["visDefaultEditor"] } diff --git a/src/plugins/input_control_vis/kibana.json b/src/plugins/input_control_vis/kibana.json index 6928eb19d02e1..c6d1157f5ff25 100644 --- a/src/plugins/input_control_vis/kibana.json +++ b/src/plugins/input_control_vis/kibana.json @@ -4,6 +4,6 @@ "kibanaVersion": "kibana", "server": true, "ui": true, - "requiredPlugins": ["data", "expressions", "visualizations"], + "requiredPlugins": ["data", "expressions", "visualizations", "visDefaultEditor"], "requiredBundles": ["kibanaReact"] } diff --git a/src/plugins/region_map/kibana.json b/src/plugins/region_map/kibana.json index 6e1980c327dc0..bd5517d2a5bf7 100644 --- a/src/plugins/region_map/kibana.json +++ b/src/plugins/region_map/kibana.json @@ -14,7 +14,7 @@ ], "requiredBundles": [ "kibanaUtils", - "kibanaReact", - "charts" + "charts", + "visDefaultEditor" ] } diff --git a/src/plugins/tile_map/kibana.json b/src/plugins/tile_map/kibana.json index 9881a2dd72308..acf1424229c8e 100644 --- a/src/plugins/tile_map/kibana.json +++ b/src/plugins/tile_map/kibana.json @@ -14,7 +14,7 @@ ], "requiredBundles": [ "kibanaUtils", - "kibanaReact", - "charts" + "charts", + "visDefaultEditor" ] } diff --git a/src/plugins/vis_default_editor/kibana.json b/src/plugins/vis_default_editor/kibana.json new file mode 100644 index 0000000000000..35ad0a3a8be9a --- /dev/null +++ b/src/plugins/vis_default_editor/kibana.json @@ -0,0 +1,6 @@ +{ + "id": "visDefaultEditor", + "version": "kibana", + "ui": true, + "requiredBundles": ["kibanaUtils", "kibanaReact", "data"] +} diff --git a/src/plugins/vis_default_editor/public/index.ts b/src/plugins/vis_default_editor/public/index.ts index 156d50f451b57..d7eb5eda7bdfe 100644 --- a/src/plugins/vis_default_editor/public/index.ts +++ b/src/plugins/vis_default_editor/public/index.ts @@ -24,3 +24,11 @@ export * from './editor_size'; export * from './vis_options_props'; export * from './utils'; export { ISchemas, Schemas, Schema } from './schemas'; + +/** dummy plugin, we just want visDefaultEditor to have its own bundle */ +export function plugin() { + return new (class VisDefaultEditor { + setup() {} + start() {} + })(); +} diff --git a/src/plugins/vis_type_markdown/kibana.json b/src/plugins/vis_type_markdown/kibana.json index 4196bd7e85707..5723fdefe1e4c 100644 --- a/src/plugins/vis_type_markdown/kibana.json +++ b/src/plugins/vis_type_markdown/kibana.json @@ -4,5 +4,5 @@ "ui": true, "server": true, "requiredPlugins": ["expressions", "visualizations"], - "requiredBundles": ["kibanaUtils", "kibanaReact", "data", "charts", "visualizations", "expressions"] + "requiredBundles": ["kibanaUtils", "kibanaReact", "charts", "visualizations", "expressions", "visDefaultEditor"] } diff --git a/src/plugins/vis_type_metric/kibana.json b/src/plugins/vis_type_metric/kibana.json index 26ca09e22f26e..68ab0bf617e30 100644 --- a/src/plugins/vis_type_metric/kibana.json +++ b/src/plugins/vis_type_metric/kibana.json @@ -5,5 +5,5 @@ "server": true, "ui": true, "requiredPlugins": ["data", "visualizations", "charts", "expressions"], - "requiredBundles": ["kibanaUtils", "kibanaReact"] + "requiredBundles": ["kibanaUtils", "visDefaultEditor"] } diff --git a/src/plugins/vis_type_table/kibana.json b/src/plugins/vis_type_table/kibana.json index b3c1556429077..b8a68909dc857 100644 --- a/src/plugins/vis_type_table/kibana.json +++ b/src/plugins/vis_type_table/kibana.json @@ -11,8 +11,8 @@ ], "requiredBundles": [ "kibanaUtils", - "kibanaReact", "share", - "charts" + "charts", + "visDefaultEditor" ] } diff --git a/src/plugins/vis_type_tagcloud/kibana.json b/src/plugins/vis_type_tagcloud/kibana.json index 86f72ebfa936d..441a899c3ab53 100644 --- a/src/plugins/vis_type_tagcloud/kibana.json +++ b/src/plugins/vis_type_tagcloud/kibana.json @@ -4,5 +4,5 @@ "ui": true, "server": true, "requiredPlugins": ["data", "expressions", "visualizations", "charts"], - "requiredBundles": ["kibanaUtils", "kibanaReact"] + "requiredBundles": ["kibanaUtils", "kibanaReact", "visDefaultEditor"] } diff --git a/src/plugins/vis_type_timelion/kibana.json b/src/plugins/vis_type_timelion/kibana.json index 6946568f5d809..dda33c9fb6f2e 100644 --- a/src/plugins/vis_type_timelion/kibana.json +++ b/src/plugins/vis_type_timelion/kibana.json @@ -5,5 +5,5 @@ "server": true, "ui": true, "requiredPlugins": ["visualizations", "data", "expressions"], - "requiredBundles": ["kibanaUtils", "kibanaReact"] + "requiredBundles": ["kibanaUtils", "kibanaReact", "visDefaultEditor"] } diff --git a/src/plugins/vis_type_vega/kibana.json b/src/plugins/vis_type_vega/kibana.json index 7ba5f23f10564..231e252fe2c8a 100644 --- a/src/plugins/vis_type_vega/kibana.json +++ b/src/plugins/vis_type_vega/kibana.json @@ -4,5 +4,5 @@ "server": true, "ui": true, "requiredPlugins": ["data", "visualizations", "mapsLegacy", "expressions", "inspector"], - "requiredBundles": ["kibanaUtils", "kibanaReact"] + "requiredBundles": ["kibanaUtils", "kibanaReact", "visDefaultEditor"] } diff --git a/src/plugins/vis_type_vislib/kibana.json b/src/plugins/vis_type_vislib/kibana.json index 7cba2e0d6a6b4..720abff16b7c7 100644 --- a/src/plugins/vis_type_vislib/kibana.json +++ b/src/plugins/vis_type_vislib/kibana.json @@ -5,5 +5,5 @@ "ui": true, "requiredPlugins": ["charts", "data", "expressions", "visualizations", "kibanaLegacy"], "optionalPlugins": ["visTypeXy"], - "requiredBundles": ["kibanaUtils", "kibanaReact"] + "requiredBundles": ["kibanaUtils", "visDefaultEditor"] } diff --git a/src/plugins/visualize/kibana.json b/src/plugins/visualize/kibana.json index 318a1562efdfe..2e40d29158600 100644 --- a/src/plugins/visualize/kibana.json +++ b/src/plugins/visualize/kibana.json @@ -18,6 +18,7 @@ "kibanaUtils", "kibanaReact", "home", - "discover" + "discover", + "visDefaultEditor" ] } From ec1f4e5803b006990bd3dcfeece065afce275c69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Marcondes?= <55978943+cauemarcondes@users.noreply.github.com> Date: Mon, 21 Sep 2020 10:47:06 +0100 Subject: [PATCH 23/27] [APM] Anomaly detection Settings page: Link directly to ML jobs management to filter for the select environment (#77875) Co-authored-by: Elastic Machine --- .../components/app/Settings/anomaly_detection/jobs_list.tsx | 2 +- .../shared/Links/MachineLearningLinks/MLLink.test.tsx | 2 +- .../components/shared/Links/MachineLearningLinks/MLLink.tsx | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/x-pack/plugins/apm/public/components/app/Settings/anomaly_detection/jobs_list.tsx b/x-pack/plugins/apm/public/components/app/Settings/anomaly_detection/jobs_list.tsx index 05ea585108c69..6e95df0dddd84 100644 --- a/x-pack/plugins/apm/public/components/app/Settings/anomaly_detection/jobs_list.tsx +++ b/x-pack/plugins/apm/public/components/app/Settings/anomaly_detection/jobs_list.tsx @@ -97,7 +97,7 @@ export function JobsList({ data, status, onAddEnvironments }: Props) { defaultMessage="To add anomaly detection to a new environment, create a machine learning job. Existing machine learning jobs can be managed in {mlJobsLink}." values={{ mlJobsLink: ( - + {i18n.translate( 'xpack.apm.settings.anomalyDetection.jobList.mlDescriptionText.mlJobsLinkText', { diff --git a/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.test.tsx b/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.test.tsx index da345e35c10b1..4eb886509805d 100644 --- a/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.test.tsx +++ b/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.test.tsx @@ -21,6 +21,6 @@ test('MLLink produces the correct URL', async () => { ); expect(href).toMatchInlineSnapshot( - `"/basepath/app/ml#/some/path?_g=(ml:(jobIds:!(something)),refreshInterval:(pause:!t,value:0),time:(from:now-5h,to:now-2h))"` + `"/basepath/app/ml#/some/path?_g=(ml:(jobIds:!(something)),refreshInterval:(pause:!t,value:0),time:(from:now-5h,to:now-2h))&mlManagement=(groupIds:!(apm))"` ); }); diff --git a/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.tsx b/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.tsx index d8ec212515c6f..93ee9e0db4864 100644 --- a/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.tsx +++ b/x-pack/plugins/apm/public/components/shared/Links/MachineLearningLinks/MLLink.tsx @@ -39,7 +39,9 @@ export function MLLink({ children, path = '', query = {}, external }: Props) { const href = url.format({ pathname: core.http.basePath.prepend('/app/ml'), - hash: `${path}?_g=${rison.encode(risonQuery as RisonValue)}`, + hash: `${path}?_g=${rison.encode( + risonQuery as RisonValue + )}&mlManagement=${rison.encode({ groupIds: ['apm'] })}`, }); return ( From ce7922be954d843cead3d9c41dfed2e1ba8f3e85 Mon Sep 17 00:00:00 2001 From: Dario Gieselaar Date: Mon, 21 Sep 2020 12:18:45 +0200 Subject: [PATCH 24/27] [APM] Use model_plot as a signal for anomaly scores (#77756) --- .../lib/service_map/get_service_anomalies.ts | 49 +- .../__snapshots__/service_maps.snap | 478 ++++++++++++++++++ .../trial/tests/service_maps/service_maps.ts | 38 +- .../trial/tests/services/top_services.ts | 10 +- 4 files changed, 547 insertions(+), 28 deletions(-) diff --git a/x-pack/plugins/apm/server/lib/service_map/get_service_anomalies.ts b/x-pack/plugins/apm/server/lib/service_map/get_service_anomalies.ts index da087b4c1911a..44c0c96142096 100644 --- a/x-pack/plugins/apm/server/lib/service_map/get_service_anomalies.ts +++ b/x-pack/plugins/apm/server/lib/service_map/get_service_anomalies.ts @@ -60,11 +60,16 @@ export async function getServiceAnomalies({ query: { bool: { filter: [ - { term: { result_type: 'record' } }, + { terms: { result_type: ['model_plot', 'record'] } }, { terms: { job_id: mlJobIds } }, { range: { - timestamp: { gte: start, lte: end, format: 'epoch_millis' }, + timestamp: { + // fetch data for at least 30 minutes + gte: Math.min(end - 30 * 60 * 1000, start), + lte: end, + format: 'epoch_millis', + }, }, }, { @@ -83,7 +88,13 @@ export async function getServiceAnomalies({ top_score: { top_hits: { sort: { record_score: 'desc' }, - _source: { includes: ['actual', 'job_id', 'by_field_value'] }, + _source: [ + 'actual', + 'job_id', + 'by_field_value', + 'result_type', + 'record_score', + ], size: 1, }, }, @@ -113,10 +124,19 @@ interface ServiceAnomaliesAggResponse { hits: Array<{ sort: [number]; _source: { - actual: [number]; job_id: string; by_field_value: string; - }; + } & ( + | { + record_score: number | null; + result_type: 'record'; + actual: number[]; + } + | { + result_type: 'model_plot'; + actual?: number; + } + ); }>; }; }; @@ -127,12 +147,15 @@ interface ServiceAnomaliesAggResponse { function transformResponseToServiceAnomalies( response: ServiceAnomaliesAggResponse -): Record { +) { const serviceAnomaliesMap = ( response.aggregations?.services.buckets ?? [] - ).reduce( + ).reduce>( (statsByServiceName, { key: serviceName, top_score: topScoreAgg }) => { - const anomalyScore = topScoreAgg.hits.hits[0]?.sort?.[0]; + const mlResult = topScoreAgg.hits.hits[0]._source; + + const anomalyScore = + (mlResult.result_type === 'record' && mlResult.record_score) || 0; const severity = getSeverity(anomalyScore); const healthStatus = getServiceHealthStatus({ severity }); @@ -140,16 +163,20 @@ function transformResponseToServiceAnomalies( return { ...statsByServiceName, [serviceName]: { - transactionType: topScoreAgg.hits.hits[0]?._source?.by_field_value, + transactionType: mlResult.by_field_value, + jobId: mlResult.job_id, + actualValue: + mlResult.result_type === 'record' + ? mlResult.actual[0] + : mlResult.actual, anomalyScore, - actualValue: topScoreAgg.hits.hits[0]?._source?.actual?.[0], - jobId: topScoreAgg.hits.hits[0]?._source?.job_id, healthStatus, }, }; }, {} ); + return serviceAnomaliesMap; } diff --git a/x-pack/test/apm_api_integration/trial/tests/service_maps/__snapshots__/service_maps.snap b/x-pack/test/apm_api_integration/trial/tests/service_maps/__snapshots__/service_maps.snap index 199a49dce8f9e..bf42c08438156 100644 --- a/x-pack/test/apm_api_integration/trial/tests/service_maps/__snapshots__/service_maps.snap +++ b/x-pack/test/apm_api_integration/trial/tests/service_maps/__snapshots__/service_maps.snap @@ -116,6 +116,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -143,6 +150,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -170,6 +184,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -182,6 +203,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">postgresql", "targetData": Object { @@ -203,6 +231,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-go", "targetData": Object { @@ -230,6 +265,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-python", "targetData": Object { @@ -237,6 +279,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -250,6 +299,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-ruby", "targetData": Object { @@ -276,6 +332,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">postgresql", "targetData": Object { @@ -297,6 +360,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-go", "targetData": Object { @@ -324,6 +394,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-python", "targetData": Object { @@ -331,6 +408,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -343,6 +427,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">elasticsearch", "targetData": Object { @@ -363,6 +454,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">postgresql", "targetData": Object { @@ -383,6 +481,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">redis", "targetData": Object { @@ -404,6 +509,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-go", "targetData": Object { @@ -431,6 +543,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-java", "targetData": Object { @@ -438,6 +557,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -451,6 +577,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-node", "targetData": Object { @@ -458,6 +591,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -545,6 +685,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -571,6 +718,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -597,6 +751,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -609,6 +770,12 @@ Array [ "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-go", "targetData": Object { @@ -635,6 +802,12 @@ Array [ "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-java", "targetData": Object { @@ -642,6 +815,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -654,6 +834,12 @@ Array [ "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-node", "targetData": Object { @@ -661,6 +847,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -673,6 +866,12 @@ Array [ "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-python", "targetData": Object { @@ -680,6 +879,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -692,6 +898,12 @@ Array [ "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-ruby", "targetData": Object { @@ -715,6 +927,12 @@ Array [ "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, }, Object { @@ -723,6 +941,13 @@ Array [ "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, Object { @@ -731,6 +956,13 @@ Array [ "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, Object { @@ -739,6 +971,13 @@ Array [ "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, Object { @@ -863,6 +1102,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -890,6 +1136,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -917,6 +1170,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -929,6 +1189,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">postgresql", "targetData": Object { @@ -950,6 +1217,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-go", "targetData": Object { @@ -977,6 +1251,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-python", "targetData": Object { @@ -984,6 +1265,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -997,6 +1285,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-ruby", "targetData": Object { @@ -1023,6 +1318,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">postgresql", "targetData": Object { @@ -1044,6 +1346,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-go", "targetData": Object { @@ -1071,6 +1380,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-python", "targetData": Object { @@ -1078,6 +1394,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1090,6 +1413,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">elasticsearch", "targetData": Object { @@ -1110,6 +1440,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">postgresql", "targetData": Object { @@ -1130,6 +1467,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": ">redis", "targetData": Object { @@ -1151,6 +1495,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-go", "targetData": Object { @@ -1178,6 +1529,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-java", "targetData": Object { @@ -1185,6 +1543,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1198,6 +1563,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, "target": "opbeans-node", "targetData": Object { @@ -1205,6 +1577,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1292,6 +1671,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1318,6 +1704,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1344,6 +1737,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1356,6 +1756,12 @@ Object { "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-go", "targetData": Object { @@ -1382,6 +1788,12 @@ Object { "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-java", "targetData": Object { @@ -1389,6 +1801,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1401,6 +1820,12 @@ Object { "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-node", "targetData": Object { @@ -1408,6 +1833,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1420,6 +1852,12 @@ Object { "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-python", "targetData": Object { @@ -1427,6 +1865,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, }, @@ -1439,6 +1884,12 @@ Object { "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, "target": "opbeans-ruby", "targetData": Object { @@ -1462,6 +1913,12 @@ Object { "id": "opbeans-rum", "service.environment": "testing", "service.name": "opbeans-rum", + "serviceAnomalyStats": Object { + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, }, }, Object { @@ -1470,6 +1927,13 @@ Object { "id": "opbeans-python", "service.environment": "production", "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, Object { @@ -1478,6 +1942,13 @@ Object { "id": "opbeans-java", "service.environment": "production", "service.name": "opbeans-java", + "serviceAnomalyStats": Object { + "actualValue": 14901.319999999996, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, Object { @@ -1486,6 +1957,13 @@ Object { "id": "opbeans-node", "service.environment": "testing", "service.name": "opbeans-node", + "serviceAnomalyStats": Object { + "actualValue": 32226.649122807008, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-testing-d457-high_mean_transaction_duration", + "transactionType": "request", + }, }, }, Object { diff --git a/x-pack/test/apm_api_integration/trial/tests/service_maps/service_maps.ts b/x-pack/test/apm_api_integration/trial/tests/service_maps/service_maps.ts index 11b5ca71e64e7..2e4a859f08cca 100644 --- a/x-pack/test/apm_api_integration/trial/tests/service_maps/service_maps.ts +++ b/x-pack/test/apm_api_integration/trial/tests/service_maps/service_maps.ts @@ -153,33 +153,47 @@ export default function serviceMapsApiTests({ getService }: FtrProviderContext) (el: { data: { serviceAnomalyStats?: {} } }) => !isEmpty(el.data.serviceAnomalyStats) ); - expectSnapshot(dataWithAnomalies.length).toMatchInline(`2`); + expectSnapshot(dataWithAnomalies.length).toMatchInline(`6`); expectSnapshot(dataWithAnomalies.slice(0, 3)).toMatchInline(` Array [ Object { "data": Object { - "agent.name": "go", - "id": "opbeans-go", + "agent.name": "rum-js", + "id": "opbeans-rum", "service.environment": "testing", - "service.name": "opbeans-go", + "service.name": "opbeans-rum", "serviceAnomalyStats": Object { - "actualValue": 3933482.1764705875, - "anomalyScore": 2.6101702751482714, + "anomalyScore": 0, "healthStatus": "healthy", - "jobId": "apm-testing-d457-high_mean_transaction_duration", + "jobId": "apm-environment_not_defined-7ed6-high_mean_transaction_duration", + "transactionType": "page-load", + }, + }, + }, + Object { + "data": Object { + "agent.name": "python", + "id": "opbeans-python", + "service.environment": "production", + "service.name": "opbeans-python", + "serviceAnomalyStats": Object { + "actualValue": 66218.08333333333, + "anomalyScore": 0, + "healthStatus": "healthy", + "jobId": "apm-production-229a-high_mean_transaction_duration", "transactionType": "request", }, }, }, Object { "data": Object { - "agent.name": "ruby", - "id": "opbeans-ruby", + "agent.name": "java", + "id": "opbeans-java", "service.environment": "production", - "service.name": "opbeans-ruby", + "service.name": "opbeans-java", "serviceAnomalyStats": Object { - "actualValue": 684716.5813953485, - "anomalyScore": 0.20498907719907372, + "actualValue": 14901.319999999996, + "anomalyScore": 0, "healthStatus": "healthy", "jobId": "apm-production-229a-high_mean_transaction_duration", "transactionType": "request", diff --git a/x-pack/test/apm_api_integration/trial/tests/services/top_services.ts b/x-pack/test/apm_api_integration/trial/tests/services/top_services.ts index c93816dfb48b9..ab127aaac8490 100644 --- a/x-pack/test/apm_api_integration/trial/tests/services/top_services.ts +++ b/x-pack/test/apm_api_integration/trial/tests/services/top_services.ts @@ -59,13 +59,13 @@ export default function ApiTest({ getService }: FtrProviderContext) { expectSnapshot(healthStatuses).toMatchInline(` Array [ - undefined, - undefined, "healthy", "healthy", - undefined, - undefined, - undefined, + "healthy", + "healthy", + "healthy", + "healthy", + "healthy", ] `); }); From 01ef387ade101d4725fd165d258d79f2484193f0 Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens Date: Mon, 21 Sep 2020 12:25:39 +0200 Subject: [PATCH 25/27] Round #1 of removing frozen phase UI and server code (#77877) Co-authored-by: Elastic Machine --- .../__jest__/components/edit_policy.test.tsx | 110 --------- .../common/types/policies.ts | 23 +- .../public/application/constants/policy.ts | 12 - .../data_tier_allocation.tsx | 32 --- .../default_allocation_warning.tsx | 13 - .../no_node_attributes_warning.tsx | 9 - .../edit_policy/components/min_age_input.tsx | 5 - .../sections/edit_policy/edit_policy.tsx | 16 +- .../edit_policy/phases/frozen_phase.tsx | 224 ------------------ .../sections/edit_policy/phases/index.ts | 1 - .../services/policies/frozen_phase.ts | 156 ------------ .../policies/policy_serialization.test.ts | 96 +------- .../services/policies/policy_serialization.ts | 11 - .../services/policies/policy_validation.ts | 6 - .../api/policies/register_create_route.ts | 19 -- 15 files changed, 3 insertions(+), 730 deletions(-) delete mode 100644 x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/frozen_phase.tsx delete mode 100644 x-pack/plugins/index_lifecycle_management/public/application/services/policies/frozen_phase.ts diff --git a/x-pack/plugins/index_lifecycle_management/__jest__/components/edit_policy.test.tsx b/x-pack/plugins/index_lifecycle_management/__jest__/components/edit_policy.test.tsx index b0df3723ca77e..f195228775772 100644 --- a/x-pack/plugins/index_lifecycle_management/__jest__/components/edit_policy.test.tsx +++ b/x-pack/plugins/index_lifecycle_management/__jest__/components/edit_policy.test.tsx @@ -611,116 +611,6 @@ describe('edit policy', () => { expect(findTestSubject(rendered, 'defaultAllocationWarning').exists()).toBeTruthy(); }); }); - describe('frozen phase', () => { - beforeEach(() => { - server.respondImmediately = true; - http.setupNodeListResponse(); - httpRequestsMockHelpers.setNodesDetailsResponse('attribute:true', [ - { nodeId: 'testNodeId', stats: { name: 'testNodeName', host: 'testHost' } }, - ]); - }); - test('should allow 0 for phase timing', async () => { - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - setPhaseAfter(rendered, 'frozen', 0); - save(rendered); - expectedErrorMessages(rendered, []); - }); - test('should show positive number required error when trying to save cold phase with -1 for after', async () => { - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - setPhaseAfter(rendered, 'frozen', -1); - save(rendered); - expectedErrorMessages(rendered, [positiveNumberRequiredMessage]); - }); - test('should show spinner for node attributes input when loading', async () => { - server.respondImmediately = false; - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - expect(rendered.find('.euiLoadingSpinner').exists()).toBeTruthy(); - expect(rendered.find('.euiCallOut--warning').exists()).toBeFalsy(); - expect(getNodeAttributeSelect(rendered, 'frozen').exists()).toBeFalsy(); - }); - test('should show warning instead of node attributes input when none exist', async () => { - http.setupNodeListResponse({ - nodesByAttributes: {}, - nodesByRoles: { data: ['node1'] }, - }); - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - expect(rendered.find('.euiLoadingSpinner').exists()).toBeFalsy(); - openNodeAttributesSection(rendered, 'frozen'); - expect(findTestSubject(rendered, 'noNodeAttributesWarning').exists()).toBeTruthy(); - expect(getNodeAttributeSelect(rendered, 'frozen').exists()).toBeFalsy(); - }); - test('should show node attributes input when attributes exist', async () => { - http.setupNodeListResponse(); - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - expect(rendered.find('.euiLoadingSpinner').exists()).toBeFalsy(); - openNodeAttributesSection(rendered, 'frozen'); - expect(findTestSubject(rendered, 'noNodeAttributesWarning').exists()).toBeFalsy(); - const nodeAttributesSelect = getNodeAttributeSelect(rendered, 'frozen'); - expect(nodeAttributesSelect.exists()).toBeTruthy(); - expect(nodeAttributesSelect.find('option').length).toBe(2); - }); - test('should show view node attributes link when attribute selected and show flyout when clicked', async () => { - http.setupNodeListResponse(); - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - expect(rendered.find('.euiLoadingSpinner').exists()).toBeFalsy(); - openNodeAttributesSection(rendered, 'frozen'); - expect(findTestSubject(rendered, 'noNodeAttributesWarning').exists()).toBeFalsy(); - const nodeAttributesSelect = getNodeAttributeSelect(rendered, 'frozen'); - expect(nodeAttributesSelect.exists()).toBeTruthy(); - expect(findTestSubject(rendered, 'frozen-viewNodeDetailsFlyoutButton').exists()).toBeFalsy(); - expect(nodeAttributesSelect.find('option').length).toBe(2); - nodeAttributesSelect.simulate('change', { target: { value: 'attribute:true' } }); - rendered.update(); - const flyoutButton = findTestSubject(rendered, 'frozen-viewNodeDetailsFlyoutButton'); - expect(flyoutButton.exists()).toBeTruthy(); - await act(async () => { - await flyoutButton.simulate('click'); - }); - rendered.update(); - expect(rendered.find('.euiFlyout').exists()).toBeTruthy(); - }); - test('should show positive number required error when trying to save with -1 for index priority', async () => { - http.setupNodeListResponse(); - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - setPhaseAfter(rendered, 'frozen', 1); - setPhaseIndexPriority(rendered, 'frozen', -1); - save(rendered); - expectedErrorMessages(rendered, [positiveNumberRequiredMessage]); - }); - test('should show default allocation warning when no node roles are found', async () => { - http.setupNodeListResponse({ - nodesByAttributes: {}, - nodesByRoles: {}, - }); - const rendered = mountWithIntl(component); - noRollover(rendered); - setPolicyName(rendered, 'mypolicy'); - await activatePhase(rendered, 'frozen'); - expect(rendered.find('.euiLoadingSpinner').exists()).toBeFalsy(); - expect(findTestSubject(rendered, 'defaultAllocationWarning').exists()).toBeTruthy(); - }); - }); describe('delete phase', () => { test('should allow 0 for phase timing', async () => { const rendered = mountWithIntl(component); diff --git a/x-pack/plugins/index_lifecycle_management/common/types/policies.ts b/x-pack/plugins/index_lifecycle_management/common/types/policies.ts index 8f913dd884dfe..a0ee82cbbe385 100644 --- a/x-pack/plugins/index_lifecycle_management/common/types/policies.ts +++ b/x-pack/plugins/index_lifecycle_management/common/types/policies.ts @@ -6,7 +6,7 @@ import { Index as IndexInterface } from '../../../index_management/common/types'; -export type PhaseWithAllocation = 'warm' | 'cold' | 'frozen'; +export type PhaseWithAllocation = 'warm' | 'cold'; export interface SerializedPolicy { name: string; @@ -17,7 +17,6 @@ export interface Phases { hot?: SerializedHotPhase; warm?: SerializedWarmPhase; cold?: SerializedColdPhase; - frozen?: SerializedFrozenPhase; delete?: SerializedDeletePhase; } @@ -79,17 +78,6 @@ export interface SerializedColdPhase extends SerializedPhase { }; } -export interface SerializedFrozenPhase extends SerializedPhase { - actions: { - freeze?: {}; - allocate?: AllocateAction; - set_priority?: { - priority: number | null; - }; - migrate?: { enabled: boolean }; - }; -} - export interface SerializedDeletePhase extends SerializedPhase { actions: { wait_for_snapshot?: { @@ -123,7 +111,6 @@ export interface Policy { hot: HotPhase; warm: WarmPhase; cold: ColdPhase; - frozen: FrozenPhase; delete: DeletePhase; }; } @@ -196,14 +183,6 @@ export interface ColdPhase freezeEnabled: boolean; } -export interface FrozenPhase - extends CommonPhaseSettings, - PhaseWithMinAge, - PhaseWithAllocationAction, - PhaseWithIndexPriority { - freezeEnabled: boolean; -} - export interface DeletePhase extends CommonPhaseSettings, PhaseWithMinAge { waitForSnapshotPolicy: string; } diff --git a/x-pack/plugins/index_lifecycle_management/public/application/constants/policy.ts b/x-pack/plugins/index_lifecycle_management/public/application/constants/policy.ts index 6d4c57d23138d..8a0a5d9fbdfad 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/constants/policy.ts +++ b/x-pack/plugins/index_lifecycle_management/public/application/constants/policy.ts @@ -10,7 +10,6 @@ import { DeletePhase, HotPhase, WarmPhase, - FrozenPhase, } from '../../../common/types'; export const defaultNewHotPhase: HotPhase = { @@ -52,17 +51,6 @@ export const defaultNewColdPhase: ColdPhase = { dataTierAllocationType: 'default', }; -export const defaultNewFrozenPhase: FrozenPhase = { - phaseEnabled: false, - selectedMinimumAge: '0', - selectedMinimumAgeUnits: 'd', - selectedNodeAttrs: '', - selectedReplicaCount: '', - freezeEnabled: false, - phaseIndexPriority: '0', - dataTierAllocationType: 'default', -}; - export const defaultNewDeletePhase: DeletePhase = { phaseEnabled: false, selectedMinimumAge: '0', diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/data_tier_allocation.tsx b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/data_tier_allocation.tsx index 3ae60a5a3d622..4ec488f95c94d 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/data_tier_allocation.tsx +++ b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/data_tier_allocation.tsx @@ -86,38 +86,6 @@ const i18nTexts = { ), }, }, - frozen: { - default: { - input: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.common.dataTierAllocation.frozen.defaultOption.input', - { defaultMessage: 'Use frozen nodes (recommended)' } - ), - helpText: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.common.dataTierAllocation.frozen.defaultOption.helpText', - { defaultMessage: 'Move data to nodes in the frozen tier.' } - ), - }, - none: { - inputDisplay: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.common.dataTierAllocation.frozen.noneOption.input', - { defaultMessage: 'Off' } - ), - helpText: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.common.dataTierAllocation.frozen.noneOption.helpText', - { defaultMessage: 'Do not move data in the frozen phase.' } - ), - }, - custom: { - inputDisplay: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.common.dataTierAllocation.frozen.customOption.input', - { defaultMessage: 'Custom' } - ), - helpText: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.common.dataTierAllocation.frozen.customOption.helpText', - { defaultMessage: 'Move data based on node attributes.' } - ), - }, - }, }, }; diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/default_allocation_warning.tsx b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/default_allocation_warning.tsx index a7ebc0d2e4a24..5aba411b6fe53 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/default_allocation_warning.tsx +++ b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/default_allocation_warning.tsx @@ -37,19 +37,6 @@ const i18nTexts = { } ), }, - frozen: { - title: i18n.translate( - 'xpack.indexLifecycleMgmt.frozenPhase.dataTier.defaultAllocationNotAvailableTitle', - { defaultMessage: 'No nodes assigned to the frozen tier' } - ), - body: i18n.translate( - 'xpack.indexLifecycleMgmt.frozenPhase.dataTier.defaultAllocationNotAvailableBody', - { - defaultMessage: - 'Assign at least one node to the frozen tier to use role-based allocation. The policy will fail to complete allocation if there are no frozen nodes.', - } - ), - }, }; interface Props { diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/no_node_attributes_warning.tsx b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/no_node_attributes_warning.tsx index 1ba82623c2b94..ceccc51f95c1f 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/no_node_attributes_warning.tsx +++ b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/data_tier_allocation/no_node_attributes_warning.tsx @@ -32,15 +32,6 @@ const i18nTexts = { } ), }, - frozen: { - body: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.frozen.nodeAttributesMissingDescription', - { - defaultMessage: - 'Define custom node attributes in elasticsearch.yml to use attribute-based allocation. Frozen nodes will be used instead.', - } - ), - }, }; export const NoNodeAttributesWarning: FunctionComponent<{ phase: PhaseWithAllocation }> = ({ diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/min_age_input.tsx b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/min_age_input.tsx index d7edbac3d1c54..2e70ef255524d 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/min_age_input.tsx +++ b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/min_age_input.tsx @@ -27,11 +27,6 @@ function getTimingLabelForPhase(phase: keyof Phases) { defaultMessage: 'Timing for cold phase', }); - case 'frozen': - return i18n.translate('xpack.indexLifecycleMgmt.editPolicy.phaseFrozen.minimumAgeLabel', { - defaultMessage: 'Timing for frozen phase', - }); - case 'delete': return i18n.translate('xpack.indexLifecycleMgmt.editPolicy.phaseDelete.minimumAgeLabel', { defaultMessage: 'Timing for delete phase', diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/edit_policy.tsx b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/edit_policy.tsx index 85529ef0c9a5b..67e8e42cf6fd1 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/edit_policy.tsx +++ b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/edit_policy.tsx @@ -43,7 +43,7 @@ import { } from '../../services/policies/policy_serialization'; import { ErrableFormRow, LearnMoreLink, PolicyJsonFlyout } from './components'; -import { ColdPhase, DeletePhase, FrozenPhase, HotPhase, WarmPhase } from './phases'; +import { ColdPhase, DeletePhase, HotPhase, WarmPhase } from './phases'; export interface Props { policies: PolicyFromES[]; @@ -144,10 +144,6 @@ export const EditPolicy: React.FunctionComponent = ({ (key: string, value: any) => setPhaseData('cold', key, value), [setPhaseData] ); - const setFrozenPhaseData = useCallback( - (key: string, value: any) => setPhaseData('frozen', key, value), - [setPhaseData] - ); const setDeletePhaseData = useCallback( (key: string, value: any) => setPhaseData('delete', key, value), [setPhaseData] @@ -328,16 +324,6 @@ export const EditPolicy: React.FunctionComponent = ({ - 0} - setPhaseData={setFrozenPhaseData} - phaseData={policy.phases.frozen} - hotPhaseRolloverEnabled={policy.phases.hot.rolloverEnabled} - /> - - - 0} diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/frozen_phase.tsx b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/frozen_phase.tsx deleted file mode 100644 index 6a849cc2c3f1f..0000000000000 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/frozen_phase.tsx +++ /dev/null @@ -1,224 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import React, { FunctionComponent, Fragment } from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; -import { i18n } from '@kbn/i18n'; - -import { EuiFieldNumber, EuiDescribedFormGroup, EuiSwitch, EuiTextColor } from '@elastic/eui'; - -import { FrozenPhase as FrozenPhaseInterface, Phases } from '../../../../../common/types'; -import { PhaseValidationErrors } from '../../../services/policies/policy_validation'; - -import { - LearnMoreLink, - ActiveBadge, - PhaseErrorMessage, - OptionalLabel, - ErrableFormRow, - MinAgeInput, - SetPriorityInput, - DescribedFormField, -} from '../components'; -import { DataTierAllocationField } from './shared'; - -const i18nTexts = { - freezeLabel: i18n.translate('xpack.indexLifecycleMgmt.frozenPhase.freezeIndexLabel', { - defaultMessage: 'Freeze index', - }), - dataTierAllocation: { - description: i18n.translate('xpack.indexLifecycleMgmt.frozenPhase.dataTier.description', { - defaultMessage: - 'Move data to data nodes optimized for infrequent, read-only access. Store frozen data on the least-expensive hardware.', - }), - }, -}; - -const frozenProperty: keyof Phases = 'frozen'; -const phaseProperty = (propertyName: keyof FrozenPhaseInterface) => propertyName; - -interface Props { - setPhaseData: (key: keyof FrozenPhaseInterface & string, value: string | boolean) => void; - phaseData: FrozenPhaseInterface; - isShowingErrors: boolean; - errors?: PhaseValidationErrors; - hotPhaseRolloverEnabled: boolean; -} -export const FrozenPhase: FunctionComponent = ({ - setPhaseData, - phaseData, - errors, - isShowingErrors, - hotPhaseRolloverEnabled, -}) => { - return ( -
- <> - {/* Section title group; containing min age */} - -

- -

{' '} - {phaseData.phaseEnabled && !isShowingErrors ? : null} - -
- } - titleSize="s" - description={ - -

- -

- - } - id={`${frozenProperty}-${phaseProperty('phaseEnabled')}`} - checked={phaseData.phaseEnabled} - onChange={(e) => { - setPhaseData(phaseProperty('phaseEnabled'), e.target.checked); - }} - aria-controls="frozenPhaseContent" - /> -
- } - fullWidth - > - {phaseData.phaseEnabled ? ( - - errors={errors} - phaseData={phaseData} - phase={frozenProperty} - isShowingErrors={isShowingErrors} - setPhaseData={setPhaseData} - rolloverEnabled={hotPhaseRolloverEnabled} - /> - ) : null} - - {phaseData.phaseEnabled ? ( - - {/* Data tier allocation section */} - - - {/* Replicas section */} - - {i18n.translate('xpack.indexLifecycleMgmt.frozenPhase.replicasTitle', { - defaultMessage: 'Replicas', - })} -

- } - description={i18n.translate( - 'xpack.indexLifecycleMgmt.frozenPhase.numberOfReplicasDescription', - { - defaultMessage: - 'Set the number of replicas. Remains the same as the previous phase by default.', - } - )} - switchProps={{ - label: i18n.translate( - 'xpack.indexLifecycleMgmt.editPolicy.frozenPhase.numberOfReplicas.switchLabel', - { defaultMessage: 'Set replicas' } - ), - initialValue: Boolean(phaseData.selectedReplicaCount), - onChange: (v) => { - if (!v) { - setPhaseData('selectedReplicaCount', ''); - } - }, - }} - fullWidth - > - - - - - } - isShowingErrors={isShowingErrors} - errors={errors?.selectedReplicaCount} - > - { - setPhaseData(phaseProperty('selectedReplicaCount'), e.target.value); - }} - min={0} - /> - - - - -

- } - description={ - - {' '} - - - } - fullWidth - titleSize="xs" - > - { - setPhaseData(phaseProperty('freezeEnabled'), e.target.checked); - }} - label={i18nTexts.freezeLabel} - aria-label={i18nTexts.freezeLabel} - /> - - - errors={errors} - phaseData={phaseData} - phase={frozenProperty} - isShowingErrors={isShowingErrors} - setPhaseData={setPhaseData} - /> - - ) : null} - - - ); -}; diff --git a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/index.ts b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/index.ts index d59f2ff6413fd..8d1ace5950497 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/index.ts +++ b/x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/phases/index.ts @@ -7,5 +7,4 @@ export { HotPhase } from './hot_phase'; export { WarmPhase } from './warm_phase'; export { ColdPhase } from './cold_phase'; -export { FrozenPhase } from './frozen_phase'; export { DeletePhase } from './delete_phase'; diff --git a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/frozen_phase.ts b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/frozen_phase.ts deleted file mode 100644 index 28d18b8f89263..0000000000000 --- a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/frozen_phase.ts +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { isEmpty } from 'lodash'; -import { serializedPhaseInitialization } from '../../constants'; -import { AllocateAction, FrozenPhase, SerializedFrozenPhase } from '../../../../common/types'; -import { isNumber, splitSizeAndUnits } from './policy_serialization'; -import { - numberRequiredMessage, - PhaseValidationErrors, - positiveNumberRequiredMessage, -} from './policy_validation'; -import { determineDataTierAllocationType } from '../../lib'; -import { serializePhaseWithAllocation } from './shared'; - -const frozenPhaseInitialization: FrozenPhase = { - phaseEnabled: false, - selectedMinimumAge: '0', - selectedMinimumAgeUnits: 'd', - selectedNodeAttrs: '', - selectedReplicaCount: '', - freezeEnabled: false, - phaseIndexPriority: '', - dataTierAllocationType: 'default', -}; - -export const frozenPhaseFromES = (phaseSerialized?: SerializedFrozenPhase): FrozenPhase => { - const phase = { ...frozenPhaseInitialization }; - if (phaseSerialized === undefined || phaseSerialized === null) { - return phase; - } - - phase.phaseEnabled = true; - - if (phaseSerialized.actions.allocate) { - phase.dataTierAllocationType = determineDataTierAllocationType( - phaseSerialized.actions.allocate - ); - } - - if (phaseSerialized.min_age) { - const { size: minAge, units: minAgeUnits } = splitSizeAndUnits(phaseSerialized.min_age); - phase.selectedMinimumAge = minAge; - phase.selectedMinimumAgeUnits = minAgeUnits; - } - - if (phaseSerialized.actions) { - const actions = phaseSerialized.actions; - if (actions.allocate) { - const allocate = actions.allocate; - if (allocate.require) { - Object.entries(allocate.require).forEach((entry) => { - phase.selectedNodeAttrs = entry.join(':'); - }); - if (allocate.number_of_replicas) { - phase.selectedReplicaCount = allocate.number_of_replicas.toString(); - } - } - } - - if (actions.freeze) { - phase.freezeEnabled = true; - } - - if (actions.set_priority) { - phase.phaseIndexPriority = actions.set_priority.priority - ? actions.set_priority.priority.toString() - : ''; - } - } - - return phase; -}; - -export const frozenPhaseToES = ( - phase: FrozenPhase, - originalPhase?: SerializedFrozenPhase -): SerializedFrozenPhase => { - if (!originalPhase) { - originalPhase = { ...serializedPhaseInitialization }; - } - - const esPhase = { ...originalPhase }; - - if (isNumber(phase.selectedMinimumAge)) { - esPhase.min_age = `${phase.selectedMinimumAge}${phase.selectedMinimumAgeUnits}`; - } - - esPhase.actions = serializePhaseWithAllocation(phase, esPhase.actions); - - if (isNumber(phase.selectedReplicaCount)) { - esPhase.actions.allocate = esPhase.actions.allocate || ({} as AllocateAction); - esPhase.actions.allocate.number_of_replicas = parseInt(phase.selectedReplicaCount, 10); - } else { - if (esPhase.actions.allocate) { - delete esPhase.actions.allocate.number_of_replicas; - } - } - - if ( - esPhase.actions.allocate && - !esPhase.actions.allocate.require && - !isNumber(esPhase.actions.allocate.number_of_replicas) && - isEmpty(esPhase.actions.allocate.include) && - isEmpty(esPhase.actions.allocate.exclude) - ) { - // remove allocate action if it does not define require or number of nodes - // and both include and exclude are empty objects (ES will fail to parse if we don't) - delete esPhase.actions.allocate; - } - - if (phase.freezeEnabled) { - esPhase.actions.freeze = {}; - } else { - delete esPhase.actions.freeze; - } - - if (isNumber(phase.phaseIndexPriority)) { - esPhase.actions.set_priority = { - priority: parseInt(phase.phaseIndexPriority, 10), - }; - } else { - delete esPhase.actions.set_priority; - } - - return esPhase; -}; - -export const validateFrozenPhase = (phase: FrozenPhase): PhaseValidationErrors => { - if (!phase.phaseEnabled) { - return {}; - } - - const phaseErrors = {} as PhaseValidationErrors; - - // index priority is optional, but if it's set, it needs to be a positive number - if (phase.phaseIndexPriority) { - if (!isNumber(phase.phaseIndexPriority)) { - phaseErrors.phaseIndexPriority = [numberRequiredMessage]; - } else if (parseInt(phase.phaseIndexPriority, 10) < 0) { - phaseErrors.phaseIndexPriority = [positiveNumberRequiredMessage]; - } - } - - // min age needs to be a positive number - if (!isNumber(phase.selectedMinimumAge)) { - phaseErrors.selectedMinimumAge = [numberRequiredMessage]; - } else if (parseInt(phase.selectedMinimumAge, 10) < 0) { - phaseErrors.selectedMinimumAge = [positiveNumberRequiredMessage]; - } - - return { ...phaseErrors }; -}; diff --git a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.test.ts b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.test.ts index 0e7257d437ee7..753ffb111cf13 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.test.ts +++ b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.test.ts @@ -8,7 +8,6 @@ import { serializePolicy } from './policy_serialization'; import { defaultNewColdPhase, defaultNewDeletePhase, - defaultNewFrozenPhase, defaultNewHotPhase, defaultNewWarmPhase, } from '../../constants'; @@ -35,12 +34,6 @@ describe('Policy serialization', () => { selectedNodeAttrs: 'another:thing', phaseEnabled: true, }, - frozen: { - ...defaultNewFrozenPhase, - dataTierAllocationType: 'default', - selectedNodeAttrs: 'another:thing', - phaseEnabled: true, - }, delete: { ...defaultNewDeletePhase }, }, }, @@ -54,9 +47,6 @@ describe('Policy serialization', () => { cold: { actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, }, - frozen: { - actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, - }, }, } ) @@ -89,14 +79,6 @@ describe('Policy serialization', () => { }, min_age: '0d', }, - frozen: { - actions: { - set_priority: { - priority: 0, - }, - }, - min_age: '0d', - }, }, }); }); @@ -120,12 +102,6 @@ describe('Policy serialization', () => { selectedNodeAttrs: 'another:thing', phaseEnabled: true, }, - frozen: { - ...defaultNewFrozenPhase, - dataTierAllocationType: 'custom', - selectedNodeAttrs: 'another:thing', - phaseEnabled: true, - }, delete: { ...defaultNewDeletePhase }, }, }, @@ -151,15 +127,6 @@ describe('Policy serialization', () => { }, }, }, - frozen: { - actions: { - allocate: { - include: { keep: 'this' }, - exclude: { keep: 'this' }, - require: { something: 'here' }, - }, - }, - }, }, } ) @@ -206,21 +173,6 @@ describe('Policy serialization', () => { }, min_age: '0d', }, - frozen: { - actions: { - allocate: { - include: { keep: 'this' }, - exclude: { keep: 'this' }, - require: { - another: 'thing', - }, - }, - set_priority: { - priority: 0, - }, - }, - min_age: '0d', - }, }, }); }); @@ -244,12 +196,6 @@ describe('Policy serialization', () => { selectedNodeAttrs: '', phaseEnabled: true, }, - frozen: { - ...defaultNewFrozenPhase, - dataTierAllocationType: 'custom', - selectedNodeAttrs: '', - phaseEnabled: true, - }, delete: { ...defaultNewDeletePhase }, }, }, @@ -263,9 +209,6 @@ describe('Policy serialization', () => { cold: { actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, }, - frozen: { - actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, - }, }, } ) @@ -301,15 +244,6 @@ describe('Policy serialization', () => { }, min_age: '0d', }, - frozen: { - actions: { - allocate: { include: {}, exclude: {}, require: { something: 'here' } }, - set_priority: { - priority: 0, - }, - }, - min_age: '0d', - }, }, }); }); @@ -333,12 +267,6 @@ describe('Policy serialization', () => { selectedNodeAttrs: 'ignore:this', phaseEnabled: true, }, - frozen: { - ...defaultNewFrozenPhase, - dataTierAllocationType: 'none', - selectedNodeAttrs: 'ignore:this', - phaseEnabled: true, - }, delete: { ...defaultNewDeletePhase }, }, }, @@ -352,9 +280,6 @@ describe('Policy serialization', () => { cold: { actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, }, - frozen: { - actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, - }, }, } ) @@ -394,17 +319,6 @@ describe('Policy serialization', () => { }, min_age: '0d', }, - frozen: { - actions: { - migrate: { - enabled: false, - }, - set_priority: { - priority: 0, - }, - }, - min_age: '0d', - }, }, }); }); @@ -420,9 +334,6 @@ describe('Policy serialization', () => { cold: { actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, }, - frozen: { - actions: { allocate: { include: {}, exclude: {}, require: { something: 'here' } } }, - }, }, }; @@ -444,12 +355,7 @@ describe('Policy serialization', () => { selectedNodeAttrs: 'ignore:this', phaseEnabled: true, }, - frozen: { - ...defaultNewFrozenPhase, - dataTierAllocationType: 'none' as DataTierAllocationType, - selectedNodeAttrs: 'ignore:this', - phaseEnabled: true, - }, + delete: { ...defaultNewDeletePhase }, }, }; diff --git a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.ts b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.ts index 31c063aba2c4a..996b2e8c371b8 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.ts +++ b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_serialization.ts @@ -11,14 +11,12 @@ import { defaultNewDeletePhase, defaultNewHotPhase, defaultNewWarmPhase, - defaultNewFrozenPhase, serializedPhaseInitialization, } from '../../constants'; import { hotPhaseFromES, hotPhaseToES } from './hot_phase'; import { warmPhaseFromES, warmPhaseToES } from './warm_phase'; import { coldPhaseFromES, coldPhaseToES } from './cold_phase'; -import { frozenPhaseFromES, frozenPhaseToES } from './frozen_phase'; import { deletePhaseFromES, deletePhaseToES } from './delete_phase'; export const splitSizeAndUnits = (field: string): { size: string; units: string } => { @@ -55,7 +53,6 @@ export const initializeNewPolicy = (newPolicyName: string = ''): Policy => { hot: { ...defaultNewHotPhase }, warm: { ...defaultNewWarmPhase }, cold: { ...defaultNewColdPhase }, - frozen: { ...defaultNewFrozenPhase }, delete: { ...defaultNewDeletePhase }, }, }; @@ -73,7 +70,6 @@ export const deserializePolicy = (policy: PolicyFromES): Policy => { hot: hotPhaseFromES(phases.hot), warm: warmPhaseFromES(phases.warm), cold: coldPhaseFromES(phases.cold), - frozen: frozenPhaseFromES(phases.frozen), delete: deletePhaseFromES(phases.delete), }, }; @@ -98,13 +94,6 @@ export const serializePolicy = ( serializedPolicy.phases.cold = coldPhaseToES(policy.phases.cold, originalEsPolicy.phases.cold); } - if (policy.phases.frozen.phaseEnabled) { - serializedPolicy.phases.frozen = frozenPhaseToES( - policy.phases.frozen, - originalEsPolicy.phases.frozen - ); - } - if (policy.phases.delete.phaseEnabled) { serializedPolicy.phases.delete = deletePhaseToES( policy.phases.delete, diff --git a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_validation.ts b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_validation.ts index f5197e6ffec99..ffd3c01ab001d 100644 --- a/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_validation.ts +++ b/x-pack/plugins/index_lifecycle_management/public/application/services/policies/policy_validation.ts @@ -8,7 +8,6 @@ import { i18n } from '@kbn/i18n'; import { ColdPhase, DeletePhase, - FrozenPhase, HotPhase, Policy, PolicyFromES, @@ -18,7 +17,6 @@ import { validateHotPhase } from './hot_phase'; import { validateWarmPhase } from './warm_phase'; import { validateColdPhase } from './cold_phase'; import { validateDeletePhase } from './delete_phase'; -import { validateFrozenPhase } from './frozen_phase'; export const propertyof = (propertyName: keyof T & string) => propertyName; @@ -117,7 +115,6 @@ export interface ValidationErrors { hot: PhaseValidationErrors; warm: PhaseValidationErrors; cold: PhaseValidationErrors; - frozen: PhaseValidationErrors; delete: PhaseValidationErrors; policyName: string[]; } @@ -158,14 +155,12 @@ export const validatePolicy = ( const hotPhaseErrors = validateHotPhase(policy.phases.hot); const warmPhaseErrors = validateWarmPhase(policy.phases.warm); const coldPhaseErrors = validateColdPhase(policy.phases.cold); - const frozenPhaseErrors = validateFrozenPhase(policy.phases.frozen); const deletePhaseErrors = validateDeletePhase(policy.phases.delete); const isValid = policyNameErrors.length === 0 && Object.keys(hotPhaseErrors).length === 0 && Object.keys(warmPhaseErrors).length === 0 && Object.keys(coldPhaseErrors).length === 0 && - Object.keys(frozenPhaseErrors).length === 0 && Object.keys(deletePhaseErrors).length === 0; return [ isValid, @@ -174,7 +169,6 @@ export const validatePolicy = ( hot: hotPhaseErrors, warm: warmPhaseErrors, cold: coldPhaseErrors, - frozen: frozenPhaseErrors, delete: deletePhaseErrors, }, ]; diff --git a/x-pack/plugins/index_lifecycle_management/server/routes/api/policies/register_create_route.ts b/x-pack/plugins/index_lifecycle_management/server/routes/api/policies/register_create_route.ts index 5ef38a0e46dc3..8234686a542a9 100644 --- a/x-pack/plugins/index_lifecycle_management/server/routes/api/policies/register_create_route.ts +++ b/x-pack/plugins/index_lifecycle_management/server/routes/api/policies/register_create_route.ts @@ -111,24 +111,6 @@ const coldPhaseSchema = schema.maybe( }) ); -const frozenPhaseSchema = schema.maybe( - schema.object({ - min_age: minAgeSchema, - actions: schema.object({ - migrate: migrateSchema, - set_priority: setPrioritySchema, - unfollow: unfollowSchema, - allocate: allocateSchema, - freeze: schema.maybe(schema.object({})), // Freeze has no options - searchable_snapshot: schema.maybe( - schema.object({ - snapshot_repository: schema.string(), - }) - ), - }), - }) -); - const deletePhaseSchema = schema.maybe( schema.object({ min_age: minAgeSchema, @@ -154,7 +136,6 @@ const bodySchema = schema.object({ hot: hotPhaseSchema, warm: warmPhaseSchema, cold: coldPhaseSchema, - frozen: frozenPhaseSchema, delete: deletePhaseSchema, }), }); From 9647330a5d6235dd9c11d46c1c367875614b76b6 Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens Date: Mon, 21 Sep 2020 12:28:18 +0200 Subject: [PATCH 26/27] [Console] Fix date format autocomplete suggestions (#76881) * fix date format autocomplete suggestions * add missing completion and sort alphabetically Co-authored-by: Elastic Machine --- .../lib/spec_definitions/js/mappings.ts | 109 ++++++++++-------- 1 file changed, 58 insertions(+), 51 deletions(-) diff --git a/src/plugins/console/server/lib/spec_definitions/js/mappings.ts b/src/plugins/console/server/lib/spec_definitions/js/mappings.ts index aa09278d07553..e6b3d4d5fcb6e 100644 --- a/src/plugins/console/server/lib/spec_definitions/js/mappings.ts +++ b/src/plugins/console/server/lib/spec_definitions/js/mappings.ts @@ -157,58 +157,65 @@ export const mappings = (specService: SpecDefinitionsService) => { // dates format: { + // outer array required to for an array of string values __one_of: [ - ...[ - 'date', - 'date_time', - 'date_time_no_millis', - 'ordinal_date', - 'ordinal_date_time', - 'ordinal_date_time_no_millis', - 'time', - 'time_no_millis', - 't_time', - 't_time_no_millis', - 'week_date', - 'week_date_time', - 'week_date_time_no_millis', - ].map(function (s) { - return ['basic_' + s, 'strict_' + s]; - }), - ...[ - 'date', - 'date_hour', - 'date_hour_minute', - 'date_hour_minute_second', - 'date_hour_minute_second_fraction', - 'date_hour_minute_second_millis', - 'date_optional_time', - 'date_time', - 'date_time_no_millis', - 'hour', - 'hour_minute', - 'hour_minute_second', - 'hour_minute_second_fraction', - 'hour_minute_second_millis', - 'ordinal_date', - 'ordinal_date_time', - 'ordinal_date_time_no_millis', - 'time', - 'time_no_millis', - 't_time', - 't_time_no_millis', - 'week_date', - 'week_date_time', - 'weekDateTimeNoMillis', - 'week_year', - 'weekyearWeek', - 'weekyearWeekDay', - 'year', - 'year_month', - 'year_month_day', - 'epoch_millis', - 'epoch_second', - ], + [ + ...[ + 'date', + 'date_time', + 'date_time_no_millis', + 'ordinal_date', + 'ordinal_date_time', + 'ordinal_date_time_no_millis', + 'time', + 'time_no_millis', + 't_time', + 't_time_no_millis', + 'week_date', + 'week_date_time', + 'week_date_time_no_millis', + ].flatMap(function (s) { + return ['basic_' + s, 'strict_' + s]; + }), + ...[ + 'date', + 'date_hour', + 'date_hour_minute', + 'date_hour_minute_second', + 'date_hour_minute_second_fraction', + 'date_hour_minute_second_millis', + 'date_optional_time', + 'date_time', + 'date_time_no_millis', + 'hour', + 'hour_minute', + 'hour_minute_second', + 'hour_minute_second_fraction', + 'hour_minute_second_millis', + 'ordinal_date', + 'ordinal_date_time', + 'ordinal_date_time_no_millis', + 'time', + 'time_no_millis', + 't_time', + 't_time_no_millis', + 'week_date', + 'week_date_time', + 'weekDateTimeNoMillis', + 'weekyear', + 'strict_weekyear', + 'weekyear_week', + 'strict_weekyear_week', + 'strict_date_optional_time_nanos', + 'weekyear_week_day', + 'strict_weekyear_week_day', + 'year', + 'year_month', + 'year_month_day', + 'epoch_millis', + 'epoch_second', + ], + ].sort(), ], }, From 8347fd0bf3df69e5af96a86dc26d08be0a55bf5f Mon Sep 17 00:00:00 2001 From: Dario Gieselaar Date: Mon, 21 Sep 2020 12:32:05 +0200 Subject: [PATCH 27/27] [APM] Script static checkers + precommit (#77900) Co-authored-by: Elastic Machine --- .../aggregate-latency-metrics/index.ts | 2 +- x-pack/plugins/apm/scripts/eslint.js | 37 ++++++++++ x-pack/plugins/apm/scripts/jest.js | 25 +++++++ x-pack/plugins/apm/scripts/precommit.js | 69 +++++++++++++++++++ .../scripts/shared/create-or-update-index.ts | 2 +- .../scripts/upload-telemetry-data/index.ts | 2 +- 6 files changed, 134 insertions(+), 3 deletions(-) create mode 100644 x-pack/plugins/apm/scripts/eslint.js create mode 100644 x-pack/plugins/apm/scripts/jest.js create mode 100644 x-pack/plugins/apm/scripts/precommit.js diff --git a/x-pack/plugins/apm/scripts/aggregate-latency-metrics/index.ts b/x-pack/plugins/apm/scripts/aggregate-latency-metrics/index.ts index ef85112918712..c1cb903a0bb3e 100644 --- a/x-pack/plugins/apm/scripts/aggregate-latency-metrics/index.ts +++ b/x-pack/plugins/apm/scripts/aggregate-latency-metrics/index.ts @@ -389,7 +389,7 @@ export async function aggregateLatencyMetrics() { return; } - const response = await destClient?.bulk({ + const response = await (destClient as any)?.bulk({ refresh: 'wait_for', body: flatten( docs.map((doc) => [ diff --git a/x-pack/plugins/apm/scripts/eslint.js b/x-pack/plugins/apm/scripts/eslint.js new file mode 100644 index 0000000000000..f221fc6dab23d --- /dev/null +++ b/x-pack/plugins/apm/scripts/eslint.js @@ -0,0 +1,37 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +//eslint-disable-next-line import/no-extraneous-dependencies +const { CLIEngine } = require('eslint'); +const { resolve } = require('path'); +//eslint-disable-next-line import/no-extraneous-dependencies +const { argv } = require('yargs'); + +async function run() { + const fix = !!argv.fix; + + const engine = new CLIEngine({ + fix, + cache: true, + extensions: ['.js', '.jsx', '.ts', '.tsx'], + }); + + const report = engine.executeOnFiles(resolve(__dirname, '..')); + + const formatter = engine.getFormatter(); + + return formatter(report.results); +} + +run() + .then((text) => { + //eslint-disable-next-line no-console + console.log(text); + process.exit(0); + }) + .catch((err) => { + console.error(err); + process.exit(1); + }); diff --git a/x-pack/plugins/apm/scripts/jest.js b/x-pack/plugins/apm/scripts/jest.js new file mode 100644 index 0000000000000..5c29dd9126937 --- /dev/null +++ b/x-pack/plugins/apm/scripts/jest.js @@ -0,0 +1,25 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +// eslint-disable-next-line import/no-extraneous-dependencies +require('@babel/register')({ + extensions: ['.js'], + plugins: [], + presets: [ + '@babel/typescript', + ['@babel/preset-env', { targets: { node: 'current' } }], + ], +}); + +// eslint-disable-next-line import/no-extraneous-dependencies +const { run } = require('jest'); + +process.env.NODE_ENV = process.env.NODE_ENV || 'test'; + +const config = require('../jest.config.js'); + +const argv = [...process.argv.slice(2), '--config', JSON.stringify(config)]; + +run(argv); diff --git a/x-pack/plugins/apm/scripts/precommit.js b/x-pack/plugins/apm/scripts/precommit.js new file mode 100644 index 0000000000000..87da3c1db8b28 --- /dev/null +++ b/x-pack/plugins/apm/scripts/precommit.js @@ -0,0 +1,69 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +/* eslint-disable no-console*/ +/* eslint-disable import/no-extraneous-dependencies*/ + +const execa = require('execa'); +const Listr = require('listr'); +const { resolve } = require('path'); + +const cwd = resolve(__dirname, '../../../..'); + +const execaOpts = { cwd, stderr: 'pipe' }; + +const tasks = new Listr( + [ + { + title: 'Jest', + task: () => + execa( + 'node', + [ + resolve(__dirname, './jest.js'), + '--reporters', + resolve(__dirname, './node_modules/jest-silent-reporter'), + '--collect-coverage', + 'false', + ], + execaOpts + ), + }, + { + title: 'Typescript', + task: () => + execa('node', [resolve(__dirname, 'optimize-tsconfig.js')]).then(() => + execa( + require.resolve('typescript/bin/tsc'), + [ + '--project', + resolve(__dirname, '../../../tsconfig.json'), + '--pretty', + '--noEmit', + '--skipLibCheck', + ], + execaOpts + ) + ), + }, + { + title: 'Lint', + task: () => execa('node', [resolve(__dirname, 'eslint.js')], execaOpts), + }, + ], + { exitOnError: false, concurrent: true } +); + +tasks.run().catch((error) => { + // from src/dev/typescript/exec_in_projects.ts + process.exitCode = 1; + + const errors = error.errors || [error]; + + for (const e of errors) { + process.stderr.write(e.stdout); + } +}); diff --git a/x-pack/plugins/apm/scripts/shared/create-or-update-index.ts b/x-pack/plugins/apm/scripts/shared/create-or-update-index.ts index 01fa5b0509bcd..83de83ace07b3 100644 --- a/x-pack/plugins/apm/scripts/shared/create-or-update-index.ts +++ b/x-pack/plugins/apm/scripts/shared/create-or-update-index.ts @@ -39,7 +39,7 @@ export async function createOrUpdateIndex({ await client.indices.exists({ index: indexName, }) - ).body as boolean; + ).body as unknown; if (!indexExists) { await client.indices.create({ diff --git a/x-pack/plugins/apm/scripts/upload-telemetry-data/index.ts b/x-pack/plugins/apm/scripts/upload-telemetry-data/index.ts index fd628f77eb519..ca47540b04d82 100644 --- a/x-pack/plugins/apm/scripts/upload-telemetry-data/index.ts +++ b/x-pack/plugins/apm/scripts/upload-telemetry-data/index.ts @@ -83,7 +83,7 @@ async function uploadData() { apmAgentConfigurationIndex: '.apm-agent-configuration', }, search: (body) => { - return client.search(body as any).then((res) => res.body); + return client.search(body as any).then((res) => res.body as any); }, indicesStats: (body) => { return client.indices.stats(body as any).then((res) => res.body);