From cae0c964ac9f351e6c6960ce0c7412a6a79ac236 Mon Sep 17 00:00:00 2001 From: Paul Tavares <56442535+paul-tavares@users.noreply.github.com> Date: Thu, 16 Apr 2020 16:17:00 -0400 Subject: [PATCH 01/59] [Endpoint] Host Details Policy Response Panel (#63518) * Added link to Policy status that updates URL and show details panel * Custom Styled Flyout Panel sub-header component to display sub-headers * Move Middleware spy utils under `store/` for re-use * Changed `appStoreFactory()` to accept optional `additionalMiddleware` prop * `waitForAction` middleware test utility now return Action on Promise resolve * Updated PageView component to remove bottom margin --- .../endpoint/mocks/app_context_render.tsx | 10 +- .../endpoint/store/hosts/selectors.ts | 10 +- .../applications/endpoint/store/index.ts | 13 +- .../endpoint/store/policy_list/index.test.ts | 7 +- .../store/policy_list/test_mock_utils.ts | 115 +-------------- .../applications/endpoint/store/test_utils.ts | 126 ++++++++++++++++ .../public/applications/endpoint/types.ts | 1 + .../__snapshots__/page_view.test.tsx.snap | 8 + .../endpoint/view/components/page_view.tsx | 1 + .../details/components/flyout_sub_header.tsx | 72 +++++++++ .../{details.tsx => details/host_details.tsx} | 137 +++++++----------- .../endpoint/view/hosts/details/index.tsx | 134 +++++++++++++++++ .../view/hosts/details/policy_response.tsx | 10 ++ .../applications/endpoint/view/hosts/hooks.ts | 18 +++ .../endpoint/view/hosts/index.test.tsx | 65 ++++++++- .../apps/endpoint/host_list.ts | 2 +- 16 files changed, 516 insertions(+), 213 deletions(-) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/store/test_utils.ts create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/components/flyout_sub_header.tsx rename x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/{details.tsx => details/host_details.tsx} (53%) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/index.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/policy_response.tsx diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx index 7cb1031ef9a09a..639b1f7252d7f2 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx @@ -12,6 +12,7 @@ import { coreMock } from '../../../../../../../src/core/public/mocks'; import { EndpointPluginStartDependencies } from '../../../plugin'; import { depsStartMock } from './dependencies_start_mock'; import { AppRootProvider } from '../view/app_root_provider'; +import { createSpyMiddleware, MiddlewareActionSpyHelper } from '../store/test_utils'; type UiRender = (ui: React.ReactElement, options?: RenderOptions) => RenderResult; @@ -23,6 +24,7 @@ export interface AppContextTestRender { history: ReturnType; coreStart: ReturnType; depsStart: EndpointPluginStartDependencies; + middlewareSpy: MiddlewareActionSpyHelper; /** * A wrapper around `AppRootContext` component. Uses the mocked modules as input to the * `AppRootContext` @@ -45,7 +47,12 @@ export const createAppRootMockRenderer = (): AppContextTestRender => { const history = createMemoryHistory(); const coreStart = coreMock.createStart({ basePath: '/mock' }); const depsStart = depsStartMock(); - const store = appStoreFactory({ coreStart, depsStart }); + const middlewareSpy = createSpyMiddleware(); + const store = appStoreFactory({ + coreStart, + depsStart, + additionalMiddleware: [middlewareSpy.actionSpyMiddleware], + }); const AppWrapper: React.FunctionComponent<{ children: React.ReactElement }> = ({ children }) => ( {children} @@ -64,6 +71,7 @@ export const createAppRootMockRenderer = (): AppContextTestRender => { history, coreStart, depsStart, + middlewareSpy, AppWrapper, render, }; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/selectors.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/selectors.ts index 35bf5d06168789..03cdba85058008 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/selectors.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/selectors.ts @@ -37,7 +37,7 @@ export const uiQueryParams: ( // Removes the `?` from the beginning of query string if it exists const query = querystring.parse(location.search.slice(1)); - const keys: Array = ['selected_host']; + const keys: Array = ['selected_host', 'show']; for (const key of keys) { const value = query[key]; @@ -58,3 +58,11 @@ export const hasSelectedHost: (state: Immutable) => boolean = cre return selectedHost !== undefined; } ); + +/** What policy details panel view to show */ +export const showView: (state: HostListState) => 'policy_response' | 'details' = createSelector( + uiQueryParams, + searchParams => { + return searchParams.show === 'policy_response' ? 'policy_response' : 'details'; + } +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/index.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/index.ts index efa79b163d3b64..60758f0f5fea08 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/index.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/index.ts @@ -19,7 +19,7 @@ import { alertMiddlewareFactory } from './alerts/middleware'; import { hostMiddlewareFactory } from './hosts'; import { policyListMiddlewareFactory } from './policy_list'; import { policyDetailsMiddlewareFactory } from './policy_details'; -import { GlobalState } from '../types'; +import { GlobalState, MiddlewareFactory } from '../types'; import { AppAction } from './action'; import { EndpointPluginStartDependencies } from '../../../plugin'; @@ -62,10 +62,15 @@ export const appStoreFactory: (middlewareDeps?: { * Give middleware access to plugin start dependencies. */ depsStart: EndpointPluginStartDependencies; + /** + * Any additional Redux Middlewares + * (should only be used for testing - example: to inject the action spy middleware) + */ + additionalMiddleware?: Array>; }) => Store = middlewareDeps => { let middleware; if (middlewareDeps) { - const { coreStart, depsStart } = middlewareDeps; + const { coreStart, depsStart, additionalMiddleware = [] } = middlewareDeps; middleware = composeWithReduxDevTools( applyMiddleware( substateMiddlewareFactory( @@ -83,7 +88,9 @@ export const appStoreFactory: (middlewareDeps?: { substateMiddlewareFactory( globalState => globalState.alertList, alertMiddlewareFactory(coreStart, depsStart) - ) + ), + // Additional Middleware should go last + ...additionalMiddleware ) ); } else { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts index 97a2b65fb65f81..69b11fb3c1f0ea 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts @@ -12,13 +12,10 @@ import { policyListMiddlewareFactory } from './middleware'; import { coreMock } from '../../../../../../../../src/core/public/mocks'; import { isOnPolicyListPage, selectIsLoading, urlSearchParams } from './selectors'; import { DepsStartMock, depsStartMock } from '../../mocks'; -import { - createSpyMiddleware, - MiddlewareActionSpyHelper, - setPolicyListApiMockImplementation, -} from './test_mock_utils'; +import { setPolicyListApiMockImplementation } from './test_mock_utils'; import { INGEST_API_DATASOURCES } from './services/ingest'; import { Immutable } from '../../../../../common/types'; +import { createSpyMiddleware, MiddlewareActionSpyHelper } from '../test_utils'; describe('policy list store concerns', () => { let fakeCoreStart: ReturnType; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/test_mock_utils.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/test_mock_utils.ts index 20d5a637182d2b..a1788b8f8021dd 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/test_mock_utils.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/test_mock_utils.ts @@ -5,10 +5,9 @@ */ import { HttpStart } from 'kibana/public'; -import { Dispatch } from 'redux'; import { INGEST_API_DATASOURCES } from './services/ingest'; import { EndpointDocGenerator } from '../../../../../common/generate_data'; -import { AppAction, GetPolicyListResponse, GlobalState, MiddlewareFactory } from '../../types'; +import { GetPolicyListResponse } from '../../types'; const generator = new EndpointDocGenerator('policy-list'); @@ -37,115 +36,3 @@ export const setPolicyListApiMockImplementation = ( return Promise.reject(new Error(`MOCK: unknown policy list api: ${path}`)); }); }; - -/** - * Utilities for testing Redux middleware - */ -export interface MiddlewareActionSpyHelper { - /** - * Returns a promise that is fulfilled when the given action is dispatched or a timeout occurs. - * The use of this method instead of a `sleep()` type of delay should avoid test case instability - * especially when run in a CI environment. - * - * @param actionType - */ - waitForAction: (actionType: AppAction['type']) => Promise; - /** - * A property holding the information around the calls that were processed by the internal - * `actionSpyMiddlware`. This property holds the information typically found in Jets's mocked - * function `mock` property - [see here for more information](https://jestjs.io/docs/en/mock-functions#mock-property) - * - * **Note**: this property will only be set **after* the `actionSpyMiddlware` has been - * initialized (ex. via `createStore()`. Attempting to reference this property before that time - * will throw an error. - * Also - do not hold on to references to this property value if `jest.clearAllMocks()` or - * `jest.resetAllMocks()` is called between usages of the value. - */ - dispatchSpy: jest.Mock>['mock']; - /** - * Redux middleware that enables spying on the action that are dispatched through the store - */ - actionSpyMiddleware: ReturnType>; -} - -/** - * Creates a new instance of middleware action helpers - * Note: in most cases (testing concern specific middleware) this function should be given - * the state type definition, else, the global state will be used. - * - * @example - * // Use in Policy List middleware testing - * const middlewareSpyUtils = createSpyMiddleware(); - * store = createStore( - * policyListReducer, - * applyMiddleware( - * policyListMiddlewareFactory(fakeCoreStart, depsStart), - * middlewareSpyUtils.actionSpyMiddleware - * ) - * ); - * // Reference `dispatchSpy` ONLY after creating the store that includes `actionSpyMiddleware` - * const { waitForAction, dispatchSpy } = middlewareSpyUtils; - * // - * // later in test - * // - * it('...', async () => { - * //... - * await waitForAction('serverReturnedPolicyListData'); - * // do assertions - * // or check how action was called - * expect(dispatchSpy.calls.length).toBe(2) - * }); - */ -export const createSpyMiddleware = (): MiddlewareActionSpyHelper => { - type ActionWatcher = (action: AppAction) => void; - - const watchers = new Set(); - let spyDispatch: jest.Mock>; - - return { - waitForAction: async (actionType: string) => { - // Error is defined here so that we get a better stack trace that points to the test from where it was used - const err = new Error(`action '${actionType}' was not dispatched within the allocated time`); - - await new Promise((resolve, reject) => { - const watch: ActionWatcher = action => { - if (action.type === actionType) { - watchers.delete(watch); - clearTimeout(timeout); - resolve(); - } - }; - - // We timeout before jest's default 5s, so that a better error stack is returned - const timeout = setTimeout(() => { - watchers.delete(watch); - reject(err); - }, 4500); - watchers.add(watch); - }); - }, - - get dispatchSpy() { - if (!spyDispatch) { - throw new Error( - 'Spy Middleware has not been initialized. Access this property only after using `actionSpyMiddleware` in a redux store' - ); - } - return spyDispatch.mock; - }, - - actionSpyMiddleware: api => { - return next => { - spyDispatch = jest.fn(action => { - next(action); - // loop through the list of watcher (if any) and call them with this action - for (const watch of watchers) { - watch(action); - } - return action; - }); - return spyDispatch; - }; - }, - }; -}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/test_utils.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/test_utils.ts new file mode 100644 index 00000000000000..99e14cef73e8b8 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/test_utils.ts @@ -0,0 +1,126 @@ +/* + * 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 { Dispatch } from 'redux'; +import { AppAction, GlobalState, MiddlewareFactory } from '../types'; + +/** + * Utilities for testing Redux middleware + */ +export interface MiddlewareActionSpyHelper { + /** + * Returns a promise that is fulfilled when the given action is dispatched or a timeout occurs. + * The `action` will given to the promise `resolve` thus allowing for checks to be done. + * The use of this method instead of a `sleep()` type of delay should avoid test case instability + * especially when run in a CI environment. + * + * @param actionType + */ + waitForAction: (actionType: T) => Promise; + /** + * A property holding the information around the calls that were processed by the internal + * `actionSpyMiddelware`. This property holds the information typically found in Jets's mocked + * function `mock` property - [see here for more information](https://jestjs.io/docs/en/mock-functions#mock-property) + * + * **Note**: this property will only be set **after* the `actionSpyMiddlware` has been + * initialized (ex. via `createStore()`. Attempting to reference this property before that time + * will throw an error. + * Also - do not hold on to references to this property value if `jest.clearAllMocks()` or + * `jest.resetAllMocks()` is called between usages of the value. + */ + dispatchSpy: jest.Mock>['mock']; + /** + * Redux middleware that enables spying on the action that are dispatched through the store + */ + actionSpyMiddleware: ReturnType>; +} + +/** + * Creates a new instance of middleware action helpers + * Note: in most cases (testing concern specific middleware) this function should be given + * the state type definition, else, the global state will be used. + * + * @example + * // Use in Policy List middleware testing + * const middlewareSpyUtils = createSpyMiddleware(); + * store = createStore( + * policyListReducer, + * applyMiddleware( + * policyListMiddlewareFactory(fakeCoreStart, depsStart), + * middlewareSpyUtils.actionSpyMiddleware + * ) + * ); + * // Reference `dispatchSpy` ONLY after creating the store that includes `actionSpyMiddleware` + * const { waitForAction, dispatchSpy } = middlewareSpyUtils; + * // + * // later in test + * // + * it('...', async () => { + * //... + * await waitForAction('serverReturnedPolicyListData'); + * // do assertions + * // or check how action was called + * expect(dispatchSpy.calls.length).toBe(2) + * }); + */ +export const createSpyMiddleware = < + S = GlobalState, + A extends AppAction = AppAction +>(): MiddlewareActionSpyHelper => { + type ActionWatcher = (action: A) => void; + + const watchers = new Set(); + let spyDispatch: jest.Mock>; + + return { + waitForAction: async actionType => { + type ResolvedAction = A extends { type: typeof actionType } ? A : never; + + // Error is defined here so that we get a better stack trace that points to the test from where it was used + const err = new Error(`action '${actionType}' was not dispatched within the allocated time`); + + return new Promise((resolve, reject) => { + const watch: ActionWatcher = action => { + if (action.type === actionType) { + watchers.delete(watch); + clearTimeout(timeout); + resolve(action as ResolvedAction); + } + }; + + // We timeout before jest's default 5s, so that a better error stack is returned + const timeout = setTimeout(() => { + watchers.delete(watch); + reject(err); + }, 4500); + watchers.add(watch); + }); + }, + + get dispatchSpy() { + if (!spyDispatch) { + throw new Error( + 'Spy Middleware has not been initialized. Access this property only after using `actionSpyMiddleware` in a redux store' + ); + } + return spyDispatch.mock; + }, + + actionSpyMiddleware: api => { + return next => { + spyDispatch = jest.fn(action => { + next(action); + // loop through the list of watcher (if any) and call them with this action + for (const watch of watchers) { + watch(action); + } + return action; + }); + return spyDispatch; + }; + }, + }; +}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/types.ts b/x-pack/plugins/endpoint/public/applications/endpoint/types.ts index 7aca94d3e9c7c2..59cd8f806e5b0d 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/types.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/types.ts @@ -52,6 +52,7 @@ export interface HostListPagination { } export interface HostIndexUIQueryParams { selected_host?: string; + show?: string; } export interface ServerApiError { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/components/__snapshots__/page_view.test.tsx.snap b/x-pack/plugins/endpoint/public/applications/endpoint/view/components/__snapshots__/page_view.test.tsx.snap index dfc69fc46ebdc0..36b602a1e67843 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/components/__snapshots__/page_view.test.tsx.snap +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/components/__snapshots__/page_view.test.tsx.snap @@ -7,6 +7,7 @@ exports[`PageView component should display body header custom element 1`] = ` .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -97,6 +98,7 @@ exports[`PageView component should display body header wrapped in EuiTitle 1`] = .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -190,6 +192,7 @@ exports[`PageView component should display header left and right 1`] = ` .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -298,6 +301,7 @@ exports[`PageView component should display only body if not header props used 1` .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -365,6 +369,7 @@ exports[`PageView component should display only header left 1`] = ` .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -462,6 +467,7 @@ exports[`PageView component should display only header right but include an empt .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -556,6 +562,7 @@ exports[`PageView component should pass through EuiPage props 1`] = ` .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { @@ -640,6 +647,7 @@ exports[`PageView component should use custom element for header left and not wr .c0.endpoint--isListView .endpoint-header { padding: 24px; + margin-bottom: 0; } .c0.endpoint--isListView .endpoint-page-content { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/components/page_view.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/components/page_view.tsx index 561d671e18e077..6da352b68f890b 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/components/page_view.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/components/page_view.tsx @@ -25,6 +25,7 @@ const StyledEuiPage = styled(EuiPage)` .endpoint-header { padding: ${props => props.theme.eui.euiSizeL}; + margin-bottom: 0; } .endpoint-page-content { border-left: none; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/components/flyout_sub_header.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/components/flyout_sub_header.tsx new file mode 100644 index 00000000000000..26f2203790a9e2 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/components/flyout_sub_header.tsx @@ -0,0 +1,72 @@ +/* + * 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, { memo } from 'react'; +import { EuiFlyoutHeader, CommonProps, EuiButtonEmpty } from '@elastic/eui'; +import styled from 'styled-components'; + +export type FlyoutSubHeaderProps = CommonProps & { + children: React.ReactNode; + backButton?: { + title: string; + onClick: (event: React.MouseEvent) => void; + href?: string; + }; +}; + +const StyledEuiFlyoutHeader = styled(EuiFlyoutHeader)` + padding: ${props => props.theme.eui.paddingSizes.s}; + + &.hasButtons { + .buttons { + padding-bottom: ${props => props.theme.eui.paddingSizes.s}; + } + + .back-button-content { + padding-left: 0; + &-text { + margin-left: 0; + } + } + } + + .flyout-content { + padding-left: ${props => props.theme.eui.paddingSizes.m}; + } +`; + +const BUTTON_CONTENT_PROPS = Object.freeze({ className: 'back-button-content' }); +const BUTTON_TEXT_PROPS = Object.freeze({ className: 'back-button-content-text' }); + +/** + * A Eui Flyout Header component that has its styles adjusted to display a panel sub-header. + * Component also provides a way to display a "back" button above the header title. + */ +export const FlyoutSubHeader = memo( + ({ children, backButton, ...otherProps }) => { + return ( + + {backButton && ( +
+ {/* eslint-disable-next-line @elastic/eui/href-or-on-click */} + + {backButton?.title} + +
+ )} +
{children}
+
+ ); + } +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/host_details.tsx similarity index 53% rename from x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details.tsx rename to x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/host_details.tsx index f51349b24933a7..32c69426b03f33 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/host_details.tsx @@ -4,31 +4,25 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useCallback, useMemo, memo, useEffect } from 'react'; +import styled from 'styled-components'; import { - EuiFlyout, - EuiFlyoutBody, - EuiFlyoutHeader, - EuiTitle, EuiDescriptionList, - EuiLoadingContent, - EuiHorizontalRule, EuiHealth, - EuiSpacer, + EuiHorizontalRule, + EuiLink, EuiListGroup, EuiListGroupItem, } from '@elastic/eui'; -import { useHistory } from 'react-router-dom'; -import styled from 'styled-components'; -import { i18n } from '@kbn/i18n'; +import React, { memo, useMemo } from 'react'; import { FormattedMessage } from '@kbn/i18n/react'; -import { useKibana } from '../../../../../../../../src/plugins/kibana_react/public'; -import { HostMetadata } from '../../../../../common/types'; -import { useHostListSelector } from './hooks'; -import { urlFromQueryParams } from './url_from_query_params'; -import { FormattedDateAndTime } from '../formatted_date_time'; -import { uiQueryParams, detailsData, detailsError } from './../../store/hosts/selectors'; -import { LinkToApp } from '../components/link_to_app'; +import { i18n } from '@kbn/i18n'; +import { useHistory } from 'react-router-dom'; +import { HostMetadata } from '../../../../../../common/types'; +import { FormattedDateAndTime } from '../../formatted_date_time'; +import { LinkToApp } from '../../components/link_to_app'; +import { useHostListSelector, useHostLogsUrl } from '../hooks'; +import { urlFromQueryParams } from '../url_from_query_params'; +import { uiQueryParams } from '../../../store/hosts/selectors'; const HostIds = styled(EuiListGroupItem)` margin-top: 0; @@ -37,8 +31,10 @@ const HostIds = styled(EuiListGroupItem)` } `; -const HostDetails = memo(({ details }: { details: HostMetadata }) => { +export const HostDetails = memo(({ details }: { details: HostMetadata }) => { const { appId, appPath, url } = useHostLogsUrl(details.host.id); + const queryParams = useHostListSelector(uiQueryParams); + const history = useHistory(); const detailsResultsUpper = useMemo(() => { return [ { @@ -62,6 +58,14 @@ const HostDetails = memo(({ details }: { details: HostMetadata }) => { ]; }, [details]); + const policyResponseUri = useMemo(() => { + return urlFromQueryParams({ + ...queryParams, + selected_host: details.host.id, + show: 'policy_response', + }); + }, [details.host.id, queryParams]); + const detailsResultsLower = useMemo(() => { return [ { @@ -74,7 +78,24 @@ const HostDetails = memo(({ details }: { details: HostMetadata }) => { title: i18n.translate('xpack.endpoint.host.details.policyStatus', { defaultMessage: 'Policy Status', }), - description: active, + description: ( + + {/* eslint-disable-next-line @elastic/eui/href-or-on-click */} + { + ev.preventDefault(); + history.push(policyResponseUri); + }} + > + + + + ), }, { title: i18n.translate('xpack.endpoint.host.details.ipAddress', { @@ -101,7 +122,15 @@ const HostDetails = memo(({ details }: { details: HostMetadata }) => { description: details.agent.version, }, ]; - }, [details.agent.version, details.endpoint.policy.id, details.host.hostname, details.host.ip]); + }, [ + details.agent.version, + details.endpoint.policy.id, + details.host.hostname, + details.host.ip, + history, + policyResponseUri, + ]); + return ( <> { ); }); - -export const HostDetailsFlyout = () => { - const history = useHistory(); - const { notifications } = useKibana(); - const queryParams = useHostListSelector(uiQueryParams); - const { selected_host: selectedHost, ...queryParamsWithoutSelectedHost } = queryParams; - const details = useHostListSelector(detailsData); - const error = useHostListSelector(detailsError); - - const handleFlyoutClose = useCallback(() => { - history.push(urlFromQueryParams(queryParamsWithoutSelectedHost)); - }, [history, queryParamsWithoutSelectedHost]); - - useEffect(() => { - if (error !== undefined) { - notifications.toasts.danger({ - title: ( - - ), - body: ( - - ), - toastLifeTimeMs: 10000, - }); - } - }, [error, notifications.toasts]); - - return ( - - - -

- {details === undefined ? : details.host.hostname} -

-
-
- - {details === undefined ? ( - <> - - - ) : ( - - )} - -
- ); -}; - -const useHostLogsUrl = (hostId: string): { url: string; appId: string; appPath: string } => { - const { services } = useKibana(); - return useMemo(() => { - const appPath = `/stream?logFilter=(expression:'host.id:${hostId}',kind:kuery)`; - return { - url: `${services.application.getUrlForApp('logs')}${appPath}`, - appId: 'logs', - appPath, - }; - }, [hostId, services.application]); -}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/index.tsx new file mode 100644 index 00000000000000..a41d4a968f177d --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/index.tsx @@ -0,0 +1,134 @@ +/* + * 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, { useCallback, useEffect, memo, useMemo } from 'react'; +import { + EuiFlyout, + EuiFlyoutBody, + EuiFlyoutHeader, + EuiTitle, + EuiLoadingContent, + EuiSpacer, +} from '@elastic/eui'; +import { useHistory } from 'react-router-dom'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { i18n } from '@kbn/i18n'; +import { useKibana } from '../../../../../../../../../src/plugins/kibana_react/public'; +import { useHostListSelector } from '../hooks'; +import { urlFromQueryParams } from '../url_from_query_params'; +import { uiQueryParams, detailsData, detailsError, showView } from '../../../store/hosts/selectors'; +import { HostDetails } from './host_details'; +import { PolicyResponse } from './policy_response'; +import { HostMetadata } from '../../../../../../common/types'; +import { FlyoutSubHeader, FlyoutSubHeaderProps } from './components/flyout_sub_header'; + +export const HostDetailsFlyout = memo(() => { + const history = useHistory(); + const { notifications } = useKibana(); + const queryParams = useHostListSelector(uiQueryParams); + const { selected_host: selectedHost, ...queryParamsWithoutSelectedHost } = queryParams; + const details = useHostListSelector(detailsData); + const error = useHostListSelector(detailsError); + const show = useHostListSelector(showView); + + const handleFlyoutClose = useCallback(() => { + history.push(urlFromQueryParams(queryParamsWithoutSelectedHost)); + }, [history, queryParamsWithoutSelectedHost]); + + useEffect(() => { + if (error !== undefined) { + notifications.toasts.danger({ + title: ( + + ), + body: ( + + ), + toastLifeTimeMs: 10000, + }); + } + }, [error, notifications.toasts]); + + return ( + + + +

+ {details === undefined ? : details.host.hostname} +

+
+
+ {details === undefined ? ( + <> + + + + + ) : ( + <> + {show === 'details' && ( + <> + + + + + )} + {show === 'policy_response' && } + + )} +
+ ); +}); + +const PolicyResponseFlyoutPanel = memo<{ + hostMeta: HostMetadata; +}>(({ hostMeta }) => { + const history = useHistory(); + const { show, ...queryParams } = useHostListSelector(uiQueryParams); + const backButtonProp = useMemo((): FlyoutSubHeaderProps['backButton'] => { + const detailsUri = urlFromQueryParams({ + ...queryParams, + selected_host: hostMeta.host.id, + }); + return { + title: i18n.translate('xpack.endpoint.host.policyResponse.backLinkTitle', { + defaultMessage: 'Endpoint Details', + }), + href: '?' + detailsUri.search, + onClick: ev => { + ev.preventDefault(); + history.push(detailsUri); + }, + }; + }, [history, hostMeta.host.id, queryParams]); + + return ( + <> + + +

+ +

+
+
+ + + + + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/policy_response.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/policy_response.tsx new file mode 100644 index 00000000000000..eacb6a52d31841 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/details/policy_response.tsx @@ -0,0 +1,10 @@ +/* + * 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, { memo } from 'react'; + +export const PolicyResponse = memo(() => { + return
Policy Status to be displayed here soon.
; +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/hooks.ts b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/hooks.ts index 99a0073f46c743..7eb51f3a7b2946 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/hooks.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/hooks.ts @@ -5,10 +5,28 @@ */ import { useSelector } from 'react-redux'; +import { useMemo } from 'react'; import { GlobalState, HostListState } from '../../types'; +import { useKibana } from '../../../../../../../../src/plugins/kibana_react/public'; export function useHostListSelector(selector: (state: HostListState) => TSelected) { return useSelector(function(state: GlobalState) { return selector(state.hostList); }); } + +/** + * Returns an object that contains Kibana Logs app and URL information for a given host id + * @param hostId + */ +export const useHostLogsUrl = (hostId: string): { url: string; appId: string; appPath: string } => { + const { services } = useKibana(); + return useMemo(() => { + const appPath = `/stream?logFilter=(expression:'host.id:${hostId}',kind:kuery)`; + return { + url: `${services.application.getUrlForApp('logs')}${appPath}`, + appId: 'logs', + appPath, + }; + }, [hostId, services.application]); +}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/index.test.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/index.test.tsx index d2d0ad40b025f0..88416b577ed0c2 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/index.test.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/hosts/index.test.tsx @@ -21,10 +21,11 @@ describe('when on the hosts page', () => { let history: AppContextTestRender['history']; let store: AppContextTestRender['store']; let coreStart: AppContextTestRender['coreStart']; + let middlewareSpy: AppContextTestRender['middlewareSpy']; beforeEach(async () => { const mockedContext = createAppRootMockRenderer(); - ({ history, store, coreStart } = mockedContext); + ({ history, store, coreStart, middlewareSpy } = mockedContext); render = () => mockedContext.render(); }); @@ -132,6 +133,25 @@ describe('when on the hosts page', () => { expect(flyout).not.toBeNull(); }); }); + it('should display policy status value as a link', async () => { + const renderResult = render(); + const policyStatusLink = await renderResult.findByTestId('policyStatusValue'); + expect(policyStatusLink).not.toBeNull(); + expect(policyStatusLink.textContent).toEqual('Successful'); + expect(policyStatusLink.getAttribute('href')).toEqual( + '?selected_host=1&show=policy_response' + ); + }); + it('should update the URL when policy status link is clicked', async () => { + const renderResult = render(); + const policyStatusLink = await renderResult.findByTestId('policyStatusValue'); + const userChangedUrlChecker = middlewareSpy.waitForAction('userChangedUrl'); + reactTestingLibrary.act(() => { + fireEvent.click(policyStatusLink); + }); + const changedUrlAction = await userChangedUrlChecker; + expect(changedUrlAction.payload.search).toEqual('?selected_host=1&show=policy_response'); + }); it('should include the link to logs', async () => { const renderResult = render(); const linkToLogs = await renderResult.findByTestId('hostDetailsLinkToLogs'); @@ -154,5 +174,48 @@ describe('when on the hosts page', () => { expect(coreStart.application.navigateToApp.mock.calls).toHaveLength(1); }); }); + describe('when showing host Policy Response', () => { + let renderResult: ReturnType; + beforeEach(async () => { + renderResult = render(); + const policyStatusLink = await renderResult.findByTestId('policyStatusValue'); + const userChangedUrlChecker = middlewareSpy.waitForAction('userChangedUrl'); + reactTestingLibrary.act(() => { + fireEvent.click(policyStatusLink); + }); + await userChangedUrlChecker; + }); + it('should hide the host details panel', async () => { + const hostDetailsFlyout = await renderResult.queryByTestId('hostDetailsFlyoutBody'); + expect(hostDetailsFlyout).toBeNull(); + }); + it('should display policy response sub-panel', async () => { + expect( + await renderResult.findByTestId('hostDetailsPolicyResponseFlyoutHeader') + ).not.toBeNull(); + expect( + await renderResult.findByTestId('hostDetailsPolicyResponseFlyoutBody') + ).not.toBeNull(); + }); + it('should include the sub-panel title', async () => { + expect( + (await renderResult.findByTestId('hostDetailsPolicyResponseFlyoutTitle')).textContent + ).toBe('Policy Response'); + }); + it('should include the back to details link', async () => { + const subHeaderBackLink = await renderResult.findByTestId('flyoutSubHeaderBackButton'); + expect(subHeaderBackLink.textContent).toBe('Endpoint Details'); + expect(subHeaderBackLink.getAttribute('href')).toBe('?selected_host=1'); + }); + it('should update URL when back to details link is clicked', async () => { + const subHeaderBackLink = await renderResult.findByTestId('flyoutSubHeaderBackButton'); + const userChangedUrlChecker = middlewareSpy.waitForAction('userChangedUrl'); + reactTestingLibrary.act(() => { + fireEvent.click(subHeaderBackLink); + }); + const changedUrlAction = await userChangedUrlChecker; + expect(changedUrlAction.payload.search).toEqual('?selected_host=1'); + }); + }); }); }); diff --git a/x-pack/test/functional_endpoint/apps/endpoint/host_list.ts b/x-pack/test/functional_endpoint/apps/endpoint/host_list.ts index 2e204775808c97..9a4ffecf85d52c 100644 --- a/x-pack/test/functional_endpoint/apps/endpoint/host_list.ts +++ b/x-pack/test/functional_endpoint/apps/endpoint/host_list.ts @@ -167,7 +167,7 @@ export default ({ getPageObjects, getService }: FtrProviderContext) => { '', '0', '00000000-0000-0000-0000-000000000000', - 'active', + 'Successful', '10.101.149.262606:a000:ffc0:39:11ef:37b9:3371:578c', 'rezzani-7.example.com', '6.8.0', From 0a9e17b57ff9116b391797de4fe12ae877122e3b Mon Sep 17 00:00:00 2001 From: Jonathan Buttner <56361221+jonathan-buttner@users.noreply.github.com> Date: Thu, 16 Apr 2020 16:20:16 -0400 Subject: [PATCH 02/59] [Endpoint][EPM] Retrieve Index Pattern from Ingest Manager (#63016) * Endpoint successfully depending on ingest manager to initialize * Moving the endpoint functional tests to their own directory to avoid enabling ingest in the base tests * Removing page objects and other endpoint fields from base functional * Updating code owners with new functional location * Adding index pattern functionality * Missed a file * Pointing resolver tests at endpoint functional tests * Pointing space tests at the endpoint functional directory * Adding ingest service to do setup and tests for 500s * Correcting services path * Adding jest test names * Updating es archives with the correct mapping and index names * Fixing import error * Adding resolver tests to code owners * enabling epm flag for functional tests * adding correct tag to test * Removing the version information and unneeded xsrf * Addressing endpoint index pattern feedback * Removing unused import * Renaming index pattern to es index pattern * Fixing missed index pattern calls * Removing unused import * Fixing type error * Moving es_index_pattern outside of installed and fixing function name * Keeping the event index the same for now * Wrapping index pattern await in try catch * Address PR feedback, adding comments --- .github/CODEOWNERS | 3 + .../endpoint/common/schema/index_pattern.ts | 9 + x-pack/plugins/endpoint/common/types.ts | 10 +- .../endpoint/store/alerts/middleware.ts | 10 +- .../endpoint/scripts/resolver_generator.ts | 2 +- .../plugins/endpoint/server/index_pattern.ts | 77 +++++ x-pack/plugins/endpoint/server/mocks.ts | 44 +++ x-pack/plugins/endpoint/server/plugin.test.ts | 6 +- x-pack/plugins/endpoint/server/plugin.ts | 9 + .../server/routes/alerts/alerts.test.ts | 2 + .../server/routes/alerts/details/handlers.ts | 7 +- .../routes/alerts/details/lib/pagination.ts | 6 +- .../server/routes/alerts/lib/index.ts | 10 +- .../server/routes/alerts/list/handlers.ts | 7 +- .../endpoint/server/routes/index_pattern.ts | 42 +++ .../endpoint/server/routes/metadata/index.ts | 22 +- .../server/routes/metadata/metadata.test.ts | 69 ++--- .../routes/metadata/query_builders.test.ts | 47 +-- .../server/routes/metadata/query_builders.ts | 16 +- .../endpoint/server/routes/resolver.ts | 7 +- .../server/routes/resolver/children.ts | 9 +- .../server/routes/resolver/lifecycle.ts | 8 +- .../server/routes/resolver/queries/base.ts | 3 +- .../routes/resolver/queries/children.test.ts | 16 +- .../routes/resolver/queries/lifecycle.test.ts | 9 +- .../resolver/queries/related_events.test.ts | 15 +- .../server/routes/resolver/related_events.ts | 7 +- .../server/test_data/all_metadata_data.json | 284 +++++++++--------- x-pack/plugins/endpoint/server/types.ts | 2 + .../ingest_manager/common/types/models/epm.ts | 1 + x-pack/plugins/ingest_manager/server/index.ts | 3 + .../plugins/ingest_manager/server/plugin.ts | 27 +- .../ingest_manager/server/saved_objects.ts | 4 + .../epm/elasticsearch/template/template.ts | 16 + .../server/services/epm/packages/install.ts | 41 ++- .../server/services/es_index_pattern.ts | 26 ++ .../ingest_manager/server/services/index.ts | 1 + x-pack/scripts/functional_tests.js | 1 + .../api_integration/apis/endpoint/index.ts | 10 +- .../apis/endpoint/index_pattern.ts | 27 ++ .../api_integration/apis/endpoint/metadata.ts | 2 +- .../api_integration/apis/endpoint/resolver.ts | 4 +- x-pack/test/api_integration/services/index.ts | 2 + .../services/ingest_manager.ts | 28 ++ .../apis/alerts.ts | 27 ++ .../apis/index.ts | 16 + .../apis/index_pattern.ts | 16 + .../apis/metadata.ts | 22 ++ .../config.ts | 19 ++ .../ftr_provider_context.d.ts | 11 + .../alerts/host_api_feature/data.json.gz | Bin 732 -> 753 bytes .../alerts/host_api_feature/mappings.json | 172 ++++++----- .../endpoint/metadata/api_feature/data.json | 18 +- .../metadata/api_feature/mappings.json | 171 +++++------ x-pack/test/functional_endpoint/config.ts | 1 + 55 files changed, 961 insertions(+), 463 deletions(-) create mode 100644 x-pack/plugins/endpoint/common/schema/index_pattern.ts create mode 100644 x-pack/plugins/endpoint/server/index_pattern.ts create mode 100644 x-pack/plugins/endpoint/server/mocks.ts create mode 100644 x-pack/plugins/endpoint/server/routes/index_pattern.ts create mode 100644 x-pack/plugins/ingest_manager/server/services/es_index_pattern.ts create mode 100644 x-pack/test/api_integration/apis/endpoint/index_pattern.ts create mode 100644 x-pack/test/api_integration/services/ingest_manager.ts create mode 100644 x-pack/test/endpoint_api_integration_no_ingest/apis/alerts.ts create mode 100644 x-pack/test/endpoint_api_integration_no_ingest/apis/index.ts create mode 100644 x-pack/test/endpoint_api_integration_no_ingest/apis/index_pattern.ts create mode 100644 x-pack/test/endpoint_api_integration_no_ingest/apis/metadata.ts create mode 100644 x-pack/test/endpoint_api_integration_no_ingest/config.ts create mode 100644 x-pack/test/endpoint_api_integration_no_ingest/ftr_provider_context.d.ts diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index b6c992a621b2b1..985eb5c1342a06 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -209,9 +209,12 @@ # Endpoint /x-pack/plugins/endpoint/ @elastic/endpoint-app-team /x-pack/test/api_integration/apis/endpoint/ @elastic/endpoint-app-team +/x-pack/test/endpoint_api_integration_no_ingest/ @elastic/endpoint-app-team /x-pack/test/functional_endpoint/ @elastic/endpoint-app-team /x-pack/test/functional_endpoint_ingest_failure/ @elastic/endpoint-app-team /x-pack/test/functional/es_archives/endpoint/ @elastic/endpoint-app-team +/x-pack/test/plugin_functional/plugins/resolver_test/ @elastic/endpoint-app-team +/x-pack/test/plugin_functional/test_suites/resolver/ @elastic/endpoint-app-team # SIEM /x-pack/legacy/plugins/siem/ @elastic/siem diff --git a/x-pack/plugins/endpoint/common/schema/index_pattern.ts b/x-pack/plugins/endpoint/common/schema/index_pattern.ts new file mode 100644 index 00000000000000..2809004f88c6e1 --- /dev/null +++ b/x-pack/plugins/endpoint/common/schema/index_pattern.ts @@ -0,0 +1,9 @@ +/* + * 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 { schema } from '@kbn/config-schema'; + +export const indexPatternGetParamsSchema = schema.object({ datasetPath: schema.string() }); diff --git a/x-pack/plugins/endpoint/common/types.ts b/x-pack/plugins/endpoint/common/types.ts index 7143f07d8c7026..49f8ebbd580d85 100644 --- a/x-pack/plugins/endpoint/common/types.ts +++ b/x-pack/plugins/endpoint/common/types.ts @@ -7,6 +7,7 @@ import { SearchResponse } from 'elasticsearch'; import { TypeOf } from '@kbn/config-schema'; import { alertingIndexGetQuerySchema } from './schema/alert_index'; +import { indexPatternGetParamsSchema } from './schema/index_pattern'; import { Datasource, NewDatasource } from '../../ingest_manager/common'; /** @@ -33,9 +34,9 @@ export type Direction = 'asc' | 'desc'; export class EndpointAppConstants { static BASE_API_URL = '/api/endpoint'; - static ENDPOINT_INDEX_NAME = 'endpoint-agent*'; + static INDEX_PATTERN_ROUTE = `${EndpointAppConstants.BASE_API_URL}/index_pattern`; static ALERT_INDEX_NAME = 'events-endpoint-1'; - static EVENT_INDEX_NAME = 'events-endpoint-*'; + static EVENT_DATASET = 'events'; static DEFAULT_TOTAL_HITS = 10000; /** * Legacy events are stored in indices with endgame-* prefix @@ -446,6 +447,11 @@ export type AlertingIndexGetQueryInput = KbnConfigSchemaInputTypeOf< */ export type AlertingIndexGetQueryResult = TypeOf; +/** + * Result of the validated params when handling an index pattern request. + */ +export type IndexPatternGetParamsResult = TypeOf; + /** * Endpoint Policy configuration */ diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts index 2c6ebf52189f56..52d72c66314433 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts @@ -15,10 +15,14 @@ import { EndpointAppConstants } from '../../../../../common/types'; export const alertMiddlewareFactory: MiddlewareFactory = (coreStart, depsStart) => { async function fetchIndexPatterns(): Promise { const { indexPatterns } = depsStart.data; - const indexName = EndpointAppConstants.ALERT_INDEX_NAME; - const fields = await indexPatterns.getFieldsForWildcard({ pattern: indexName }); + const eventsPattern: { indexPattern: string } = await coreStart.http.get( + `${EndpointAppConstants.INDEX_PATTERN_ROUTE}/${EndpointAppConstants.EVENT_DATASET}` + ); + const fields = await indexPatterns.getFieldsForWildcard({ + pattern: eventsPattern.indexPattern, + }); const indexPattern: IIndexPattern = { - title: indexName, + title: eventsPattern.indexPattern, fields, }; diff --git a/x-pack/plugins/endpoint/scripts/resolver_generator.ts b/x-pack/plugins/endpoint/scripts/resolver_generator.ts index 333846bde6ce4f..dd9e591f4b034f 100644 --- a/x-pack/plugins/endpoint/scripts/resolver_generator.ts +++ b/x-pack/plugins/endpoint/scripts/resolver_generator.ts @@ -41,7 +41,7 @@ async function main() { metadataIndex: { alias: 'mi', describe: 'index to store host metadata in', - default: 'endpoint-agent-1', + default: 'metrics-endpoint-default-1', type: 'string', }, auth: { diff --git a/x-pack/plugins/endpoint/server/index_pattern.ts b/x-pack/plugins/endpoint/server/index_pattern.ts new file mode 100644 index 00000000000000..ea612bfd754414 --- /dev/null +++ b/x-pack/plugins/endpoint/server/index_pattern.ts @@ -0,0 +1,77 @@ +/* + * 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 { Logger, LoggerFactory, RequestHandlerContext } from 'kibana/server'; +import { ESIndexPatternService } from '../../ingest_manager/server'; +import { EndpointAppConstants } from '../common/types'; + +export interface IndexPatternRetriever { + getIndexPattern(ctx: RequestHandlerContext, datasetPath: string): Promise; + getEventIndexPattern(ctx: RequestHandlerContext): Promise; + getMetadataIndexPattern(ctx: RequestHandlerContext): Promise; +} + +/** + * This class is used to retrieve an index pattern. It should be used in the server side code whenever + * an index pattern is needed to query data within ES. The index pattern is constructed by the Ingest Manager + * based on the contents of the Endpoint Package in the Package Registry. + */ +export class IngestIndexPatternRetriever implements IndexPatternRetriever { + private static endpointPackageName = 'endpoint'; + private static metadataDataset = 'metadata'; + private readonly log: Logger; + constructor(private readonly service: ESIndexPatternService, loggerFactory: LoggerFactory) { + this.log = loggerFactory.get('index-pattern-retriever'); + } + + /** + * Retrieves the index pattern for querying events within elasticsearch. + * + * @param ctx a RequestHandlerContext from a route handler + * @returns a string representing the index pattern (e.g. `events-endpoint-*`) + */ + async getEventIndexPattern(ctx: RequestHandlerContext) { + return await this.getIndexPattern(ctx, EndpointAppConstants.EVENT_DATASET); + } + + /** + * Retrieves the index pattern for querying endpoint metadata within elasticsearch. + * + * @param ctx a RequestHandlerContext from a route handler + * @returns a string representing the index pattern (e.g. `metrics-endpoint-*`) + */ + async getMetadataIndexPattern(ctx: RequestHandlerContext) { + return await this.getIndexPattern(ctx, IngestIndexPatternRetriever.metadataDataset); + } + + /** + * Retrieves the index pattern for a specific dataset for querying endpoint data. + * + * @param ctx a RequestHandlerContext from a route handler + * @param datasetPath a string of the path being used for a dataset within the Endpoint Package + * (e.g. `events`, `metadata`) + * @returns a string representing the index pattern (e.g. `metrics-endpoint-*`) + */ + async getIndexPattern(ctx: RequestHandlerContext, datasetPath: string) { + try { + const pattern = await this.service.getESIndexPattern( + ctx.core.savedObjects.client, + IngestIndexPatternRetriever.endpointPackageName, + datasetPath + ); + + if (!pattern) { + const msg = `Unable to retrieve the index pattern for dataset: ${datasetPath}`; + this.log.warn(msg); + throw new Error(msg); + } + return pattern; + } catch (error) { + const errMsg = `Error occurred while retrieving pattern for: ${datasetPath} error: ${error}`; + this.log.warn(errMsg); + throw new Error(errMsg); + } + } +} diff --git a/x-pack/plugins/endpoint/server/mocks.ts b/x-pack/plugins/endpoint/server/mocks.ts new file mode 100644 index 00000000000000..903aa19cd88431 --- /dev/null +++ b/x-pack/plugins/endpoint/server/mocks.ts @@ -0,0 +1,44 @@ +/* + * 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. + */ + +/** + * Creates a mock IndexPatternRetriever for use in tests. + * + * @param indexPattern a string index pattern to return when any of the mock's public methods are called. + * @returns the same string passed in via `indexPattern` + */ +export const createMockIndexPatternRetriever = (indexPattern: string) => { + const mockGetFunc = jest.fn().mockResolvedValue(indexPattern); + return { + getIndexPattern: mockGetFunc, + getEventIndexPattern: mockGetFunc, + getMetadataIndexPattern: mockGetFunc, + }; +}; + +export const MetadataIndexPattern = 'metrics-endpoint-*'; + +/** + * Creates a mock IndexPatternRetriever for use in tests that returns `metrics-endpoint-*` + */ +export const createMockMetadataIndexPatternRetriever = () => { + return createMockIndexPatternRetriever(MetadataIndexPattern); +}; + +/** + * Creates a mock IndexPatternService for use in tests that need to interact with the Ingest Manager's + * ESIndexPatternService. + * + * @param indexPattern a string index pattern to return when called by a test + * @returns the same value as `indexPattern` parameter + */ +export const createMockIndexPatternService = (indexPattern: string) => { + return { + esIndexPatternService: { + getESIndexPattern: jest.fn().mockResolvedValue(indexPattern), + }, + }; +}; diff --git a/x-pack/plugins/endpoint/server/plugin.test.ts b/x-pack/plugins/endpoint/server/plugin.test.ts index 7dd878d579043b..8d55e64f16dcfa 100644 --- a/x-pack/plugins/endpoint/server/plugin.test.ts +++ b/x-pack/plugins/endpoint/server/plugin.test.ts @@ -7,6 +7,7 @@ import { EndpointPlugin, EndpointPluginSetupDependencies } from './plugin'; import { coreMock } from '../../../../src/core/server/mocks'; import { PluginSetupContract } from '../../features/server'; +import { createMockIndexPatternService } from './mocks'; describe('test endpoint plugin', () => { let plugin: EndpointPlugin; @@ -28,7 +29,10 @@ describe('test endpoint plugin', () => { getFeaturesUICapabilities: jest.fn(), registerLegacyAPI: jest.fn(), }; - mockedEndpointPluginSetupDependencies = { features: mockedPluginSetupContract }; + mockedEndpointPluginSetupDependencies = { + features: mockedPluginSetupContract, + ingestManager: createMockIndexPatternService(''), + }; }); it('test properly setup plugin', async () => { diff --git a/x-pack/plugins/endpoint/server/plugin.ts b/x-pack/plugins/endpoint/server/plugin.ts index d3a399124124f2..6a42014e911303 100644 --- a/x-pack/plugins/endpoint/server/plugin.ts +++ b/x-pack/plugins/endpoint/server/plugin.ts @@ -6,12 +6,15 @@ import { Plugin, CoreSetup, PluginInitializerContext, Logger } from 'kibana/server'; import { first } from 'rxjs/operators'; import { PluginSetupContract as FeaturesPluginSetupContract } from '../../features/server'; +import { IngestManagerSetupContract } from '../../ingest_manager/server'; import { createConfig$, EndpointConfigType } from './config'; import { EndpointAppContext } from './types'; import { registerAlertRoutes } from './routes/alerts'; import { registerResolverRoutes } from './routes/resolver'; +import { registerIndexPatternRoute } from './routes/index_pattern'; import { registerEndpointRoutes } from './routes/metadata'; +import { IngestIndexPatternRetriever } from './index_pattern'; export type EndpointPluginStart = void; export type EndpointPluginSetup = void; @@ -19,6 +22,7 @@ export interface EndpointPluginStartDependencies {} // eslint-disable-line @type export interface EndpointPluginSetupDependencies { features: FeaturesPluginSetupContract; + ingestManager: IngestManagerSetupContract; } export class EndpointPlugin @@ -62,6 +66,10 @@ export class EndpointPlugin }, }); const endpointContext = { + indexPatternRetriever: new IngestIndexPatternRetriever( + plugins.ingestManager.esIndexPatternService, + this.initializerContext.logger + ), logFactory: this.initializerContext.logger, config: (): Promise => { return createConfig$(this.initializerContext) @@ -73,6 +81,7 @@ export class EndpointPlugin registerEndpointRoutes(router, endpointContext); registerResolverRoutes(router, endpointContext); registerAlertRoutes(router, endpointContext); + registerIndexPatternRoute(router, endpointContext); } public start() { diff --git a/x-pack/plugins/endpoint/server/routes/alerts/alerts.test.ts b/x-pack/plugins/endpoint/server/routes/alerts/alerts.test.ts index 5f5e4be4ecd0a1..6be7b268982060 100644 --- a/x-pack/plugins/endpoint/server/routes/alerts/alerts.test.ts +++ b/x-pack/plugins/endpoint/server/routes/alerts/alerts.test.ts @@ -12,6 +12,7 @@ import { import { registerAlertRoutes } from './index'; import { EndpointConfigSchema } from '../../config'; import { alertingIndexGetQuerySchema } from '../../../common/schema/alert_index'; +import { createMockIndexPatternRetriever } from '../../mocks'; describe('test alerts route', () => { let routerMock: jest.Mocked; @@ -24,6 +25,7 @@ describe('test alerts route', () => { mockClusterClient.asScoped.mockReturnValue(mockScopedClient); routerMock = httpServiceMock.createRouter(); registerAlertRoutes(routerMock, { + indexPatternRetriever: createMockIndexPatternRetriever('events-endpoint-*'), logFactory: loggingServiceMock.create(), config: () => Promise.resolve(EndpointConfigSchema.validate({})), }); diff --git a/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts b/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts index 0f32deb4fad9b2..86e9f55da56970 100644 --- a/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts +++ b/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts @@ -26,15 +26,18 @@ export const alertDetailsHandlerWrapper = function( id: alertId, })) as GetResponse; + const indexPattern = await endpointAppContext.indexPatternRetriever.getEventIndexPattern(ctx); + const config = await endpointAppContext.config(); const pagination: AlertDetailsPagination = new AlertDetailsPagination( config, ctx, req.params, - response + response, + indexPattern ); - const currentHostInfo = await getHostData(ctx, response._source.host.id); + const currentHostInfo = await getHostData(ctx, response._source.host.id, indexPattern); return res.ok({ body: { diff --git a/x-pack/plugins/endpoint/server/routes/alerts/details/lib/pagination.ts b/x-pack/plugins/endpoint/server/routes/alerts/details/lib/pagination.ts index 446d61080e650b..d482da03872c62 100644 --- a/x-pack/plugins/endpoint/server/routes/alerts/details/lib/pagination.ts +++ b/x-pack/plugins/endpoint/server/routes/alerts/details/lib/pagination.ts @@ -29,7 +29,8 @@ export class AlertDetailsPagination extends Pagination< config: EndpointConfigType, requestContext: RequestHandlerContext, state: AlertDetailsRequestParams, - data: GetResponse + data: GetResponse, + private readonly indexPattern: string ) { super(config, requestContext, state, data); } @@ -54,7 +55,8 @@ export class AlertDetailsPagination extends Pagination< const response = await searchESForAlerts( this.requestContext.core.elasticsearch.dataClient, - reqData + reqData, + this.indexPattern ); return response; } diff --git a/x-pack/plugins/endpoint/server/routes/alerts/lib/index.ts b/x-pack/plugins/endpoint/server/routes/alerts/lib/index.ts index dc1ce767a715be..74db24c85eab5e 100644 --- a/x-pack/plugins/endpoint/server/routes/alerts/lib/index.ts +++ b/x-pack/plugins/endpoint/server/routes/alerts/lib/index.ts @@ -97,7 +97,8 @@ function buildSort(query: AlertSearchQuery): AlertSort { * Builds a request body for Elasticsearch, given a set of query params. **/ const buildAlertSearchQuery = async ( - query: AlertSearchQuery + query: AlertSearchQuery, + indexPattern: string ): Promise => { let totalHitsMin: number = EndpointAppConstants.DEFAULT_TOTAL_HITS; @@ -125,7 +126,7 @@ const buildAlertSearchQuery = async ( const reqWrapper: AlertSearchRequestWrapper = { size: query.pageSize, - index: EndpointAppConstants.ALERT_INDEX_NAME, + index: indexPattern, body: reqBody, }; @@ -141,9 +142,10 @@ const buildAlertSearchQuery = async ( **/ export const searchESForAlerts = async ( dataClient: IScopedClusterClient, - query: AlertSearchQuery + query: AlertSearchQuery, + indexPattern: string ): Promise> => { - const reqWrapper = await buildAlertSearchQuery(query); + const reqWrapper = await buildAlertSearchQuery(query, indexPattern); const response = (await dataClient.callAsCurrentUser('search', reqWrapper)) as SearchResponse< AlertEvent >; diff --git a/x-pack/plugins/endpoint/server/routes/alerts/list/handlers.ts b/x-pack/plugins/endpoint/server/routes/alerts/list/handlers.ts index 93ec8d7aa3e679..f23dffd13db4f6 100644 --- a/x-pack/plugins/endpoint/server/routes/alerts/list/handlers.ts +++ b/x-pack/plugins/endpoint/server/routes/alerts/list/handlers.ts @@ -18,8 +18,13 @@ export const alertListHandlerWrapper = function( res ) => { try { + const indexPattern = await endpointAppContext.indexPatternRetriever.getEventIndexPattern(ctx); const reqData = await getRequestData(req, endpointAppContext); - const response = await searchESForAlerts(ctx.core.elasticsearch.dataClient, reqData); + const response = await searchESForAlerts( + ctx.core.elasticsearch.dataClient, + reqData, + indexPattern + ); const mappedBody = await mapToAlertResultList(ctx, endpointAppContext, reqData, response); return res.ok({ body: mappedBody }); } catch (err) { diff --git a/x-pack/plugins/endpoint/server/routes/index_pattern.ts b/x-pack/plugins/endpoint/server/routes/index_pattern.ts new file mode 100644 index 00000000000000..3b71f6a6957ba3 --- /dev/null +++ b/x-pack/plugins/endpoint/server/routes/index_pattern.ts @@ -0,0 +1,42 @@ +/* + * 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 { IRouter, Logger, RequestHandler } from 'kibana/server'; +import { EndpointAppContext } from '../types'; +import { IndexPatternGetParamsResult, EndpointAppConstants } from '../../common/types'; +import { indexPatternGetParamsSchema } from '../../common/schema/index_pattern'; +import { IndexPatternRetriever } from '../index_pattern'; + +function handleIndexPattern( + log: Logger, + indexRetriever: IndexPatternRetriever +): RequestHandler { + return async (context, req, res) => { + try { + return res.ok({ + body: { + indexPattern: await indexRetriever.getIndexPattern(context, req.params.datasetPath), + }, + }); + } catch (error) { + log.warn(error); + return res.notFound({ body: error }); + } + }; +} + +export function registerIndexPatternRoute(router: IRouter, endpointAppContext: EndpointAppContext) { + const log = endpointAppContext.logFactory.get('index_pattern'); + + router.get( + { + path: `${EndpointAppConstants.INDEX_PATTERN_ROUTE}/{datasetPath}`, + validate: { params: indexPatternGetParamsSchema }, + options: { authRequired: true }, + }, + handleIndexPattern(log, endpointAppContext.indexPatternRetriever) + ); +} diff --git a/x-pack/plugins/endpoint/server/routes/metadata/index.ts b/x-pack/plugins/endpoint/server/routes/metadata/index.ts index 450469914bc50c..883bb88204fd4f 100644 --- a/x-pack/plugins/endpoint/server/routes/metadata/index.ts +++ b/x-pack/plugins/endpoint/server/routes/metadata/index.ts @@ -8,9 +8,9 @@ import { IRouter, RequestHandlerContext } from 'kibana/server'; import { SearchResponse } from 'elasticsearch'; import { schema } from '@kbn/config-schema'; +import { kibanaRequestToMetadataListESQuery, getESQueryHostMetadataByID } from './query_builders'; import { HostInfo, HostMetadata, HostResultList, HostStatus } from '../../../common/types'; import { EndpointAppContext } from '../../types'; -import { getESQueryHostMetadataByID, kibanaRequestToMetadataListESQuery } from './query_builders'; interface HitSource { _source: HostMetadata; @@ -50,7 +50,14 @@ export function registerEndpointRoutes(router: IRouter, endpointAppContext: Endp }, async (context, req, res) => { try { - const queryParams = await kibanaRequestToMetadataListESQuery(req, endpointAppContext); + const index = await endpointAppContext.indexPatternRetriever.getMetadataIndexPattern( + context + ); + const queryParams = await kibanaRequestToMetadataListESQuery( + req, + endpointAppContext, + index + ); const response = (await context.core.elasticsearch.dataClient.callAsCurrentUser( 'search', queryParams @@ -72,7 +79,11 @@ export function registerEndpointRoutes(router: IRouter, endpointAppContext: Endp }, async (context, req, res) => { try { - const doc = await getHostData(context, req.params.id); + const index = await endpointAppContext.indexPatternRetriever.getMetadataIndexPattern( + context + ); + + const doc = await getHostData(context, req.params.id, index); if (doc) { return res.ok({ body: doc }); } @@ -86,9 +97,10 @@ export function registerEndpointRoutes(router: IRouter, endpointAppContext: Endp export async function getHostData( context: RequestHandlerContext, - id: string + id: string, + index: string ): Promise { - const query = getESQueryHostMetadataByID(id); + const query = getESQueryHostMetadataByID(id, index); const response = (await context.core.elasticsearch.dataClient.callAsCurrentUser( 'search', query diff --git a/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts b/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts index 9bd251735cc044..9a7d3fb3188a64 100644 --- a/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts +++ b/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts @@ -11,24 +11,28 @@ import { RequestHandler, RequestHandlerContext, RouteConfig, + SavedObjectsClientContract, } from 'kibana/server'; import { elasticsearchServiceMock, httpServerMock, httpServiceMock, loggingServiceMock, + savedObjectsClientMock, } from '../../../../../../src/core/server/mocks'; import { HostInfo, HostMetadata, HostResultList, HostStatus } from '../../../common/types'; import { SearchResponse } from 'elasticsearch'; +import { registerEndpointRoutes } from './index'; import { EndpointConfigSchema } from '../../config'; import * as data from '../../test_data/all_metadata_data.json'; -import { registerEndpointRoutes } from './index'; +import { createMockMetadataIndexPatternRetriever } from '../../mocks'; describe('test endpoint route', () => { let routerMock: jest.Mocked; let mockResponse: jest.Mocked; let mockClusterClient: jest.Mocked; let mockScopedClient: jest.Mocked; + let mockSavedObjectClient: jest.Mocked; let routeHandler: RequestHandler; let routeConfig: RouteConfig; @@ -37,15 +41,38 @@ describe('test endpoint route', () => { IClusterClient >; mockScopedClient = elasticsearchServiceMock.createScopedClusterClient(); + mockSavedObjectClient = savedObjectsClientMock.create(); mockClusterClient.asScoped.mockReturnValue(mockScopedClient); routerMock = httpServiceMock.createRouter(); mockResponse = httpServerMock.createResponseFactory(); registerEndpointRoutes(routerMock, { + indexPatternRetriever: createMockMetadataIndexPatternRetriever(), logFactory: loggingServiceMock.create(), config: () => Promise.resolve(EndpointConfigSchema.validate({})), }); }); + function createRouteHandlerContext( + dataClient: jest.Mocked, + savedObjectsClient: jest.Mocked + ) { + return ({ + core: { + elasticsearch: { + dataClient, + }, + savedObjects: { + client: savedObjectsClient, + }, + }, + /** + * Using unknown here because the object defined is not a full `RequestHandlerContext`. We don't + * need all of the fields required to run the tests, but the `routeHandler` function requires a + * `RequestHandlerContext`. + */ + } as unknown) as RequestHandlerContext; + } + it('test find the latest of all endpoints', async () => { const mockRequest = httpServerMock.createKibanaRequest({}); @@ -58,13 +85,7 @@ describe('test endpoint route', () => { )!; await routeHandler( - ({ - core: { - elasticsearch: { - dataClient: mockScopedClient, - }, - }, - } as unknown) as RequestHandlerContext, + createRouteHandlerContext(mockScopedClient, mockSavedObjectClient), mockRequest, mockResponse ); @@ -100,13 +121,7 @@ describe('test endpoint route', () => { )!; await routeHandler( - ({ - core: { - elasticsearch: { - dataClient: mockScopedClient, - }, - }, - } as unknown) as RequestHandlerContext, + createRouteHandlerContext(mockScopedClient, mockSavedObjectClient), mockRequest, mockResponse ); @@ -147,13 +162,7 @@ describe('test endpoint route', () => { )!; await routeHandler( - ({ - core: { - elasticsearch: { - dataClient: mockScopedClient, - }, - }, - } as unknown) as RequestHandlerContext, + createRouteHandlerContext(mockScopedClient, mockSavedObjectClient), mockRequest, mockResponse ); @@ -212,13 +221,7 @@ describe('test endpoint route', () => { )!; await routeHandler( - ({ - core: { - elasticsearch: { - dataClient: mockScopedClient, - }, - }, - } as unknown) as RequestHandlerContext, + createRouteHandlerContext(mockScopedClient, mockSavedObjectClient), mockRequest, mockResponse ); @@ -243,13 +246,7 @@ describe('test endpoint route', () => { )!; await routeHandler( - ({ - core: { - elasticsearch: { - dataClient: mockScopedClient, - }, - }, - } as unknown) as RequestHandlerContext, + createRouteHandlerContext(mockScopedClient, mockSavedObjectClient), mockRequest, mockResponse ); diff --git a/x-pack/plugins/endpoint/server/routes/metadata/query_builders.test.ts b/x-pack/plugins/endpoint/server/routes/metadata/query_builders.test.ts index 2514d5aa858111..c8143fbdda1ea1 100644 --- a/x-pack/plugins/endpoint/server/routes/metadata/query_builders.test.ts +++ b/x-pack/plugins/endpoint/server/routes/metadata/query_builders.test.ts @@ -6,7 +6,7 @@ import { httpServerMock, loggingServiceMock } from '../../../../../../src/core/server/mocks'; import { EndpointConfigSchema } from '../../config'; import { kibanaRequestToMetadataListESQuery, getESQueryHostMetadataByID } from './query_builders'; -import { EndpointAppConstants } from '../../../common/types'; +import { createMockMetadataIndexPatternRetriever, MetadataIndexPattern } from '../../mocks'; describe('query builder', () => { describe('MetadataListESQuery', () => { @@ -14,17 +14,22 @@ describe('query builder', () => { const mockRequest = httpServerMock.createKibanaRequest({ body: {}, }); - const query = await kibanaRequestToMetadataListESQuery(mockRequest, { - logFactory: loggingServiceMock.create(), - config: () => Promise.resolve(EndpointConfigSchema.validate({})), - }); + const query = await kibanaRequestToMetadataListESQuery( + mockRequest, + { + indexPatternRetriever: createMockMetadataIndexPatternRetriever(), + logFactory: loggingServiceMock.create(), + config: () => Promise.resolve(EndpointConfigSchema.validate({})), + }, + MetadataIndexPattern + ); expect(query).toEqual({ body: { query: { match_all: {}, }, collapse: { - field: 'host.id.keyword', + field: 'host.id', inner_hits: { name: 'most_recent', size: 1, @@ -34,7 +39,7 @@ describe('query builder', () => { aggs: { total: { cardinality: { - field: 'host.id.keyword', + field: 'host.id', }, }, }, @@ -48,7 +53,7 @@ describe('query builder', () => { }, from: 0, size: 10, - index: EndpointAppConstants.ENDPOINT_INDEX_NAME, + index: MetadataIndexPattern, } as Record); }); }); @@ -60,10 +65,15 @@ describe('query builder', () => { filter: 'not host.ip:10.140.73.246', }, }); - const query = await kibanaRequestToMetadataListESQuery(mockRequest, { - logFactory: loggingServiceMock.create(), - config: () => Promise.resolve(EndpointConfigSchema.validate({})), - }); + const query = await kibanaRequestToMetadataListESQuery( + mockRequest, + { + indexPatternRetriever: createMockMetadataIndexPatternRetriever(), + logFactory: loggingServiceMock.create(), + config: () => Promise.resolve(EndpointConfigSchema.validate({})), + }, + MetadataIndexPattern + ); expect(query).toEqual({ body: { query: { @@ -83,7 +93,7 @@ describe('query builder', () => { }, }, collapse: { - field: 'host.id.keyword', + field: 'host.id', inner_hits: { name: 'most_recent', size: 1, @@ -93,7 +103,7 @@ describe('query builder', () => { aggs: { total: { cardinality: { - field: 'host.id.keyword', + field: 'host.id', }, }, }, @@ -107,7 +117,7 @@ describe('query builder', () => { }, from: 0, size: 10, - index: EndpointAppConstants.ENDPOINT_INDEX_NAME, + index: MetadataIndexPattern, } as Record); }); }); @@ -115,14 +125,15 @@ describe('query builder', () => { describe('MetadataGetQuery', () => { it('searches for the correct ID', () => { const mockID = 'AABBCCDD-0011-2233-AA44-DEADBEEF8899'; - const query = getESQueryHostMetadataByID(mockID); + const query = getESQueryHostMetadataByID(mockID, MetadataIndexPattern); + expect(query).toEqual({ body: { - query: { match: { 'host.id.keyword': mockID } }, + query: { match: { 'host.id': mockID } }, sort: [{ 'event.created': { order: 'desc' } }], size: 1, }, - index: EndpointAppConstants.ENDPOINT_INDEX_NAME, + index: MetadataIndexPattern, }); }); }); diff --git a/x-pack/plugins/endpoint/server/routes/metadata/query_builders.ts b/x-pack/plugins/endpoint/server/routes/metadata/query_builders.ts index bd07604fe9ad24..abcc293985f9ff 100644 --- a/x-pack/plugins/endpoint/server/routes/metadata/query_builders.ts +++ b/x-pack/plugins/endpoint/server/routes/metadata/query_builders.ts @@ -6,18 +6,18 @@ import { KibanaRequest } from 'kibana/server'; import { esKuery } from '../../../../../../src/plugins/data/server'; import { EndpointAppContext } from '../../types'; -import { EndpointAppConstants } from '../../../common/types'; export const kibanaRequestToMetadataListESQuery = async ( request: KibanaRequest, - endpointAppContext: EndpointAppContext + endpointAppContext: EndpointAppContext, + index: string ): Promise> => { const pagingProperties = await getPagingProperties(request, endpointAppContext); return { body: { query: buildQueryBody(request), collapse: { - field: 'host.id.keyword', + field: 'host.id', inner_hits: { name: 'most_recent', size: 1, @@ -27,7 +27,7 @@ export const kibanaRequestToMetadataListESQuery = async ( aggs: { total: { cardinality: { - field: 'host.id.keyword', + field: 'host.id', }, }, }, @@ -41,7 +41,7 @@ export const kibanaRequestToMetadataListESQuery = async ( }, from: pagingProperties.pageIndex * pagingProperties.pageSize, size: pagingProperties.pageSize, - index: EndpointAppConstants.ENDPOINT_INDEX_NAME, + index, }; }; @@ -74,12 +74,12 @@ function buildQueryBody(request: KibanaRequest): Record { return async (context, req, res) => { const { @@ -54,10 +56,11 @@ export function handleChildren( } = req; try { const pagination = getPaginationParams(limit, after); + const indexPattern = await indexRetriever.getEventIndexPattern(context); const client = context.core.elasticsearch.dataClient; - const childrenQuery = new ChildrenQuery(legacyEndpointID, pagination); - const lifecycleQuery = new LifecycleQuery(legacyEndpointID); + const childrenQuery = new ChildrenQuery(indexPattern, legacyEndpointID, pagination); + const lifecycleQuery = new LifecycleQuery(indexPattern, legacyEndpointID); // Retrieve the related child process events for a given process const { total, results: events, nextCursor } = await childrenQuery.search(client, id); diff --git a/x-pack/plugins/endpoint/server/routes/resolver/lifecycle.ts b/x-pack/plugins/endpoint/server/routes/resolver/lifecycle.ts index 98953441740145..6d155b79651a76 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/lifecycle.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/lifecycle.ts @@ -10,6 +10,7 @@ import { RequestHandler, Logger } from 'kibana/server'; import { extractParentEntityID } from './utils/normalize'; import { LifecycleQuery } from './queries/lifecycle'; import { ResolverEvent } from '../../../common/types'; +import { IndexPatternRetriever } from '../../index_pattern'; interface LifecycleQueryParams { ancestors: number; @@ -46,7 +47,8 @@ function getParentEntityID(results: ResolverEvent[]) { } export function handleLifecycle( - log: Logger + log: Logger, + indexRetriever: IndexPatternRetriever ): RequestHandler { return async (context, req, res) => { const { @@ -56,8 +58,8 @@ export function handleLifecycle( try { const ancestorLifecycles = []; const client = context.core.elasticsearch.dataClient; - - const lifecycleQuery = new LifecycleQuery(legacyEndpointID); + const indexPattern = await indexRetriever.getEventIndexPattern(context); + const lifecycleQuery = new LifecycleQuery(indexPattern, legacyEndpointID); const { results: processLifecycle } = await lifecycleQuery.search(client, id); let nextParentID = getParentEntityID(processLifecycle); diff --git a/x-pack/plugins/endpoint/server/routes/resolver/queries/base.ts b/x-pack/plugins/endpoint/server/routes/resolver/queries/base.ts index be83efc39ca4cb..b049439207e508 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/queries/base.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/queries/base.ts @@ -11,6 +11,7 @@ import { JsonObject } from '../../../../../../../src/plugins/kibana_utils/public export abstract class ResolverQuery { constructor( + private readonly indexPattern: string, private readonly endpointID?: string, private readonly pagination?: PaginationParams ) {} @@ -26,7 +27,7 @@ export abstract class ResolverQuery { if (this.endpointID) { return this.legacyQuery(this.endpointID, ids, EndpointAppConstants.LEGACY_EVENT_INDEX_NAME); } - return this.query(ids, EndpointAppConstants.EVENT_INDEX_NAME); + return this.query(ids, this.indexPattern); } async search(client: IScopedClusterClient, ...ids: string[]) { diff --git a/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts b/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts index 08a906e2884d68..e73053d53dee08 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts @@ -6,11 +6,17 @@ import { ChildrenQuery } from './children'; import { EndpointAppConstants } from '../../../../common/types'; +export const fakeEventIndexPattern = 'events-endpoint-*'; + describe('children events query', () => { it('generates the correct legacy queries', () => { const timestamp = new Date().getTime(); expect( - new ChildrenQuery('awesome-id', { size: 1, timestamp, eventID: 'foo' }).build('5') + new ChildrenQuery(EndpointAppConstants.LEGACY_EVENT_INDEX_NAME, 'awesome-id', { + size: 1, + timestamp, + eventID: 'foo', + }).build('5') ).toStrictEqual({ body: { query: { @@ -50,7 +56,11 @@ describe('children events query', () => { const timestamp = new Date().getTime(); expect( - new ChildrenQuery(undefined, { size: 1, timestamp, eventID: 'bar' }).build('baz') + new ChildrenQuery(fakeEventIndexPattern, undefined, { + size: 1, + timestamp, + eventID: 'bar', + }).build('baz') ).toStrictEqual({ body: { query: { @@ -88,7 +98,7 @@ describe('children events query', () => { size: 1, sort: [{ '@timestamp': 'asc' }, { 'event.id': 'asc' }], }, - index: EndpointAppConstants.EVENT_INDEX_NAME, + index: fakeEventIndexPattern, }); }); }); diff --git a/x-pack/plugins/endpoint/server/routes/resolver/queries/lifecycle.test.ts b/x-pack/plugins/endpoint/server/routes/resolver/queries/lifecycle.test.ts index b1b47bfb9de7fd..8a3955706b2781 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/queries/lifecycle.test.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/queries/lifecycle.test.ts @@ -5,10 +5,13 @@ */ import { EndpointAppConstants } from '../../../../common/types'; import { LifecycleQuery } from './lifecycle'; +import { fakeEventIndexPattern } from './children.test'; describe('lifecycle query', () => { it('generates the correct legacy queries', () => { - expect(new LifecycleQuery('awesome-id').build('5')).toStrictEqual({ + expect( + new LifecycleQuery(EndpointAppConstants.LEGACY_EVENT_INDEX_NAME, 'awesome-id').build('5') + ).toStrictEqual({ body: { query: { bool: { @@ -32,7 +35,7 @@ describe('lifecycle query', () => { }); it('generates the correct non-legacy queries', () => { - expect(new LifecycleQuery().build('baz')).toStrictEqual({ + expect(new LifecycleQuery(fakeEventIndexPattern).build('baz')).toStrictEqual({ body: { query: { bool: { @@ -57,7 +60,7 @@ describe('lifecycle query', () => { }, sort: [{ '@timestamp': 'asc' }], }, - index: EndpointAppConstants.EVENT_INDEX_NAME, + index: fakeEventIndexPattern, }); }); }); diff --git a/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts b/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts index a91c87274b8dd5..5caef935ce6214 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts @@ -5,12 +5,17 @@ */ import { RelatedEventsQuery } from './related_events'; import { EndpointAppConstants } from '../../../../common/types'; +import { fakeEventIndexPattern } from './children.test'; describe('related events query', () => { it('generates the correct legacy queries', () => { const timestamp = new Date().getTime(); expect( - new RelatedEventsQuery('awesome-id', { size: 1, timestamp, eventID: 'foo' }).build('5') + new RelatedEventsQuery(EndpointAppConstants.LEGACY_EVENT_INDEX_NAME, 'awesome-id', { + size: 1, + timestamp, + eventID: 'foo', + }).build('5') ).toStrictEqual({ body: { query: { @@ -51,7 +56,11 @@ describe('related events query', () => { const timestamp = new Date().getTime(); expect( - new RelatedEventsQuery(undefined, { size: 1, timestamp, eventID: 'bar' }).build('baz') + new RelatedEventsQuery(fakeEventIndexPattern, undefined, { + size: 1, + timestamp, + eventID: 'bar', + }).build('baz') ).toStrictEqual({ body: { query: { @@ -90,7 +99,7 @@ describe('related events query', () => { size: 1, sort: [{ '@timestamp': 'asc' }, { 'event.id': 'asc' }], }, - index: EndpointAppConstants.EVENT_INDEX_NAME, + index: fakeEventIndexPattern, }); }); }); diff --git a/x-pack/plugins/endpoint/server/routes/resolver/related_events.ts b/x-pack/plugins/endpoint/server/routes/resolver/related_events.ts index 804400522065c7..46e205464f53ca 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/related_events.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/related_events.ts @@ -8,6 +8,7 @@ import { schema } from '@kbn/config-schema'; import { RequestHandler, Logger } from 'kibana/server'; import { getPaginationParams } from './utils/pagination'; import { RelatedEventsQuery } from './queries/related_events'; +import { IndexPatternRetriever } from '../../index_pattern'; interface RelatedEventsQueryParams { after?: string; @@ -42,7 +43,8 @@ export const validateRelatedEvents = { }; export function handleRelatedEvents( - log: Logger + log: Logger, + indexRetriever: IndexPatternRetriever ): RequestHandler { return async (context, req, res) => { const { @@ -53,8 +55,9 @@ export function handleRelatedEvents( const pagination = getPaginationParams(limit, after); const client = context.core.elasticsearch.dataClient; + const indexPattern = await indexRetriever.getEventIndexPattern(context); // Retrieve the related non-process events for a given process - const relatedEventsQuery = new RelatedEventsQuery(legacyEndpointID, pagination); + const relatedEventsQuery = new RelatedEventsQuery(indexPattern, legacyEndpointID, pagination); const relatedEvents = await relatedEventsQuery.search(client, id); const { total, results: events, nextCursor } = relatedEvents; diff --git a/x-pack/plugins/endpoint/server/test_data/all_metadata_data.json b/x-pack/plugins/endpoint/server/test_data/all_metadata_data.json index 3c8486aa127eaa..48952afb33f687 100644 --- a/x-pack/plugins/endpoint/server/test_data/all_metadata_data.json +++ b/x-pack/plugins/endpoint/server/test_data/all_metadata_data.json @@ -1,115 +1,109 @@ { - "took" : 343, - "timed_out" : false, - "_shards" : { - "total" : 1, - "successful" : 1, - "skipped" : 0, - "failed" : 0 + "took": 343, + "timed_out": false, + "_shards": { + "total": 1, + "successful": 1, + "skipped": 0, + "failed": 0 }, - "hits" : { - "total" : { - "value" : 4, - "relation" : "eq" + "hits": { + "total": { + "value": 4, + "relation": "eq" }, - "max_score" : null, - "hits" : [ + "max_score": null, + "hits": [ { - "_index" : "endpoint-agent", - "_id" : "WqVo1G8BYQH1gtPUgYkC", - "_score" : null, - "_source" : { - "@timestamp" : 1579816615336, - "event" : { - "created" : "2020-01-23T21:56:55.336Z" + "_index": "metadata-endpoint-default-1", + "_id": "WqVo1G8BYQH1gtPUgYkC", + "_score": null, + "_source": { + "@timestamp": 1579816615336, + "event": { + "created": "2020-01-23T21:56:55.336Z" }, "elastic": { "agent": { "id": "56a75650-3c8a-4e4f-ac17-6dd729c650e2" } }, - "endpoint" : { - "policy" : { - "id" : "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" + "endpoint": { + "policy": { + "id": "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" } }, - "agent" : { - "version" : "6.8.3", - "id" : "56a75650-3c8a-4e4f-ac17-6dd729c650e2", + "agent": { + "version": "6.8.3", + "id": "56a75650-3c8a-4e4f-ac17-6dd729c650e2", "name": "Elastic Endpoint" }, - "host" : { - "id" : "7141a48b-e19f-4ae3-89a0-6e7179a84265", - "hostname" : "larimer-0.example.com", - "ip" : "10.21.48.136", - "mac" : "77-be-30-f0-e8-d6", - "architecture" : "x86_64", - "os" : { - "name" : "windows 6.2", - "full" : "Windows Server 2012", - "version" : "6.2", - "variant" : "Windows Server" + "host": { + "id": "7141a48b-e19f-4ae3-89a0-6e7179a84265", + "hostname": "larimer-0.example.com", + "ip": "10.21.48.136", + "mac": "77-be-30-f0-e8-d6", + "architecture": "x86_64", + "os": { + "name": "windows 6.2", + "full": "Windows Server 2012", + "version": "6.2", + "variant": "Windows Server" } } }, - "fields" : { - "host.id.keyword" : [ - "7141a48b-e19f-4ae3-89a0-6e7179a84265" - ] + "fields": { + "host.id.keyword": ["7141a48b-e19f-4ae3-89a0-6e7179a84265"] }, - "sort" : [ - 1579816615336 - ], - "inner_hits" : { - "most_recent" : { - "hits" : { - "total" : { - "value" : 2, - "relation" : "eq" + "sort": [1579816615336], + "inner_hits": { + "most_recent": { + "hits": { + "total": { + "value": 2, + "relation": "eq" }, - "max_score" : null, - "hits" : [ + "max_score": null, + "hits": [ { - "_index" : "endpoint-agent", - "_id" : "WqVo1G8BYQH1gtPUgYkC", - "_score" : null, - "_source" : { - "@timestamp" : 1579816615336, - "event" : { - "created" : "2020-01-23T21:56:55.336Z" + "_index": "metadata-endpoint-default-1", + "_id": "WqVo1G8BYQH1gtPUgYkC", + "_score": null, + "_source": { + "@timestamp": 1579816615336, + "event": { + "created": "2020-01-23T21:56:55.336Z" }, "elastic": { "agent": { "id": "56a75650-3c8a-4e4f-ac17-6dd729c650e2" } }, - "endpoint" : { - "policy" : { - "id" : "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" + "endpoint": { + "policy": { + "id": "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" } }, - "agent" : { - "version" : "6.8.3", - "id" : "56a75650-3c8a-4e4f-ac17-6dd729c650e2", + "agent": { + "version": "6.8.3", + "id": "56a75650-3c8a-4e4f-ac17-6dd729c650e2", "name": "Elastic Endpoint" }, - "host" : { - "id" : "7141a48b-e19f-4ae3-89a0-6e7179a84265", - "hostname" : "larimer-0.example.com", - "ip" : "10.21.48.136", - "mac" : "77-be-30-f0-e8-d6", - "architecture" : "x86_64", - "os" : { - "name" : "windows 6.2", - "full" : "Windows Server 2012", - "version" : "6.2", - "variant" : "Windows Server" + "host": { + "id": "7141a48b-e19f-4ae3-89a0-6e7179a84265", + "hostname": "larimer-0.example.com", + "ip": "10.21.48.136", + "mac": "77-be-30-f0-e8-d6", + "architecture": "x86_64", + "os": { + "name": "windows 6.2", + "full": "Windows Server 2012", + "version": "6.2", + "variant": "Windows Server" } } }, - "sort" : [ - 1579816615336 - ] + "sort": [1579816615336] } ] } @@ -117,101 +111,95 @@ } }, { - "_index" : "endpoint-agent", - "_id" : "W6Vo1G8BYQH1gtPUgYkC", - "_score" : null, - "_source" : { - "@timestamp" : 1579816615336, - "event" : { - "created" : "2020-01-23T21:56:55.336Z" + "_index": "metadata-endpoint-default-1", + "_id": "W6Vo1G8BYQH1gtPUgYkC", + "_score": null, + "_source": { + "@timestamp": 1579816615336, + "event": { + "created": "2020-01-23T21:56:55.336Z" }, "elastic": { "agent": { "id": "c2d84d8f-d355-40de-8b54-5d318d4d1312" } }, - "endpoint" : { - "policy" : { - "id" : "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" + "endpoint": { + "policy": { + "id": "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" } }, - "agent" : { - "version" : "6.4.3", - "id" : "c2d84d8f-d355-40de-8b54-5d318d4d1312", + "agent": { + "version": "6.4.3", + "id": "c2d84d8f-d355-40de-8b54-5d318d4d1312", "name": "Elastic Endpoint" }, - "host" : { - "id" : "f35ec6c1-6562-45b1-818f-2f14c0854adf", - "hostname" : "hildebrandt-6.example.com", - "ip" : "10.53.92.84", - "mac" : "af-f1-8f-51-25-2a", - "architecture" : "x86_64", - "os" : { - "name" : "windows 10.0", - "full" : "Windows 10", - "version" : "10.0", - "variant" : "Windows Pro" + "host": { + "id": "f35ec6c1-6562-45b1-818f-2f14c0854adf", + "hostname": "hildebrandt-6.example.com", + "ip": "10.53.92.84", + "mac": "af-f1-8f-51-25-2a", + "architecture": "x86_64", + "os": { + "name": "windows 10.0", + "full": "Windows 10", + "version": "10.0", + "variant": "Windows Pro" } } }, - "fields" : { - "host.id.keyword" : [ - "f35ec6c1-6562-45b1-818f-2f14c0854adf" - ] + "fields": { + "host.id.keyword": ["f35ec6c1-6562-45b1-818f-2f14c0854adf"] }, - "sort" : [ - 1579816615336 - ], - "inner_hits" : { - "most_recent" : { - "hits" : { - "total" : { - "value" : 2, - "relation" : "eq" + "sort": [1579816615336], + "inner_hits": { + "most_recent": { + "hits": { + "total": { + "value": 2, + "relation": "eq" }, - "max_score" : null, - "hits" : [ + "max_score": null, + "hits": [ { - "_index" : "endpoint-agent", - "_id" : "W6Vo1G8BYQH1gtPUgYkC", - "_score" : null, - "_source" : { - "@timestamp" : 1579816615336, - "event" : { - "created" : "2020-01-23T21:56:55.336Z" + "_index": "metadata-endpoint-default-1", + "_id": "W6Vo1G8BYQH1gtPUgYkC", + "_score": null, + "_source": { + "@timestamp": 1579816615336, + "event": { + "created": "2020-01-23T21:56:55.336Z" }, "elastic": { "agent": { "id": "c2d84d8f-d355-40de-8b54-5d318d4d1312" } }, - "endpoint" : { - "policy" : { - "id" : "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" + "endpoint": { + "policy": { + "id": "C2A9093E-E289-4C0A-AA44-8C32A414FA7A" } }, - "agent" : { - "version" : "6.4.3", - "id" : "c2d84d8f-d355-40de-8b54-5d318d4d1312", + "agent": { + "version": "6.4.3", + "id": "c2d84d8f-d355-40de-8b54-5d318d4d1312", "name": "Elastic Endpoint" }, - "host" : { - "id" : "f35ec6c1-6562-45b1-818f-2f14c0854adf", - "hostname" : "hildebrandt-6.example.com", - "ip" : "10.53.92.84", - "mac" : "af-f1-8f-51-25-2a", - "architecture" : "x86_64", - "os" : { - "name" : "windows 10.0", - "full" : "Windows 10", - "version" : "10.0", - "variant" : "Windows Pro" + "host": { + "id": "f35ec6c1-6562-45b1-818f-2f14c0854adf", + "hostname": "hildebrandt-6.example.com", + "ip": "10.53.92.84", + "mac": "af-f1-8f-51-25-2a", + "architecture": "x86_64", + "os": { + "name": "windows 10.0", + "full": "Windows 10", + "version": "10.0", + "variant": "Windows Pro" } } }, - "sort" : [ - 1579816615336 - ] + "sort": [1579816615336] } ] } @@ -220,9 +208,9 @@ } ] }, - "aggregations" : { - "total" : { - "value" : 2 + "aggregations": { + "total": { + "value": 2 } } } diff --git a/x-pack/plugins/endpoint/server/types.ts b/x-pack/plugins/endpoint/server/types.ts index 6dc128bd3d61e3..46a23060339f41 100644 --- a/x-pack/plugins/endpoint/server/types.ts +++ b/x-pack/plugins/endpoint/server/types.ts @@ -5,11 +5,13 @@ */ import { LoggerFactory } from 'kibana/server'; import { EndpointConfigType } from './config'; +import { IndexPatternRetriever } from './index_pattern'; /** * The context for Endpoint apps. */ export interface EndpointAppContext { + indexPatternRetriever: IndexPatternRetriever; logFactory: LoggerFactory; config(): Promise; } diff --git a/x-pack/plugins/ingest_manager/common/types/models/epm.ts b/x-pack/plugins/ingest_manager/common/types/models/epm.ts index 064341c68a97a1..53ad0310ea6134 100644 --- a/x-pack/plugins/ingest_manager/common/types/models/epm.ts +++ b/x-pack/plugins/ingest_manager/common/types/models/epm.ts @@ -218,6 +218,7 @@ export type PackageInfo = Installable< export interface Installation extends SavedObjectAttributes { installed: AssetReference[]; + es_index_patterns: Record; name: string; version: string; } diff --git a/x-pack/plugins/ingest_manager/server/index.ts b/x-pack/plugins/ingest_manager/server/index.ts index df7c3d7cf0fbfd..7859c44ccfd895 100644 --- a/x-pack/plugins/ingest_manager/server/index.ts +++ b/x-pack/plugins/ingest_manager/server/index.ts @@ -7,6 +7,9 @@ import { schema, TypeOf } from '@kbn/config-schema'; import { PluginInitializerContext } from 'src/core/server'; import { IngestManagerPlugin } from './plugin'; +export { ESIndexPatternService } from './services'; +export { IngestManagerSetupContract } from './plugin'; + export const config = { exposeToBrowser: { epm: true, diff --git a/x-pack/plugins/ingest_manager/server/plugin.ts b/x-pack/plugins/ingest_manager/server/plugin.ts index 45c847fe1f68a6..4dd070a7414f06 100644 --- a/x-pack/plugins/ingest_manager/server/plugin.ts +++ b/x-pack/plugins/ingest_manager/server/plugin.ts @@ -11,7 +11,9 @@ import { Plugin, PluginInitializerContext, SavedObjectsServiceStart, -} from 'src/core/server'; + RecursiveReadonly, +} from 'kibana/server'; +import { deepFreeze } from '../../../../src/core/utils'; import { LicensingPluginSetup } from '../../licensing/server'; import { EncryptedSavedObjectsPluginStart } from '../../encrypted_saved_objects/server'; import { SecurityPluginSetup } from '../../security/server'; @@ -38,7 +40,18 @@ import { } from './routes'; import { IngestManagerConfigType } from '../common'; -import { appContextService } from './services'; +import { + appContextService, + ESIndexPatternService, + ESIndexPatternSavedObjectService, +} from './services'; + +/** + * Describes public IngestManager plugin contract returned at the `setup` stage. + */ +export interface IngestManagerSetupContract { + esIndexPatternService: ESIndexPatternService; +} export interface IngestManagerSetupDeps { licensing: LicensingPluginSetup; @@ -63,7 +76,7 @@ const allSavedObjectTypes = [ ENROLLMENT_API_KEYS_SAVED_OBJECT_TYPE, ]; -export class IngestManagerPlugin implements Plugin { +export class IngestManagerPlugin implements Plugin { private config$: Observable; private security: SecurityPluginSetup | undefined; @@ -71,7 +84,10 @@ export class IngestManagerPlugin implements Plugin { this.config$ = this.initializerContext.config.create(); } - public async setup(core: CoreSetup, deps: IngestManagerSetupDeps) { + public async setup( + core: CoreSetup, + deps: IngestManagerSetupDeps + ): Promise> { if (deps.security) { this.security = deps.security; } @@ -130,6 +146,9 @@ export class IngestManagerPlugin implements Plugin { basePath: core.http.basePath, }); } + return deepFreeze({ + esIndexPatternService: new ESIndexPatternSavedObjectService(), + }); } public async start( diff --git a/x-pack/plugins/ingest_manager/server/saved_objects.ts b/x-pack/plugins/ingest_manager/server/saved_objects.ts index 1c36fda36847db..dc0b4695603e41 100644 --- a/x-pack/plugins/ingest_manager/server/saved_objects.ts +++ b/x-pack/plugins/ingest_manager/server/saved_objects.ts @@ -150,6 +150,10 @@ export const savedObjectMappings = { name: { type: 'keyword' }, version: { type: 'keyword' }, internal: { type: 'boolean' }, + es_index_patterns: { + dynamic: false, + type: 'object', + }, installed: { type: 'nested', properties: { diff --git a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts index 71c9acc6c10da7..832e4772beb0da 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts @@ -136,6 +136,22 @@ export function generateTemplateName(dataset: Dataset): string { return getDatasetAssetBaseName(dataset); } +/** + * Returns a map of the dataset path fields to elasticsearch index pattern. + * @param datasets an array of Dataset objects + */ +export function generateESIndexPatterns(datasets: Dataset[] | undefined): Record { + if (!datasets) { + return {}; + } + + const patterns: Record = {}; + for (const dataset of datasets) { + patterns[dataset.path] = generateTemplateName(dataset) + '-*'; + } + return patterns; +} + function getBaseTemplate(type: string, templateName: string, mappings: Mappings): IndexTemplate { return { // We need to decide which order we use for the templates diff --git a/x-pack/plugins/ingest_manager/server/services/epm/packages/install.ts b/x-pack/plugins/ingest_manager/server/services/epm/packages/install.ts index e250b4f176819a..0a7642752b3e98 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/packages/install.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/packages/install.ts @@ -18,6 +18,7 @@ import * as Registry from '../registry'; import { getObject } from './get_objects'; import { getInstallation } from './index'; import { installTemplates } from '../elasticsearch/template/install'; +import { generateESIndexPatterns } from '../elasticsearch/template/template'; import { installPipelines } from '../elasticsearch/ingest_pipeline/install'; import { installILMPolicy } from '../elasticsearch/ilm/install'; @@ -117,17 +118,18 @@ export async function installPackage(options: { installTemplatePromises, ]); - const toSave = res.flat(); + const toSaveAssetRefs: AssetReference[] = res.flat(); + const toSaveESIndexPatterns = generateESIndexPatterns(registryPackageInfo.datasets); // Save those references in the package manager's state saved object - await saveInstallationReferences({ + return await saveInstallationReferences({ savedObjectsClient, pkgkey, pkgName, pkgVersion, internal, - toSave, + toSaveAssetRefs, + toSaveESIndexPatterns, }); - return toSave; } // TODO: make it an exhaustive list @@ -156,25 +158,44 @@ export async function saveInstallationReferences(options: { pkgName: string; pkgVersion: string; internal: boolean; - toSave: AssetReference[]; + toSaveAssetRefs: AssetReference[]; + toSaveESIndexPatterns: Record; }) { - const { savedObjectsClient, pkgName, pkgVersion, internal, toSave } = options; + const { + savedObjectsClient, + pkgName, + pkgVersion, + internal, + toSaveAssetRefs, + toSaveESIndexPatterns, + } = options; const installation = await getInstallation({ savedObjectsClient, pkgName }); - const savedRefs = installation?.installed || []; + const savedAssetRefs = installation?.installed || []; + const toInstallESIndexPatterns = Object.assign( + installation?.es_index_patterns || {}, + toSaveESIndexPatterns + ); + const mergeRefsReducer = (current: AssetReference[], pending: AssetReference) => { const hasRef = current.find(c => c.id === pending.id && c.type === pending.type); if (!hasRef) current.push(pending); return current; }; - const toInstall = toSave.reduce(mergeRefsReducer, savedRefs); + const toInstallAssetsRefs = toSaveAssetRefs.reduce(mergeRefsReducer, savedAssetRefs); await savedObjectsClient.create( PACKAGES_SAVED_OBJECT_TYPE, - { installed: toInstall, name: pkgName, version: pkgVersion, internal }, + { + installed: toInstallAssetsRefs, + es_index_patterns: toInstallESIndexPatterns, + name: pkgName, + version: pkgVersion, + internal, + }, { id: pkgName, overwrite: true } ); - return toInstall; + return toInstallAssetsRefs; } async function installKibanaSavedObjects({ diff --git a/x-pack/plugins/ingest_manager/server/services/es_index_pattern.ts b/x-pack/plugins/ingest_manager/server/services/es_index_pattern.ts new file mode 100644 index 00000000000000..167e22873979c9 --- /dev/null +++ b/x-pack/plugins/ingest_manager/server/services/es_index_pattern.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 { SavedObjectsClientContract } from 'kibana/server'; +import { getInstallation } from './epm/packages/get'; + +export interface ESIndexPatternService { + getESIndexPattern( + savedObjectsClient: SavedObjectsClientContract, + pkgName: string, + datasetPath: string + ): Promise; +} + +export class ESIndexPatternSavedObjectService implements ESIndexPatternService { + public async getESIndexPattern( + savedObjectsClient: SavedObjectsClientContract, + pkgName: string, + datasetPath: string + ): Promise { + const installation = await getInstallation({ savedObjectsClient, pkgName }); + return installation?.es_index_patterns[datasetPath]; + } +} diff --git a/x-pack/plugins/ingest_manager/server/services/index.ts b/x-pack/plugins/ingest_manager/server/services/index.ts index dd0c898afa425d..d64f1b0c2b6fbe 100644 --- a/x-pack/plugins/ingest_manager/server/services/index.ts +++ b/x-pack/plugins/ingest_manager/server/services/index.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ export { appContextService } from './app_context'; +export { ESIndexPatternService, ESIndexPatternSavedObjectService } from './es_index_pattern'; // Saved object services export { datasourceService } from './datasource'; diff --git a/x-pack/scripts/functional_tests.js b/x-pack/scripts/functional_tests.js index 1d5b39eee30d4a..974f3eb6db60ff 100644 --- a/x-pack/scripts/functional_tests.js +++ b/x-pack/scripts/functional_tests.js @@ -47,6 +47,7 @@ const onlyNotInCoverageTests = [ require.resolve('../test/licensing_plugin/config.ts'), require.resolve('../test/licensing_plugin/config.public.ts'), require.resolve('../test/licensing_plugin/config.legacy.ts'), + require.resolve('../test/endpoint_api_integration_no_ingest/config.ts'), ]; require('@kbn/plugin-helpers').babelRegister(); diff --git a/x-pack/test/api_integration/apis/endpoint/index.ts b/x-pack/test/api_integration/apis/endpoint/index.ts index 4ffd0c3b6044b4..0a5f9aa595b8a3 100644 --- a/x-pack/test/api_integration/apis/endpoint/index.ts +++ b/x-pack/test/api_integration/apis/endpoint/index.ts @@ -6,9 +6,17 @@ import { FtrProviderContext } from '../../ftr_provider_context'; -export default function endpointAPIIntegrationTests({ loadTestFile }: FtrProviderContext) { +export default function endpointAPIIntegrationTests({ + loadTestFile, + getService, +}: FtrProviderContext) { describe('Endpoint plugin', function() { + const ingestManager = getService('ingestManager'); this.tags(['endpoint']); + before(async () => { + await ingestManager.setup(); + }); + loadTestFile(require.resolve('./index_pattern')); loadTestFile(require.resolve('./resolver')); loadTestFile(require.resolve('./metadata')); loadTestFile(require.resolve('./alerts')); diff --git a/x-pack/test/api_integration/apis/endpoint/index_pattern.ts b/x-pack/test/api_integration/apis/endpoint/index_pattern.ts new file mode 100644 index 00000000000000..d3ffd67defef1b --- /dev/null +++ b/x-pack/test/api_integration/apis/endpoint/index_pattern.ts @@ -0,0 +1,27 @@ +/* + * 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 expect from '@kbn/expect/expect.js'; +import { FtrProviderContext } from '../../ftr_provider_context'; + +export default function({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + + describe('Endpoint index pattern API', () => { + it('should retrieve the index pattern for events', async () => { + const { body } = await supertest.get('/api/endpoint/index_pattern/events').expect(200); + expect(body.indexPattern).to.eql('events-endpoint-*'); + }); + + it('should retrieve the index pattern for metadata', async () => { + const { body } = await supertest.get('/api/endpoint/index_pattern/metadata').expect(200); + expect(body.indexPattern).to.eql('metrics-endpoint-*'); + }); + + it('should not retrieve the index pattern for an invalid key', async () => { + await supertest.get('/api/endpoint/index_pattern/blah').expect(404); + }); + }); +} diff --git a/x-pack/test/api_integration/apis/endpoint/metadata.ts b/x-pack/test/api_integration/apis/endpoint/metadata.ts index 887be6b85b100c..943782c79ada7b 100644 --- a/x-pack/test/api_integration/apis/endpoint/metadata.ts +++ b/x-pack/test/api_integration/apis/endpoint/metadata.ts @@ -159,7 +159,7 @@ export default function({ getService }: FtrProviderContext) { .post('/api/endpoint/metadata') .set('kbn-xsrf', 'xxx') .send({ - filter: `host.os.variant.keyword:${variantValue}`, + filter: `host.os.variant:${variantValue}`, }) .expect(200); expect(body.total).to.eql(2); diff --git a/x-pack/test/api_integration/apis/endpoint/resolver.ts b/x-pack/test/api_integration/apis/endpoint/resolver.ts index c1e9240c09951f..e8d336e875b991 100644 --- a/x-pack/test/api_integration/apis/endpoint/resolver.ts +++ b/x-pack/test/api_integration/apis/endpoint/resolver.ts @@ -17,8 +17,8 @@ export default function resolverAPIIntegrationTests({ getService }: FtrProviderC const esArchiver = getService('esArchiver'); describe('Resolver', () => { - before(() => esArchiver.load('endpoint/resolver/api_feature')); - after(() => esArchiver.unload('endpoint/resolver/api_feature')); + before(async () => await esArchiver.load('endpoint/resolver/api_feature')); + after(async () => await esArchiver.unload('endpoint/resolver/api_feature')); describe('related events endpoint', () => { const endpointID = '5a0c957f-b8e7-4538-965e-57e8bb86ad3a'; diff --git a/x-pack/test/api_integration/services/index.ts b/x-pack/test/api_integration/services/index.ts index 9c945f557a2d8c..84b8476bd1dd10 100644 --- a/x-pack/test/api_integration/services/index.ts +++ b/x-pack/test/api_integration/services/index.ts @@ -22,6 +22,7 @@ import { import { SiemGraphQLClientProvider, SiemGraphQLClientFactoryProvider } from './siem_graphql_client'; import { InfraOpsSourceConfigurationProvider } from './infraops_source_configuration'; import { MachineLearningProvider } from './ml'; +import { IngestManagerProvider } from './ingest_manager'; export const services = { ...commonServices, @@ -39,4 +40,5 @@ export const services = { supertestWithoutAuth: SupertestWithoutAuthProvider, usageAPI: UsageAPIProvider, ml: MachineLearningProvider, + ingestManager: IngestManagerProvider, }; diff --git a/x-pack/test/api_integration/services/ingest_manager.ts b/x-pack/test/api_integration/services/ingest_manager.ts new file mode 100644 index 00000000000000..2b70a20ca0362d --- /dev/null +++ b/x-pack/test/api_integration/services/ingest_manager.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 { FtrProviderContext } from '../ftr_provider_context'; +import { setupRouteService, fleetSetupRouteService } from '../../../plugins/ingest_manager/common'; + +export function IngestManagerProvider({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + return { + async setup() { + const headers = { accept: 'application/json', 'kbn-xsrf': 'some-xsrf-token' }; + + const { body } = await supertest + .get(fleetSetupRouteService.getFleetSetupPath()) + .set(headers) + .expect(200); + + if (!body.isInitialized) { + await supertest + .post(setupRouteService.getSetupPath()) + .set(headers) + .expect(200); + } + }, + }; +} diff --git a/x-pack/test/endpoint_api_integration_no_ingest/apis/alerts.ts b/x-pack/test/endpoint_api_integration_no_ingest/apis/alerts.ts new file mode 100644 index 00000000000000..b75d69238d653a --- /dev/null +++ b/x-pack/test/endpoint_api_integration_no_ingest/apis/alerts.ts @@ -0,0 +1,27 @@ +/* + * 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 { FtrProviderContext } from '../ftr_provider_context'; + +export default function({ getService }: FtrProviderContext) { + const esArchiver = getService('esArchiver'); + const supertest = getService('supertest'); + + describe('Endpoint alert API without ingest manager initialized', () => { + before(async () => { + await esArchiver.load('endpoint/alerts/api_feature'); + await esArchiver.load('endpoint/alerts/host_api_feature'); + }); + + after(async () => { + await esArchiver.unload('endpoint/alerts/api_feature'); + await esArchiver.unload('endpoint/alerts/host_api_feature'); + }); + + it('should return a 500', async () => { + await supertest.get('/api/endpoint/alerts').expect(500); + }); + }); +} diff --git a/x-pack/test/endpoint_api_integration_no_ingest/apis/index.ts b/x-pack/test/endpoint_api_integration_no_ingest/apis/index.ts new file mode 100644 index 00000000000000..6110f398df5a0b --- /dev/null +++ b/x-pack/test/endpoint_api_integration_no_ingest/apis/index.ts @@ -0,0 +1,16 @@ +/* + * 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 { FtrProviderContext } from '../ftr_provider_context'; + +export default function endpointAPIIntegrationTests({ loadTestFile }: FtrProviderContext) { + describe('Endpoint plugin', function() { + this.tags('ciGroup7'); + loadTestFile(require.resolve('./index_pattern')); + loadTestFile(require.resolve('./metadata')); + loadTestFile(require.resolve('./alerts')); + }); +} diff --git a/x-pack/test/endpoint_api_integration_no_ingest/apis/index_pattern.ts b/x-pack/test/endpoint_api_integration_no_ingest/apis/index_pattern.ts new file mode 100644 index 00000000000000..664ef7d96847c4 --- /dev/null +++ b/x-pack/test/endpoint_api_integration_no_ingest/apis/index_pattern.ts @@ -0,0 +1,16 @@ +/* + * 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 { FtrProviderContext } from '../ftr_provider_context'; + +export default function({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + + describe('Endpoint index pattern API without ingest manager initialized', () => { + it('should not retrieve the index pattern for events', async () => { + await supertest.get('/api/endpoint/index_pattern/events').expect(404); + }); + }); +} diff --git a/x-pack/test/endpoint_api_integration_no_ingest/apis/metadata.ts b/x-pack/test/endpoint_api_integration_no_ingest/apis/metadata.ts new file mode 100644 index 00000000000000..886d3cf3d95167 --- /dev/null +++ b/x-pack/test/endpoint_api_integration_no_ingest/apis/metadata.ts @@ -0,0 +1,22 @@ +/* + * 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 { FtrProviderContext } from '../ftr_provider_context'; + +export default function({ getService }: FtrProviderContext) { + const esArchiver = getService('esArchiver'); + const supertest = getService('supertest'); + describe('test metadata api when ingest manager is not initialized', () => { + before(async () => await esArchiver.load('endpoint/metadata/api_feature')); + after(async () => await esArchiver.unload('endpoint/metadata/api_feature')); + it('metadata api should return a 500', async () => { + await supertest + .post('/api/endpoint/metadata') + .set('kbn-xsrf', 'xxx') + .send() + .expect(500); + }); + }); +} diff --git a/x-pack/test/endpoint_api_integration_no_ingest/config.ts b/x-pack/test/endpoint_api_integration_no_ingest/config.ts new file mode 100644 index 00000000000000..bf8b68a7e991c0 --- /dev/null +++ b/x-pack/test/endpoint_api_integration_no_ingest/config.ts @@ -0,0 +1,19 @@ +/* + * 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 { FtrConfigProviderContext } from '@kbn/test/types/ftr'; + +export default async function({ readConfigFile }: FtrConfigProviderContext) { + const xPackAPITestsConfig = await readConfigFile(require.resolve('../api_integration/config.js')); + + return { + ...xPackAPITestsConfig.getAll(), + testFiles: [require.resolve('./apis')], + junit: { + reportName: 'X-Pack Endpoint API Integration Without Ingest Tests', + }, + }; +} diff --git a/x-pack/test/endpoint_api_integration_no_ingest/ftr_provider_context.d.ts b/x-pack/test/endpoint_api_integration_no_ingest/ftr_provider_context.d.ts new file mode 100644 index 00000000000000..2751dbcdc65398 --- /dev/null +++ b/x-pack/test/endpoint_api_integration_no_ingest/ftr_provider_context.d.ts @@ -0,0 +1,11 @@ +/* + * 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 { GenericFtrProviderContext } from '@kbn/test/types/ftr'; + +import { services } from '../api_integration/services'; + +export type FtrProviderContext = GenericFtrProviderContext; diff --git a/x-pack/test/functional/es_archives/endpoint/alerts/host_api_feature/data.json.gz b/x-pack/test/functional/es_archives/endpoint/alerts/host_api_feature/data.json.gz index 94a96c54ee9cb66afbd74d89be6a774720c8c94e..a71281c0ecfec93e0a51aa3473dbbbf565a10f9b 100644 GIT binary patch literal 753 zcmVQOZ*BnHl}k_CKoEfM`4v&ljJ0p?_EbZuIH0N( zQc+d)u+PM8Y)6h0post8bs!musT1Ah2*=*TtobuWm=8c1(tp{dF z3Wgy8QdowyMyW(*bo6Mo^z}Ti%GOjQG*P36rMt~hYtMI2n^n`?-t5RWKAezDAw^H& zlt=~a1Z9wAjDb9%Bx9I;&eCklhiF&oVwLdAyqOG7moc`y9FH~{cYUXpz4&eIb>m$( zWj)hLHSbuqlC=kC@g1}&!lbbL&tf}O_rY0a9JVF^PE`ubc?^nJ0))ww8b!I3XveB8 z;?M11F-kCsPl^)4(%nR~YnUbk#Ygp)BuykvFcXid`L%Uap>6jp9(zCmX5baXS{St7 zvYK}*85Yy&eML%FUCoCVzK*RjBnXrJrMr4i6iG*6sq0*?iq+Yyqqg0MWKZn}>;JpK z-C%HgIH$*^!|8ZDdrM9Q7YA_4ov@w-px82CK8S2DNcmw^Gjqx zC{L(7m{LZggJ3KK0z!lCkk1(i;3i&6;2e1NT81%t9^L3XdXe3)b@e2;s}24mxwc2{ z zag-NO#DDKPkdW8`B1A7pu@%qG?9S`kx$Shjz4^@~^geWZzH+^zTCg<3MJ>5aAL+C7 z_3F*}mk~KDj{T=xT%P|v|M4w;U#Zs`V;`<-r7-rBsvOV3^h0{nwZg1gOx@#_N%C=C zj>2qiMw29^LUF=5V}c8Pv{qT|v1PMyC757&upXju0l32)EGH6_betMPaz$+K=+SB! zrn9md*QPRKneII--EEFq`@MVGq#Bm)W=FR1;RFj!G&_Y;R2ujRDWE7g2X(@*;FNzZ z@?y(}WH&aWRhlo$`Jj8cOtF>Yes803*LG^zir-CxnFrrYS<7@#%^H@qWbMIO`VYpA z;$Y;&pT%~n?t^pOdg^Qhn(G|64-_;y1mr4bRx_a#*|DmN_;Wj0N-|2)lama2zMF`8 zjj{|$dUR_^u}sm7a`~8=Ut33wjBB1HQV(dL9D;^a3rqG}RtZlOBZ+qMjZzp^3*)kBjhFol8_Nv=_l!wnR;Jzrj)&g&Nv-nH8-&`Z8`%r5rt+D zgP_1oonWLXOqDJ^W*kLw0G(Q8HJr2sAPP+EW>U7PMU^2F8B+(d$yss`tb>Rk4VVV+ zf`bHM(`5wSL*TC^my+j!P0o`SiTygQp2T&v!5i}GTD%S}{sXUCz07OwqK>&?fXc{p z+0y{lash-0V^Bq^Jb8xKcQ#E^%3i~(yZ$Ts!&I2bo@r`>B7`uITGkgLiK*WWg{Zk> zXgLpByvQq88BKE$5%&z!R0mAI_6oszo-%SUuPW3yS`BDG3Gk}HD*;VXj{v4oTSNUm OM(sbt^Zzdg3jhEPfL<^F diff --git a/x-pack/test/functional/es_archives/endpoint/alerts/host_api_feature/mappings.json b/x-pack/test/functional/es_archives/endpoint/alerts/host_api_feature/mappings.json index 61ddf3c4e65dbd..f9d5de0d0a94ce 100644 --- a/x-pack/test/functional/es_archives/endpoint/alerts/host_api_feature/mappings.json +++ b/x-pack/test/functional/es_archives/endpoint/alerts/host_api_feature/mappings.json @@ -1,33 +1,62 @@ { "type": "index", "value": { - "aliases": { - }, - "index": "endpoint-agent-1", + "aliases": {}, + "index": "metrics-endpoint-default-1", "mappings": { + "_meta": { + "version": "1.5.0-dev" + }, + "date_detection": false, + "dynamic_templates": [ + { + "strings_as_keyword": { + "mapping": { + "ignore_above": 1024, + "type": "keyword" + }, + "match_mapping_type": "string" + } + } + ], "properties": { "@timestamp": { - "type": "long" + "type": "date" }, - "agent": { + "elastic": { "properties": { - "id": { - "fields": { - "keyword": { - "ignore_above": 256, + "agent": { + "properties": { + "id": { + "ignore_above": 1024, "type": "keyword" } }, - "type": "text" + "type": "object" + } + } + }, + "agent": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" }, "version": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ecs": { + "properties": { + "version": { + "ignore_above": 1024, + "type": "keyword" } } }, @@ -36,109 +65,71 @@ "policy": { "properties": { "id": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" - }, - "name": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" } - } + }, + "type": "object" } } }, "event": { "properties": { "created": { - "type": "long" + "type": "date" } } }, "host": { "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, "hostname": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "id": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "ip": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "type": "ip" }, "mac": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "os": { "properties": { "full": { "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" + "text": { + "norms": false, + "type": "text" } }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "name": { "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" + "text": { + "norms": false, + "type": "text" } }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "variant": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "version": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" } } } @@ -146,11 +137,16 @@ } } }, + "order": 1, "settings": { "index": { - "number_of_replicas": "1", - "number_of_shards": "1" + "mapping": { + "total_fields": { + "limit": 10000 + } + }, + "refresh_interval": "5s" } } } -} \ No newline at end of file +} diff --git a/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/data.json b/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/data.json index 2046f46db9f530..d3617dc2363759 100644 --- a/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/data.json +++ b/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/data.json @@ -2,7 +2,7 @@ "type": "doc", "value": { "id": "3KVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579881969541, "agent": { @@ -51,7 +51,7 @@ "type": "doc", "value": { "id": "3aVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579881969541, "agent": { @@ -99,7 +99,7 @@ "type": "doc", "value": { "id": "3qVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579881969541, "agent": { @@ -145,7 +145,7 @@ "type": "doc", "value": { "id": "36VN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579878369541, "agent": { @@ -194,7 +194,7 @@ "type": "doc", "value": { "id": "4KVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579878369541, "agent": { @@ -241,7 +241,7 @@ "type": "doc", "value": { "id": "4aVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579878369541, "agent": { @@ -288,7 +288,7 @@ "type": "doc", "value": { "id": "4qVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579874769541, "agent": { @@ -336,7 +336,7 @@ "type": "doc", "value": { "id": "46VN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579874769541, "agent": { @@ -383,7 +383,7 @@ "type": "doc", "value": { "id": "5KVN2G8BYQH1gtPUuYk7", - "index": "endpoint-agent-1", + "index": "metrics-endpoint-default-1", "source": { "@timestamp": 1579874769541, "agent": { diff --git a/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/mappings.json b/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/mappings.json index c9a6c183f0489d..f9d5de0d0a94ce 100644 --- a/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/mappings.json +++ b/x-pack/test/functional/es_archives/endpoint/metadata/api_feature/mappings.json @@ -1,50 +1,62 @@ { "type": "index", "value": { - "aliases": { - }, - "index": "endpoint-agent-1", + "aliases": {}, + "index": "metrics-endpoint-default-1", "mappings": { + "_meta": { + "version": "1.5.0-dev" + }, + "date_detection": false, + "dynamic_templates": [ + { + "strings_as_keyword": { + "mapping": { + "ignore_above": 1024, + "type": "keyword" + }, + "match_mapping_type": "string" + } + } + ], "properties": { "@timestamp": { - "type": "long" + "type": "date" }, "elastic": { "properties": { "agent": { "properties": { "id": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" } - } + }, + "type": "object" } } }, "agent": { "properties": { "id": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" }, "version": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ecs": { + "properties": { + "version": { + "ignore_above": 1024, + "type": "keyword" } } }, @@ -53,109 +65,71 @@ "policy": { "properties": { "id": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" - }, - "name": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" } - } + }, + "type": "object" } } }, "event": { "properties": { "created": { - "type": "long" + "type": "date" } } }, "host": { "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, "hostname": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "id": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "ip": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "type": "ip" }, "mac": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "os": { "properties": { "full": { "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" + "text": { + "norms": false, + "type": "text" } }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "name": { "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" + "text": { + "norms": false, + "type": "text" } }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "variant": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" }, "version": { - "fields": { - "keyword": { - "ignore_above": 256, - "type": "keyword" - } - }, - "type": "text" + "ignore_above": 1024, + "type": "keyword" } } } @@ -163,10 +137,15 @@ } } }, + "order": 1, "settings": { "index": { - "number_of_replicas": "1", - "number_of_shards": "1" + "mapping": { + "total_fields": { + "limit": 10000 + } + }, + "refresh_interval": "5s" } } } diff --git a/x-pack/test/functional_endpoint/config.ts b/x-pack/test/functional_endpoint/config.ts index 37bf57b67b47e4..6ae78ab9d48ac8 100644 --- a/x-pack/test/functional_endpoint/config.ts +++ b/x-pack/test/functional_endpoint/config.ts @@ -30,6 +30,7 @@ export default async function({ readConfigFile }: FtrConfigProviderContext) { ...xpackFunctionalConfig.get('kbnTestServer.serverArgs'), '--xpack.endpoint.enabled=true', '--xpack.ingestManager.enabled=true', + '--xpack.ingestManager.epm.enabled=true', '--xpack.ingestManager.fleet.enabled=true', ], }, From ad41eea211268a2251749dcd865eaf9cf703d8fd Mon Sep 17 00:00:00 2001 From: Thomas Neirynck Date: Thu, 16 Apr 2020 16:26:13 -0400 Subject: [PATCH 03/59] [Maps] Add 3rd party vector tile support (#62084) Adds support for adding an external vector tile service to Maps. This is experimental functionality. To enable, add `xpack.maps.enableVectorTiles: true` to the `kibana.yml`configuration file. --- src/plugins/kibana_react/public/index.ts | 2 +- .../public/validated_range/index.ts | 2 +- x-pack/legacy/plugins/maps/index.js | 2 + .../layer_addpanel/view.js | 4 +- .../layer_panel/layer_settings/index.js | 3 + .../layer_settings/layer_settings.js | 10 +- .../connected_components/map/mb/view.js | 9 +- x-pack/legacy/plugins/maps/public/plugin.ts | 7 - .../maps/public/selectors/map_selectors.js | 4 + .../public/selectors/map_selectors.test.js | 1 + x-pack/plugins/maps/common/constants.ts | 4 +- .../data_request_descriptor_types.d.ts | 4 +- .../descriptor_types/descriptor_types.d.ts | 16 +- x-pack/plugins/maps/public/kibana_services.js | 4 +- x-pack/plugins/maps/public/layers/layer.d.ts | 15 +- x-pack/plugins/maps/public/layers/layer.js | 36 +++- .../maps/public/layers/load_layer_wizards.js | 30 --- .../maps/public/layers/load_layer_wizards.ts | 66 +++++++ .../es_geo_grid_source.d.ts | 1 + .../es_search_source/es_search_source.d.ts | 1 + .../index.ts} | 7 +- .../layer_wizard.tsx | 42 +++++ .../mvt_single_layer_vector_source.ts | 175 ++++++++++++++++++ .../mvt_single_layer_vector_source_editor.tsx | 128 +++++++++++++ .../maps/public/layers/sources/source.d.ts | 6 +- .../maps/public/layers/sources/source.js | 19 +- .../public/layers/sources/source_registry.ts | 2 +- .../layers/sources/vector_feature_types.ts | 11 ++ .../sources/vector_source/vector_source.d.ts | 22 ++- .../sources/vector_source/vector_source.js | 4 + .../vector/components/vector_style_editor.js | 24 +-- .../layers/styles/vector/vector_style.d.ts | 10 +- .../maps/public/layers/tiled_vector_layer.tsx | 170 +++++++++++++++++ .../maps/public/layers/vector_layer.d.ts | 24 ++- .../maps/public/layers/vector_layer.js | 53 ++++-- .../maps/public/layers/vector_tile_layer.js | 14 +- x-pack/plugins/maps/public/plugin.ts | 2 + 37 files changed, 816 insertions(+), 118 deletions(-) delete mode 100644 x-pack/plugins/maps/public/layers/load_layer_wizards.js create mode 100644 x-pack/plugins/maps/public/layers/load_layer_wizards.ts rename x-pack/plugins/maps/public/layers/sources/{vector_feature_types.js => mvt_single_layer_vector_source/index.ts} (71%) create mode 100644 x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/layer_wizard.tsx create mode 100644 x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source.ts create mode 100644 x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source_editor.tsx create mode 100644 x-pack/plugins/maps/public/layers/sources/vector_feature_types.ts create mode 100644 x-pack/plugins/maps/public/layers/tiled_vector_layer.tsx diff --git a/src/plugins/kibana_react/public/index.ts b/src/plugins/kibana_react/public/index.ts index 9ad9f14ac5659d..9bec91b859ab77 100644 --- a/src/plugins/kibana_react/public/index.ts +++ b/src/plugins/kibana_react/public/index.ts @@ -25,7 +25,7 @@ export * from './ui_settings'; export * from './field_icon'; export * from './table_list_view'; export * from './split_panel'; -export { ValidatedDualRange } from './validated_range'; +export { ValidatedDualRange, Value } from './validated_range'; export * from './notifications'; export { Markdown, MarkdownSimple } from './markdown'; export { reactToUiComponent, uiToReactComponent } from './adapters'; diff --git a/src/plugins/kibana_react/public/validated_range/index.ts b/src/plugins/kibana_react/public/validated_range/index.ts index bc643373f5e603..7d720ec842a43e 100644 --- a/src/plugins/kibana_react/public/validated_range/index.ts +++ b/src/plugins/kibana_react/public/validated_range/index.ts @@ -17,4 +17,4 @@ * under the License. */ -export { ValidatedDualRange } from './validated_dual_range'; +export { ValidatedDualRange, Value } from './validated_dual_range'; diff --git a/x-pack/legacy/plugins/maps/index.js b/x-pack/legacy/plugins/maps/index.js index 1a7f478d3bbad4..f4e01efc05f45f 100644 --- a/x-pack/legacy/plugins/maps/index.js +++ b/x-pack/legacy/plugins/maps/index.js @@ -38,6 +38,7 @@ export function maps(kibana) { return { showMapVisualizationTypes: serverConfig.get('xpack.maps.showMapVisualizationTypes'), showMapsInspectorAdapter: serverConfig.get('xpack.maps.showMapsInspectorAdapter'), + enableVectorTiles: serverConfig.get('xpack.maps.enableVectorTiles'), preserveDrawingBuffer: serverConfig.get('xpack.maps.preserveDrawingBuffer'), isEmsEnabled: mapConfig.includeElasticMapsService, emsFontLibraryUrl: mapConfig.emsFontLibraryUrl, @@ -85,6 +86,7 @@ export function maps(kibana) { showMapVisualizationTypes: Joi.boolean().default(false), showMapsInspectorAdapter: Joi.boolean().default(false), // flag used in functional testing preserveDrawingBuffer: Joi.boolean().default(false), // flag used in functional testing + enableVectorTiles: Joi.boolean().default(false), // flag used to enable/disable vector-tiles }).default(); }, diff --git a/x-pack/legacy/plugins/maps/public/connected_components/layer_addpanel/view.js b/x-pack/legacy/plugins/maps/public/connected_components/layer_addpanel/view.js index a54df69471aa04..92fcf01f3901f5 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/layer_addpanel/view.js +++ b/x-pack/legacy/plugins/maps/public/connected_components/layer_addpanel/view.js @@ -63,13 +63,13 @@ export class AddLayerPanel extends Component { return; } - const style = + const styleDescriptor = this.state.layer && this.state.layer.getCurrentStyle() ? this.state.layer.getCurrentStyle().getDescriptor() : null; const layerInitProps = { ...options, - style: style, + style: styleDescriptor, }; const newLayer = source.createDefaultLayer(layerInitProps, this.props.mapColors); if (!this._isMounted) { diff --git a/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/index.js b/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/index.js index 73c98db8e429de..e8f980bbbf2b40 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/index.js +++ b/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/index.js @@ -13,10 +13,13 @@ import { updateLayerMinZoom, updateLayerAlpha, } from '../../../actions/map_actions'; +import { MAX_ZOOM } from '../../../../../../../plugins/maps/common/constants'; function mapStateToProps(state = {}) { const selectedLayer = getSelectedLayer(state); return { + minVisibilityZoom: selectedLayer.getMinSourceZoom(), + maxVisibilityZoom: MAX_ZOOM, alpha: selectedLayer.getAlpha(), label: selectedLayer.getLabel(), layerId: selectedLayer.getId(), diff --git a/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/layer_settings.js b/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/layer_settings.js index bd274509436382..1d352913e54a36 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/layer_settings.js +++ b/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/layer_settings/layer_settings.js @@ -13,8 +13,6 @@ import { ValidatedRange } from '../../../../../../../plugins/maps/public/compone import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { ValidatedDualRange } from '../../../../../../../../src/plugins/kibana_react/public'; -import { MAX_ZOOM, MIN_ZOOM } from '../../../../common/constants'; - export function LayerSettings(props) { const onLabelChange = event => { const label = event.target.value; @@ -22,8 +20,8 @@ export function LayerSettings(props) { }; const onZoomChange = ([min, max]) => { - props.updateMinZoom(props.layerId, Math.max(MIN_ZOOM, parseInt(min, 10))); - props.updateMaxZoom(props.layerId, Math.min(MAX_ZOOM, parseInt(max, 10))); + props.updateMinZoom(props.layerId, Math.max(props.minVisibilityZoom, parseInt(min, 10))); + props.updateMaxZoom(props.layerId, Math.min(props.maxVisibilityZoom, parseInt(max, 10))); }; const onAlphaChange = alpha => { @@ -38,8 +36,8 @@ export function LayerSettings(props) { defaultMessage: 'Visibility', })} formRowDisplay="columnCompressed" - min={MIN_ZOOM} - max={MAX_ZOOM} + min={props.minVisibilityZoom} + max={props.maxVisibilityZoom} value={[props.minZoom, props.maxZoom]} showInput="inputWithPopover" showRange diff --git a/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js b/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js index 1fe3d0d493ee79..a36e1d7048e92f 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js +++ b/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js @@ -14,7 +14,12 @@ import { } from './utils'; // eslint-disable-next-line @kbn/eslint/no-restricted-paths import { getGlyphUrl, isRetina } from '../../../../../../../plugins/maps/public/meta'; -import { DECIMAL_DEGREES_PRECISION, ZOOM_PRECISION } from '../../../../common/constants'; +import { + DECIMAL_DEGREES_PRECISION, + MAX_ZOOM, + MIN_ZOOM, + ZOOM_PRECISION, +} from '../../../../common/constants'; import mapboxgl from 'mapbox-gl/dist/mapbox-gl-csp'; import mbWorkerUrl from '!!file-loader!mapbox-gl/dist/mapbox-gl-csp-worker'; import mbRtlPlugin from '!!file-loader!@mapbox/mapbox-gl-rtl-text/mapbox-gl-rtl-text.min.js'; @@ -132,6 +137,8 @@ export class MBMapContainer extends React.Component { scrollZoom: this.props.scrollZoom, preserveDrawingBuffer: getInjectedVarFunc()('preserveDrawingBuffer', false), interactive: !this.props.disableInteractive, + minZoom: MIN_ZOOM, + maxZoom: MAX_ZOOM, }; const initialView = _.get(this.props.goto, 'center'); if (initialView) { diff --git a/x-pack/legacy/plugins/maps/public/plugin.ts b/x-pack/legacy/plugins/maps/public/plugin.ts index 4ec068ff440294..71f1a30c1fbef9 100644 --- a/x-pack/legacy/plugins/maps/public/plugin.ts +++ b/x-pack/legacy/plugins/maps/public/plugin.ts @@ -4,13 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -// eslint-disable-next-line @kbn/eslint/no-restricted-paths -import '../../../../plugins/maps/public/layers/layer_wizard_registry'; -// eslint-disable-next-line @kbn/eslint/no-restricted-paths -import '../../../../plugins/maps/public/layers/sources/source_registry'; -// eslint-disable-next-line @kbn/eslint/no-restricted-paths -import '../../../../plugins/maps/public/layers/load_layer_wizards'; - import { Plugin, CoreStart, CoreSetup } from 'src/core/public'; // @ts-ignore import { Start as InspectorStartContract } from 'src/plugins/inspector/public'; diff --git a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js index f350a2c9447563..1e710259355198 100644 --- a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js +++ b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js @@ -19,6 +19,8 @@ import { BlendedVectorLayer } from '../../../../../plugins/maps/public/layers/bl // eslint-disable-next-line @kbn/eslint/no-restricted-paths import { getTimeFilter } from '../../../../../plugins/maps/public/kibana_services'; // eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { TiledVectorLayer } from '../../../../../plugins/maps/public/layers/tiled_vector_layer'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths import { getInspectorAdapters } from '../../../../../plugins/maps/public/reducers/non_serializable_instances'; import { copyPersistentState, @@ -51,6 +53,8 @@ function createLayerInstance(layerDescriptor, inspectorAdapters) { return new HeatmapLayer({ layerDescriptor, source }); case BlendedVectorLayer.type: return new BlendedVectorLayer({ layerDescriptor, source }); + case TiledVectorLayer.type: + return new TiledVectorLayer({ layerDescriptor, source }); default: throw new Error(`Unrecognized layerType ${layerDescriptor.type}`); } diff --git a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js index b83be301653b80..72cc7486175401 100644 --- a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js +++ b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js @@ -5,6 +5,7 @@ */ jest.mock('../../../../../plugins/maps/public/layers/vector_layer', () => {}); +jest.mock('../../../../../plugins/maps/public/layers/tiled_vector_layer', () => {}); jest.mock('../../../../../plugins/maps/public/layers/blended_vector_layer', () => {}); jest.mock('../../../../../plugins/maps/public/layers/heatmap_layer', () => {}); jest.mock('../../../../../plugins/maps/public/layers/vector_tile_layer', () => {}); diff --git a/x-pack/plugins/maps/common/constants.ts b/x-pack/plugins/maps/common/constants.ts index 1468bf7fdc1f27..9808a62852a944 100644 --- a/x-pack/plugins/maps/common/constants.ts +++ b/x-pack/plugins/maps/common/constants.ts @@ -46,9 +46,10 @@ export function createMapPath(id: string) { export enum LAYER_TYPE { TILE = 'TILE', VECTOR = 'VECTOR', - VECTOR_TILE = 'VECTOR_TILE', + VECTOR_TILE = 'VECTOR_TILE', // for static display of mvt vector tiles with a mapbox stylesheet. Does not support any ad-hoc configurations. Used for consuming EMS vector tiles. HEATMAP = 'HEATMAP', BLENDED_VECTOR = 'BLENDED_VECTOR', + TILED_VECTOR = 'TILED_VECTOR', // similar to a regular vector-layer, but it consumes the data as .mvt tilea iso GeoJson. It supports similar ad-hoc configurations like a regular vector layer (E.g. using IVectorStyle), although there is some loss of functionality e.g. does not support term joining } export enum SORT_ORDER { @@ -67,6 +68,7 @@ export enum SOURCE_TYPES { KIBANA_TILEMAP = 'KIBANA_TILEMAP', REGIONMAP_FILE = 'REGIONMAP_FILE', GEOJSON_FILE = 'GEOJSON_FILE', + MVT_SINGLE_LAYER = 'MVT_SINGLE_LAYER', } export enum FIELD_ORIGIN { diff --git a/x-pack/plugins/maps/common/descriptor_types/data_request_descriptor_types.d.ts b/x-pack/plugins/maps/common/descriptor_types/data_request_descriptor_types.d.ts index 26044d28d53a32..e94dc6694b38d1 100644 --- a/x-pack/plugins/maps/common/descriptor_types/data_request_descriptor_types.d.ts +++ b/x-pack/plugins/maps/common/descriptor_types/data_request_descriptor_types.d.ts @@ -31,12 +31,12 @@ type ESGeoGridSourceSyncMeta = { requestType: RENDER_AS; }; -export type VectorSourceSyncMeta = ESSearchSourceSyncMeta | ESGeoGridSourceSyncMeta; +export type VectorSourceSyncMeta = ESSearchSourceSyncMeta | ESGeoGridSourceSyncMeta | null; export type VectorSourceRequestMeta = MapFilters & { applyGlobalQuery: boolean; fieldNames: string[]; - geogridPrecision: number; + geogridPrecision?: number; sourceQuery: MapQuery; sourceMeta: VectorSourceSyncMeta; }; diff --git a/x-pack/plugins/maps/common/descriptor_types/descriptor_types.d.ts b/x-pack/plugins/maps/common/descriptor_types/descriptor_types.d.ts index ff285877750c5c..f8175b0ed3f109 100644 --- a/x-pack/plugins/maps/common/descriptor_types/descriptor_types.d.ts +++ b/x-pack/plugins/maps/common/descriptor_types/descriptor_types.d.ts @@ -94,6 +94,18 @@ export type XYZTMSSourceDescriptor = AbstractSourceDescriptor & urlTemplate: string; }; +export type TiledSingleLayerVectorSourceDescriptor = AbstractSourceDescriptor & { + urlTemplate: string; + layerName: string; + + // These are the min/max zoom levels of the availability of the a particular layerName in the tileset at urlTemplate. + // These are _not_ the visible zoom-range of the data on a map. + // Tiled data can be displayed at higher levels of zoom than that they are stored in the tileset. + // e.g. EMS basemap data from level 14 is at most detailed resolution and can be displayed at higher levels + minSourceZoom: number; + maxSourceZoom: number; +}; + export type JoinDescriptor = { leftField: string; right: ESTermSourceDescriptor; @@ -107,7 +119,9 @@ export type SourceDescriptor = | ESTermSourceDescriptor | ESSearchSourceDescriptor | ESGeoGridSourceDescriptor - | EMSFileSourceDescriptor; + | EMSFileSourceDescriptor + | ESPewPewSourceDescriptor + | TiledSingleLayerVectorSourceDescriptor; export type LayerDescriptor = { __dataRequests?: DataRequestDescriptor[]; diff --git a/x-pack/plugins/maps/public/kibana_services.js b/x-pack/plugins/maps/public/kibana_services.js index 2a793143803304..dcbd54a09381f1 100644 --- a/x-pack/plugins/maps/public/kibana_services.js +++ b/x-pack/plugins/maps/public/kibana_services.js @@ -38,7 +38,9 @@ export const getFileUploadComponent = () => { }; let getInjectedVar; -export const setInjectedVarFunc = getInjectedVarFunc => (getInjectedVar = getInjectedVarFunc); +export const setInjectedVarFunc = getInjectedVarFunc => { + getInjectedVar = getInjectedVarFunc; +}; export const getInjectedVarFunc = () => getInjectedVar; let uiSettings; diff --git a/x-pack/plugins/maps/public/layers/layer.d.ts b/x-pack/plugins/maps/public/layers/layer.d.ts index 8fb69734d3d069..e8fc5d473626cb 100644 --- a/x-pack/plugins/maps/public/layers/layer.d.ts +++ b/x-pack/plugins/maps/public/layers/layer.d.ts @@ -3,7 +3,7 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { LayerDescriptor, MapExtent, MapFilters } from '../../common/descriptor_types'; +import { LayerDescriptor, MapExtent, MapFilters, MapQuery } from '../../common/descriptor_types'; import { ISource } from './sources/source'; import { DataRequest } from './util/data_request'; import { SyncContext } from '../actions/map_actions'; @@ -17,6 +17,11 @@ export interface ILayer { getSource(): ISource; getSourceForEditing(): ISource; syncData(syncContext: SyncContext): Promise; + isVisible(): boolean; + showAtZoomLevel(zoomLevel: number): boolean; + getMinZoom(): number; + getMaxZoom(): number; + getMinSourceZoom(): number; } export interface ILayerArguments { @@ -35,4 +40,12 @@ export class AbstractLayer implements ILayer { getSource(): ISource; getSourceForEditing(): ISource; syncData(syncContext: SyncContext): Promise; + isVisible(): boolean; + showAtZoomLevel(zoomLevel: number): boolean; + getMinZoom(): number; + getMaxZoom(): number; + getMinSourceZoom(): number; + getQuery(): MapQuery; + _removeStaleMbSourcesAndLayers(mbMap: unknown): void; + _requiresPrevSourceCleanup(mbMap: unknown): boolean; } diff --git a/x-pack/plugins/maps/public/layers/layer.js b/x-pack/plugins/maps/public/layers/layer.js index 26bce872b3c2c2..19dcbaf1dfcfdc 100644 --- a/x-pack/plugins/maps/public/layers/layer.js +++ b/x-pack/plugins/maps/public/layers/layer.js @@ -141,7 +141,8 @@ export class AbstractLayer { defaultMessage: `Layer is hidden.`, }); } else if (!this.showAtZoomLevel(zoomLevel)) { - const { minZoom, maxZoom } = this.getZoomConfig(); + const minZoom = this.getMinZoom(); + const maxZoom = this.getMaxZoom(); icon = ; tooltipContent = i18n.translate('xpack.maps.layer.zoomFeedbackTooltip', { defaultMessage: `Layer is visible between zoom levels {minZoom} and {maxZoom}.`, @@ -203,7 +204,7 @@ export class AbstractLayer { } showAtZoomLevel(zoom) { - return zoom >= this._descriptor.minZoom && zoom <= this._descriptor.maxZoom; + return zoom >= this.getMinZoom() && zoom <= this.getMaxZoom(); } getMinZoom() { @@ -214,6 +215,30 @@ export class AbstractLayer { return this._descriptor.maxZoom; } + getMinSourceZoom() { + return this._source.getMinZoom(); + } + + _requiresPrevSourceCleanup() { + return false; + } + + _removeStaleMbSourcesAndLayers(mbMap) { + if (this._requiresPrevSourceCleanup(mbMap)) { + const mbStyle = mbMap.getStyle(); + mbStyle.layers.forEach(mbLayer => { + if (this.ownsMbLayerId(mbLayer.id)) { + mbMap.removeLayer(mbLayer.id); + } + }); + Object.keys(mbStyle.sources).some(mbSourceId => { + if (this.ownsMbSourceId(mbSourceId)) { + mbMap.removeSource(mbSourceId); + } + }); + } + } + getAlpha() { return this._descriptor.alpha; } @@ -222,13 +247,6 @@ export class AbstractLayer { return this._descriptor.query; } - getZoomConfig() { - return { - minZoom: this._descriptor.minZoom, - maxZoom: this._descriptor.maxZoom, - }; - } - getCurrentStyle() { return this._style; } diff --git a/x-pack/plugins/maps/public/layers/load_layer_wizards.js b/x-pack/plugins/maps/public/layers/load_layer_wizards.js deleted file mode 100644 index d0169165eaa35f..00000000000000 --- a/x-pack/plugins/maps/public/layers/load_layer_wizards.js +++ /dev/null @@ -1,30 +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 { registerLayerWizard } from './layer_wizard_registry'; -import { uploadLayerWizardConfig } from './sources/client_file_source'; -import { esDocumentsLayerWizardConfig } from './sources/es_search_source'; -import { clustersLayerWizardConfig, heatmapLayerWizardConfig } from './sources/es_geo_grid_source'; -import { point2PointLayerWizardConfig } from './sources/es_pew_pew_source/es_pew_pew_source'; -import { emsBoundariesLayerWizardConfig } from './sources/ems_file_source'; -import { emsBaseMapLayerWizardConfig } from './sources/ems_tms_source'; -import { kibanaRegionMapLayerWizardConfig } from './sources/kibana_regionmap_source'; -import { kibanaBasemapLayerWizardConfig } from './sources/kibana_tilemap_source'; -import { tmsLayerWizardConfig } from './sources/xyz_tms_source'; -import { wmsLayerWizardConfig } from './sources/wms_source'; - -// Registration order determines display order -registerLayerWizard(uploadLayerWizardConfig); -registerLayerWizard(esDocumentsLayerWizardConfig); -registerLayerWizard(clustersLayerWizardConfig); -registerLayerWizard(heatmapLayerWizardConfig); -registerLayerWizard(point2PointLayerWizardConfig); -registerLayerWizard(emsBoundariesLayerWizardConfig); -registerLayerWizard(emsBaseMapLayerWizardConfig); -registerLayerWizard(kibanaRegionMapLayerWizardConfig); -registerLayerWizard(kibanaBasemapLayerWizardConfig); -registerLayerWizard(tmsLayerWizardConfig); -registerLayerWizard(wmsLayerWizardConfig); diff --git a/x-pack/plugins/maps/public/layers/load_layer_wizards.ts b/x-pack/plugins/maps/public/layers/load_layer_wizards.ts new file mode 100644 index 00000000000000..49d128257fe206 --- /dev/null +++ b/x-pack/plugins/maps/public/layers/load_layer_wizards.ts @@ -0,0 +1,66 @@ +/* + * 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 { registerLayerWizard } from './layer_wizard_registry'; +// @ts-ignore +import { uploadLayerWizardConfig } from './sources/client_file_source'; +// @ts-ignore +import { esDocumentsLayerWizardConfig } from './sources/es_search_source'; +// @ts-ignore +import { clustersLayerWizardConfig, heatmapLayerWizardConfig } from './sources/es_geo_grid_source'; +// @ts-ignore +import { point2PointLayerWizardConfig } from './sources/es_pew_pew_source/es_pew_pew_source'; +// @ts-ignore +import { emsBoundariesLayerWizardConfig } from './sources/ems_file_source'; +// @ts-ignore +import { emsBaseMapLayerWizardConfig } from './sources/ems_tms_source'; +// @ts-ignore +import { kibanaRegionMapLayerWizardConfig } from './sources/kibana_regionmap_source'; +// @ts-ignore +import { kibanaBasemapLayerWizardConfig } from './sources/kibana_tilemap_source'; +import { tmsLayerWizardConfig } from './sources/xyz_tms_source'; +// @ts-ignore +import { wmsLayerWizardConfig } from './sources/wms_source'; +import { mvtVectorSourceWizardConfig } from './sources/mvt_single_layer_vector_source'; +// @ts-ignore +import { getInjectedVarFunc } from '../kibana_services'; + +// Registration order determines display order +let registered = false; +export function registerLayerWizards() { + if (registered) { + return; + } + // @ts-ignore + registerLayerWizard(uploadLayerWizardConfig); + // @ts-ignore + registerLayerWizard(esDocumentsLayerWizardConfig); + // @ts-ignore + registerLayerWizard(clustersLayerWizardConfig); + // @ts-ignore + registerLayerWizard(heatmapLayerWizardConfig); + // @ts-ignore + registerLayerWizard(point2PointLayerWizardConfig); + // @ts-ignore + registerLayerWizard(emsBoundariesLayerWizardConfig); + // @ts-ignore + registerLayerWizard(emsBaseMapLayerWizardConfig); + // @ts-ignore + registerLayerWizard(kibanaRegionMapLayerWizardConfig); + // @ts-ignore + registerLayerWizard(kibanaBasemapLayerWizardConfig); + registerLayerWizard(tmsLayerWizardConfig); + // @ts-ignore + registerLayerWizard(wmsLayerWizardConfig); + + const getInjectedVar = getInjectedVarFunc(); + if (getInjectedVar && getInjectedVar('enableVectorTiles', false)) { + // eslint-disable-next-line no-console + console.warn('Vector tiles are an experimental feature and should not be used in production.'); + registerLayerWizard(mvtVectorSourceWizardConfig); + } + registered = true; +} diff --git a/x-pack/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.d.ts b/x-pack/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.d.ts index 3f596cea1ae393..96347c444dd5b2 100644 --- a/x-pack/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.d.ts +++ b/x-pack/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.d.ts @@ -23,6 +23,7 @@ export class ESGeoGridSource extends AbstractESAggSource { constructor(sourceDescriptor: ESGeoGridSourceDescriptor, inspectorAdapters: unknown); + getFieldNames(): string[]; getGridResolution(): GRID_RESOLUTION; getGeoGridPrecision(zoom: number): number; } diff --git a/x-pack/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts b/x-pack/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts index 0a4e48a195ec66..c904280a38c85d 100644 --- a/x-pack/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts +++ b/x-pack/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts @@ -9,4 +9,5 @@ import { ESSearchSourceDescriptor } from '../../../../common/descriptor_types'; export class ESSearchSource extends AbstractESSource { constructor(sourceDescriptor: Partial, inspectorAdapters: unknown); + getFieldNames(): string[]; } diff --git a/x-pack/plugins/maps/public/layers/sources/vector_feature_types.js b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/index.ts similarity index 71% rename from x-pack/plugins/maps/public/layers/sources/vector_feature_types.js rename to x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/index.ts index cc5f30389c4f3a..89b7e76a7e359a 100644 --- a/x-pack/plugins/maps/public/layers/sources/vector_feature_types.js +++ b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/index.ts @@ -4,8 +4,5 @@ * you may not use this file except in compliance with the Elastic License. */ -export const VECTOR_SHAPE_TYPES = { - POINT: 'POINT', - LINE: 'LINE', - POLYGON: 'POLYGON', -}; +export * from './mvt_single_layer_vector_source'; +export * from './layer_wizard'; diff --git a/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/layer_wizard.tsx b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/layer_wizard.tsx new file mode 100644 index 00000000000000..dfdea1489d50c2 --- /dev/null +++ b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/layer_wizard.tsx @@ -0,0 +1,42 @@ +/* + * 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 { + MVTSingleLayerVectorSourceEditor, + MVTSingleLayerVectorSourceConfig, +} from './mvt_single_layer_vector_source_editor'; +import { MVTSingleLayerVectorSource, sourceTitle } from './mvt_single_layer_vector_source'; +import { LayerWizard, RenderWizardArguments } from '../../layer_wizard_registry'; +import { SOURCE_TYPES } from '../../../../common/constants'; + +export const mvtVectorSourceWizardConfig: LayerWizard = { + description: i18n.translate('xpack.maps.source.mvtVectorSourceWizard', { + defaultMessage: 'Vector source wizard', + }), + icon: 'grid', + renderWizard: ({ onPreviewSource, inspectorAdapters }: RenderWizardArguments) => { + const onSourceConfigChange = ({ + urlTemplate, + layerName, + minSourceZoom, + maxSourceZoom, + }: MVTSingleLayerVectorSourceConfig) => { + const sourceDescriptor = MVTSingleLayerVectorSource.createDescriptor({ + urlTemplate, + layerName, + minSourceZoom, + maxSourceZoom, + type: SOURCE_TYPES.MVT_SINGLE_LAYER, + }); + const source = new MVTSingleLayerVectorSource(sourceDescriptor, inspectorAdapters); + onPreviewSource(source); + }; + return ; + }, + title: sourceTitle, +}; diff --git a/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source.ts b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source.ts new file mode 100644 index 00000000000000..0bfda6be722034 --- /dev/null +++ b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source.ts @@ -0,0 +1,175 @@ +/* + * 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 uuid from 'uuid/v4'; +import { AbstractSource, ImmutableSourceProperty } from '../source'; +import { TiledVectorLayer } from '../../tiled_vector_layer'; +import { GeoJsonWithMeta, ITiledSingleLayerVectorSource } from '../vector_source'; +import { MAX_ZOOM, MIN_ZOOM, SOURCE_TYPES } from '../../../../common/constants'; +import { VECTOR_SHAPE_TYPES } from '../vector_feature_types'; +import { IField } from '../../fields/field'; +import { registerSource } from '../source_registry'; +import { getDataSourceLabel, getUrlLabel } from '../../../../common/i18n_getters'; +import { + LayerDescriptor, + MapExtent, + TiledSingleLayerVectorSourceDescriptor, + VectorSourceRequestMeta, + VectorSourceSyncMeta, +} from '../../../../common/descriptor_types'; +import { VectorLayerArguments } from '../../vector_layer'; + +export const sourceTitle = i18n.translate( + 'xpack.maps.source.MVTSingleLayerVectorSource.sourceTitle', + { + defaultMessage: 'Vector Tile Layer', + } +); + +export class MVTSingleLayerVectorSource extends AbstractSource + implements ITiledSingleLayerVectorSource { + static createDescriptor({ + urlTemplate, + layerName, + minSourceZoom, + maxSourceZoom, + }: TiledSingleLayerVectorSourceDescriptor) { + return { + type: SOURCE_TYPES.MVT_SINGLE_LAYER, + id: uuid(), + urlTemplate, + layerName, + minSourceZoom: Math.max(MIN_ZOOM, minSourceZoom), + maxSourceZoom: Math.min(MAX_ZOOM, maxSourceZoom), + }; + } + + readonly _descriptor: TiledSingleLayerVectorSourceDescriptor; + + constructor( + sourceDescriptor: TiledSingleLayerVectorSourceDescriptor, + inspectorAdapters?: object + ) { + super(sourceDescriptor, inspectorAdapters); + this._descriptor = sourceDescriptor; + } + + renderSourceSettingsEditor() { + return null; + } + + getFieldNames(): string[] { + return []; + } + + createDefaultLayer(options: LayerDescriptor): TiledVectorLayer { + const layerDescriptor = { + sourceDescriptor: this._descriptor, + ...options, + }; + const normalizedLayerDescriptor = TiledVectorLayer.createDescriptor(layerDescriptor, []); + const vectorLayerArguments: VectorLayerArguments = { + layerDescriptor: normalizedLayerDescriptor, + source: this, + }; + return new TiledVectorLayer(vectorLayerArguments); + } + + getGeoJsonWithMeta( + layerName: 'string', + searchFilters: unknown[], + registerCancelCallback: (callback: () => void) => void + ): Promise { + // todo: remove this method + // This is a consequence of ITiledSingleLayerVectorSource extending IVectorSource. + throw new Error('Does not implement getGeoJsonWithMeta'); + } + + async getFields(): Promise { + return []; + } + + async getImmutableProperties(): Promise { + return [ + { label: getDataSourceLabel(), value: sourceTitle }, + { label: getUrlLabel(), value: this._descriptor.urlTemplate }, + { + label: i18n.translate('xpack.maps.source.MVTSingleLayerVectorSource.layerNameMessage', { + defaultMessage: 'Layer name', + }), + value: this._descriptor.layerName, + }, + { + label: i18n.translate('xpack.maps.source.MVTSingleLayerVectorSource.minZoomMessage', { + defaultMessage: 'Min zoom', + }), + value: this._descriptor.minSourceZoom.toString(), + }, + { + label: i18n.translate('xpack.maps.source.MVTSingleLayerVectorSource.maxZoomMessage', { + defaultMessage: 'Max zoom', + }), + value: this._descriptor.maxSourceZoom.toString(), + }, + ]; + } + + async getDisplayName(): Promise { + return this._descriptor.layerName; + } + + async getUrlTemplateWithMeta() { + return { + urlTemplate: this._descriptor.urlTemplate, + layerName: this._descriptor.layerName, + minSourceZoom: this._descriptor.minSourceZoom, + maxSourceZoom: this._descriptor.maxSourceZoom, + }; + } + + async getSupportedShapeTypes(): Promise { + return [VECTOR_SHAPE_TYPES.POINT, VECTOR_SHAPE_TYPES.LINE, VECTOR_SHAPE_TYPES.POLYGON]; + } + + canFormatFeatureProperties() { + return false; + } + + getMinZoom() { + return this._descriptor.minSourceZoom; + } + + getMaxZoom() { + return this._descriptor.maxSourceZoom; + } + + getBoundsForFilters(searchFilters: VectorSourceRequestMeta): MapExtent { + return { + maxLat: 90, + maxLon: 180, + minLat: -90, + minLon: -180, + }; + } + + getFieldByName(fieldName: string): IField | null { + return null; + } + + getSyncMeta(): VectorSourceSyncMeta { + return null; + } + + getApplyGlobalQuery(): boolean { + return false; + } +} + +registerSource({ + ConstructorFunction: MVTSingleLayerVectorSource, + type: SOURCE_TYPES.MVT_SINGLE_LAYER, +}); diff --git a/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source_editor.tsx b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source_editor.tsx new file mode 100644 index 00000000000000..7a4b8d43811da8 --- /dev/null +++ b/x-pack/plugins/maps/public/layers/sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source_editor.tsx @@ -0,0 +1,128 @@ +/* + * 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/consistent-type-definitions */ + +import React, { Fragment, Component, ChangeEvent } from 'react'; +import _ from 'lodash'; +import { EuiFieldText, EuiFormRow } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { MAX_ZOOM, MIN_ZOOM } from '../../../../common/constants'; +import { ValidatedDualRange, Value } from '../../../../../../../src/plugins/kibana_react/public'; + +export type MVTSingleLayerVectorSourceConfig = { + urlTemplate: string; + layerName: string; + minSourceZoom: number; + maxSourceZoom: number; +}; + +export interface Props { + onSourceConfigChange: (sourceConfig: MVTSingleLayerVectorSourceConfig) => void; +} + +interface State { + urlTemplate: string; + layerName: string; + minSourceZoom: number; + maxSourceZoom: number; +} + +export class MVTSingleLayerVectorSourceEditor extends Component { + state = { + urlTemplate: '', + layerName: '', + minSourceZoom: MIN_ZOOM, + maxSourceZoom: MAX_ZOOM, + }; + + _sourceConfigChange = _.debounce(() => { + const canPreview = + this.state.urlTemplate.indexOf('{x}') >= 0 && + this.state.urlTemplate.indexOf('{y}') >= 0 && + this.state.urlTemplate.indexOf('{z}') >= 0; + + if (canPreview && this.state.layerName) { + this.props.onSourceConfigChange({ + urlTemplate: this.state.urlTemplate, + layerName: this.state.layerName, + minSourceZoom: this.state.minSourceZoom, + maxSourceZoom: this.state.maxSourceZoom, + }); + } + }, 200); + + _handleUrlTemplateChange = (e: ChangeEvent) => { + const url = e.target.value; + this.setState( + { + urlTemplate: url, + }, + () => this._sourceConfigChange() + ); + }; + + _handleLayerNameInputChange = (e: ChangeEvent) => { + const layerName = e.target.value; + this.setState( + { + layerName, + }, + () => this._sourceConfigChange() + ); + }; + + _handleZoomRangeChange = (e: Value) => { + const minSourceZoom = parseInt(e[0] as string, 10); + const maxSourceZoom = parseInt(e[1] as string, 10); + + if (this.state.minSourceZoom !== minSourceZoom || this.state.maxSourceZoom !== maxSourceZoom) { + this.setState({ minSourceZoom, maxSourceZoom }, () => this._sourceConfigChange()); + } + }; + + render() { + return ( + + + + + + + + + + ); + } +} diff --git a/x-pack/plugins/maps/public/layers/sources/source.d.ts b/x-pack/plugins/maps/public/layers/sources/source.d.ts index a1581b826d9a6a..5a01da02adaae4 100644 --- a/x-pack/plugins/maps/public/layers/sources/source.d.ts +++ b/x-pack/plugins/maps/public/layers/sources/source.d.ts @@ -19,7 +19,7 @@ export type Attribution = { }; export interface ISource { - createDefaultLayer(): ILayer; + createDefaultLayer(options?: LayerDescriptor): ILayer; destroy(): void; getDisplayName(): Promise; getInspectorAdapters(): object; @@ -31,6 +31,8 @@ export interface ISource { isTimeAware(): Promise; getImmutableProperties(): Promise; getAttributions(): Promise; + getMinZoom(): number; + getMaxZoom(): number; } export class AbstractSource implements ISource { @@ -49,4 +51,6 @@ export class AbstractSource implements ISource { isTimeAware(): Promise; getImmutableProperties(): Promise; getAttributions(): Promise; + getMinZoom(): number; + getMaxZoom(): number; } diff --git a/x-pack/plugins/maps/public/layers/sources/source.js b/x-pack/plugins/maps/public/layers/sources/source.js index 3029a5c0912026..555b8999d62847 100644 --- a/x-pack/plugins/maps/public/layers/sources/source.js +++ b/x-pack/plugins/maps/public/layers/sources/source.js @@ -6,6 +6,7 @@ // eslint-disable-next-line @kbn/eslint/no-restricted-paths import { copyPersistentState } from '../../reducers/util'; +import { MIN_ZOOM, MAX_ZOOM } from '../../../common/constants'; export class AbstractSource { static isIndexingSource = false; @@ -79,7 +80,7 @@ export class AbstractSource { return false; } - isQueryAware() { + async isTimeAware() { return false; } @@ -107,6 +108,14 @@ export class AbstractSource { return []; } + isFilterByMapBounds() { + return false; + } + + isQueryAware() { + return false; + } + getGeoGridPrecision() { return 0; } @@ -140,4 +149,12 @@ export class AbstractSource { async getValueSuggestions(/* field, query */) { return []; } + + getMinZoom() { + return MIN_ZOOM; + } + + getMaxZoom() { + return MAX_ZOOM; + } } diff --git a/x-pack/plugins/maps/public/layers/sources/source_registry.ts b/x-pack/plugins/maps/public/layers/sources/source_registry.ts index d16b16af74e9da..3b334d45092ad7 100644 --- a/x-pack/plugins/maps/public/layers/sources/source_registry.ts +++ b/x-pack/plugins/maps/public/layers/sources/source_registry.ts @@ -10,7 +10,7 @@ import { ISource } from './source'; type SourceRegistryEntry = { ConstructorFunction: new ( sourceDescriptor: any, // this is the source-descriptor that corresponds specifically to the particular ISource instance - inspectorAdapters: unknown + inspectorAdapters?: object ) => ISource; type: string; }; diff --git a/x-pack/plugins/maps/public/layers/sources/vector_feature_types.ts b/x-pack/plugins/maps/public/layers/sources/vector_feature_types.ts new file mode 100644 index 00000000000000..9f03357e17dad5 --- /dev/null +++ b/x-pack/plugins/maps/public/layers/sources/vector_feature_types.ts @@ -0,0 +1,11 @@ +/* + * 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 enum VECTOR_SHAPE_TYPES { + POINT = 'POINT', + LINE = 'LINE', + POLYGON = 'POLYGON', +} diff --git a/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.d.ts b/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.d.ts index 63429830d9f4fb..804915dd73052a 100644 --- a/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.d.ts +++ b/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.d.ts @@ -14,6 +14,7 @@ import { VectorSourceRequestMeta, VectorSourceSyncMeta, } from '../../../../common/descriptor_types'; +import { VECTOR_SHAPE_TYPES } from '../vector_feature_types'; export type GeoJsonFetchMeta = ESSearchSourceResponseMeta; @@ -31,8 +32,10 @@ export interface IVectorSource extends ISource { ): Promise; getFields(): Promise; - getFieldByName(fieldName: string): IField; + getFieldByName(fieldName: string): IField | null; getSyncMeta(): VectorSourceSyncMeta; + getFieldNames(): string[]; + getApplyGlobalQuery(): boolean; } export class AbstractVectorSource extends AbstractSource implements IVectorSource { @@ -44,6 +47,21 @@ export class AbstractVectorSource extends AbstractSource implements IVectorSourc ): Promise; getFields(): Promise; - getFieldByName(fieldName: string): IField; + getFieldByName(fieldName: string): IField | null; getSyncMeta(): VectorSourceSyncMeta; + getSupportedShapeTypes(): Promise; + canFormatFeatureProperties(): boolean; + getApplyGlobalQuery(): boolean; + getFieldNames(): string[]; +} + +export interface ITiledSingleLayerVectorSource extends IVectorSource { + getUrlTemplateWithMeta(): Promise<{ + layerName: string; + urlTemplate: string; + minSourceZoom: number; + maxSourceZoom: number; + }>; + getMinZoom(): number; + getMaxZoom(): number; } diff --git a/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.js b/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.js index bb37175b48655b..509584cbc415a4 100644 --- a/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.js +++ b/x-pack/plugins/maps/public/layers/sources/vector_source/vector_source.js @@ -60,6 +60,10 @@ export class AbstractVectorSource extends AbstractSource { throw new Error(`Should implemement ${this.constructor.type} ${this}`); } + getFieldNames() { + return []; + } + /** * Retrieves a field. This may be an existing instance. * @param fieldName diff --git a/x-pack/plugins/maps/public/layers/styles/vector/components/vector_style_editor.js b/x-pack/plugins/maps/public/layers/styles/vector/components/vector_style_editor.js index 6cece5efb3a5d9..c46dc2cb4b73e3 100644 --- a/x-pack/plugins/maps/public/layers/styles/vector/components/vector_style_editor.js +++ b/x-pack/plugins/maps/public/layers/styles/vector/components/vector_style_editor.js @@ -37,7 +37,7 @@ export class VectorStyleEditor extends Component { defaultDynamicProperties: getDefaultDynamicProperties(), defaultStaticProperties: getDefaultStaticProperties(), supportedFeatures: undefined, - selectedFeatureType: undefined, + selectedFeature: null, }; componentWillUnmount() { @@ -91,18 +91,20 @@ export class VectorStyleEditor extends Component { return; } - let selectedFeature = VECTOR_SHAPE_TYPES.POLYGON; - if (this.props.isPointsOnly) { - selectedFeature = VECTOR_SHAPE_TYPES.POINT; - } else if (this.props.isLinesOnly) { - selectedFeature = VECTOR_SHAPE_TYPES.LINE; + if (!_.isEqual(supportedFeatures, this.state.supportedFeatures)) { + this.setState({ supportedFeatures }); } - if ( - !_.isEqual(supportedFeatures, this.state.supportedFeatures) || - selectedFeature !== this.state.selectedFeature - ) { - this.setState({ supportedFeatures, selectedFeature }); + if (this.state.selectedFeature === null) { + let selectedFeature = VECTOR_SHAPE_TYPES.POLYGON; + if (this.props.isPointsOnly) { + selectedFeature = VECTOR_SHAPE_TYPES.POINT; + } else if (this.props.isLinesOnly) { + selectedFeature = VECTOR_SHAPE_TYPES.LINE; + } + this.setState({ + selectedFeature: selectedFeature, + }); } } diff --git a/x-pack/plugins/maps/public/layers/styles/vector/vector_style.d.ts b/x-pack/plugins/maps/public/layers/styles/vector/vector_style.d.ts index 77ea44ac26bf92..e010d5ac7d7a31 100644 --- a/x-pack/plugins/maps/public/layers/styles/vector/vector_style.d.ts +++ b/x-pack/plugins/maps/public/layers/styles/vector/vector_style.d.ts @@ -7,17 +7,23 @@ import { IStyleProperty } from './properties/style_property'; import { IDynamicStyleProperty } from './properties/dynamic_style_property'; import { IVectorLayer } from '../../vector_layer'; import { IVectorSource } from '../../sources/vector_source'; -import { VectorStyleDescriptor } from '../../../../common/descriptor_types'; +import { + VectorStyleDescriptor, + VectorStylePropertiesDescriptor, +} from '../../../../common/descriptor_types'; export interface IVectorStyle { getAllStyleProperties(): IStyleProperty[]; getDescriptor(): VectorStyleDescriptor; getDynamicPropertiesArray(): IDynamicStyleProperty[]; + getSourceFieldNames(): string[]; } export class VectorStyle implements IVectorStyle { + static createDescriptor(properties: VectorStylePropertiesDescriptor): VectorStyleDescriptor; + static createDefaultStyleProperties(mapColors: string[]): VectorStylePropertiesDescriptor; constructor(descriptor: VectorStyleDescriptor, source: IVectorSource, layer: IVectorLayer); - + getSourceFieldNames(): string[]; getAllStyleProperties(): IStyleProperty[]; getDescriptor(): VectorStyleDescriptor; getDynamicPropertiesArray(): IDynamicStyleProperty[]; diff --git a/x-pack/plugins/maps/public/layers/tiled_vector_layer.tsx b/x-pack/plugins/maps/public/layers/tiled_vector_layer.tsx new file mode 100644 index 00000000000000..c47cae5641e563 --- /dev/null +++ b/x-pack/plugins/maps/public/layers/tiled_vector_layer.tsx @@ -0,0 +1,170 @@ +/* + * 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 { EuiIcon } from '@elastic/eui'; +import { VectorStyle } from './styles/vector/vector_style'; +import { SOURCE_DATA_ID_ORIGIN, LAYER_TYPE } from '../../common/constants'; +import { VectorLayer, VectorLayerArguments } from './vector_layer'; +import { canSkipSourceUpdate } from './util/can_skip_fetch'; +import { ITiledSingleLayerVectorSource } from './sources/vector_source'; +import { SyncContext } from '../actions/map_actions'; +import { ISource } from './sources/source'; +import { VectorLayerDescriptor, VectorSourceRequestMeta } from '../../common/descriptor_types'; +import { MVTSingleLayerVectorSourceConfig } from './sources/mvt_single_layer_vector_source/mvt_single_layer_vector_source_editor'; + +export class TiledVectorLayer extends VectorLayer { + static type = LAYER_TYPE.TILED_VECTOR; + + static createDescriptor( + descriptor: VectorLayerDescriptor, + mapColors: string[] + ): VectorLayerDescriptor { + const layerDescriptor = super.createDescriptor(descriptor, mapColors); + layerDescriptor.type = TiledVectorLayer.type; + + if (!layerDescriptor.style) { + const styleProperties = VectorStyle.createDefaultStyleProperties(mapColors); + layerDescriptor.style = VectorStyle.createDescriptor(styleProperties); + } + + return layerDescriptor; + } + + readonly _source: ITiledSingleLayerVectorSource; // downcast to the more specific type + + constructor({ layerDescriptor, source }: VectorLayerArguments) { + super({ layerDescriptor, source }); + this._source = source as ITiledSingleLayerVectorSource; + } + + getCustomIconAndTooltipContent() { + return { + icon: , + }; + } + + async _syncMVTUrlTemplate({ startLoading, stopLoading, onLoadError, dataFilters }: SyncContext) { + const requestToken: symbol = Symbol(`layer-${this.getId()}-${SOURCE_DATA_ID_ORIGIN}`); + const searchFilters: VectorSourceRequestMeta = this._getSearchFilters( + dataFilters, + this.getSource(), + this._style + ); + const prevDataRequest = this.getSourceDataRequest(); + + const canSkip = await canSkipSourceUpdate({ + source: this._source as ISource, + prevDataRequest, + nextMeta: searchFilters, + }); + if (canSkip) { + return null; + } + + startLoading(SOURCE_DATA_ID_ORIGIN, requestToken, searchFilters); + try { + const templateWithMeta = await this._source.getUrlTemplateWithMeta(); + stopLoading(SOURCE_DATA_ID_ORIGIN, requestToken, templateWithMeta, {}); + } catch (error) { + onLoadError(SOURCE_DATA_ID_ORIGIN, requestToken, error.message); + } + } + + async syncData(syncContext: SyncContext) { + if (!this.isVisible() || !this.showAtZoomLevel(syncContext.dataFilters.zoom)) { + return; + } + + await this._syncSourceStyleMeta(syncContext, this._source, this._style); + await this._syncSourceFormatters(syncContext, this._source, this._style); + await this._syncMVTUrlTemplate(syncContext); + } + + _syncSourceBindingWithMb(mbMap: unknown) { + // @ts-ignore + const mbSource = mbMap.getSource(this.getId()); + if (!mbSource) { + const sourceDataRequest = this.getSourceDataRequest(); + if (!sourceDataRequest) { + // this is possible if the layer was invisible at startup. + // the actions will not perform any data=syncing as an optimization when a layer is invisible + // when turning the layer back into visible, it's possible the url has not been resovled yet. + return; + } + + const sourceMeta: MVTSingleLayerVectorSourceConfig | null = sourceDataRequest.getData() as MVTSingleLayerVectorSourceConfig; + if (!sourceMeta) { + return; + } + + const sourceId = this.getId(); + + // @ts-ignore + mbMap.addSource(sourceId, { + type: 'vector', + tiles: [sourceMeta.urlTemplate], + minzoom: sourceMeta.minSourceZoom, + maxzoom: sourceMeta.maxSourceZoom, + }); + } + } + + _syncStylePropertiesWithMb(mbMap: unknown) { + // @ts-ignore + const mbSource = mbMap.getSource(this.getId()); + if (!mbSource) { + return; + } + + const sourceDataRequest = this.getSourceDataRequest(); + if (!sourceDataRequest) { + return; + } + const sourceMeta: MVTSingleLayerVectorSourceConfig = sourceDataRequest.getData() as MVTSingleLayerVectorSourceConfig; + + this._setMbPointsProperties(mbMap, sourceMeta.layerName); + this._setMbLinePolygonProperties(mbMap, sourceMeta.layerName); + } + + _requiresPrevSourceCleanup(mbMap: unknown): boolean { + // @ts-ignore + const mbTileSource = mbMap.getSource(this.getId()); + if (!mbTileSource) { + return false; + } + const dataRequest = this.getSourceDataRequest(); + if (!dataRequest) { + return false; + } + const tiledSourceMeta: MVTSingleLayerVectorSourceConfig | null = dataRequest.getData() as MVTSingleLayerVectorSourceConfig; + if ( + mbTileSource.tiles[0] === tiledSourceMeta.urlTemplate && + mbTileSource.minzoom === tiledSourceMeta.minSourceZoom && + mbTileSource.maxzoom === tiledSourceMeta.maxSourceZoom + ) { + // TileURL and zoom-range captures all the state. If this does not change, no updates are required. + return false; + } + + return true; + } + + syncLayerWithMB(mbMap: unknown) { + this._removeStaleMbSourcesAndLayers(mbMap); + this._syncSourceBindingWithMb(mbMap); + this._syncStylePropertiesWithMb(mbMap); + } + + getJoins() { + return []; + } + + getMinZoom() { + // higher resolution vector tiles cannot be displayed at lower-res + return Math.max(this._source.getMinZoom(), super.getMinZoom()); + } +} diff --git a/x-pack/plugins/maps/public/layers/vector_layer.d.ts b/x-pack/plugins/maps/public/layers/vector_layer.d.ts index 88b1a1ce8535e3..3d5b8054ff3fd8 100644 --- a/x-pack/plugins/maps/public/layers/vector_layer.d.ts +++ b/x-pack/plugins/maps/public/layers/vector_layer.d.ts @@ -9,6 +9,7 @@ import { AbstractLayer } from './layer'; import { IVectorSource } from './sources/vector_source'; import { MapFilters, + LayerDescriptor, VectorLayerDescriptor, VectorSourceRequestMeta, } from '../../common/descriptor_types'; @@ -20,7 +21,7 @@ import { SyncContext } from '../actions/map_actions'; type VectorLayerArguments = { source: IVectorSource; - joins: IJoin[]; + joins?: IJoin[]; layerDescriptor: VectorLayerDescriptor; }; @@ -28,11 +29,12 @@ export interface IVectorLayer extends ILayer { getFields(): Promise; getStyleEditorFields(): Promise; getValidJoins(): IJoin[]; + getSource(): IVectorSource; } export class VectorLayer extends AbstractLayer implements IVectorLayer { static createDescriptor( - options: Partial, + options: Partial, mapColors?: string[] ): VectorLayerDescriptor; @@ -40,14 +42,30 @@ export class VectorLayer extends AbstractLayer implements IVectorLayer { protected readonly _style: IVectorStyle; constructor(options: VectorLayerArguments); - + getLayerTypeIconName(): string; getFields(): Promise; getStyleEditorFields(): Promise; getValidJoins(): IJoin[]; + _syncSourceStyleMeta( + syncContext: SyncContext, + source: IVectorSource, + style: IVectorStyle + ): Promise; + _syncSourceFormatters( + syncContext: SyncContext, + source: IVectorSource, + style: IVectorStyle + ): Promise; + syncLayerWithMB(mbMap: unknown): void; _getSearchFilters( dataFilters: MapFilters, source: IVectorSource, style: IVectorStyle ): VectorSourceRequestMeta; _syncData(syncContext: SyncContext, source: IVectorSource, style: IVectorStyle): Promise; + ownsMbSourceId(sourceId: string): boolean; + ownsMbLayerId(sourceId: string): boolean; + _setMbPointsProperties(mbMap: unknown, mvtSourceLayer?: string): void; + _setMbLinePolygonProperties(mbMap: unknown, mvtSourceLayer?: string): void; + getSource(): IVectorSource; } diff --git a/x-pack/plugins/maps/public/layers/vector_layer.js b/x-pack/plugins/maps/public/layers/vector_layer.js index d606420909281a..c5947a63587ea8 100644 --- a/x-pack/plugins/maps/public/layers/vector_layer.js +++ b/x-pack/plugins/maps/public/layers/vector_layer.js @@ -641,7 +641,7 @@ export class VectorLayer extends AbstractLayer { } } - _setMbPointsProperties(mbMap) { + _setMbPointsProperties(mbMap, mvtSourceLayer) { const pointLayerId = this._getMbPointLayerId(); const symbolLayerId = this._getMbSymbolLayerId(); const pointLayer = mbMap.getLayer(pointLayerId); @@ -658,7 +658,7 @@ export class VectorLayer extends AbstractLayer { if (symbolLayer) { mbMap.setLayoutProperty(symbolLayerId, 'visibility', 'none'); } - this._setMbCircleProperties(mbMap); + this._setMbCircleProperties(mbMap, mvtSourceLayer); } else { markerLayerId = symbolLayerId; textLayerId = symbolLayerId; @@ -666,7 +666,7 @@ export class VectorLayer extends AbstractLayer { mbMap.setLayoutProperty(pointLayerId, 'visibility', 'none'); mbMap.setLayoutProperty(this._getMbTextLayerId(), 'visibility', 'none'); } - this._setMbSymbolProperties(mbMap); + this._setMbSymbolProperties(mbMap, mvtSourceLayer); } this.syncVisibilityWithMb(mbMap, markerLayerId); @@ -677,27 +677,36 @@ export class VectorLayer extends AbstractLayer { } } - _setMbCircleProperties(mbMap) { + _setMbCircleProperties(mbMap, mvtSourceLayer) { const sourceId = this.getId(); const pointLayerId = this._getMbPointLayerId(); const pointLayer = mbMap.getLayer(pointLayerId); if (!pointLayer) { - mbMap.addLayer({ + const mbLayer = { id: pointLayerId, type: 'circle', source: sourceId, paint: {}, - }); + }; + + if (mvtSourceLayer) { + mbLayer['source-layer'] = mvtSourceLayer; + } + mbMap.addLayer(mbLayer); } const textLayerId = this._getMbTextLayerId(); const textLayer = mbMap.getLayer(textLayerId); if (!textLayer) { - mbMap.addLayer({ + const mbLayer = { id: textLayerId, type: 'symbol', source: sourceId, - }); + }; + if (mvtSourceLayer) { + mbLayer['source-layer'] = mvtSourceLayer; + } + mbMap.addLayer(mbLayer); } const filterExpr = getPointFilterExpression(this._hasJoins()); @@ -719,17 +728,21 @@ export class VectorLayer extends AbstractLayer { }); } - _setMbSymbolProperties(mbMap) { + _setMbSymbolProperties(mbMap, mvtSourceLayer) { const sourceId = this.getId(); const symbolLayerId = this._getMbSymbolLayerId(); const symbolLayer = mbMap.getLayer(symbolLayerId); if (!symbolLayer) { - mbMap.addLayer({ + const mbLayer = { id: symbolLayerId, type: 'symbol', source: sourceId, - }); + }; + if (mvtSourceLayer) { + mbLayer['source-layer'] = mvtSourceLayer; + } + mbMap.addLayer(mbLayer); } const filterExpr = getPointFilterExpression(this._hasJoins()); @@ -750,26 +763,34 @@ export class VectorLayer extends AbstractLayer { }); } - _setMbLinePolygonProperties(mbMap) { + _setMbLinePolygonProperties(mbMap, mvtSourceLayer) { const sourceId = this.getId(); const fillLayerId = this._getMbPolygonLayerId(); const lineLayerId = this._getMbLineLayerId(); const hasJoins = this._hasJoins(); if (!mbMap.getLayer(fillLayerId)) { - mbMap.addLayer({ + const mbLayer = { id: fillLayerId, type: 'fill', source: sourceId, paint: {}, - }); + }; + if (mvtSourceLayer) { + mbLayer['source-layer'] = mvtSourceLayer; + } + mbMap.addLayer(mbLayer); } if (!mbMap.getLayer(lineLayerId)) { - mbMap.addLayer({ + const mbLayer = { id: lineLayerId, type: 'line', source: sourceId, paint: {}, - }); + }; + if (mvtSourceLayer) { + mbLayer['source-layer'] = mvtSourceLayer; + } + mbMap.addLayer(mbLayer); } this.getCurrentStyle().setMBPaintProperties({ alpha: this.getAlpha(), diff --git a/x-pack/plugins/maps/public/layers/vector_tile_layer.js b/x-pack/plugins/maps/public/layers/vector_tile_layer.js index 44987fd3e78f02..c620ec6c56dc3a 100644 --- a/x-pack/plugins/maps/public/layers/vector_tile_layer.js +++ b/x-pack/plugins/maps/public/layers/vector_tile_layer.js @@ -161,19 +161,7 @@ export class VectorTileLayer extends TileLayer { return; } - if (this._requiresPrevSourceCleanup(mbMap)) { - const mbStyle = mbMap.getStyle(); - mbStyle.layers.forEach(mbLayer => { - if (this.ownsMbLayerId(mbLayer.id)) { - mbMap.removeLayer(mbLayer.id); - } - }); - Object.keys(mbStyle.sources).some(mbSourceId => { - if (this.ownsMbSourceId(mbSourceId)) { - mbMap.removeSource(mbSourceId); - } - }); - } + this._removeStaleMbSourcesAndLayers(mbMap); let initialBootstrapCompleted = false; const sourceIds = Object.keys(vectorStyle.sources); diff --git a/x-pack/plugins/maps/public/plugin.ts b/x-pack/plugins/maps/public/plugin.ts index 649627690ec9a6..d3b9626dc83661 100644 --- a/x-pack/plugins/maps/public/plugin.ts +++ b/x-pack/plugins/maps/public/plugin.ts @@ -33,6 +33,7 @@ import { setVisualizations, // @ts-ignore } from './kibana_services'; +import { registerLayerWizards } from './layers/load_layer_wizards'; export interface MapsPluginSetupDependencies { inspector: InspectorSetupContract; @@ -72,6 +73,7 @@ export const bindStartCoreAndPlugins = (core: CoreStart, plugins: any) => { setUiActions(plugins.uiActions); setNavigation(plugins.navigation); setCoreI18n(core.i18n); + registerLayerWizards(); }; /** From 82be9c64c68f318fd39661ee97c64ce3e3d1c717 Mon Sep 17 00:00:00 2001 From: gchaps <33642766+gchaps@users.noreply.github.com> Date: Thu, 16 Apr 2020 13:29:23 -0700 Subject: [PATCH 04/59] [DOCS] Updates remote cluster and ccr docs (#63517) * [DOCS] Updates remote cluster and ccr docs * [DOCS] Adds section on managing clusters and follower indices * [DOCS] Incorporates review comments --- docs/images/add_remote_cluster.png | Bin 154905 -> 254288 bytes docs/images/auto_follow_pattern.png | Bin 187395 -> 273420 bytes .../cross-cluster-replication-list-view.png | Bin 0 -> 117230 bytes docs/images/follower_indices.png | Bin 186908 -> 215856 bytes docs/images/remote-clusters-list-view.png | Bin 0 -> 96631 bytes docs/management/managing-ccr.asciidoc | 73 ++++++++++++++++++ .../managing-remote-clusters.asciidoc | 72 ++++++----------- docs/user/management.asciidoc | 7 +- 8 files changed, 100 insertions(+), 52 deletions(-) create mode 100755 docs/images/cross-cluster-replication-list-view.png mode change 100644 => 100755 docs/images/follower_indices.png create mode 100755 docs/images/remote-clusters-list-view.png create mode 100644 docs/management/managing-ccr.asciidoc diff --git a/docs/images/add_remote_cluster.png b/docs/images/add_remote_cluster.png index 376b1d83923664117f6298ff7cda3735e5c60163..160d29b741c6293151973078123cf5eab5996e00 100755 GIT binary patch literal 254288 zcmeFYc{J4T|2M8w+UPBn&`{ahP`1KYN|CIklD(33EHTD5GbEx771?Kyt-_FHFpMcG zyRi?38A5|GW*7{{jQiF5`~7@A-`~04zrXKupL08NoHNVonrmLy^Ljj=&&T6&y|A({ z7TznlS3p2O*yQ@vTLJcfNf>Vv66aKE0R4?ihq@6Nx(pSX6-;OpL#ACI33 z)8*nG{2aEv|K#!xN@*1a7VyZ8sLY|vAQqNNg$~H6)9-w9FmS>`2W8k^hI%p&_51#+vId3 z`^mE@+kbxdQ_-&jq^*_tm}&LD{%QIj%a7)Xq4hg-)rl>ErLq4!$crMyT4u$;4_kCw zkPjNYXs|Ha{)YT%_Fd*Xg=z=7=0Eh@mDY>C9T{8f=j& z)PFg|(jW=jg*!DqzB0LPP)4sT9=lU}?z#ZaRK47pP9w4d}zDMow_Dhn}WVM zMMsN6L-U2u^WGEd`2C4Wke_BDBL5lgl-h3M9^$rtzmVP0eilrcukC+E)7D3xo6!3AI|9dr zCba(N^Q6#dS~TrH?_2#AMgPyQG)OZJvG||g9Bio}9`k&x7 zu)X$wAed9WvA}9-)^{-uN}UZJo<$FujBoUo*vl`3bfNYoIw3cP<6WD6cK&E^7FTw7 z!x!Y2F-V^WAfa;tr&JT9b>9sXk%rMaO~&!bYim0!{=Mx(kAqdBCPHuAc&QHI=Wj-A zg?HUmsb9urYC-Qx>xVmhh<9&}zaL6i6~elt@o60osilHKBCSFzQbVhd&1e%aOyE#j zaq&3`^^jCXZC~DSN`U6_F~xu3;uG*+Xkg}>%V`x$%&q!yQ8c78Rjd8AnTiS4hkQbV zS_;vL_v~{�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�yP;87%zA{Pjk$mPZw8@DX0Ed8y?X0z*~%?7 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 diff --git a/docs/images/auto_follow_pattern.png b/docs/images/auto_follow_pattern.png index 3bf86458eddd7f0e17c0b06a6b31c36486cb2ee3..f80de9352280fb1d78d5bb413a3ff99a67eaa4d7 100755 GIT binary patch literal 273420 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 z%0A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 -qBF8;j$Wu|JsSbZ}=H5@5 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 literal 187395 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�) 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%0A|^^HdcUl-TYc;<@RAM{?T!y1 zTuYEzI?0ZaJzfTCL*D5$L>oe@&KU;GOR?Q(+io-z(1c>C8kd!yUS-*!YyTlY1$@_` zc;^r$92NOdz<1Woj5wr*-CYb}HbBlgQpb&+*l(7DKQX-%4MyT?Is1ddK8IZHoN#yR z^z1#jmm&OCn2gW4I%z*=YR0az7$PuM?p_$M&CkiJ!cD@HSfOcVfU*!TOw@@%k!EvO znUNJmC{UY(lIeYhByt^v;H{Xf8A|@rxPRD;x?v{|*C5XOLuNC7dKv?MXL#Pyket8>^RRkG{7KA`$z3|7z9w`@3bDJSOH zT*uJj1h4_?0Zy2fd~s1af#B6{A|^E$B~uWB1d}^25S6L}0I2}@hr~yY9!Q~q(4__$ zYjy|v%V4B$6$Ad>83P-rGQ&tt`mBXibo$tW)^bBrIyVzy;YGY~+XCqCF4TZHS-K;; z1K2uGxMP1V`u!kxo?8YQeuu%_xX4RK)38fi_fw9YA+mNhWk=!l7VrrjZ+ECZ`@9%B zE;_(pLE5Q-wF=M+Gyg1alvJYqEjInVXDXW4ZOOQ>3q6VPgF*(WU@5Mbv0?=Pw=NZt zL?`2P&toAI`u67m0_t;c9Wf5FjG$K6MYcmpVuBw^V->;9(t}pysE6CW*0t7l50sNGedO&-PA7 zvZ1*i17R2acfhaSLxt4rfd45wy-K^g9pRD}!(l7df~!KRjkyULM`XW6PR`#vq05U6 zhaA6KxJM*7jOLSw?^X~_KQ=Vo-n}jOAFz)Et!L~)7kcH_+eN5Id2LgE7w}G%by-5= z=mvh?tF$P53gQl~Xx>LV{CUI@;Xa&8(_ZUm9RG&{yaT=;A(X-Oll6=3+(JJN2p90j z1J6yp%Sk!pg+Ub(*y|twkyT6xGA>S%ScEL0Uqgc&$AU(2#Sv^Lkn_t05~6q*@jaN_ z$iETJNHD`s8j5+8av_Y%jSC7CmtT^@%}2SbH9~&^A1(Y8==JJ)fMs#c7;@hfAWYik zsz=bqY6T-rcSc({*9mCvg~(Qh@G(I?Y+YkMzkESGAm=}$fGvVEGkyQ;5b)}spNA%s zNh3^tsi`a&aLz|2A;E<}#$fL5_@GF>2v;rO5#4+2(!bTjcM^2302P|W5ykXcrMj%ZRpX`( z`FhMFx@Po$T&T6Bg~w4I)9+cBJB1>jv{T!gH%0Eyt%YGSCWyw~;XA@>9|0@UI_(^` zctZSeF1BJz%`yXP!4Pcpi!j4qoOm~u+Rtnv@Cv`Kq;b_%+B+vjYd8QdDNg2!q+J<0 zS7YZb{UG;33FdDT@i}qw)wyt|P;XLBu}vz-$91!N>D8Fub|LdXx7T3vuxF6Vdw01) z{7j94gc_tm-=uql8Bi7A#mYnxlFb-Ch03(7y5;x>=AO(CZD9_vM|pm8nAtrHmj3SU6NV57#^*=2df2 zJ1;*n+oa6$$dlM?bjCP=g!j!!O8}nD6z))~g2-RaZ@=WaJsJJ8y2q)bVA#{8Ws!hS zx;1#%(%y9iHh*5lJ!K?7H&FiQe~9Yl=htpG7mFFdwcDJZ{s~BfYo|y{y1@1l0R0BG z*~bCq12ifEdq@wWvOvzfbO+;s{#@;be`?}L1tfI3kP`6#*lTNyjBFWzi>!t!nE_-% zhiEkFtZZT?C3GLA{H)^XCV~*WoNr4XfCWErT;D(~rmdKT6SDMh>45xpVBo%ZDVQ$^ z4dr|Pg(r82Lu6L*4lp1LjX>n1vbJa!Dk`j#JqC+P;FY8DcVcHhWrxQ+vFupq0rMbS zWL(Qd7VW;z1%KTXb0b;(r#6u^m=aCDuYAFWMY5UrBdaRhrcrEsJ*=)G@Z%0*6%22A zfA`r_aEpy1ASx+rCq$O89ZL}~8#NNokQ9BN4i)R+c4(DUI3q)0nf7Q| zEXU55a%66Sl2T{-LmF>ku8ayC89dkItkn@z%qq_6Uj)s}%f|<4olxuyx7{OCnShFZ zGXEowubB(oxpc!GF8Bh<08Mv{ySP^c8w^CI0RY#z6ViTqQpb8D9*%bLH#w1*5ie0u zr~=L?8^&_FPKgV2p==z+-4MENq%{Bq^cNUkZsE6c6{NQmCEPYX{z*rNW1|ANFHm8E z*gamdr??ew6T%H7t$W{^6~jT!5&Vg4w2P^@hZJjmCJjvoVZ$W0*;5miE07fD8u}Z%mFmg=?UG#`dnB zk4%LdL>anWT5v&3g#rjdgV?Ua*`dWI&8R0!`A?TCi7R1IjNK+Zt4Kf4)Lj7(A@*n2 zKzEdd5COl_ne`AOHp%M^dRINoS9$=hPk^^+?aHh_Yohc7%asG%htG#_iibf_BAUFC zM2BLFA3jDW1(g2KSRY*9fbH7ckUW!@l513XSC>>w9@m6XJFbbYgGfXZ$k=J+EFZ z%AG=v&*07O8GSeAekOCK`&_Gp48SJac~7Qzw6n85BDD_Xuxo`E2+%|gs$p%+HKOB6 zzPC`SeGkAo$8doMr&HH-E)JSihWov0AV;DQegOpenI|nI40=!X@S8=L9YHD7j~d)E zi%s2nWsx0deAduXC5}h+B~zz4>+B`CcNw;V~qZmGd)D>4&*z7!RxWCycDMZks6Ab(8|%SYnr{4>IQLasX)V7QhK;cxvjBLjJahHCl+*24 z)_c7+!nQ9MSpXkOW@FZwNqaFjg?tbFRd({U!(MOMBR1PNx5*KC)cg6qcTezQmKu-T_uCU1D9C+9zF^egGrN;cF5vw zniRZFC_e$yMlsqYZD(BBrY=x%Tbz)dk$yk8Gg^K`9+bqC7&Vbv{EZb?FrU7_Gv8x! zVt)Pdgta2HhgL?EO)(euge}3HruS{G=)pjHZ8#%a#8?|7r>8N*n$0FTsmosk&5qi1 zbKpZ7HWM(=E9_R2oem%pEZpSfg&$AZ9(EsAvzmcbaQL+4x%hiF-I(r`jlwJS5YnMr z{_!fz?l%R+;0}jSShSqIaTfq!5zc~@SaO;zfVTR9!ufdb;)@s^6Gp}Ko~3!R_UHOF zLIx78r2WmeBwi~ZLsBODx70YnB26B7pI%iR1_x1u2bZt<699om>N=L}93WcMg%^tc zR#@#HZ-lP}O`UL&T_fMo8vLQJ4e>N@4QY|2`5H`X)j3wX@NF@MHdn#Og|?t6W0E=e z9Z0J9Zd-W1x9M9z2*oAY{8aZN5ebw29M)CpnDe?BQp|AE7!=7fov<5)6xCFt7Zc~p zo}fM+Fd&&d$#ch+>rd@w{+pJ-ATQNy3c0S8-h0nF+^LVgVX^sVf2q`ReP^cgd>N*H zCf>bw{SoVfc@N+sg%GY|B%s4U!@R#|yBI*PA@yA1>$>3%<>>zV+(W`MrEi!cNVf61 zT=saDh3tssJ0wowcdI#E+74~lBdlI34crL^WC5e~D@bIav&nTs~7!gB|z$b7(O}6 z<(vwm977Et+`{%wJiT`bqIQ7bSqn30dYVU}9yFe!eBROKo8X4eFsg{Na@B-!--tRoW$g*1wB`>w)mU4B+@a!#^3QDX*MpTrH#X%5 zt%HKyDloV>)MaUDfEA^4B|FKkvh;9$QN<`6%|h2(O}wbc!7jF~EA^N1b#brum)4s- zPpBQ^gFLq_-@zo9A7OSh^*&Yg2NEs!o9>3g%YDfPGidp~_Oy3*g^MJ;DLM`2h;PUC ztym$BGe8IjC)CB^LfAW&&O6ZWV;}OL7c*ot?<~ZY%B83V)yz;x&Hnsjn**5%I^Xoc zBU_JQU)0pwYfmZ9a0_;eN8K(^l#jF?qSG>f#wwxU2j$Ss^3NDfEjf>YU2NL%et4gp zZm(d$4$R31QbR6jD8!YM0z9o`zHz-M-UoR*CaJ~2&6yh<_cK)bnfLkEDm#9xgBb2u z08102ZTaF<)h&In<%RYsb*6$T$v@`gyc(eG|!^D@1D%B+nxt&Sf zLh(|7^f-{7)663CK9dbAp6Kfgia-K__ptYM9a~3{mt^vK=P}dOQrY^GILA@tPoMzL z)=r1j9@ubC2Q5N`P?H*6?p$F>c!!d0wv#xEM))`%E}+SIJr<&q%9s#%2>G%84~@N= zJ0%rzcP$GD>oy?AK&d6!rl3jq3wWgiV^s|o}- z>f%yWd&^b{P7}UTRU7Tmt*<10PxY0^R1^>+pGc(-UCH!3dwPEg0NDv0t!RQ9qq|m|lsa&6 z8eWUC*IHnd6PvM&V2hl}_b7EdMxy|^j6+}T1fpRDtA7fVCA|!}UryEqQNHLvi>e2) zRd8*6Cjzn{O5kt(LD-KOcM)iqArnrAL|hJKKt550One-_tB`0)>-DD9z0JU^3xwUP zv+umhJh*=OmjY0ctQ(rtq`z};UU?rL|E$&*+$ER zn3JrNyJpA`&QjOs7e{yeUMduS?@mThEX3G5K>Jr@R)I}>?y?7fg&jg)&YPihAQjld zDoG?Y3?3s4NApH`2i_ry!wY7Ir7wV^tEZ}`(PpRs#0YK8!-!}QSVr%KUCL@g*QEnR zrK#c=$>FO267L>kpYdgY1YjBB_p;+UNC{B%J=2|sU^$*!iOUvm7_(OD8uzw>TSjrn zVL7%@O*;VQx04~VINI*ugDL+2iF8rkUC6x(7~k9MP;3euX@2>}3tfKMJI>QXRIW~1Z;r@5H8k4o1L#zPclnEg zP#>HF4r%z7Cwx7i!Qzz}4OI{{JONXY9mi`Qn6xmniy;})UM}|Yf{0OsfJem5fV`6- zxrCce6YL)L)U_-54~wG}fDJTK&RWfa6K`qnkE#xvHP6_88Ly1ypLf^kewnV#yM0)7Z^-TBm3JsHxO<(KYpdl#wPGD8LPsdcS*OO3&uhFyc=VM1a=TuI zm^kIwxA+?BXrFd*z5hEyq(yA{EBzADtr17eIdZ&oU;L{`l3GZH%m?T0XWG`P6a1H3 zR?Q9_3)o!|EsJY{z_r>_1GN>SC^a{hU^J^*9@D)^t_;re*$Rgo5Pyi4oUVx?O@Jpb ztbhyJ{>8sRpY5cR2*~P$y{xJ2+KD7Zbo?T)iRs8rh0+GT=y-_tV!>{82LEx;iQ?!c z8T*_nLn{s~@zUA%Bq9MQ9CyD{g&8V&MEK_E-GNFm4ZZG9dG5f^^#5EYpa)`oXIzORev3VNHo`>j}4bSP228Lew7(4SSd62$L! ze`;<7Rph|STz5}?SVx{2rDF8%19#QnNPT@ ziP=Nh0C&ZYP2J~O1xGNcpb;D?At^p#Ij7=o&1d)#n=ZWG^(EU{sB54pN|-_ImG{q0 z6gzAEb!`>e5BUlknTD;JPgnOCdG1y44m1p{1d|RIa)m*m{O|i~=JWmD)LK`HK?lQ% zs}6s=h?oqFJ;51li%yvDM#ULq`qe*5$L%iG<3Yj{A|$n+$BEd%4kCtAl`kFZ6ID5l zbMh5TVhl^$aIiqH9{iaPvsC2VFwvM68CdBCx2~wKBRffZnqav+_0B}P8}cO326)m~ zWyUexnh$uGX1WQ7|CFY|_e=S#{kk-lKiAAVXp96Fch9X(*sG^Ha=P!y%NBoI1*NS9s`YUmI;gwEtQ z^PhR=ectE!FrVhj|GM@Ea;{`^&OZB`wbs4Xy6;ULVbE#BwPSG44=NjWf<+PoM3foV zy6n%-3FDZ>?>2N@EJ&2GU}q;1oTHkU<`zgMABNZd9ikF)%LCt>osNMwaH24w8wn6) zu$jfRm*gwTNvuh&F9i~Gsy?XD0xh@W{MN#*-Q=0_%|J^o`XwSaBnHgERLM@TtPnzH z(jr6p=i6bZTO;Ay+n1NwEf;R>w?$_c6z$Nwwj!b#^+*Ag`k>iw?lO#S!$NnGnJlmB zaruB;9%!Nthp+e5GBPK_;p*T!>y<}rOAVhGR#ax??!dXfYek0Xa2xAkXKds~wBr2P zmlg4()ClpUH%uWvschs1p4z?Se<}v;U_wucnm#MgvK0m4q{n3q(kzksTwPA&<*nY2 zbN(!|t15FQh^P5QS(g;9L?EJgVk8q6E!vrQ&u>@=bR{)eM${j(_<+S}6pCD#2HXRZ zL?;01UjhXOro|VZDhz;QzdkjhxFh3%hs>h%n5p{b%xeyouG@(2F3YgrWa9la_k{Pu z8KB{Q1Nq6)_~)ZjQ;xg2!{xK-(|&v@h0ym_e)xFbC@F@rzgOIxBpWwEvn#VzwRr3g zatKO{ZgN2sK?~A+B+iyw#_I^W{kgDIQp+QR2_U`bszsTr=T*#p^06Lg=N*-{;#}?9 zu~b+pI(JG*qU>eH0}fKEhY3A5XdttH44z57vSFATiVEEkZH^Fi#LIdQQ7WvJ~Zru#}6Xo()%QeB)DWve6N9BW+8P~64=mFc9)zy z;%efRC`RN`Y|v-G{DQ04gnX<|m7e*Dr2X_FRRm|X*6B8aF!*Wi8hl~?k})10g>O(y z(V~4JyrRAO*)8`f3jI1uJ|q_p8$N1Xij)y(r~|L`(zmzEChyWJo=OBw0!Y(u1vR~6 zW?*u?7|+smHonHUQzu@4~-0Z@=_= z#vesN%a3?@wNASO(PJeHjD<7|F5~fDxm>_kAq#i(eTylvzx+RO?TFy}UJtoyyS1CT zskNP5?%T!Ch3oUtzC}FXmfjNJoW3IIwFXbof_8+Fz+>O7T)a*~+ zr^-U>ARk!q77GL1?|S!K<)i$T|HC-^x*J66r86lgOx*D!MJCuS;Py-49iZ6f`o`6a z(KPnzZ&ctwU@SU$MyW5)IeU>7@uZav!mO!mgBoX}^H>tXwmv>|Uw}>j;pFr2N37tUkTstQW7x$o z=FaS%7u=6?fAJx_-xXUFoDpP0M%Vmm!D;wR;)O@+!i-pt5nLVBmvx>3&L&Q>J#UYjmwo{GUXvVS9=@*5`l zF;32!eR5iwT_Y!u&VekO!g9tgR}1Ppp$EuM*F;HfB3nY=4@lk|=Sp)iGz)O^Ft!si zgL!nJ`|=PCDAhJf!bi=1DkxeC@tr$tdf9luKlJIjc$3!x;dZm=!RE3Zm)*kitJJ;p z+r%#TPmM`-q=+quj-3KGO_-u6&(nIu(dXIyu-J581%j4@(GRLw2BVjXyPHDuXCD#Y zu{^snG2ZijqvkF#HhSQjqGm+4_PcEp%h|&(#3b62nX_?H1YkU|9Pn?oCDy)f7A3~A zsls49d7^l{a%dQFCOJ^9Vd_}M#Xm2OkrHJqt2+<#*j@!aDa-6P_L_s_$yelq7||$WwThcWWgPMV^xU`5Sq>R@@?B8hL842^DXYdO@mOJ}DQ zw(G%#MoTL+^fg{3u%rbBj{eg04ZJLbnH}{svpL+3$&C;a3LBMzWjlT=lvm3jPOO+JXN~%LPIEi*xl-lB|}Jc&y7c}ZHIH~ zJ)(>9@(uP-42Pi7K}$_gm*i*U{1;6X%lXSEn0h}BiIbl@g?|>~Z|m*$Fmi1%0Np4& zG+jOth3cc;?POmGhj2RXC3eg_V)u;>zTb6t$1v~ev>oyXwa5VOB)e(z1dtcrMPRsm znIvou&ZJNo*S;daxpk=&EqylclnlRd4{A^3qqA($(A1rovz&KhA^p)bJ)6=QeYPmO z;Mm!B>vC={R|n3RjWh zA#TEM=(J}NUtRx_lX7V0>^wjN#>LJ-2$cqRk-39q*_FTtJCE6`5qEB9e!T(?R9`oLnEKWbI@sWe>+wVPqY(;gxU z{I>A@q%M8tK<BBHQa; zf7rA$v^17=$jHf0Qs1zj4OO@;|9JbYnKP?a+AWZFpifr$H%<8)dnqXhCW$p1W zvw5LZw-XqPP$4yL-acXp8|6eVo#D)Z$@29`Z$Mll)JWM9+ClbYoNbIFNZNyat2E|5 zdDeV0)Y(JwwP zFH^UznyARqBth?a3OO7R>}sc{gNe4$@O|M*kJ{H8{5yDuYsqYRzB zD1TE!jNe=t3v_dUdO+RILZ_KYZP7~QPtVJy;W|cHDFWJV-Z-|h*C+Sniow^pRsM(Z)%1N@?$?+t4!mL264Q`v0-nL}e@MzYnZ# z9N+GI)J>2()T9iHw5D~4s#G-v7~Y@st4y%nO^SA%V`z3ZGSsuat@p;V#1Kr|oZO=+ zM}x~;*>lkld_E-&9NU#}FB&LiN9=dn%ob*@M*(kCQqU!}`RyvIk2sb<8oj8w3ZCSy z*@_v^5$YHbP1UaGN1aT)4}*tsbfWjRm@~HovhxBW0UDr*Nau-Wp5e$9U_yIC_-;FE zNr1z}Z(BP;tFxy(b#l(vvvuukZFi{!O&UbG$3 zZr=Z+A{Q&U#Vs(;U*Nfi;vI~b^oyC5q_YhoBGZzmZbekZk|I)7I%B`WEUzNRYDV}S zQFYD=s>7K-*;i=i1EaE7q-C|>k`%O9Y+L-8yFo*3zB2Zizl@bcj&P8*7Y=6xMxaz0 z?((k%wOW-Ck3n|G+J>oU=`$42ZK~I<{toO%Y^=F$#O92YAXm2_k{R*nWwqQGWb;(C7wBEB~ z7s_E-1b+RL5uyN1Xqitnor;d6^@AuhQ=#c-qwT{|Y4BD`q{8e{09udMx_!$l!xRXp zE@V%VL|~WCkGw_YbJODd7x5JK_8I|jiwxm_#VM^l{Yb*X$+X_8AaNr0(^xRs?$kn4 zP~HBgUcUsi9TpWGEAuo{&@SL{3_6sVmIIt&_#1U2rrADGNb>wgvlA8Va)Puo*QHkW zC*5W{%h~-F`rN{|Nz;er8$k^q@^NZfpSa0)TyNePZzKJ3#GB^X%DP@_*Yz{Unn`Ot zOirfkWWax?T~IZc_g;4AOaFL1JL~czfqTJ+53RUDWDph}4DNj6Icww#qev4B7X3Dj zwPjK#zHQ+;mkzzUxA>*IC^UkY?9Ik@0yRDLGO$V~vI*Bos(*4^n{=~J=sFBPrWe3} z4#~FS8&J>l$}60i+)^58-pS8!t~!QBdd=&p%sM>q$X=@?J7F83gU7m>5Beoyer}%y zYZ52|c43{awpl_3f{M$sjxo+_ht_v)*`6j?GjCs<$9trG0OBKoxYWx8TX1fApabHk zD4V;}5AY(r^Jj<#YpebTr5L6z(v*t@1*P2dSuE|scb*f4st4Il96<=0%E$9Qt&h~@ z>(m9P#_yv0AC^%Gyp2p|j<|He@%V$Gpv-Fvtohgch^PRK=FBVSCyz-zb6S4Kc-74? zj_Q!AJtiFkl1!rN7VezqVej$Vq=>Eci|r7{Wl*Nv0WD!uKIe8x#6uRLX4f2CMwS5VUrueN=`3Y=udb+Fo&-)8*Sg-^<(YbX!| zrkBqk?jxV$(k}abTss4Hvf!!bc0yXHu9|4_oTj7XGnAh_#2BE^K$H1gV_eqV>O>=r zw;Yju+14TdDnIf0$6HK<`C#Cdzb4QQ*^I&`H&;)q0bJ*XSPw1`7RKVV9VN+HN&dFZVAn|_~57uV%%r=E}BIeY6Uulm6j zvX(HfD$!XbzIf@GWkalB^{1{&J_d`MPhzvRFkGHbm8I%}^<^C2TEe#PZrzxq#PMM= zx?qWE=~~z3fy%F+kg9QBkEx_i%#~ucj$tQ` z>AUp&kuF|0z>1Wh&}jA=_s@ZgdFJq1Xz&(wy;6y5w_Fo>%zJV>{)#1s(vpv{xtYQt zlH2)({~$S3q2Ch0f`}ImlFyASr}6_nz9-_;ihw^95SrZ^LOcq`OYNV!^Q0aY8D@|u z08P|fegk$UY#la{ge@)#RnUmD`N;JiWKHB?y-ayO7YT7nZmXwb&x2nRx7l9eHSwSN z#6O6`GyL%jR5lN26tSBe)}tfmW8`L~C!#ht!1tK7@Yk!K(K2>+H!mz7B!i32ReYVM z5&chPtvimJQ5LQY#7qD0!^n%&Q*N0xO+5bIn5kFk=w~&~0rGQEwC<@TJTlV9 z&f~uiAPGZ~iiBAoxVs$GkxbD0!GD^C`z1+eHeiKF zbYagR^tysbSCjH`v=;eRdo(}j#Iti?>cMu%LFC~DWNu2XAwlS0@6G?3wt|LYF+v7T zgF#y4y`4EfIch~)PL4PYk8k)C?fs{J9ZA}~ED@6_=@@zJ+8obhubCzci#ptx40iQ} z$4gCF)xD)yC zV2yaU8dLYtPS|w7enrsHrtFdTPdE0!Z9^iPxb8%gcaH{`Nj#3A!0!~10GR+gN1{b-Ty^wAVlz$FkCxB>M-F+XS2%i=%YmW{N>{U-hKY|^cl{+Js_o$?%0B*5`rRRol% zU+UA|yj9z(8gl>X2h!WpGXZ%}Olh>pu95pNxK&L6n9B$apTqCij?CP)~48DAk&s8RGLbC zPj4cv&TD1ToS@`T-h3G9ZrJ_yb-9~uXI%C8Owg=DZ-x`Gl92}gK)*gk#0b%{OoZpW zR{FezBP;RG)OO3|*=zF5zp9d+`~Q83Tspc{`YL@pwqG7H#Cx__op98>u{{O7@*nDq z&wE3~D02R4`a|r4pS1sev+O86;}j5C0rXmU>%J|CRhKq9gL7|`>wZH|HE#z@=03#akuu&y*&|EAu}t6m?XR(VeM#iuk7m>Mn};PO z=vv%yqQapkplmA7!*0US{*=9SCo=uQtS@WIK13m~&ddHei7w2Ax!jSA=ZAUKj`X3U zg8gEV_)&Fi%u1fu^9mZf$%T&C=^^(hqHKA)R2lN~=x^ipGUN$J{`fs?j0j&(@TL%7 z@{?5MO|C?grSRfV^rvaZM+R!426^*M)fkM=hLl00$s?gxQy7a1RMYwdvDK`{3AXV9 zW9$Uy)*2UKH*Ee-@2oLUXm(9@mW210!_A9t_#Dq3H8c6WiVN2a$JcC%p07EFd(59Y zBF;86&~TwUlYs2sb&+Owa{%ZsE<xQe;j!T1c9MiH>) zRk~R@gwgj+pCHQE+*`>2`@c2P4vV9fE@D{k2@|~RnB8Tn`0~gZ#s*z%RnBNnquG$f znh4ZqZEt_;jMO%6@|bVq+{Dk9Rk12bd_)hq|EnSRUv?qXTm7FK`@=8jQ3>XY)U=)K z9c>nAPv`2YR-3X^bbJ=r{RIXqsnu41G!s296xK54NV4X|tmzI5UJ%uo zYxfw;Jk)ab!}Mo!k=t*y?@0@r&0Qtm=BYnp6dAeopVn6?vSn|5JWnrvK_Groow%Sz zL6KLHJuBQg2Nm--Yun}S2oU+fL=mv0O)m4`dt!eii;t?RU&wPIP@RW)!GnX6tv>M~ zWh2|`**)~~z1gx}siYt^#CHI?%R{x}cWKI%CSyd6Bnt;{eQN$OP|_ z2>;RKTa=@-xAIm+IH8tWT6mF|4?gv(2dy2Rn*JvvJPr8MmEpxQUTRCdK3=`0aEjQ0 z3HRJDD`RWE0NI&Mf7cCvTr~M3e!APO5;}Z>j6?Cy4Xt%Eh%ei;mL8tvLJcQL%AQnr za%rf-ygG0KAw1ciC#+qbzu6qD&g;vPo~5s5{ODCf%|c4&00W68d+{)Xf2juL^G* zoyS?l!$uiPr|VsFshN+ma)MOko!2t;Kj;#w(4NGH`i4qFUAdh1;rBZ{ZQ{upbVbjr z9$*4`q+lEU7);joaUJ+GD(!<;j^E~du70h zrJ8V#k`g4o)0M7sCYV6~O@Vsd)dg`Be5efsPE)!R_nAh&O)9N@8oz!tnVwTxhA!e6 zV_#TgbTz>!y82cV6pwp?L+>!QgSTrPqub?I7L9NUNb)J0bf>dEh53pkuK0NB& z=Bfc7jIl@KRmLzi-WHywP{#l63jRNyp^+r1r%JZas~~z5U&tp;zsvW$6U-}Q!D3FY<>Ls;Q1M+?AW0QZH@TX7@YjeE{UZa^xT}_>P zkTEATMt&RmmiB^RTs)WdCd++nsH}c7DDbF58Vpg%-?b_Vr?O;FsCI_6)qxhwKyluX z{EA{^k7rqw+mazni|cvScSgh?U`Odw>J3cCN}d~$Y$W*2Ey%$=|FOv)kmC412Buu6 zj;LI(Up%Gd>kVBSrHL%aiA}8`B<&AWl$uq1n}Y@RGYbSX&eo{2hqRKxKmNn?eiMlC z(own}6JQy1SbBH@dF+v1*d&ifcz-50?x(ln+)5QS^y~NdTX@A~l_q33(=E&Ke+3Z# zbLm38RlklzbV*V@jn8s0ttnbr&|3aZ>5P0}BaiK@sOZtUP^*r~- zn3U4q9BEObfmDz=e+;zC)o~ybx3O%*0OyRYTq9cVZ54fgo$Qwnj4JGlRe$W;%a4bV zMSghDEy^&x&?JmzV{op!H(DHNN1aWpD>jzQODBmfz3Xd;H7+(RHsLMl!0lvtRkIP3 zS(PG`p(R<{E18d+4Jtkro7H)~5$(BebW@LZ{b^NmV8?~F&hh^t3*R2MB=Yv&A$Ns8xiw&zAH)-z6ZJnP`x#V6gdS*)c<~AO$%a2tP5@k*Mi0}(W z(*jKl_y>N;1&>x1LrOL_@Z1J5Xz|t*4#u0`c63$01 zrVW0ObIFyEE5!g8gg`=`*!`7_-<1DANdNEgSc-%QRrFWZ2o~M>hQNpuionejp zmp`T6{HdtGC-G@+hN|aQ-r@+J5*X1mKwRb3wweJ~X8gBbZ4huRO2w2y;O&|-n?PWChtoSM}h{vT$mj!T}{7>ZoE9YH7PyxpypThDfNsbGS)a{gk7+&M|6xguEdN0*qTi2}28wQAmjXBT%yj|}O9^;_ zuI)$h4vB(c_%zX9VwVc+&$ihxI7+1BQOAhDmEO1$c}u&us-`gdzhAfhe*N2}uyo`t z2T!BzFTKJNn@CE7A6l7(#m|jXAEcHPgx@nF`{)AI>qHdX)tdM0BmP6_9Jvo)Np+ab{K8zUAmJiX*p6yU=tdAdE*{lt2 zs0Uts6ZI@xTk1}wCL|k)ZwckQ_mrE=c3x04 zO7ro#XUWLPU z?BsS!v85sY{=dRg8($v3i1Df%jM0hlFfxM9eoG`eUGH7thl~*Kv00w==5TV z)A^G0Y=CKWB$G=#i}b;64Scjjw{g{KAG~EX%Mn6j>wkKX8Qi2d_WMaS=WG4nMwM^m z75_TULT81K<7&9e_k|rJ%yvF%J~X2zLwX0yqX1#J1@}T^t^KL&w2I zn=i*YO4fo&9h!cy(}`A3-KOep0E< z_Ljx%W$`L__r}Uu2in1R`)U^_Q2(q+#?1B>zB&C-Q8Q#B&UNN&$IE%4A?u;rB6Pp* zLNP##so8Acu8nx`yek`cF&&^<>XfX#$+^waX$EV16uPt}j;Gmk{+V}p=Jb^q@hW9s zwOky*qNphcI0!5EE~d)!mBT|Q2yC7A3E2+XEYaG_y_qaq0vExjvRGes=)x1z#e%D* znR3$_CuZ7L2Z84iAN~mi@vA&El((CIdJMcp;fdwzM|Ruoq^G%YI(4-n(|{iPo|Fd@1`>*2pnP)Q*6Osw;h!?|G`F; zv%f5cP5jW7t|W$+5xf+L^~>2=(Y-FW4G$*L&@+Wg_LV80jlS?_&up%d{&@m2u&M=8 z(R)xXm;Kg(YY+u6xO=hhN~H`A;>6PcfbKI!m_k>rHR zZwWGDtT!uH=Fz#dB+vG>vzQjN1%Rx;6E(SH8MLg2v_nC|M92FlvA`1)+vnm6gQe-n zvgm45?dL9Ok};kBXesk$#w6r+mFfh5F6KDA+Oe;)Ps*7+qNChAWqtHa0J(H3)D{6v ziM_@yE9R28W73_L!sJzslngkHlrAAc_NBp%^-^se%~yVyjLkehEL|jn)H`r^yCZ_mj-R1uYZ2Flkt7(I_|88EMivpF_ABk4z;ghC^~H*lf>< z`4gJ9ej1Exhg&}9Oyj}ZTgArJot_2eSck8%g#?8II{*(HTi^|-;@CU&${ofI(J50? z99BA7(1h`lP%n7_5xF5tu4g^QcymEv7B#_=xuaaTCSV1i!?BYQ9e0R_Pj^dsihHG4 zYPutrHqu;8nA=u+jjO|o;HVA{VLdu$x=u-kh^Arh%HhC4r7ewBWZctjEAihVmZ~CXU-FQ%!@FBn-X3>@^DHzCRd^1uEio!)%S?B^R&%nO-CCC zVO}q46?|v!*W?^$%wRbyytKtEs%xR$Da^`21$oGK8_b<5c$3n5N z_S$T5?uU`P0R!QQw^~_0*9RQ_w(fObw-H!i4a2-rbVHx|SU1LoOrPJonjxzTneiwj z^mIObMgsdb+jdA9?ZF|$fI_S1`YFZ)VvZZjJ|?Q#%(U)J6@#h*yf-2Ob`}?ezW!XQ# zVM$i|XgK^~txw#{Ypnro5Byyug>x&!PFJhTUFCs)D=O;du&?lw=`**vUlpfi)suU_ ze3?+u(0XSj-dD-<^V<}is$z`4W6t83cGgWzKAR%0_e5(9Q+_th*x!Um zP=(d#ep)rw3GG_a6sv61Hd1amehD4cS58@EB^Oa_f00|ZDrsOut~Wj%WLRN^2~5n1 z9n;=D_9(=1-_a~81}V)x=~K~sLfRN|zVGIK<_pU*T@-IEd;P26pDIk{%_5V+=Q5pT z^4oLt`_bWuFmnIBU3}P^CrXy9D&%c?8f3+fPbsYvyf_8L2e&s#76;YYUzg+&v-OA= z#K8qo=Fv!NGE z3@VMrX98AKw=6JSFS@z^aATvLJ33xO$gFFxZ5cGcXD^<~Se9I&gWcCQ(i(}y-nph6 zTX$huM5*HG{lE0V(8i@UPpV>E+B;ybuL%GKa1?FaDXB1rU3I72XCoCB<`q3S8?^|g zZcQZ7siJVlx2+cfbJ)u0ZM$q%>>xD(PlwCgPRlV32-%5TwmiC+e!u!Uk ziNj!X!aL>a&s4i&s$VZwhut@^l9<5RF+n+LP&0xkhBluG8?Zn|Ej8S(n@<*$lNNc#|dcBv+*Mr}Sbi&NOA_ewUzQXBW2;vtl>v z5-I1^`=`ik(sS(h$q%j#(E@u|n{35hxw8ZMSPCzr>+>ct&fIMrnB8jQ;^o$WH*;UP zTJ>UZ+%awoZCZDYSNZ$nNBLFmlL4(d=jdhxvJ+LzKMWe6nFpUHBvL(eYe6(~uXcoC zINP4p_{8?$w&}Kh#1{*K;N)JcRFzEQY9-oq4EIM4!SGM2DS_*C%@q%OudT3F4hzIDh_Wt|UjKyWp1%Rz z{5xK`2`6lg)qC%IDA+c_BqGI6a;Uz#5@tqW`)3vn!5(OSH%H-^8RBU&Z%va|Z*ou_ z7OJraIWUWIeW~ve*&03XqjhUF+B)1Kyg~>-EZ0W~KdmyEBV~`&k8uHWCJ)}q2>lP# z+e(4w)2lSEigtYb2R0QJMnN1}hte$)!OQr<0CzClW|z~&+D5%$>oio9uV421J}Rdz zGPO$3+Wd1iXH|kLzzlE=P<|P3Lfw?If7ir#K0(^Hv+4uCc)Gz)vASu$U#4cBArX@N z6LDN^_) zSPuSUs>_^1o@|gg)Vn^>ob)v+*#tym{{SV?o|<$VfqMO|@4HGX^o}7Bph}~FB4%>u zZLlGE0r!n6EH*&(wdwV%4sucjqsE|5*7LrHN^aF`u-OMF7S%b6X^D3e?nkA_fOfxJ z0vmy}^Vwnt1d`MFh!s9ym#<*AXD>W^Tpp-ui8@3{sC}h{?3&G)l*!nt{ak&{Jf7@F zrX1Jwt@n!pG2DCEfTQWKeOOiY8C_^=7Ejpl(AS)=eZxH630Yb`ACPq{!7O-dvZ|_F zi!*)@*A{a&zvn9GnuW+1oyJ}E`6}1Dq#+`@PHYP;u+aiKnGS)7_vs+=cMWkb>HY<(4L!_! z-2cIgZuv6z+Ixf}`6E(uQQVlNRzR|SB^tEnZz?$WJ6x%4r2>na5b>t!0kz(xv>|7V z;Y65O*M&3b`3VD$z>0b}ZG*n&WyHpvt5@k-X^y*QF4}B>799!Kz=eaz3=Nc0zz zoG`H@P&U*F7^RPr4D6pyr0aNgH}sIUU<3ekG5D#qt8rmY3wHSSl%ezY6n2^#V$QEj z3c0TNAnrpqsQbGy$g`Dt)+dWP(n|aXQLdXA{<**0Ff=|A9BQLmnLbx~60#=88KknF3gQ^VSdamHx z-#}!dVr@66EE-@FPJ325y&!4~fN5}B*{2(u@sIyhN}jtWZG?3t2B;$EZW{(fUoco@ zZ1L`zEvi}LVCSPicFPya;%<{xGT%x8pX1t$zfWhay1FKwrTvwTWsF*+Hfn$TmD;d!>I`E@;fy(zQhwH7B?4MY3}gi_aN95=LkYmHd%@n; z%@t9`J_j8}V*Nh5r3nIG^2=?rCc>TbHpq2TfIJ608csuGLQQ^&I_1N&|Kdt>S2O{P zf?>%#j~qz?T#%}&fIwl@7zTYAe^dS!*4Aijc9%pZDUOsuldB|bf*p>0*``(LQU45E zZud+7+tZ9=n_cDG_0HuDf_3#Cgu-O&%Q-|Q|8ft$<|CC1h=iAZS|d09bC>f_jz?Oo zLTi8k-!opFaPO&?I`8R3;7J?DT1UG4)u`{zYg?&&48rgJ+|($MOp*q#f4B$ecWYky zvJ^422r-DJF5uZpv5V!+TB~I@{dgRDSE65$Fl5^G>Mqn`uujhRY$m4NcY0Qo2GjvT z589&Z0#_xR8xcYF!G=eOH{@9eb&ik&Yhz!o{98&ZdC=#T5p0oT?|aOsD*aT0S}19D zg&EcEqMn$2v2AS(%xm6AcZkY6ace@d~lTZ2sC|yG}DrS|+MevoqFA*K#oUjs@pG zKDYl9Zf1kGnWst+4aQoE-7JJRar#BjkIAziZ=y$!Ulu+uN{;TcC8bsn33!NV<$a`J@1Apr7ZyO&(C+g7q|omu*c& zEtWI?%{l`3ScYB? zOH1ct5zrW}oo%*y8r?Hp${ul^dn<3p&$kDAy3cAg#G z56l-9;r`Y9T+0k;`k9o*>^;b9$4zkYzGOTOl0Vs^=k{_^X_lMm zPIq#g&K4z>H)E6$x49M7tP@=S?0ob{&z=}g%#PhG<4bh{rM>o$Zf5Muy6gIMvn;nU zSa^`T=nd{RM>q1xfRw2#y95c^D59&c;&%anhgz9T6K(|1hN$vUxe!T!b(6;4onQ2n z^Qe-1uCf11gK=X}bG-A^DpkFiH#xDwz3QRM%h}(CrEfV-9^Ju)CktJ8)qGcd9WZ3u zXD#l%OXe8G`v75-?7?YDVJn!=ukSUu$E0HuhIo-g`Mf4W_?>RA4{!Bk?k|SF7hcE!>5#dk&Y6N z)5JOs+c(9&PrhJ(7AJdW02M|h>$YdK+8Ji`ywT6;4wWdoNg%j2FX%R!2?}9rwzcHq z_q4>-&*!pI;nI#{=k0r{UNO7D=ndOTW&TZ7oRv8}u>ePw-{u^p!Osb>N+9%xk-O=> zj-i(t!<{~hdWH%gwC$XlrUkR}ccLWPe!le`SY)a;k#KTfniNALSQsl)w(74cIp2NO zs5to{Fx8d&YY#rp6HZQOK-cqVa*+w$4fffO%lF2PR%Z!hSS=*ZRS-*dHi_^m4W{tw z8(UX>mEv?0LT5tC`escck|Ov-+YmWx&YkG$>*0at{iFcN>8?jQC+Y4&rq%VLZ@OMCi zsvno@E=?W;1Bq?}PdHkOEZqt#rF2o{6*FuwC^BnO&%o++a0kPFIz!Knh-BJoH*eaY z3np@V8BKLeXVDoZyLOn|%HLQTm-D-J!DilD%w#4sOw#{DTZ#f>P5nKR zpT3u96!C$%@hY_pmlU!3*+n#vZ4E~=P81ys9HBWtvBfYE5q%mGa`E~Eg>`@qXy_sN z-8g~H`-d05ZPNkciIr@RL{Jmc4IBWi`{d$AvCvEX70xZ)M7vP&vbdN(qh{|g)1@q$ z4^SN7c|<#Y_oroL$js$eJf2yn7|E%9u59Mgbq}fW?R5T}yd~W{D8W%_hV%TBQAA0Z zQDKroO41@qJeQzV5l5d8YVY_Hq%;u(JT`#~-z|FP8EQXms0i8!)RKx&!5R#Y*(1bo z56%l68B1|v!L`^6M52H?mzP+WXVn#*T~Y}8X!y#m^kT3)9RudsRzBNaI(!RQsN%AN zLEwMCKeEIo&a#$QxONpr<|VuSxJukRyXiJ)cj4+g5!$L>?>n0ZX17|g;$u#3;(QG0 z8%*DZ9%s&0-yELGmCZ5>R>^97cjNyYxU-oS;o>=$GG@V_d@ngtK+p`nsuX@v$mz$HJ zrhd?h-+W_^Ki!ehem;kdiFJm!^^eX9=#PbUmQ*Oqpp!#i)gg9Ll{>#Z%stqqag%%E)(S#wz*v{mSdy2a|9*FGGpdd)0s7Lf95J`pn;q-6ZOfu`Q~SZ1Ts=<8)}KP zEe|Tol92z^67XLoIGp1YDRo5Rd$(M1=iJfBuO{NaZf|2qNo&Q&7L^#6A}y@#FMJz` z!7HO3D`;rsQ(|@vB8_Y-Ni!-MDXq2!m{t&5?mlF3kc@mlv(a5H8);3^y#vrMBfJfa zXUn2uZ`wUw3_=8co`wvzb+|Q3N~2P2^kR-f1?l+PK|6g}N}_gd9SR2(szo(@e z&0Q_Bm;u$XClO2$EM@@sbbUOP4s~+YO)5pK9GzK_KpBEq4)!1>5;eWCG{&W+IB>*d zVYDu$>*%Rv&6W&7u~F{k|KXN(+{)&B3y>r-voMfzBe(0JMO5OQ>oV2B7a_3izypdg z0V9CaTO(0KuqPNLXVYgLIy@~Baq}c12sq#tXmVyN(TQ5XZmPG%Hi1mu?YpEIp#bQz z0xHMZ0I&rAUe;Lz*!X6h{X$%(WOyanZ z(_=GLL1mZxEo1=85E(%Os|I0E1Fx^ykTZwSeRh&;69)yls5kri_TK;_#cZt4a2S7< z5Gs`iTa_cs$_dww&2v~7jhh4Gz)7Ajft?%dNQQ)XBigdagdF6pP#m$G)3j`w*gk`- zGhN}zrDlEDyD=nB&V6uyoCZguscWX*^)jd=*7UQjBvA8d94j6w_jUE&V_vs~@!Mgn zB)7*w7npA=iLLR#n{mksW`fHyaUo{4w-6q~c%+5m%&mxHqLgG;*xV4RW3m;*8+u#px#O$X!hGjeNOFVp5)#kQ^iU&TC z^-<^P5zCvE+(|{OQq%bl&AGnAOGDsJl0i0abF0X~*NY>{Gf!&q%RedIe))fw9di9_ z|9-MozP*80nJOBzZC8job9!Yd-NyXsO+;Lyq+?&zu!1r%hci$o?f zg)W$29I#DIJ@~KCH}|I-q>PB=hxSvf(l37BeOMtw06nta>kZSz{g`AFSwA6l%`Bd- zFOh6}Wi9nIQF(hSSZg_%uf%e0%tKQor=s8^bqt2?bshyfC=Z4HSoRJAJ&(_LAIn@; zrFDClS$EPcH6UiK!6NGD(Ik8bv>$ z_z~>nD|ysPMqgM|Pep^G=4oQ*cCbUurW`a0+g54IXVe&a5iE~%(mv@ACR6ONjEnp6 zQWe}UU^skySG!!tE$jStb0#~Atx`nHGeP_-bSNhoI+Sh1XlC1(_=abJ0pGE72cR(+ z?phhqUdy0d{oTmKuD#8jz+t{|*SWRQww%M?aZLC-;S#jDlwrxAl>VKb& zXYc2n>wUkUPg$AQm~)PKk9*v{e`7TXj5y6nIQkUp#^HurBF7)$-{xOO`#eX4(spz} zXBXLMafwRhC;2sV$G7WeGBv5}ASBg!?C8`S_8ek9%xuXulw5{6?cRMbKsKYl-fBD`<`}OrM^7rO`EVO)iW+u4u4(k%K5qCW zx{#`FUG?#Ni)Frw>s27a?R@Yh`H0n5KCa)R2O=JQGVg#GkpMlORT6+>RE94HC~0Gr zaf0tdbnqW_>qHlFsb15A7}zI#u9#{&4z zSN{Kg-2Xn}pQQa?TKq39z&!9DTke1P;(z(#fBE7cI_uAm|1Wzau-T{D#Nse1RxQp40yYFoi?|o{%0!_0;H28vAKF7}pK6uqrK!Dy}*4`Gp&pIt|^j#A5-4@KD^O|&WJ$LcE9}h}w3t~Cz zN&N1652wp86z^8t*A~`ZZ@DT|3c>^~fEY(b`+a~SqO0BU1_iE_kI$6~X%*hb>4ts_ zcAYnx*1wBm1#YI*L<$X7OskGw{GLv@_^!q{kQ@^^^*nb{1G!8iFUACdy~F>*sspdw zHhEw++TNc0~La%y?hUe@Aa?kO^w$v$KRk`Qds40X*HK{vsXl@ ztcLzCt^^!kVtns6!rg|c(jiBinieXD1joBgL2wu;ds$>CL6`EDj&+@0|H*y zq!EEjea|7f6HpQKFSVB16eg1U1rA}l=CQ^o#z&Nce>)tG!zsW{2j zv)J~^Rp(@}=_HDwx^~5FiAfu0Q?-p*w%Cv7u(Tj14?~f=7rYwjt}3ygyy6V~9tKW3 zt|p8+T{l8;peq_bc?D^3YnLeI*no)K8{1FY7`6;(ay{~!Y?nA;*R}7f?5PC&91;g1 z8vR}#Ma=xbcg?m?mv#N8z57N1IU9RfpTvr`Ka$FT!)VY9o(<{rfWA%%z%+4i@kybw zbCji<|GBcWp>jDfl4SOWSa|9ZH%yDy>%-p3oS{EbKA~ow|CfjB-%4VHy*94g=RF@{ z^L*$54aADrzyU_yZbr7qy{utLnIWn1v#DqkY{7)*PK5Tq z2iH@R8u2}1X||trJvlk{quS`8Z~#DcVtF=o1K66KUN`fV=icY*y^_A+NCeoGtaX$W z4^sVMNYS<+5?~aC4D5?SjOgLdLYd?q!e8Os9*Lt)d{04+TZ2%>iMF?E{%@7TpC0ed zNId$(ZXM#lyPVt9M#4k6q|NmRdZIuw7Tys(91#y4cgoH~vr@aRRQB3J${po(zaU<; z9wtu2MuJhjRq%GnzPkq^&cWCRXf6SBffA!Xh*C)-pMffV4US0&+Kk?0GK0_L`se|w z>$5Q7K_`i0L-BqTT9G1zK?ckw(H0tZ`*Hd`-~Xf@OYuSmzBe;LX-vA_Arhbq$8tgR~JN_gbXh!)*@Yu$Q-`6!8TmOB)5}dlaX8V0pj=l=o~uOYYi0LC~Cm zchy&2L5JgHB|)CX_}4Gqez>|Z@7>?u9GQ#M`A+%&G;r?+Kej4>Es+^qT1oHFGFqGa zsOIj+-(?^Y42=YD2iORMzzK{#aa;4fgIZ;dfzF*KdOem}!Bq<<@$;yAy@7-aL^;}L zdCYSL9+};rZ)^~rju57`D(kF^8rNO5)oT2#)^BHBokwxgvu~UX9WgQebh(DKp5-=;Kr$r1SmcGKAp7SuwvtqG$P$*#~<}U^+Mp}ZWV8E`RGd{`;G$S zv2m~v0LTCX+)3s(YOO!OUH@SMS8_mbSWF_|FK=5mAQVq#YO$K$KA$H$r#TCv8J5YH zX(#Br&S>s3Tlr7aC?lkDvWZ(!?YOVxZ|SDdduPDzT2&| zL5=2iKku+?_-G5XzBA9VsgFb=Cr&cT?jmjb&tc!_+(jYAl8Ltsl<{F(9BV|-;1 z(5Jwt*R2-{2RBVx8!u6$$?|tGnTL?(SF?q}955r;{PLWSZ+iucP;jM`@37`UUrOt_ z+SuoKTMjH7qqK&hf>lb39tgNoqm%0yEyHio!2>2)#@vKvW&Z5 zmu7YCiEw?NFF?KU(L3K{D`C1#FDeG@+760;x=ko74b{s%)t;Ix>ASCdva@4$Sp=Io z=#2HXDgEq7qul5pe=3=U6fq?}fYqcOC3?W!1&G9c$)-V}HVv2*El5*9cRELf)jW`d zfdDGJF0{Sh0j!@?N~&Hf5Gz@`O@@oK(0mBo#zBK-DfgtpI>$KIVW~A zBCb_k@WIIW{ME@dByM!uA;D=o0l{DhZXK^wT?IqWo-(Ca=3UnZb}O}%bmLlWl}t8B z5@^=RAzPcfTB+BU_~^9sVpMgIT?p`+yt%{54WP}(3&wy zUumR6+6ZlNdA8*Mx@#dL` za85MBE|F5i0b%rK_ce(Ls?R=wcn|~r}C7DbW)j$+cRCDlZ>ne)( zrQQtFL^exMGGAFb|li=C}q zE4IlnnIf6T#$zTEop`aJ1$$^|3~W?1t;uK1Yg9`am-o)-hU>c{+Hs*tr7-=Onae^k z^b+_EausiXpIbINp2#*EH$}Obw{yB_g}>g$<2-4{mNVa{(wW=h&(^lD5q*8}%QAT( z;hn;_QEn~lx61h=BrCBXDqbIrtJDk5zsv8Ub$XBjO`wlT?t{%SAyAti2%9MRM1Akr1~pqqc>xuc9v+l#*nQ{_7*H3~v&mi**k}aNqAQ+1vpFmjYd1|7 zwuh60wWU=NAUPq~8Anj*X(Ny#dF&i%TSR|C)O7Zg_ z3Sf5({wb75b5kgU8Ypxt7jKNu!7iXH6{4X*kOdYE$FrH&`Maa2a)DD zKt*;DVZ(hqfUrMATnxP*n~yeSY*muU;~@cwek@Y@uT*Cm+WNwWQD4R?v~d8}l~V+c zg!N`Fo}r+L@whw2+92D+2WjBg1PV>reU_PlstAY>pd1O9SCe z&7*qP?N`?)wgvd3CR{Zmt<G_~Kawg2$W(hoFBuOU8o{79RGUiWw<@uMcMv8V+^} z3P%F68mz1sVLc-l80xX*NP@f3_B^C_VC2|VZ>bSnfmrBABq2Rt--D|NGXiI@kA`p~ zGlte8K51VX-3)%9M=94?p{Al}b18vIOH61L281cv$RndED!3 zk%S_+Wvq+0IV+y<0@=P*k`sqFgQ3{RXkj(fisj*a!?AQ!2~7oF`sy4c3>F}y7RS1- zQnrW$#Lt!xe_*Z5SI~1_xRp80dzL5Kw>})A`~%eo_Hm5x z-gm_VlrE=Yy#?;f;$QIiAw1%E@0OkW8!*>8JGgsQ38MXS_4A=PSh77PHd;e*$S>Nz znbtAg*;lqMq@U>+(At9a_l8c`9$uHwd>D=qn+(RCO`p@b6Vj;7>DC{duLmWgNFf5h z1^XC{8qHOME)%7tdPn2UPRoXtCU(E>e0i6|Q$BYYTb=H(COd81U9*cMh$GIg`QwIw z`9(XGxm{*$8+{ms^QRc7BLK^DMpkR+a!f0N?esQ}W|4^w0jFK@cy{~H?N>FBz5#=- zEzYTf<%{hz262~zGY~ym#-sk6RmwOh_FYgwub4sG`F9Y3k>6Eqcx@cse&lPb(R2ESR_IEQ^q20^w_#E8bxuHipeJ}-lYGd$if-(v_lg=VKVS48KAA+_6z9# zAhATrH>4IpAWOYcsgVa6;~mXY+iDE*)UgXcE8u7sE+wsg(Rh{2{?aEQ0GMD`h#A@+ zZR%}S8IsElel$Czi2GLd(-1IW!Zsp~nsz+NlfRF*V74gqoBejj=h=b(FGB=1a0l*O zKxTt4O#Z|N#mTt*L zHVV|L1F$668o^wAM<83=mfpyJobnidwW%pfl<~2rxbU^;B|H5k1CcblI8^xci?6CQ z1vS213gCO!ahfqOL9CQ~kVKR=Ic~mM9V<9O;suugR{j72V`5mT*m0m<8zi64dQ?zh zdpV!Y!X9Tz1IGIl0tpr~EmU(rDja@@E*!PypDT~SS{yTr#|@k&nVaL7;HFqc08pbI z*P4wD3gmLU5HP<@uIlvYs@VGbsHC4_7p5|cyf31{1cwvi-n`ue@&pIO^HzdPNF#7@ zaZ_Blq-m#CR>u8(?^>T&-MROm^?Y!2q9=E6I@FJ6iE+H+iRmzrn#N({J2$4yGzTLXWNpt zhtf1=ZC9A)x&=QspRLje@vn-)mw8*q+2~yBsF)HST|A)>CS49(4I#|UC0ZL2QRQ@H zFi+}hN%7v~RzK_{;qaAnX#~-E_RlZbi}j##yFsdgY6+h_r&5BoDhBu>0D2uc5)z^9 zkQMgONG21YLem>{B{!(wg}Zzp5%lvOcs7jDG-iE#D$^i(!3e0;XHmr3AX-R5`0rqU zz0Jl$n#v!RdRaG83nmfM#o0`VZO4N&%#5;F`}24*zoh_k=aiVR=w$#Iy(Dqp3uI4T z@JSh!-Vj2%k;xA>x_1O56cc+m&mj&J_SAR@UBqujnI3DsxdU*dhZ&{9h$@=cRKfy1 zl$2?nMcDHo)vjNP^HO{?La_bcHwNMG27y#Qw(`mjH^#rB)*(mGFsRys1d?ahkyr-eW7pG6w6SQ6AmFlR2r{Lec@FNQ>2L#OpQr9{6hbh0$4&q`2} z?vie^#@)D?Z#l8M?BXA=xpa*gH0xk_wr_8FUk?E3(6~P5O$Z{r2QRZU3nY0`@%6|F z%Sbp^WiG5~-TO1eL#4^XB2+9~yL^N9+jk|m$&npeZ5z!Z$I0K(_@K5dmmmrp5~B_wvm`}e(<~833crj}{Xm6flZO%1ixQuk{b4 zT6CtRuUxcTog!hX*o!KRcNTff&%+PHF#I?y20p+|`UKZ&Aw=>vFjUs*)2~;UNJ;eYw{w%n#DkQFZ5Qsa} z)6iaT1Rm5cAr_3w21_mWXMLjI157(^;O*ahM2Uy-KImVWZHhAB!Efo>IOokDx5cZH zho%NSg)p#yp~SyYjWGjeorDThk+Pb8-MD62ZTbY^5-lX(Z`)m!Iki(Jn^y4HwR zP(Ch+&v{^Uv{?HFk`S;$s~Rmj&IN`4JfI?+CeLRID|Ftuk!*Ff!Gy?4z#%;1a@(Pj z{Wo$1opk3V%mJ{lpCE+6e;d>)GZ}=D(2<}Ij>5V?Vx97rBKHkKT3+w}a+=e3Z^iX^ z9?Xeo4naF(E$tCMf!2ZjHpm0s)F(rx*jc1ZPn&oiiCpj!hp`@>2_xGxP1aiOzVe3- ze7u^Q(XVoy30!lae8PmSYc^OLh-Bv~%TE!mkMP?Mb!lu>d(GEiF<=C1<^suoG5C_Q zhkoi@ho}^^?u=}CKi+x0XkFu4k$1(oWtbn5x>k3IXirehVobW{LA|~ZWXs^gtINs+P4 z5D}P#CxnB3)CWRRMARCJ_oXl71z$lidAzQ>Z5Ab&>ui(1y33Zdovv)|+yBwqm@dr)Gp%CB`^^k($tl2lL+15xd$-}SU=J1#CMppm(2 zy_llJS5N)HQMzhegB!^lV^jmcdM!HP-aa^qXw5QBuxElEV9jR#$hL?YB^^<%B=`WF zVew3ea~7FSecZ(xj&6u_JERiMD!^)+oiI~bSnq4FzdDEq((n_^P>SmRsyDQqBwc<@c%I;SBxu8Ko>b(T? zQkS4X@(&4u2@FV&QJdI*lUq^8R6MKFz10-c3@poYm;*@LNYi=ao>hkFK1F*U)F!`furF=-&uwPgB_AJ{j$aKK#cD#RiXSwB@g#Ap~ zPf8WMO$a(C;8KSbju1Yh9{nWdCL+&v5NV#^SeXWLO@=YUG7muw;SM=QBq(G*gk}vm zHkpEy>>@drc`6w*4#F)0gHK@*21b+z`mjzFKuh2q=;u9q20y5*)+VmDq#EUjX$J|& z@+kHFQkwSz=Tf*g9fuOgWTpvF6M-iM%$8Xq!C%e$K%WAwE9)VDFS&zPg%whf6Y_Z! zU2yB05(f3MN0`V)EO{1=U1_t55Jr3oj-%~Tv#ZYKGUmjZkR02tbImps`rQY9Opjf% z*JW_7>SWrd?$r8X#A*qw;n#tZ0ipQ39Un#ES}RpGG_2qj*hdRJ3Cz06XL%1sDi`X_ z+z>cXm8xs1`@BZmO{x4RARj!Z*m(lxDc1YSo^VYnD4}!>u#@*d>LI5noRW9*A&Re@#TU9voEPW>QJLwf3w)AmVFw2 zN$ND*abohm3y&N<`v%!K2rhU&&_=q-^9CbNetHY4fA2@qM;~?>6m%<_z23xdAS(|V zBMc?HT~tcqRpG~l@S$}dJ*9-&OV7uvOFn7U`RT_7roBs0!7cNi<3OuIJT(dlXpmK)IleK zZI>Zrt`Z9!KX?ar2riL#%seiT{%(qK>!6W#5wcW+latu7Xas{nI5r*fn;e7)sZVnj zdA_@%qz*z~K-c3PPlKB`UWu zpmbc_K0P^o_cRISsaI^+;{|tRUVjcTuUI`wT{qTvbh;w8Jv&={nbWV%UM@w`c{2ky z2dmw~`Ja}G0@}J)m%5@D4chewUs?^I1y^J*_eQ8c6jvuKxeUyexR6CI%?MyGwOVvj zyfvRL(gc4bq9g?_H`T-^g;s#GWP3}}-E<7wy>=Koeb6N%?e3fjjED5?URTWS%U_t( z@}#olu=M5o#=uiU3@i{adYTYmx4+<}(=AVMLek04mJTD^i`&gV#uX!_pkVcVbSbGf z-MoA}s^Pntt4raMo?uHP=SOM<(2;M5o|8Gktmq#|6>`i z1I3N*RzK7$zLi3l=_ zE3Tisx<0WASSjWLs`FOofuX~7GYkbT6&%!?4{u+_5L&(wK>ShDoRFJ|&N5V5mZQH_ z!B>RYVNthYJly3qm8luEYe~ONH!}#J8HvJ>aaqqYTCR3HurVPf=kC;ZfHzeS>d;qM z4_AOzJ&2wpL{}CPZ<~1Jl$1@%zyOPca(5n?4n!ikAH~WBa=YC^GX@fV&A@}8!GSyq`~Jf*+v=RcOxUyEY|`|Jvf%X2qpY-_;_hZc|#{9O)3%oSBhKY{q+ zE$5QdjU-wcJnO$~tN*&=AAj(O-c#(cdm-sOAO?y<^1AG=Z;ovk0O5=O*i!#^!9RwB zFFI^e7;P^{8iu<;(ZE5JWIIKjTl|*?_n+haNgx?Bch*XnPh|fhHkdvC(EQ*3D6&Gv zWb^gXk461AU-;Jq&hJEehFZIo^cPeAbwdCC)@<+v9`_)P46M2Tc+o%KzJ3-Qkm&56 z*Vf3u_Wz#LUt_s@QEO*DE7ig`Y~ue51rvy23Ar6e1?ubg{~9KZ1))=KCd0M@E?o(! zi&WzH>m%c6AilAiCspcjAXB9|$~y6@v~>LCC;sF6^I=&Z^qZ_)%^)gKO8!Q2LKaA5 zB7RypxP?OTNOZbfleI42dWQ{B<0+fJ$lP-w8i4bT$7wqO3~f(TqgKdcNU=AC_>Jga z>Ch7y|E@2^=iySOIRsLzEc<@OQVVQYOGA<_xScFgdApq{YCLq9RC`=(CV}mIbt2Qq zzkLS-gl@AAO*|oye=Al}2Bz^vK z^SZd?J10AEq1h=qu7zqr1ckyxHcxCeUn0Zmh#jn%1Ehzg(Y79R4JAYFzcLmL284VD zc-S|qV>C^w44cG01ge6@*J!J`7ryGL@v!VWMs$-AA<4HFz?*n57{P!Gp zo=(~`b%O_t$sQ%eG9LKH+Wtk*|NB4gS6DMrg9-i0L}yU<#0ld6G}|y?dGMx)hKsiS z_&@OHy*GJ+qu%GAarxU@nsY^{M&r(^+mN^Qp3_|LdWTRT?9|aGE@G^ zw%KeVTV|qMOUi1dlpKs^ndlRhxL^zkPQB9@-ag3CYtYif;%7U0NI}2d9{p6Q_XR1o z0(`BjOuZ*Bw6x{|Kfsuc0fyO4X9>A>KTbD`y~)L%EHr2>Eyt@CIZ;_EcPm;U^BjI$ zYPL-`rT`814U85V1^PHu$0ZlZrOIpgUEwe%s+dv_g`RwtN$d+Xo6Hrcu2HY@$;{U1 zb}PRGH>B?K=`@%n67tlS=%V4U=rD^(#iZWuHKlA0L;-x_L7r1pJ!y%5W5*tu*dD(e zKAXixnJ8=~FV!t09DDGpqd~GS$2hHZyS>Zb~!;xNmiA{VDq2X3|j6@=wD79 z>2GJ9`6X7#PARAbS>0s1UY^msF&O$?Z5irkzb!mS#u2mR7Hxl$F={u8`<)7j6Z=&**eujD>5n|Q>sa}{y?y}K%{Y9!dCGR_ z-SIF(M>vvE^Gimf03C6s)@}a;Z9Q_BGRU@Ee>hbt^q0 z5mI-*v2mTU9n^h5KW}muOk(LeJsKQd`|?Vrn_4MX#bnqe>xaiG&S|@Ph`dm62Qq~I z+PX)$=2X(`Bb5c-&%RR+Mef@Lr-sC~*lh8-tzNPH*8PJDc5kbl-aDQGlc2n!Gf$J; zWzK)dM@w-da6z5ZZw0QR3tG89!oyz+l0DnWuD5UCblg3S5qvCwYjX;Vw^dkw*V}jF z&&Bdiep$PC)i(YbfuuiPv)h$VAG!&OJbz2ZNv~94{0f4)*#0TNRQpnL8Kt zlH|pNb|(yJ!L7xKe0HsxlWWtlD9cN#)`jD_0_|oKDZ@m4Z~hXkYPwwo3gMXmhaW*n zLjJ1-oIGCvV8XSE&1)rfC_BLC!whw#kj6Wk3ruXU> zzPZc&b%=HV;Mr!dTw0f$G|s|gCRdNQFriLSYYMV+MO$NtV>H%GkPEq`Rm5hne-hmY)jyf=c)YNm3G+QrJ=AF8ETh% zkyck)Ja}tnd%&8}I@vX}oyO#`4h(Gbd zQN;N_rLY6($c3P%TGrmw<9R5Fn5|h#QowEO7Hi+hD9i^&W|$RP*^74gHRiGCwMo5J zb-Lf^l1nC(sT6hb*ll8-FZO)W-Nz3#vhh&}yPg~a7&X$RQ+PgAXr?vWX37NR3gyOT zv1(|Rd21y%Or`{u|0KUv)YSN@QQ?%?sG&Lp3fMv#M-f6%{Ujn%R>t;I8K23ZP4tj{ z!DE4Hul=~icI|W-agRlt5fGfCS(n|&R};EDoTKYzJyyUbtBEQGhuG%3xP+!Wp7k+> zx2b$s>M%}kr!i`(Qs#rZK7gTF-CRFsai&1Ru*s^*=jw$;wOv!gau#6h;(d=$E%O07 zR+&(f+uWc`O;&nIbG*<*B4-^IW6sJRM0n++t$!hcPyQ&rg?4IsoynS zY6-^HIB2kkg4)QycIoDDHmMjNhNUP=$kzQDAhYO}CSkgTCREc!d}cc}y_Ri)o}bt( zC(o$PTB1c?lhKp_4r4zSPS~=xyfT*@YCQrEXRN78UW*N<4ElD43$4^04qiP;epL65 zsGB_czW)LRKLm9$q2Tn)?)vt$`;-^T$)O2KFkf_Mw`{FGbx6e2s3*~_w+Tfg=KZW$ zc0^z`7{!a-IMX(k$I|R&5gtczEvAQdML#%w;YUQW*l2aQ2}2$(o+x2RGlBK;DJuyX zRkBK#Gm)^|10Mf$y!-HBu2R2bOU(@@yjErlT17*hwdzf=t8u{@Kc~#sIHOI9MWV6d z;$eihBiI~lJci3pIhsr6A5qRp>+EyzU~G9+P4V{RTx}vO4!OjJb9*i#&b281ezf*q zZT;TpZt}rpqu4vCC*!d_ zFNOnL3BBg;RZF$MZm0%DPf@ZO35}%u87eQ9SWR+&KoD1-4j+9I@GbkLVNp!3pMe>D%P#Sj zW08V|7q_BJZIQy3sYW@@0RXzTLPI_tJH#p zcw#=4GYO8OmxsMJ$JI03d{YA7EXPnBlyyP%Bd5%EmQ%Nj<^4Q!MW!7TN7rWcr+M>o z)*{=V_D*{fRBs(GUbbi9ASmPj>9c~n+&(A-*^0DSed0!*!D?hL68xf_OtvGX5^7qN zj#BHRk~Bs968n?3n`$PGFV6PW{*p|#EIi561k6{dXoPGeG*RXzrN89-WV;y8 zr4V_mm!kR5kb>)TxuBK0oJITK(l;4Wn5S5p=k@9;g?;bL@$G)2L}cn=$K5;zJpr&` zJJ%sJedTsAt7hQYP@#ywD{Dzb>vpotMB?`tiq0nV&~NI;Je~0+L29z|zFB@w1}X$H z8ikcEMBS)<-}dnOTO819BlXTKe{fv%BJI0fDDE~in-?j^)$Z^XbrdRQVNpy{$S=0HF2sSBZ5+eYdp|&+?XD7^gZ5bY|jdrDLA7E}r z0}R94BY6(EY~~9gM`(50{d|-9$@WSahCbP}D!R3t&F?q}f65TM5G$&)S)i9f7A5?i z^n*~IkZp5{O^2qGZ`)Cj>Z;BEH5PFW;JO-yOhQ0*;xdIlYVLHE#w5EdzH9<6pWa<0 z0Wys69~OXc){ zOwQL&+`))v*T>dD(N-cY=qS>3 zj?z6WfCkTMN6q4O`OGh%m2ULcAP=QkxaZ$29Y0;VeH6i0n8n^>ngVkHzFlKZ-Jws=<3>UMYq@9$RyypFEv+>4k<8i;Ov>U|>d zJ2e^oaO zv-=Gk9sb9Wo6K8=$KP~R(W4N)ju*$#*MXM3X1~r#AJeL|5B$^=AKA^S+$~|+6?xM{ zj?Xv4cu%gx{5?;*?cuE28|Uo=<|^!6owp9{h_0e>ST?1X_da3oD&aq&%MIl!Xlp|_ z{UUe?O~(U*3cET~=3ZRovuntxan~$CF(mr!H|U4&>SIFfau1)w;w%%r89|rqdpNFS zerLhNaUQ|<+p9@bVeM@MN+5+qyoR^)64yc=;KkLV9oTcY+!?R3t9c;2cR>N>d|Q32w=%+2{k;?z`LK+PM>z9c`2&LxHEY{(sfqq%~F(1dLECvx0UVYi#1M-!teZnKCL@p71w$k>O5*1cIp~|T-0EU z#~a7wJDOMDJmDB4RKm%Q^I{4XpJz7es1zg#(j{eri>FWe!U2)!<@q#cZ37Cs8HnH< z<`ZvS<~}BrF;tL{5QYNw7bB?d_S24EbUPXEL=HvtKJhkGf1KfZ!v$i(hYm&^VZ^T% zBxm(kgtLD$z0oi!)ex)-lADCjL}dhewCQ0Pap}#8%zSzwGWJvhF|5FcP>Q!=#Dt4? zxm)WH`|q0LP@Dv|+q)*0S$2;n!JKxDD=e?l8^b`64Ru0mqQEHK zdwXi$e6Cs|E>ojk+=RGVb3AfoMkcr+86{m+7B}$p^wuzIj;D5nZxBZ$b>D2p$}uX4 z=~Jei)%dhtNcUS`7tp$e_3IgY%xPK3nS46*rz9@w-R)QvNla>Rxt`mcT7i}M9JJT% z>+FDBJ8L20mFGuIC@k4Dt+mgEu8w|Tb_4M-*-#nG2S3%7OpI zvm71AKtl{4(^39*^4BXKr)FR1$8|sh!L(d{{^Acx`a-IaArMLHQrTB-;(=-B#oVrk zQw!S?E+V!;OeR%ryY2`4Z!JcNN%|%G_fEb^zg0COQozW7+SP5(qEefIT-%T%dC29D zq4G;*Te6d@Ydn3&7vX14hm1pHK^u27k5&#}h+0%_lg2RoSp{uXAp))2PIfB_;I)T- zlKA15TJ`Kq_-1a?q8lDO1NsBkP+?J2s-J+X6Ryg znM>d>a*l1bx9|8G01RY&O>fhhol6(NjsA2V1ce@^ovDM#GI)OWcf5*9jeMGkKK z7iTv&F!@o|V2%W=JG#u;0;~S(rK4jNYlvj zl#hSpFIU|Qe=XqNCjKb`l0Mbwkj5(wIjxGKs`ze#y01j5Xz242%>Quat#3;@@|-fov~d} z+X3g2*>PQ2gJz7@KpA$BVXU(b8Uj$jqghDoAV!TRkirvgzd} z+f&8kk*!297@F#&vZy!TrIC`c#T`*PC|e&#Bs7x<-`nx*o@W7wTbOL_C_m*f)c5ga zWIM0cEoo~vP>;jio{%N#pO~wAABy5h{8MlqaG^61>p78!px37T=7=2E8#{MrJvF0M zAL+a?dxB&`M%x)E26f^O(6zmn+a|g^`%axgIpsGU>PMDmn zOYG9r#xgwpeC_2CD4Ny(2`zY@l9L?x9mQqr9+SFGZxi^2OToGrPE+@wuw+6g+2W-_RxLSzb6C}tR~ zuD}Ej{ylY!MfvAonB&IJ%E0%=ZdW&2yyhs(sR@v@pYTiZffYiVJ0yUdfE6gDbQHXOT_8`2nK^y`ExK7E&g8q4LHDkBn?g) z;9F+{4u8pf?l4_Ib~~^|jcZwRX>uM8wRyM`dvmbUv=l&bjm|6z*~N(wlN1CR_nlaQ zA?@ro@oVxb^_mvTw9-qhzLb=YE7xyKAT4YwY`8K15d4z9hRh~zBk)MRjgqXhh*a0w z$3_v2!>~K;uQJ5~$>3X6m(*hD_fjw@rgy5@KR|?;y6CE9n7QkvUFVcaK%l5`qdPxh zxfTOVUECbOU(H*#e>4@*$k>?`#Qvz>+=%sv4$TIuB9kq#e7h`eaJTgcP+JM$DrfL? zf+iNJ4{AhhPjn{KgxjbNC&!+%9wK_=@r~35L+TNhVr5V{W7FZ2?#>_U72cRjvQd2v z9vp?p?4;pW)(|m6QJu5b+kC<8^&9dPg*5{DQ@m=Y$9uK?AFkelA&zcayG;lXG`PFF zC%C&iG)}PK?$Wrs1_6=0h`W87#79=NAtsc!hSN2BcB)e+p)0L2F3=X`NiFMvNG4L-ItuMxYG;j>M_dY zfc>^(Nx(hlI~aS+wa4Lc_$)*$pHw!07b+|jnpWH2>t$Eu$9 zL1*~BTi>KAnScN=20r^LI7$(lr}pj7we$=0mdYow z%+kP0pGB~k&>lF1(Y zIes1~bUlio1%*y|X<7;lO}!Z(&n0)a0xw0G0dcx2uxa*_$f>BOs%jY;Nn9PcT&+ZT z`i0cLy%u?!>6_$lcj`EkpnKWWnkxD#hHOM+iDb(-g4j_6{s>#qTP!74YlynHJVBP?=&A8Dzpw(Y1>9 z%0=es4gJ(mN1^suXq!k4-GXLgxb>pq23&CWXGZ0iOK{#%UklBzaEocENsP8)T)q>d z2~6&VsP@5HlvJw+eXlO5i9a^GN5B#YSdrT@x>kA2f7gNh>yI)x)cr~1^s&NZXVk~~ zLqBKe=Un=?FkNdTwXwb)!<%U=Ci2Az!D@iKwHpVSIij$cL9L)-=iGhbX zid+4?bRAtsC(^Ba$%ImS_@j5HgGDMwBx4LV(Gj$!1-1;Co3y?&)QL2zsc?hulQK4?1&K6IN}r&8kuB3_evDIQ9`P? znut1_koL0n@vb`$CrHn{EZl3W@zCS$c2-Wd3dlE(k&T*~3N|$TQn}_h(N#ALcIblC<{HH@5-rxU? z@L%2E3pi6ar!U6-%}ej|!-S6QFTru2UEwgHVld)p<_lwSZREeSFOL{%B`R@!=2i6s zizj{9*c!$XnRevaQ{cXggiJNzh)MW1B;fMw(|0X}{r!7g15L7H-2YMve$ zc?Ul);6~Sbu6I3&3n0jc5*ww0Gq5DbqW@QWE(nT#h(|ALdbCt*i1muF!UMe|JWcg7 z8cT)lKvu&j1i2AG3tLS?dh*2;rg`95QD5K5NcVtQ%E1SFOqj~4sQTiV+Re*O?_*FC zPDpeso#v1_HRv&|t3aCa4!2rYukUltP2#wcK%$NAl<9aNC9Lacf5reosq?JUdiYK- zKD2~v+AbOL0aZ0lFjFn8%8ExH@={KmZA09vY%DF<&_l@N+~?=}oK z4t`%}24av0OOS~FcX@qthr19xsi^5pyxbY&I}cfXN^Ar| z*87Q6tG|o2SFiUQ){Bwf@M*Z?8f=zSncEoAo##s)A9mtgFDs2zJG@+v);ro54cZrr zAeqT3J(nqovlf&2O6}u zJ%>`!zcw|g&Cp%jquCw%$VmMrsTJSG6e=A)Dh#Iu2U0OCZja+~o@-*RXRq4ptq4B1 z$Dvm=>IuJo!H+vk{n)2RSl}@zQoI?+t!To623jMaoQX#>Sv9?eRDKHQEUZQHp>9z> zf?L=)A_nwyRgCR=@(XQYpgdQah!ihV=C8qWO1jU5g8(}!ee7|N8cu^h=t&+2JC6y> zF-xx(758a>X0B3mAYqnK61AaBc2Naou3QtrF4mWZWm^(Wj86KGBOwDKjY_EnpP0-i zOYE-~B8{%CO&m(W7w}W;-%!uvO|+&^zfB*d&_maAZ+mlO5!z2V0pDjnNbL{k{^=z- z#Nq>O!XS$V;u>XgX}yEy6w|)04FHhZRG)S@YSW@)B^XB>8o-PGy=PKX4`hl#k^({R zwfM|qsB|DYuTS3Ch7m==x0cgSG8@5^eF8Y{gTFm}`a~X;D%1_em7(Bpl*5;_+(Hv; z8P!E9dveDzUrVAsjx0jMXJPlj5R*HM{-hZFwd~^%P`K_ppCa7{PD|4>L@qgS*U$i% zEzGG|#?d-;*iLeSJ@mCr`Yr>>ze#4)RMUgCkMClR`7J8B<%D*8*5T&5wYY?F?tA7s z3c;3r;d|k2*Kx1Du6BJrCdx9Ri?xxii-Gr}7o9t|1QI0o9A|28oqt+r5h0-_j%+%5 zO~w=Br8;yc#vLB$z&NZ?3jChFvPDJUHBLK8z7{pLA=Ow0j_-ehZg?mGV^2s<5ZloZ z#{_@DLR6;KoL7^eE z5M(T1D*80)pEma-+{;9YbCio&b9((gXpYdNj6AI{H_a$tgug<|zHWt~hh2nZ)^K`m zcDcMY00u8yL*j!|pc)PU>&wUbXJo?i6?DDdp4eF5skAgpu6qU|(r=D4NDe>fYLdK- zw#YEa2DTi-&R!mm>PZ}o6Gd!DI9xgLw$Q25cB#|qf(Pu|_9Nw7LfW&hwi(V_x{vvX zcBVs|PPd-z;=r=oJ?l9fi(adD@y1cFm(!o)_V^xZotXN`dIrcewdSgQ9@R8p7HNO+ z6XSLF-^=RHCCr&=-^PXzD8JgwKL}Pr>(sa*H+Mth4KQFV?9pU0exH)S;T_7O#I1cH zwO+Q2w+;04yID$Ata6J~yy*kG>J>12@4Wf}X#Pb#0!^*a51Wx^3xhs7s9|C^%0s6l z8!CGmq}1tFP-;%W^@3PpA)`cvDO z$!l3N%-rLQ!{q7!DYw3zP5O9Es z*sLiD+R4!=9N5yj;1o8tP~Sy7`=fI8skZ5{gs*EW*_M$~ zu-Pc7T{6vB~>){ujY1Ea#O&gyd+mO4%029c(~Xr+4t^{zUrnDeX^4 z13Rx(*pFPvQg3{})dJCk6nGNHb4@f}>f&e;!X0oULe}DPgisP#T@77#-uAZohT#;e zVd-t*EmAfh${qbEL?_eBJ3YM;rGR$-PV-(TSU{oT{H8u!F zP-_;JpVkDG%g?8M!r`6Ar%H-gL?`YeFwvTtvIo(tMq(;W`_gzo$3T>o^QmDMlV`%{ zg_*xAMfVYl%K@9fDB381G#jQ``SxoRS=K^vi?usy`t4jt3T~X-O$gSl-@AVE@gw`_ z%DLZhtbqPt8l#tAAY2K`s?*M#l!3qPzZ0qtITVxi=1O>+HffNhNrD-)2?ZcF`1|0! zkjdk`3lYk>)3^Ks!j4hM%(l7PdqO02MG&u`(*PC#v~#fTtZcc~+L-Cvx}JKg-TkkC z`A5`;oFwPUGk~~0X8KEieQ|3!8N+C8sW78cY{ZIM+{XD(q~V-G!e{4w_EXm)RiwZV zTuIr6J_poG{Hr+3ddlzx466u*d|zq3DfI&}7b3VAkiL-cj4N;}0}{qDs8Gq|iyb9i z>L%h8H9ocUZX+BtaZ8!-m;s6=NRKWDn(eloBk3`+J#MloD@JOK$*RAhDvF4qDeJ+< zQZ$_e;|4G3qa=T{Gp_sadvz_8dCTku7K?R@S zbN{DS4>3Qkbiw{YX$%o*=s7F-X*vuoFA8duv*I_so#bxuDd!AD&6jPA*@3F3=dPNL zbLxUhdHf1O+EZfh2j)l3(W#RPl1yV*_gSg4wi$&VuRLTL+~!V@iIEMopRTQ1(xJ^q zq6>a;=WjA=REc~r>1S*`8IP^563%u6CTGDP+Gt$-oy!1m4ao;qAI$hb9>-V%X&sGquc9aVruR?|4tbvA_0AquHAZmL=9 zVl$_CgES~C?&q1ThX^)m*imZ*vkE_ggi=6VVV#|QRnl_~<|vu$T>zfdKt=NA=@Z^p zIK(HM=Z>rbyLynP1CdbK^aw#A>_T{6br55Ke2MR)6iJ(&%(S$gxZmuSQu2s975D@{ zPy9uTNXUZ1+=`%kFH_=kyGW**f#0jI_e0X1TNU~%3Gk`N=k=5YUyd;0^(!u@F=S;{S&#=4*k$j z(j+DDIV#B^`#X}TfsI4EZkq7*C%I}qExV`jow(Jih5LGEC38J7I)j7%r&7Si(``WkNRo$!HfXb5ID%QocgBxS z?m-7A*rOC1@U;ZRv#%=KT0xrI$L@|zQ;np@8jO5zi1L!dTsJ+jMq;r*yH4Es{w1tr za5RU;@2&4%Xb7bE-Z?QaLs)6mJ#^hm);!(9mjgAFFVV0i5+v1nfWTVB#K~V#eS%19 zMTc>kd;l|&M&bRX<+An5@fp!G6`W_rznOy6)%LdW8(m7{{Vgxq%+IND_@ulJG8AbHB~={53M|Pp~r@2 zzy+CH9o#Wf(iNG&h_4na^9=j~Nocao;;KDf@w(3k@h(ws0v$wqE@_oK_`dX@XO?={ zC^OowHH{Gs7WOMCFHU^hf*KY_b#MC32A34-3>#O#`1uiiBLl%x~*Q5F6uqmNaf_1=mII2urUgVY~o zVuZ&1RAH~ABOE?5=rO0i1UpjK!2L|v+!SGa^)v>mHn-g@*I8x+O(H281RZIoqc|lt ziLNIDqLL_q7hbQmgt^mv~w5!IL5RJoLF zkwjVp$k^CZY*m~}98&4GK?yPO+OpOxY~mk*)(i<@9Ax7juW)w14yf@4C9HX=a~-hTmOPpf``;Sk%FP` zQME+3*-kD0DV`#S&b&Y5dMHFL(K_jG!8omy8!$XbSbjXvmO72uDVAaob(O{aboI0v zxfkkF+>jPVS64rSbNgv0W2s5R8lH9g9=^7A(jBxXam6}Na7)RLC|+K~c(NqQ{ngj+ z0Rzf2W1a+oK`6HWxQ!48#rbYZu}o-POSwtw9(LL@D*7nlIg0a~f^nI+(Xcr%-SYjVjTG;#egVe?i zP;kESso@g*`J$+1X8siy*YZ5Q;8oCvIEN;OPJqQh;rj^C|E13{Kw0MR&c+VPAddKq}$wm2PnxX;nGu&AabA60PtXCDv`X1fBftSD>L{)YVoez zYX_N)3pETL*@Z|X+g>0p*)#VGZQ=!Ob!XaZV!szheOlWbm&3`PnA&*n)oWsp&5u&+ zj@f&osiP3vF4I5O#q9A;NEf5q(7!trnP4``s@_=+WgO={P;K-s%iDB)+f}tmooq1Z z@tOuG@d`+$bcx;U16lwQbBxewhsV27);q6pCX^?jnMAWGsbJH^i@zr98m)d_{<1&l zUQO4MCgM+Gy^TrM7+Z-B>m(EaY5cupM8Jcgzh)O-ChxhejEOAd-v!}T}_ZO8%=KGg237ut8es{@fFgbz)o_PAS@EkoA z`kF7Wa~P;fBa))Q%Jj-?(1l!#=vSiHcRGpjQ>wVgZ_qAjGada$&kN*g1qn=_#St=) z4nH93{ARp-lGAB^ej&3kPLTck`D7O?k|R|)p|yY}k8}PMWEr@jB8v@INk7s_%G}d% z$?86MxR|ZS_hrBDekhH&jS2LkY7tj^Ol8nA%z`a5ewW*Ff@lZl6X$A(@Yn5?yVMQw zOzunbciwja{haQusnHFqQMk{2U^fHu%V}y08$|p;Czd@Q z+yfIf_*GMF=zIuo#BSUV*NmLVl4;1w^88P9pN0fVYWz%55a|sYKzI^**$iTB3r7kO z)>+20>_cIq(?_yu5PHijvDb3v=Hk_}jX)a^OZd0q;eVrtkj`~GzF(RIQ6Q{QXg*}* zwrU-OJld?L+*lHF+!ik>BrDdNR9?WORqig^e{mb)zd|lAU#Kyxadb;r4LeZ8g!{A3aifXLD1GH9EEzN7!=|fpy zHDs+YBYSr4PB#v=ztzRVF%WI|HMf!%{zetQ@c7p^{7>v0g0@|ecXL=>pinCFER?GB zF^&5NGW`_Ew_OFPJl&mUm~x#}Vo=M+Uyt*#JiSEGqok^1r@`S5=C4<1*Z*+guxj~7 zj$JjrTp)$gTmvbFO}*X?{HrJ&=TCRQk52PoZjCHDMxQ*~QlGtn<}2PV?I4!`~M4C|Eil@+)sz1Ye@wd@eCc|*Pg%Tx_bT*UFQK2GMbeS(r zB#__AVVX4lN&8yn({O}m9wR@R^<@OcwN>RT9@a-}73ot^giB+!A{Sd`u-Xf25FL@- z^M5sW0x03stM#A(XFd7O$)6*=oylxkkk% z^Z%S#VN3|!n6JDDsXP9sIRAe@RzMd8lt#IF0<(Ur#bGj0Z~1SCO)#2e&|dS0g!Ujp zz30_#MB4>q^LpkGMnz2|+xp!=Z;3aurnjkE|Os`p?P}AEmJ}f$<8DD?bvoOv z_G|O{uRrpy;}1|L|3Eir=+tD?2YUc+g_Nd_R$J;DEN3LgA*SEmFSWpb&QIb$e5TC$ zhrd_<^~?Vcd8ryE-0AbEsy>Qlcm|OqU~SKQvtQTabv@qQo`#ulIGiNId1eNU{p*o1 z90g${Y3$clQvSQm{jZy*@Z-nurq}0tzSMb-uq@C0^ywNyq10lBtzNbyDoRReNHxsl ztUl(SgSsMv9Mmx2z-{1PpZsr{PAWh+Pc%f8KXT463Y+PdO)CNxz4ZOrT9SeZALLs= z%nhX1!_H-HMWNkOWZfCHV;RkoDC@P(B|ftq&GKnqnOaXRI!VoFAnDsLg&q&Hmi2`h z+0GC;i>_GV9J+sYvE4IDc|F&55v2W3Sj%%~Ev|3@AT+e>N)Xt_v3uWftTS1#(9CYv zJ8SW%C1O1~Z#%Vt_lkIXq4wSb0kAGiqgtI8nDt|9%JoxjpxKLCxqP%!mumsoM6_ z0AM2(MexWK+S5C_M7Fsv>aui&Rp&63s7{pnQyjHIh<=J-{Mn;nsUdlE`hQ`we_u{C z1W=N5IX2(y7BYT7U+s@l3`Aii1P9xkX{|e%O=Q2OZMf`B@<(DZk$YbE8;-2ua6(vc zQLk}eJ5mZ(d1>r|Ua^SXwUkm4jS@3p90CkVHH(0m4C>^GTh0|N9W?bd-ieYKwH1-7 zg}m>ADO~}qeuC~m2wWIpVCV%r60%5}*Z#p%<63_+GQF1+&$NOj5)wp{n}tcQ)jcOy z{O1V3lKzclSujWIhk())c?bk#>^r5>ijBSiP9^Tel3K49=IxGT$=#hTF;vV~rd*bb z6Fi(qKQ4T7mz|?8Axh0>|6w}QDqC^7)CTY+;+3^pD5s7SxKT=#lC9`1x+N?u$zrWG zg>QIGshA&X7P?7#Z>uWEULZz`g$3|||7-P=W`Mfe&C={w%)cq6iKW4F$roO__|w{J z=%qW1KCruYKq7Z;6UW=-iHOaIzSCO4B9kZu!6Wwe#^Y#~z|h2azH{YhsypIj`-ytu z+i_7W78EZ;CQho-Au{bBFz|j z6-rL4Xoh6ksMMKdS6N5Pney~x!6Nam3KxiHZUS8oiu9Va6t?5G_^VV9o^@(b z4G3uhs1*WNus-e*{-`&RM_KK zYje->S-!UBsZ#a)2RQ8F*{7j|tB$r_sB*Wn9Eikr+ZB%3mVg=Pk52a+f_4pAZm_Js z)?p~wvsh>`8YuU4N0lpRo$BK%{PrX(Yzac9l$w;GzF= zj0l6p9Q)`hb18{DE-h-z_VMj)FhEgTt-#CdsK6?kN={RHjdyPEDr&-gpf?5ez6u60 zwNy7#x+v1D=+*O}SXP14>n|lv68r#;>uj+G22aPd5jk`wWI39kGo80xJTz`gq1P6z zwIM4>W+Vpwf*w)+p3Yf>qRDcb+H2<8jN^a~>Edm*lNP4J`fe z`MAR(q1Q>}d47ujvG=j-p|xgLvvJ%ECo2_N=&nX>p<8g{J^#Rxb`ENU=r=C6X<_9I zt{vehw7`1*3yN)=Sc8DwB1p#RV1&w?i(l*{uQNM}BYczhxnll4W!Zp6@fWk2Uq+Fw zUo+;6M!|CVuL|RkI%c9X_YDhe2elW-fVoWB-+C=-`T{E1B09v?dH(c;p)rIdY%9e) zTwvxkFIhKz%W{{pMCN_H6A0Hs;*d`L*6c8)x{y6?>l-^;>gMH;`mAV}`$f0Wf>G#> zfYI+y`oZ#3Rx(@j`bG;r??g#>@cdmvc>6 zudEs!ApCsT;O($mZFW46e07z~!mob)49~ml2Z1bGtnDiHt|V8?Gc$|M`l3;I>JA(h z!U88rgv6fbE>w10GFP^T>WdFDsm$jqPU{_B&69t+PtW321Apgh(-EEMS^$4CsnP#p zZZ!O2q1~Yp>g8%J?PUeVA zPJO?zqR8QoM*P2Wna2n~LWiEC$N?VFv4{B+mxbv>#sjYYf-s@n56VSdh&`iVMRL3^>%Q+8 zk8dRbki1IT3-D6I(DSH~xlS}fnz}t|R^pOLpy~MlxI1<)I0e7YJa&zVbACA2ET|r6 zt@BlBt>CXKC{p7*yO@x|TGWsK7Wu{<%oxiGV|xw?KE!OD75vA zUPqtGf9bkB>6sXCbzyeK2(g~E`{ zp|aCd8DAr+*g=bo;9aB@)R;$@JgK!o_Hecf-<>QwcHv?ARqAVNl3l`hYJ01dclijH z@K|G=IL7|VKT-CrO-I)mWt6Ch0x$QC_iM&5s2=ef4G9K@zUN5;FTs!~}dA`G<=n7D6%^q2Uyc5(=G-=L?Qh6zH)YF*J5K_a#W8 z6eOfnH?I3zI{WM;R6dh^E#al`vG9QFsxvX``4eKWuun%hFq78-y0i(f9nYlGE?;M= zXt4Cv7JS}I4mC>$3lEd<{vvlyPsiPhc7^(eI>FNZVwWgEjLVfX^I#L*41@kmy)${x zdhuC27SJp5b?Rp^!_~ZLw$k?^-y3zbO*K@i(gT+7p1yKBWdgKr{Mz}wI; zpvs`&^2paIsB0^=X*gmv!MYi=42{)yR@hNbF5)< zkoOcTmB7It{mm=HxBJ1I>s6pt4SI~xr)#E25z!`Sz+m;*v4;qrsx=}Gi|fK5NKMkQ z+YI|}tMBZnzP;6Tt;>JCPIV853LodR#!;{*6~F98ElR`rakEGM%7z-GgZ)zcgIZ`ar*mBtiS!ql^+6wEdY z^s?2UPf+i9!U6uGM^2|2IBfzizT4>lqFQI?L596V#Ff_5ctG6C0gQ&Mg5wA`C;Ju& zuTP~K{?->bY*e?k6vBXL(U0mKR^ntSYBGq^1(8QLi$EDnN1-FroMErgXPXOVU|^q zH3_n;Vi)=@Jw~^y;5K=Qm0B$*iwugCBJOxB0f=CjpDV{fN)`^pjxooV|;{&9<|0xlB=) zibU_(K?pTPtT6a!5tdy_5sOz&@Pv4JxgQIVkZIO#-KL0=n*7c|xojMM@iQPF+oYaTKPj3JdO& zZZqSy1%@Kz_pfI0){vcE^7Rt+W8uWpiOFYMV&l@0Bdon1Z#(B*%oX>FZPqsW?%$D5 z=y}&Oaoo|bTK=tNIrQFipN~PhcA$}jS4h+%^`yFUmT1r~o+gLE=ZOnT)eo$4 ze74oU$G#dFPWW~M{Ojm3n)F2YB z@LQA(p|jNGyz^QztWVH&CwTJtcqJ#qdII7Th@N9Bxm+?I>39e6c=1XrJ-O*HCb37* ziqhefOFrQ-AQoKo?%`sw1XIX1ll6glHFPY2OItCQQLp`#QD&n*YtWC+Ac4hQVy23y zu~KoIg{w!vhSZ>FY=}!(TA^*jf?M=u;x;^xtv_-wi?~ZkIc@rfmI`Pq-TY8%6SR-9ou58zuwR6~Bm~LH8Q&NY(F}muHoMLC~ zd##lH`AQk92S??Eep~5MNwi7YX1^p{L5j&a{|P(&->Tt2356%h^BFJH8t0hwT`~v$ zixs9#LF>6Z086?aY%T#2m|f@k1tcm%7aQh_beU)qxvoJnfZ@(OR|x2s8uH>NJX}>! zbv6UCse_(X8B!5ESLM0lxEM`zyb&g%o|U1ZaQ7o}Ec`68e-daGj%noNb5#O8jlWkYwJyz4~;2lKx+@bS|G8 z4=%Kt!iB;9tS)@n5%ccGVWWuoN+5p94l?pcae)bAEtYdVgKO*uF zH%)oQsu-z}9*M|lI%tP8CII-m($0kaeM=Cwh5JXZsXH=d2rhmB{je2&60(M_6;ki_ zY6Eu+s&Rg{K}S&FyifsT4qQ{-;ixY)s56c04Oj2?8z2v zWR^N1w0_{CfVkxSIB*QEuwBsoLe)=Z$vPs(^U`uya)S{*UlmcV6cO(E#A;S~gyS zP^pkXaZ0jBz`}7{5!Ft!&#mN0R5D?yK7nR?IX>EWRR`m)GIBJ?CTLlL>uC>w*?;6+ z-B$kXNs-&qf@12GL(c&=#1+8= z2iE1)$9i0T4FSveogcsL&G)mdH)n0u5-L55+8)3Ir>D-kxfWApyc_mcDpwoBtCHZ;$+Hx>&?-B3W+b&;7PK)u#Jp<@$SK&*;WD?2YAlvE6djxc>2+25Z9Of_&Zo1si=@`~rCtXTu13NBpRkPy zssQMR-2tz%>^80#;tr(M*py4KRO@%;#;|pt_M&tAMa%QLpR4VKa8}9_s`(Lk;8oIf zf*47uG0sZlf2(YcWpyd9ZO!w*kekWH*lI#0H|$}UD8a-9G$1I>0xIOzeLLof%Ns=V zK7IPE0^JfoaLVo)}UC?gcbxr^-Zs2QYHP<>;Y^Y)>og)M3k8Q>_eV!L~u^dA;l+aVq4b)Sa|&zVSR)9Q6<*5o^Te)LUFDZ*r_o;LTgT z3GkrAe-Ql%EIrFogh^d=>p=n7gDs6=3`*#$-CKR>CrZ89DBb0#(g-Z&2QEMu%q9<9 zz^s##o5haUXmg~MGVUFx_w;fge7e6Vx^aZ}K%2gh+Ld>wS`E|eGrC%@$a4450r$xZUS5g=9oa-haKZlP_Q*`zcqhB7FxxZZzQ!(%Ft)C z-1aso>m=Jme(lX1o%ymkm1IZ`2~?bnIjiEYY2NLl-yi>7`p;a1yO`z&+*Nv=3p#yq zFg8q2S%;Jr+0mgqU80w=;(gL`yIR}vjAw&_z5j0c@w%?o^hs8DD;eUXJ&o(uI46CT z#-irb*7%0Xi5=%}u~<^5$=|mI*IdB1Lu38@1<}R0;Br6~JF1m{2S;a22s)`5?tNK>+&!MRciD8eX`#V>E+41V)_}%AYp#r_j+&wqC)tNf^Xj= z@#Ay6+O{ctf~0(Q-7z#4e-PO6wJhC+4Nv^YsnE;`Lr)skes@?D%LpB98~KlH*+{-` zhfW~+WO_EibVGbo#0A@5nl6EI**<|Ph=4|XByWXvT1@e$`c;4nv;++?hLtEbc27*Y zmRm=s9$p7293{5g2YX|ZZFKqQhA3CZu!;J%37S0135r7_cGQds;Tcx3LxVEwg%WO&Ym7BQ=wq-?q zt_n4j7T1v`TkzWbAXXM{2al>`ETkquu*>&yLsi66Q`a=91g-(j#L(CY?GxlQZOn7qJkyEHtPn z>#|~cl~qF&D(F#{Y! z1{X4RHc*C7bihwgqYDgX1$aBK^Nl{I{^4u#^(;B@vK6fY|{@r(1^L9W1u*T!l;fW_}OC$%49C7kGGb`AuArx zUfO-S8dD$f`tuU={`)F;2am-r93b@~`6RGMp-IC+)p=*?(;kG;%)y!em9_FeE&y*; z){sKWb%mD+F4rxLbcL ze7(j#L#B(xM9(j*!m!`I(7aU046Gni^gAfuW6{@T2 zm1aNFb6xn&ko7?_Xa{2g@!k|u)`kxsA{}AMcbR^ZvgzB6X18Cj8$c5ixq^4MF=q2} zVojitVP=T=2pDR#y(%#1ll;?nnN%{YfbY!$5@n$;h8y+)IR;qbDqV$9@>CgnQicBt zsgHYO*2?uK@NUX0MyNzbs*ORk%I2>%d63|MAU%xuiG1#guGg_3-_P~hH7nfjMx0+k z076SG(YeUd9bU?#7~=U7zxS zkfDfD53`PcM2Re;-8;=5Mw}H5sh>_j)MaI6v6aF2{PTV+rLLc-OWy*|dfTH#kaeX` z(1QN%7D3sqr&5BCZ#)b4orl>q4Ty_azAS@SKfdAWH6`g~7!$snj^yw@bF$$t9&4vdxt=>-`-)fyj8i0&UhuOc!8NgdVNJh zx_dJW7L0YviUMH>pU4qYxzv$xXg#-SmgPgWB@!WzYqcFE^%k@Sn`K&bM#G>Xjs&vK z1TIXBcF0S%Q>F9XRgyO~R=iofLiUT;6ig4;7)?ag^ri4fF$GHwcrf9tQ{<%BDB50t z-)bSU*kl_A8t~jhde+7aTC@Qf6R`}4fe0P_#JX~aCW2}ty-F8j4fAyzQ&9W&_h|6Svq8{Z)IBnF&P4uCWcF-6&RL`tg1KvyXuhyVhjrbb$gGyZ&UxD8c2uWXmF5pQHt zX#7YqstELFs_^kLVZ{IDriz{j9l|)mdaimhlmD0Uhl!tUAM#ubuk_&sQdHs>@-R0= zAZj04NER11oRP-CCTACmfM7%w;ISdHm9^KUMO432McDYJ1mahtZUJ9Bf_~`rMx4WH zV^}kmmeJ448=5=i!M=G)4N^vOjBjCCfR>&-5_Y|tz-ol0hy$p)$e9hK?0#G5VUAAB zL!HrEA(Y{4Jlext%fLyhl)FAC*o~u(KnK`_0sig#qGJt3_v*dbnQ!Gyx14G_d$o)5 z4rJ&CZ>*9ID5TVelYyr^pf$g++y%LxYM<_TeG3YM;BKh?R7a`~t%f|+(MZQ%#nV+vy-kYh1p13q>8E1hbhh;i)Ig!`9hCU7O?tL9igJYc+R&3+W z*HOaj5#Ti;H!FfP#{(M3QCnE@{=^XCb)pQ8vWOVIeW3<^Mh>u$vzdr zd?bonjW7H(^Y+S9A5W?bkw!HYV&hQTgD_>;CVa4E&+C^eaeKI2LPGa)IyD)!%S@4=xPKP9wbuEPde%8V4MZeKZB?T zjbl6)#CT6+^TxjJ6D9Tc@bX9n+)e`BE#&jUD_f%zgBiuAo-=av{xGPs%6o*P4Hm-f zsqvdMj=0(C9MdPg&VF;QQPbRlyi7@Vev*97Ori9*KXY3dgWh|dE{mR;b%IJE1qp{P_N{(POowVO{IKXyO^nZxX zq`9mnq(#EGU|{JIKDlPn|9Hh@IhP;N3i=tZP_9W%{T--L(IBTc#_EvvysWHWtZY)- zO2$AnUum#pB-YL~?!G|81>z0-dt7r0mqPsUHUdR*y@99;omI9uAV{h-LyM`|0WO%Z zpXBlZlAq(KWrf-K4pe4^%XPxXNpRlQJO=n7r*6C#pC+L^n#4n=9*;zyyPwdpbi8$< z518|4&_YIXs!htCkYl9kyJYumE}hyRjikEj|NW+EqX(&#>%t^89gUt%p#7oH+mLUi zlR=5;n=3ank$T$_986OAow?i7IB0F&4;$pKRc9Kq>b0XGL;cWm{d~^vGcbDc(!@l_ z_V}|kVLVd+0DtLJC%0Da_x^r24n0|14&12_4^O5Vo`BZ_3t%=V_CmBC^}eeatuObt6!!OF>h7Kgu&*WSDmgzNR{Rzy`( zNoigG(8X2hp(gNXxDtRCY}>mM(7GXDrG2@X@jxRnLtIHhRSw7N4EpWwvF5R(gV0uO zM>!r8$8XKIzl{Z6y}3@NGg@?~u(?+rdLAQ~$MI}#wEf=A!8N^sk(^Pf)D>Way#I@F zM@Z0Qza=vE+6PD$0q;qOvRb2oTOLDj*8a}6;sPC~y$>QWOZI1#yDM=K>Mcl7AUpGW zu(ai^*Ig|Ap>Rq`Z<9>E2`WIr-qIdyH&|LqUv&#ktm_#)tleRJU!kg+Xkh&tM(jP_ z&a$NJAFsqY^dK9&QMRm*hG$mCKe?#TW;I8@)yY>qir1>3FQb3)(}{z9VFH6kNZ)hv zkR+**<9v8oCbbqlWVIl}`o(RbUAWDRqp;uk(S{N|*O(V zlZwu1Z9QiiE`GLWXUvsatY!x1q@K`5`+(;{mglkKuX~PbGp|1hELh|?tE6#c8bjyc zeV+L1T7?H9B}eJg!A5V6Hr0Ah`SVT^GdQl>slvi@vG*T}K1Xv+oGja?gL+^{O!Fkj zeJwsEv!EuGuKw5Fr3vIp7o3KcpRDe>$V>YByUL54=>tw+9*u;mnLQK;k(6ch@&iQQbz04bAGco9S zF`_a#YgJu|oAt#3_8AKwDtBvn<-J8Fqv;8DgOZn@p`{dIbDKBKuxw@Z!{&N{EJXrqbcV<5Iy7r>& z>Jwfup~g?2T}FIyZ$OjiPMUQ*$yY3=kFOx5989a{Z?5M)SDU*eJ)X0~k%4#dxLDH& ze3vKNlA{^332AI7XFpi{99y&qNImvCiX}9mR$%mgiN9Y1KAug4d+omZYKMIJ?Om>B z5@SLP$M!sCT3!l6{DXW79!pq9C;?G!r#94~nvl}d`AY=GV^`~fq9o78>U7$7jA)bU zYxH&(LWRy4(ox*e|1OG+Q*;e;>*ptph;~kLM!6cH5exG);i)ql6@uXQVktyt&cv0D zG}qdOx?_5}Q2(^QU%`KIQS1eHriQQjF$wgBBUrR<^B?$bXe>N`3cUGc-Qu(HRw2t> zLqNciuC_C9-0gXZ+4%M}wzi4i>U%W6$~)IqC#k}J`wj&xq+-VU`FB?q`-J2J1N}k8 zLp)vZO4rJol2m(bpwzjZF;@c^Z860sb!s_e**{e6&Cn!x8yY!m?c9hPHlXe9PBiRX z(clm_d$80-h9t}y5gjGFOp6A&`S{`!f@|dJP!LM7LrQux+4Y!#Ta?FM5oZvWd*g=T z@7j7#cgYm?)ygDnBhatqy|ZwnJTpM%V6`r|G3$B4(G|zyP(OP%P1pmwy zDfluE+QVVDqLYb1x;%B$m^%>{xDO(i;p5WLH$+swtOpbHpCt4X8z$fAKRu>k(=@7<|jKE9ZdQzpBlcS6h3SEw+Aa=a-s)A|frv3IpC$1?9Lf=bEqTTn8Fv1Ic?sy$; zBm3+9Um<446loOB5-(E`l%QrO{axs9rkDE%^BpENY&EjEIV!ua-+0ds)z6!6c?I4;hGEJ+8J;%o5pQg7Vn}#(6-+)V zS>=9A!C(vQ}khlQ$-*3}T*JFLo{YLPnNODovoU)!|Dc@E(=-hd zW2E?SCAd4#FcQSMX9E{`a?EvQ=ta)>lIR=&;Nnm+I=2eRuf{mv1U28gJ-wKE=7zJG zyAQX;iW^t?JdWw>iA8EGN4i;_DzBwj?{`KPpzRjIZW5fT&Bkyyi3T<5^S-R?wRbgz z-6M}MUP{9YAb6poqT>U1F_*I^%6DUgNi|FRKyum3KYn{?$~!gzclrN<<(Tr4;N1m5 z!}q1N(1RK2(^wlP#RnP5nXJAYlU^paBwI1<2Zs+N_9%-{HP5JoYa8OK3HTwwJ^H zNML1CT5N0c#Dnv(O<76X0@XxUu^Q5qWaq>MM#-JLEU^ril3kz2b!qF{>lP7+sB7B~ zIZ?q&7-)ZbLgf?lKG=I8JSj|7gUhH&ZO;3uqZH?KbT#QO*CvX>As8ZjjlK7-Ok&zW zrft|g*JTpKbuW<1BTb=Rz{_aju~)sn)KUwhy+mCYoA=~!G}&eE?J|Y}Z1#~eV8wg9 zFSUzkw`&w{6*tYJ-?(y_Sym1kWZwbrB}T8O#+2R7wx5VP9=r^;_rpwD@7!N^&7nl8 zx%BA{L+T}8sjiiv{@eoi##h9RSNBcuk=w{I=F`XD_e>4lteM2NydN|->m}0V^=D$4 z_3wgnu6&2R%2L(9aA4eJ6MpO&2Su_5feke>madoR3XRHtSZoMkGR&XdXU0%PZ z86yu5AUnI-$Ww8Fno;|+Og3?hk-s-9JmxcQyD%BiSP)$i7cTTL@V8H8T%%v%2mYYP z?Y&tVQL@egmTv@ihg?M5&@ON)!_(7YM0npmq!*i+51$zt$bh&5;p4cD6qjoo%hKz9 zONf&kFtyYa&fGH=$&J%RD9hVU zp{4bY4}@V-b}j~Lv6iO?=o^G#KR5bu4L;&XnX?`?*wx^c6F2%RkS2G&u~Zb6P)sLK zlia{{L*xa>;c+T_$|Whz+-C|I z&}IKYAubu4#^w(u>qgR^9gQw4^6d9Iy!Q=@0GR@5_7CS*mAXmxuJUWMXP0NvZ#-(O z4+?nq0lM^APsXox1r+^Q0_*R^>jzf;D2|;34hBs)EZ4#Z8H%1#1g%X$V47oFCR_`iLM~T5_-fGc*>1Ph!B{%u;iEr$B~{=? z5a+uLYc=q^$$!6w+y8zbgJ}Rk5K0)KDPLFN>%JxQ?)ByTkB4(E#b3j1L12W39pV4) zpiMxU8Dd@@d&lP;e$W4FvHxM#+f4e+-PJBw$kWCDd-hr4UDt~QpXwv{Lo`~>#lzXw z!7yX{H#tG2{4qNRNsVWD^5SvTfSn+bcd`GGQj6o>%QQ!L8YtTZ1g|iRqw?8LG{+u{ z7g7&sJPMy1EP|>3i{I z->1EUdfjD}b8;g=M#O1ABCt{Q3~%k1tQl+bJc#I|#zLc4 zNI*T-H`WmK$Yh`Ad({eEJ(uoE>>bj2t*jpX?#bCBG8Ocjpx(;e+K5a<2_loA;1+s( z?;=xCirF)7)(*F_oz&08xCJSZJU=OYF8Ijke|LR;-oMb>*#5L^SslafLtp$N{w(9L zQe?d7*+NugvVBM72arr640*kUaO1PU#r+ZF>*EL>Ni~4r+OyQ+Pec4B*Yv7|s;aOX z@hjciy@l^Zj;RXlm1u$HuhwIcvRHo%w>-L9vdnK{&ywg?_!i}4iuC3#^1pvEm1OTI zMQ_ktJ1<=-%w2ahKX?4t8m*0p#J&%tsA;`gt#j=7SxH6#E+pp4mV9~SI}nzP&n4-k z=3#66)aJP*tn%~Qd7teqx)-pzK+`&ij9MX%4FBJ1K)LO0-(4)5j$QoumSR}%Car95 zS!E$(@t1{1Vgmn%-z~kpB^sRsN58A_y;r~wJx(-I)PC^(DRT&U7Z<_$-bgwo<@yOJ zXXklb-NyzFw8_0pN#bWx5wAl+rlFD_mSJi#i8uEVlU=t=&h-}x3PeQ0!jsgO2V7Hh zF8sneX{=(g%>ycxk2y|6RP4iCCS6i;E{-Q$jNpuv0(6(g{(|-sf<*@A?ET13meD4iqP` zk(XEbhs%N%-p)s_qsH^9do&_7Vnquu?fKGFt+P5E@Dq4gi33y+a1qZ99^o22CNdn& z=l4?wy>_?umKO%4Uq9G_-If~w>(F=hO>~ZXaOayWXb#@!ZTC(?qkd7G;60cK^MGtb$5- zEW64N^gXvO|DUKE(!XeM=$jv|7gW1T{Vv0_?rZ0e(by_VATyGDKO-Y z*1NTNnq7eVbpBH+(8w)QMk!#lN);2l6J2mmWC3Nrwz~E?OkdnSrJQexO(-AN1`UZ~ zrLg8!K^3y=RANuY+7C-Y3OWB#EY)l+1}8=s`2DS)^)B+iliww#D!bleY}zBrjl7(c zU^Q{S5Vnj}$PG8Y4m?^exv}a`=V(``V1T2%b3GYJmkmeTtA=gk$yhA5pDAulJWw~` z%HpY}eSP{!|&s(d#m5OQXSeKPLiQ^>rMuyy{n;#8zG_NATkJ6*Og{Y#!ykn)Y` zh;960nXzlG4$)b3?1u2{M#BxXf70v`V9h9QmSSyv!A>NZB0)`YiE1`=k@MJ~->Lm5 z`uejOXaUm5CWV2HEo+yOI{rt_jYVm>mT2UQ9g9M*d=qYM(b(vb)b+I;{^gIn{9n$N zn4Q;P$`u`2<5rnE%j$h<&jTye7=u*cy0n9g(JJ2!jE4zepdzKWl$4{vI=o-M_cam= z1VmE9%yDBk;GM3`aIms`S^Am%SQhEe@3nI^9m$cwHV9*h=_Davs7r#+6do%A|49qo z2J02Qs);jlHV6@`=3O;h@0ofpOX!++8M$*BG98TF?Icb$`JHLX$0mGkUiQdN%dSpR zPW=X{bZOAmwg4$ap1@-z zjhJ2BGexmK#hdOB^`_2*>r+u0oC*C7qb9d2Toi~%lhcwTj+FTNF>!?dKU=$^%A3Fc zR^FqdP`73d=njlV`ayB1;B6DQMVc<-_1{)-tilyhESnIJ13vYQ-v9n_)E?HO(8POB zj=bPQ;Cs`6feoy`z!PzJ(K9?CKbm=^BIF~I!sDhstNZLZ-r={z_k4fcIHfSKD(>xy zyZ&Mkyce4ysl1=}^wAtw7{DMM>Eo9bIs1uj4}go58+ALoSu^vF=TCg_|z|p+H27B~vmwK9zcmmNE0dSwrOQhdg z0c64j#I~oN(0b(^OKv3oxEAF#T*HzKBPn4Tw_ZnAQ-JMvCeFEDN*lMN6Mtz!-q^+T0bvTX} zsKQkj`d8O4gJy`0lk)*^LsBg)up}gU=PWpf4fn+LHS${X>hWF?h>b*-#1?le{MD6( z_lNkpvbO8ag{LPP{SRLyyBAK;fYZkx4kri-gc+MB$gDTe0l9&ZoyA&#AY9ehttMqw zcP!u3h28L@#GTpTln0&7ei9_V^dB_B(oSp^R@e#3XLGWz_E`C6+AD&F8UZA~8a{Yy zmEpE$ohYRA^D!cPVQT)${ho6@!kB-pXP==bH4>8=x4`di{Fl(}20mAXnqDTBTkyS4 zSkLiYxcAYls|5-7IsO{6tfmguH0s^kQU^v0f40QF?$T*4h#8XXI%5aaG%7??j5lk6pDRj~(d9oY6OGtR z!){aC@Ibi56}#HSDGM3<8(JBkoHfODhf{jD&*sQsDQ$eu>W2MoM7I1(68&v<;JmOK zGX&NO7Dp{jvOnxv-7$ktv;Xm50~hGF?=sgh%9Xy;6{@E3my*m({&5{uAsY7^J)>GW zDj=10TBf62xfwkoi3RWXHf8d(MTZo>AJZ5`W9AyfW#N1W3?%1YeGjYdcTwYbC%Ez@ zwVyLzY)?N{)q%z1Q=(~l=7*g+oy?maacl`vm##y!+yfd1z>-r{_~$hd^6+HI1kBow zrS3RHAX2DkWx=fh9Q1oN z9L?CG&I@9XLi^10^*;cK;@(b{{W8wipxQ)I1c4+d!sKR1p+C`&kKwIAkwF=>-z%l+ zi**WKxN_Yx0t<6Jlrq6!Qr?R4sP?sR^Su$L@Pe}-5-P3M-TW34M}`>++yZQ|$M@XX zTbBD(hWq2_$vz{|iho>UH_l#h8qJz&N`sg`YN?ryviTwkyW$?LwmNtI8Am?J%}cp- z)cgx>wQ*0B%E1*5)+cF$-Vc|YMBAHxeE3Zi-Bcj|*aY0hASo3@HjoFEhd;c4wg@|)Wf zQ_&u$XoQwz0&1f8Qw*+_sB_ClgRj0p|N0jc-pf!>x1JS5+`Oj#hKynHxV4xBq2lt0 zOAu82c$%gdhCtowpXv_Hw)A`!(jLI*ypoRL$)+7|W8##)=Xxm>x}qFlnO2~7GF^o^?#Ou5)FxPxbaTJuK`CloplWx(m~Uu{_V*Ap^Hi>= z1xG=jHeU*$ZKqMPH`qar6A<8w_bs+U&EU_w^8c(15{Mr#g>Pc3&{X$vJe8EA+GbFW z>no>`>)~qw#~(*)ex;jebK2gY>BbV9x&yGQhF%p|8v36$+BPKjmbbUz8lZx`CtyEo zm(W2l<6VTr-QQTZ5mZIHaH7PB8P5KI`CE$789>U}I*5DK^MU`O`T6iQ+6=;f3v-!} zIJrIlGs_j3>*6;BQ!pB~My+khT8OzA@8VOJ7y#h9ENR9bjn;O^nu*K4Lsth7iG3}0 zZugo!A8*-UfBTa7*25)FY~vhxD^Dq~-}Azx8zD}(;Wt&b$>;GL0kmqaj&3pe^LIV$ zj)i*d5huD_48(7He3Go}%a7nqzik_nJ^!FXW>46#U#YY$!!_4$Bp*pS)5}S&!y0|h z!mxYY6)COO#V;seLEqF0T^1OEH0^fA$syPBZ?;(%Wl9YQhz2ac1FVCN?&gD7uE4}z zcF2YSV`3yp*j3o#?M6V0gHDL*X(hkSdr-BSAK3nck*laUdJlEb8X9KNO5*A8Cf_c5+8Xshfa;gtJt}7>08mYtstauK!e*O;lQGN$vQzy z6Jl8j$_e;Sj$Zzmit`M1CQm0lu~pW`M4~tv8|{$MxJlS%*Tx@fA-CT96P|HDc~`!4 zC^}+{9opn{gI)C*ge*o{`LP;@Qy<`XWzaK=2ee#!GVp3oSnIv4g*mR@9~6K?lM60Z_pVXDd%L{77!}V#=)Aud z9p#Er6!#qZyVNk=a8i7!!BsVoSQ0ezjjS-ziK~monN#-dJFw3+rcWd_XX+eb!WZU@GBse@Ivj&W^l{tlaHA_gbL~NG^oLC&&wyq zcHqC`M_xJnKk`E z1Y2WZp3;%1jhLkg?Jhxw%uVB4YsJU^1k7m)hlCH1FXXp>3 zOvhObUSXSivv;0`pHR1!C6rKn4nIB{vN9a+VHb+Hq0XqmEm2tUV$hLrco9dh?gffL znXKF$mrJ3Bz5{Wj#5saa&RfW7$pi#)-gnENGf&Xh(*1_FV+h^bKj$oWC>;9^saA=g zeA-rz9NS`g4lGO@LyJK%W4DY`QY+YH<&?fm6BGtc4YtC<^@z^?!$JTa40SZYRQ5m^`&s(^1agq|orOj=Ii)JGLVJwhCC zQW7Hj_wK^Chc5FAez{4S0I(GH2sr%31~_dZOvu;hoF2`?AzM!CRC($75&y3D37Qtj ziOx@C%AKz6kYU<$;})O@AOy(=xa3yn9NKhSq;GSf$j-_j%4 z>@O@W_1%Ce0aJ(%LWWry0dRWQTd833%z)O=gpxk|fu3Us6nLb{^7eDof)oJ}3XAPk znR&T-6I9QsH%CDIJWJ|4p?|N_WoNjp@03r9mfUk(H0(J` zZ>|olJ9zR*@*KjZ-9p`DTec>9hj7$+nRXI)ATTA=xHN z4bO5SjcmmAv``MeivnAx^iZ%Jkv4C5vxD9KYT95u8E#zbcWtdMdG0G+R9nQBo2Db? zJ}6o)h@LYsAi|E1@4P=j)#lwa0T-$(arF|K8lTlx`oft!xrzQD9|biLcK%E7h{x+x zVA0W)*$KES-QYdg?uLF0xnWmsuGIbRJio(1uDw?Q6QxBM=PUx!vrWq*ERDqnb%ndH?j=gw41v0u45(FOK zF4%WzK#%caM&;x?xzmxRG8F>C9>Y8QGI7Y9(^+`Dx=mHSp^;t?m4GPy!EbCfppS|J z3g{6-?TEv|nzbJ@I1>A!0yE6OH(=i48Emx{hv*wQJMAaellin)#;3d^Ro*ybUn4w| zM9jwy$iD&mA28Jxjs2u+Owp1Dy~Qt3&z+hq;Y>DRFIMEq-0Fy29}W0UEaC)c^J1ST zo!>Z2otZSmE*rF|4;h~Q_1CP-{{7P$G|0JTy%e1$A1vGiSXhczM*-n}qi7>+uLDI=IQ=Sh*Y@KlZ5gj-DPnpAaxXAt4kePH##{}e_%Z!1b zvgvIs*x&@!lNm6%FKmdLqg{~ZGE`}C=`15MT``*0d5@anV-sPLs%3y0BBk_Gz2J=u z8ctM~-}3{+P~0ude&FxwiTH`X0MNwG_E=^CUNlnPVzKouU}0s5IZd3XX9=PSxp~0i z4(CphV{tF^znA}0^awOapm`INfj36y)5x?t$|c-_Lo5&oy1h7vZ>2MNBYyz3H*4-^ z(OY7H<-G&7J_hh1SW7y zL*m(uz1^oPu_v`&*Xp~=E1qggNEZ2rR0}=Br(g`2IW7CHPM?)R zAcl9J?A<$Kn^1Uo2#3q{ZiF=HuN(|0DE}V22>tJ^d@k1AU-n8qAsH;J+gp4;Xo*}( zVQIDu^GLe!;1CgfU^Q@uP=U^q`u=k56ABTv=nt;TVkTOlHtm`jzTJANVvH-@LV7L? zA$~mdKT~nkJ!&o;&%C{1eim*1ubEb$xl-@=5t5AepIQTCSG^f`Jo?!Ki3Km5z$7f9smY$&-bU z8k9b1m(vydrM~Q_;4T=W^2snR)osxyH!K{B44{o{%ucpULp9`!U2GZ1c6kRN3P(PN zNN+w5gTj+`mgbErL&KqZEJ}17Yr}wm0r~)J#^i8fPXMAwtHqN-UEccBubp`mZ=7U> zF8V<<#Iy9wf=tiOx>y}aQNmiZ7v+-(ESB5Upi9+WyEjZupDN$L-Z9H7*&qlp4ph)+?~auyj+`V`Ybtx+2x)c z$3lq*p^cH6s%W&|?_d=v2TVb=U+-Aen2HnSva4ZQz-Dkc*-1IIh4LTU<;@ZP2HV{t z@f2SZV64Uni+QKRn(zQ6EjC!O<67O`uiTZkIMwIuClYeCeA5WYN1hLiNKd(xstd_l z5FgqIh2CMdnxDfJw%>KG#QJg9DMzpFr3#pU!PAzPIr7CL0e9>3s~;-9z- zbBm%zmP8MIuAIAq_uH%YB1{QfS4ImfnxoY4W_c~TSZ`ZM>aLB z7w#9IyjMPNL$0YCLxl8M3Kf7?_F5#BI+Ug1ajMB1xxm||ZWH)6LgrooXkh`$t#}>b{#&uXaa&ea%q>eq zy<4j}3qQDi7hLrrQnAlzw$NaeCb_O})nm;z+)P3h@|xbS+mom9`9P2RmIc8%3um~E ztBZh$JN6Gc) z{&s&Frs((0$Yf=0tW++ms)#NJt=3#Ib9EiF%8GMKX=xtPT4Fvql+KS)U$@V2!CtGRuL!{d_jrAds@*kyXk%%gSC+~=}mE1P%& z&=SpHsg(eC`?*{mJu%EEhJtQLK#7+(Z~&G@U#bzmCn3cZJas6-3H?TwNrQk(bdEy^ za-u9j`~d_=kiyHtr8a;vENm&Ts6*-{M5MU>9{o=$9`Az#2x_{m(4ii^zln3Lx_wao zuJM|Hdrj@eV z)Tm4rhDDyEhrTIIc=cPWe-N0YSgCkT9`>jmwXFGFYYolN!H3!O&Jp}I#7^tnA_nwy z2`#2#Y6F)3o%&q}$nr5oP8d*M&+PGDMYjhPpNMk2*?Hvf;7S~z<8=7E-5R#%35 zrH3p|lIZRLGsrnTp6?*y*lQVmejnXui6n7156mFrklrx<(cjG^bW z(jMkdEl-U`{{~G9^^j80=RdMv?mrcUioHdNO$tX8G8OjPzE#Q~3~IU4+>!jpn!rb0 zr-gVqqBWx5D}1Fxl$i8~A>FP>rjyi-(RH5x#iwXlykV#}_j7R5>d zuc6q6?~N=k#TUT1%`d5?&hu5Bo+h$~-N2s;x1G$}uOa0g-3cf=wxZmhSn=z7`nm=& z9Z|0nTQetU0nGeP|GT!rXGqk*rot^N{GX`l7=HYk8GZE4-BfM->Ve4Q`lb>?5LCW3u5kKFr`!~2v-<1>2hx>3Nr){J8 z(xBfS^1iWr6C1kaSae9Lbs4o`BXLq$9Ql`PKgk)-$p$eq3jNF4Hb9OHLUi`M(b7_R z;gYju_mNkm5PSqB+8*R5k=pp!{*qo&lh^xzT7q;2!Z1vB?srfvl$ytNlnLb7H=$FR zNf`k2ypiP-!MX$~BlTcC*==-q^I201FJuL^e1u2~Y>AJGggz@%mT=-v_IqNQ7LJoG zV$c^_XtqD5cviXY`T6Xz)35mK{@!_N$n1eFog+;8^i)l^owe`$q-&kX6*a#bENH=` zr%B`#df2TCJIa6Udb%;x8zfpLDf2eQ~+B_%hGA{!JZAI>!KRX8|%>qyl>e|4K&gVV#kj*nm$%S;L|0&p1z z`fC|ITvM~SrhMBU?q?X1gay)c57~xl1`#C~NU4h+R>1o5Oq2Fd@Fj>g!qN~J+LZd? zJsXe=nqB6siu2HbG-Fz2Jm*@|@^d?@g$kA=L4ye`M3BqTgt(ATRS#9*9ls6}*F=N5 zWVeT<*xhO+8r0byO|u!N(LkWEk%Nms#-E;N@Ip0Tf8pOHB-#dX+ZvbWCX-d1fl7fj zLC;srd%%+QZ|+i2EIV{)Pba}@V+2PPNs#?En4uRRE7m;C$d~kTd$&_7ljLfc*v^s( z?CfmqG3LyUhY`wW)NMt2f$tIQO^f>FuVhk{@~HS{#jXS{_2r@h`0S=~46!MJ*qY`q zy4O2UJ6=dKV)B4j|SWXb-Wh(a z^AIDaouO&nZm8Q*L;$CzoUt^6f%JFLaPny33HtYV8bgOjd-!^q4Fkw@2wlKXm4Rd4 zn>o@4{rmN}w`mMLaj6BC<4vtdnT2IZv<6~Y4yaIh+PKMZL7R^&OHMX$9{BTw7&5dy zk%$9yZabpwkaW+5&YI$=Sfuu9Wxh=>>04~Qb})wZa#=g zwyru031Zl1`K%8XojTa=NwI#~!~9?<#yt34668#ucr>i@ZAd4(j$^O?yP+&(n}=?r zE2Fzu4Wwi97PWQOQq;Tt#SQTT?K@Zl_n!+axvX;TICx-xE}Es-1=ZgYN|BOHLpk3V zrg*YtlKr(Y3jAncF{`fMqRBVJJtSceaLe%n60J>k>CGQ?AOnwj$8>Y*{*C+@$~r5I zE1RC?-FIVP>suZ)@y=aC~COQhCv_C(_x)OX5v6Hr9V;Uto{8(m_!sn zO-<85hju?*F)f+>Ji;>%8B2~M#Yp(m1sFK%HY!Y3U?BTyC^)r_GbSe`C++iC{dHru zE4yJSm>$iO_wLEcFPI}4;C#Bh{aPd`LkStnZM>Q*S5ni|jY_tk&P#*mv}%r>XDAsV zr5uz735Lr1nhFp*n$4;H1X?X6qt#NS$pOUEl+(iLvDeIRs;ot6aP6YlB}LJB-pVjp z9!jyweebv*Xy*`%6**7&S};c{AN$}&73(q-Qie;^WN?yhD>#Kky|W;|Dx*??LvWm;zCTa1Zs2L?)7!H-jM1f_VQ{ znzC3F1ShC!V=4Y6_WYJ`N}QzxN`Q8k z9y`8ij54}G+O47)9zT$z6BXZthJG3NJ_unZ(Drz$zER=%*>+l-C)oPg7KI#Y3Qy_M4Tg<8j2QsbiXJ<>_s93;l)rKMkK%hwScM=Nz3obT6@bH5JCEM53#H| zJ2+7=otgY8Uo07<3uU)o;vdP0L@wA!i{w_gi19t$6CCFwbR}KSRU9R!f``P@Ee7Cl zefffUh3irMqzFDcXS=I~c}81&rGWJhIr)6^82Ael&IlIZtg*^+Dc(*yjhr#upsx z)jx7OXN}^18MY>Dl5#QWS((bra?Ngt(pKt9P9B6ze=?{B?)RpYDa+6&}+e?g^? zIA9UM-DTZqaiF?BK2|Hqj)|dQ0w2KB>JfK+Lmz&a|HJ0t;jAMP7o}99sKZfkrfDie z&a?D_twQ});a<3XN(N9Ycy2a0gv^tw!i^&vA(MggIhcoWTV;c0l0!jiqDXQNKQ6vh z?`wdv8lGU&sL%L}{~$?N-j?~aS#Gze3r5|0TjB$h<` zgpoDPuh=jqK>ujnS1+;&?%~9q(j`!X|mj7ZA{MFUX zv>r>KrgW6%@BpGD`r3Q8_5HxC1vZ-}t1g5QF2q6;$BsdnWcyc-LXeG?OVIPpC0^H{ zCn-KYlUlu+KZzd;7f#$??@<^mTkMp?b&_=?`VIom#-D1rXqBIerqT`6qD%Sp+I0Q8 z<)XY(Y3VVM_OhpghC5|EShks*+cPEGXVemlLS9!3BJ*Fv_`Hb7yDD~8{lz_U$f$$p z$j365c514uy)p8E90V#Up#yFl00e@fpZre7i%z;R27jR-*`m^_F_j&z+|9PZ8NeC8 zm@5lcVcqRs;8GRLk@xc{^(7E`G?B5`p}I9nJrjxaMWl7((warsPtFSINJ9aVn+pr)B@=*YUvaV~Xw(R67F*w05Vm$&xUssBP)|la-FsSbDO5+ zI7l`_*Ma(8S;8_zRun4rTDvS-X1O#OBZB;uIV!&x`A7v}S(rvPAyzi3Dd!qMT;B+g z{9rk*u^bvjxu>Z|n|^#PA-{YBA1xu7H^Fhhl`x#mtjNFlk0j1nspO_9`85tk)~+37 zk-ipa)&P>=L6N6r#v71M9>zSzoO>m=5R?_Az{}691J`{@efm9aQ&szrouaKhN z@rKqJqiY)>;d!DV=-=G~tw>6Xo9=TN)8=&jdElPIj(F@Q?!tYZ4mxJSg;4>k@?x@6 z+G+|(L)NU)TDRDT_20Lv7t6QNJ{))I**dg9Py*$(I?BN=MN`I*WX}sINS?NqN(8&W z0rY-*siSO}cBMVZX^Qe!RGtA&#tQ39$fNtv@Cb8`s%a0DBdzzyIXRp}WE$Pk2i92r z>Bf-gWJQUYgtfMdq;1LoLVIwTppI5x2)Va%tD=Gb0AF&%CB;+S=b<0EJ;cA*7etVd zx6BChj1fE`$3?M7XO>M$hng1q7s!>z;kkGFxh~|l=)9MTfN{en#GnAP)yO>PF20<3 zd7-wzWU^Y}&LfL6TVH#YpQmYGmJh?a(pi@pRPTY+tQ6c*dX0HNv zYT$GKdVsOOx<7Q#qDDx)&n+N+=VBQcQg{Bj$&oUmCLD=DhzcGjs_j=A4vpxJrC6Jl z`&Vp_Lz^NXH+YOCY~i|B2K-TpClj!>RG!5wae!OxxmR{zge6E9&BmIJM9$BM`Q^{j zZtQ?4CNB?}{Z7CwgAG|vW?*!8pi?ype-?U48i__Z8(xej&ebsbbzZWrO$|-|2hVG4 z7;iSdQa5hL&0o4FnsmI$d{taIxnB7XVZ8cJ?2e1Jm|uE75H*^L`&vr2soZGA6vhUhf$k|Qi|7$73es`xI&E8gkgT%tBn)UJhoqTuBp!&zZ zjf15I6qfHI2(!MP$2ZnNdmr!6$1w}fj^@^;g(^)zv{{z9ieTva+ar0}<<%{(yn^gKon1 z#(H)b3Nf@=d3N!*-oaJ?2S4F>9z46u>+p2aF8a6E01mvNJ{E+r1a@~Gm#raiOLz%~3^6Duf}<{J5wMC+M3-5@n2MN`e5 z_%^M48!bji^tT7c9W!cl+>8QMLz1|1hynB9tIRY^*8PNb%F}5r}fbaIYSi2qs#ZT7d@-L98{9&5?S4*q@xfZd0Dl?%$xty)=v1=fnl$6qB8Gpfl~d)oe*0Jx&(S zm9T!3k{s4nU>y-ULZm;DS&EOd6Zir6`QhMaBDD`<2Fg1efG(#?&B+$w!OREe$%#)0ec(z%jj;BbJ~a z1OCQ<#Wbo$!THGVE7Xs$s~szBy~A^bD&{d0DjgQoPk1%!jQY~hgrGqDEN_|MQl`tK z99`r|5w@y=?|)%3)bi&VKT-Mv0}=v}ua!VZT6~}LBh^f>n9-w(3MY()Z;CMW-s*nY zIcTMUy_lAR#7Ox-+eG@TzwXYJ*xNY5*%kU!5G#MuXFr%EPhzJ%^|n}78>`iMhcghn zO<_508<1;UhLq1~D)GeR@+DP5@>z|VnT#d#oO5!1aNEGDGbA`sM!deP*&=XQV6g9a zh(7z|u0`u*f(d7t?M(>@GSHxRVH{`E@+O51ux;72nxsrIS2aRuuY3upr251c!HFc3=R7uMi{y0Y8nam7k9&8x60|fiZvgI8KWPSs> z;wSsufkLgHd}dC+Iu@O}U#JQVHY}ect!fc}B9?>iC)d`fB;L$srvEt`S{TzLVHYKl zR+Y2liT4sbbSLQL+!p>@7gJV%DX~8~%ae=q31PaQ=vsyTil2y^Ug6n6Idax^D$_&x zXXll?*^i`mp1W2F?c#f~7>Xf(Y0Q!Dvav=@P z$KPZMQe}o1YF;2lT<9SbGHv#%%$IY0^`7GB5YeZ&aJiJM66#cYRC)9*(iGdTyC<*c zrlO33Sczt zh1{-T7ItdSH$qTwU0qaYco$5e#`9S_Na`&od4NN3K@<=mWECQfI23yw-nWrtr6L!DIJ344iv)`(EK^ zUl{;EqxiJlAA4>t0{z&D75O%X{)bIIyHETdIVZ0FS6}B9)nvBCaYVUBG7u01MTJmI z3{3$EhD727fkZ?RM1mASAoQA{WFS%uP3a&l7(mLX)WFb&2uevpM-fB}9n46Rra}a{ z@m}xCT{_>(e)-ngd;Qm0`|Nej-oNu_Fioj4^K(ytu3O3s@9=GdkEW2-s(bfNq8{_R z*-g722X@f(-aas4|P`s_E8SP9vO}iq{@i{^dp|*8wl{Z_%G#>1a2cEI+ zYT+5itmOMc#n;Y@*6VfE7-V-ohz{gbGlbvS?@-slqifQe0$HQ%$OCPjNeRS-!}?#whmhH}-+$Lz8Qgb!(jI#$76- z5&m_IfSg!?@KCT)Os~}6T9i~L36$CaMHIM`fDa zvR=)W;yE&O9L`&mUZ>kSyjPq(w6EraHUW%Jd;Q01!rVJu8Uy46LEa!2n?n5|OOJ2I zx(H2~1wX}9xzt2sE=pW{Rc<6VC*bMQP#4`v#2CAm5 zru2^j{6q@67(&f>9eE$kO||$W{H)fSU2rlR>dz%7MO*&~T&B5$uv%-UG%^=qAiY-a zYTRE5fakaNzjL`CGz*!-Iq5kw26heOl6Cb-cI>S-h{)pfrM^spiA;A}aB2dQT{lv} zN#edQJWiG)&(HbBs`kznw1#B#h71?wNo}AGiio+<8aL=EzX z3bn77z^=UuJ-2|FOD6RuO3)HB*X$I0G-T=2vr~k_z5rIsLImqiH$xTiU}%vXYd3J; z#dCteIR;7NW;d-W^S`w$0`_3KRIaJ|FiUNuAKp<)2x{zGpZPv88U~6m)9;(=qxQ)O zz+Uh;=9vAYCmSEocssW|8I8Kq)Ln^6&|`6-R>!@h)~av}c*y-^d|dxYN&x+1$lFh2 zs&p7d2KQ?vW0O-gBWhqvKkAlgp=vOT#YQWNxf?eKkTmLE2x`Gp+p(Otb!5w>SeQ?3 zWQVLgg+GU;jyiNOCd#qQV@lfUc0>>Om`C~DL%dGWg$udkTBs^t=u9G zMD-IgC}d)d>C_!#_@J{T`8J`n#*RntdkZt_aJwkV*?Fp0_v{2rt3YmX6Z>*v2)I@t z&fGKAQF2TJ^s0HZJmmq|QBSDUetN&GNpO7?Y;UKnitr%sqq^oA`}Ac#@T8()7W#CY z?dU(`%v~5im+)xoH&+OVHuqXgBg^>FDSo4`!c}w^!IG{Bl76n@=^=b)n43rF%)jY1 zsGe?a4fh@a+k_Z+80Q}+HYdLo7CL}R!(=Os_fmXL@uFu?*8b-Ac?u$BdCH`qiLZBr zzq~h8a2qLrXAVd|aw#)LCAl~(c7&Mgta&BxUkRAYy3-TA-N;)5wtDc{{?&Iq0smZ%H&;V_CM?|=uG80fdpy0$HCB2)Z3Cmq$e)yMjlr35EH6mB z_B{p2kTXiE35Dh|*S)L0@(c+zDyNSMUb~L}7eW`DNW>|A9Fj;xT%xiz#9_lsOqV=2 zt1=6C*cdnE^G=ybki>dpyeF=j5!r=UyI*}f7?4%YEEJ*P_QC0BiewfEXm&SD>?#UK zYgP(3I(@7s`E$u!;H$o9Px#(d91R`_Eh-md@YwxpIis~yS`yu8qIvOQjlNL=OE`{n z_xJJ8vEm$16J^hxXiC&xsT)UTsc~Lu@Aq1$oq5x2(+WDO(we-Ib<*NK`bin!HJ%lG ztQwinfn&*eH)^k9=Netp^g$fxHbfx<@jx$n@*EDiE}FlDYe-DD%mYs-tvly|(Dbpd zfU(4TQu9GP7>n{nHdOPsrE#PUxX|!KFS18*k@;>Kuq`1DPOs&+Nvp$yb|msT78dyj zzXsy=iU+0ncU}B_D&l3tGxxNxot;X*w2~Nzhq_|NF7>k-9OC~b7Aq!h=g zq7cuzbns?fzd8UnD46aTtko`LiORgvdH_MQ5rejHgHW#cP(qXJmCVCmGnx}yxP4R? z2PZKLN+-k_*Pp|`v}?3nL%i&l>5p0I{@6nyR_|4$T>HhPSXR6eZ^)429wY^o zwrDinD~(&7HpYJjzL%((*tkh9DX*z_LqWH)naaeSY4VBb2f0W`1f?Vu9kX?!&m}!= z34x&Hx=e3(ZgQ<=KGHq)8g+e0}85HLJ z51~bvh4Wn&=ZiChf9~+CU@1iKa$kAQ((;w1pGF_9Xeun`>t7*xCerfxf9t;=N@qWG zfsZ?|s2SUN{7>p$+{1TyKhkhT`Db!{6R0c)a28STUe|=K{Rd&s!_H6c?#Vo-hCWm+ R_eg;M;S4TcsKD4q{u^Q)xRU?? diff --git a/docs/images/cross-cluster-replication-list-view.png b/docs/images/cross-cluster-replication-list-view.png new file mode 100755 index 0000000000000000000000000000000000000000..4c45174cff7f12f8b066b9d62ed1c3762ccec02e GIT binary patch literal 117230 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 literal 186908 zcmeFYhhI})wmwW1MT!cDfD}ap>C!tWq5{%8p@=l;HIxL1ihzm~1w?x9kkETT0Yy5} z0)&L#0-=WhA@Ihz^WK^J{oOnB4-B7AlEcZ_XRovND$ldl&U<~`C-k)Jv}9yt^qNl} z8IqCF2#}FcVJ=?ybEZ`0AsHE+fQ!1izNWf5kG`*$lZ(3}8QIhKNoF+WMm^Uv0iWaJ zhbgYcUjs1}n3d#EUx^o-yr{{O)AjX=@#e2w3bzN3n1z}JbJr}%EZisiZch@_ud+B= z3s33?Cr}NKZ^QBM{ZPMc$WXfcsw%%^0vp+wz1#~QnNo7KSOK$Z9PGc+JBT}L&mYRfnO}@&)y2ZuBW>8cG4PZx5N8&R}#( z_rR;LF|AtxS9agtewTLZaG6$4>7A;&k|4h`dlzQn3ZN)-m4A_2Wi&F>SB|aIJSF;} z@te1XJ~GY|=N7T&BJxw!IX9dt4X8g?ng=~Q$*ah_3UfD$e?5SEHH*KczhAD*F4phZE!3T>)Kfe8 z;C$^_o0OdAMZY^A%ze{dSeQQimOT_hp#uKpY}Cf1qS?db(Z_W6@q_XUyUH%6R$bWx z`yu2)uD>4Nj!yE6Y?r?%P0W(6dNGEwtZ3dzAb3!I^oAoUC}ja9En0qSG*!+lq5kFRt)PgVz2+P@l0#*|YZo4-ivTb?XfC;$pUV3cl>?bdCHELz z%u~aIcXN^qOX2N23zX|SjcOWV+)EFL$#xZcE{r2A@Zb+uE#@wD$@5S+bb6({NPH=0 zc{_+sx+5#s?-s&+aw$}G{VPUY;f479cQ+o>-I|^|X%yRvdD2m&>aN>JvnAiPk)}L< zDJNs+op;9YgGOZ&bDrbZ@=PBoIpghrJr8i1b&di&gh7LNwkV0}vvQOOn#0D+ADLef zzE48+3Cd#!(w@93&y~p$$Kq!%U|Ie~@A?7n={+uI@xoSD z!zjxr�mBP@ZH}NwYR{^Uo9F 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

    ++2pv>!|uaauO?(he<3%!z%Z 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 I(K`7505VzVlK=n! diff --git a/docs/images/remote-clusters-list-view.png b/docs/images/remote-clusters-list-view.png new file mode 100755 index 0000000000000000000000000000000000000000..c28379863b74bf31b807dca9f602af236a27c006 GIT binary patch literal 96631 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 h Cross-Cluster Replication*. + +[role="screenshot"] +image::images/cross-cluster-replication-list-view.png[][Cross-cluster replication list view] + +[float] +=== Prerequisites + +* You must have a {ref}/modules-remote-clusters.html[remote cluster]. +* Leader indices must meet {ref}/ccr-requirements.html[these requirements]. +* The Elasticsearch version of the local cluster must be the same as or newer than the remote cluster. +Refer to {ref}/ccr-overview.html[this document] for more information. + +[float] +[[configure-replication]] +=== Configure replication + +Replication requires a leader index, the index being replicated, and a +follower index, which will contain the leader index's replicated data. +The follower index is passive in that it can read requests and searches, +but cannot accept direct writes. Only the leader index is active for direct writes. + +You can configure follower indices in two ways: + +* Create specific follower indices +* Create follower indices from an auto-follow pattern + +[float] +==== Create specific follower indices + +To replicate data from existing indices, or set up local followers on a case-by-case basis, +go to *Follower indices*. When you create the follower index, you must reference the +remote cluster and the leader index that you created in the remote cluster. + +[role="screenshot"] +image::images/follower_indices.png[][UI for adding follower indices] + +[float] +==== Create follower indices from an auto-follow pattern + +To automatically detect and follow new indices when they are created on a remote cluster, +go to *Auto-follow patterns*. Creating an auto-follow pattern is useful when you have +time series data, like event logs, on the remote cluster that is created or rolled over on a daily basis. + +When creating the pattern, you must reference the remote cluster that you +connected to your local cluster. You must also specify a collection of index patterns +that match the indices you want to automatically follow. + +Once you configure an +auto-follow pattern, any time a new index with a name that matches the pattern is +created in the remote cluster, a follower index is automatically configured in the local cluster. + +[role="screenshot"] +image::images/auto_follow_pattern.png[UI for adding an auto-follow pattern] + +[float] +[[manage-replication]] +=== Manage replication + +Use the list views in *Cross-Cluster Replication* to monitor whether the replication is active and +pause and resume replication. You can also edit and remove the follower indices and auto-follow patterns. + +For an example of cross-cluster replication, +refer to https://www.elastic.co/blog/bi-directional-replication-with-elasticsearch-cross-cluster-replication-ccr[Bi-directional replication with Elasticsearch cross-cluster replication]. diff --git a/docs/management/managing-remote-clusters.asciidoc b/docs/management/managing-remote-clusters.asciidoc index 6b69cfef5b7689..00ec5c7d2ddeae 100644 --- a/docs/management/managing-remote-clusters.asciidoc +++ b/docs/management/managing-remote-clusters.asciidoc @@ -1,67 +1,39 @@ [[working-remote-clusters]] == Remote Clusters -{kib} *Management* provides user interfaces for working with data from remote -clusters and managing the {ccr} process. You can replicate indices from a -leader remote cluster to a follower index in a local cluster. The local follower indices -can be used to provide remote backups for disaster recovery or for geo-proximite copies of data. +Use *Remote Clusters* to establish a unidirectional +connection from your cluster to other clusters. This functionality is +required for {ref}/xpack-ccr.html[cross-cluster replication] and +{ref}/modules-cross-cluster-search.html[cross-cluster search]. -Before using these features, you should be familiar with the following concepts: +To get started, go to *Management > Remote Clusters*. -* {ref}/xpack-ccr.html[{ccr-cap}] -* {ref}/modules-cross-cluster-search.html[{ccs-cap}] -* {ref}/cross-cluster-configuring.html[Cross-cluster security requirements] +[role="screenshot"] +image::images/remote-clusters-list-view.png[Remote Clusters list view, including Add a remote cluster button] [float] [[managing-remote-clusters]] -== Managing remote clusters - -*Remote clusters* helps you manage remote clusters for use with -{ccs} and {ccr}. You can add and remove remote clusters and check their connectivity. +=== Add a remote cluster -Before you use this feature, you should be familiar with the concept of -{ref}/modules-remote-clusters.html[remote clusters]. +A {ref}/modules-remote-clusters.html[remote cluster] connection works by configuring a remote cluster and +connecting to a limited number of nodes, called {ref}/modules-remote-clusters.html#sniff-mode[seed nodes], +in that cluster. +Alternatively, you can define a single proxy address for the remote cluster. -Go to *Management > Elasticsearch > Remote clusters* to create or manage your remotes. +By default, a cross-cluster request, such as a cross-cluster search or +replication request, fails if any cluster in the request is unavailable. +To skip a cluster when its unavailable, +set *Skip if unavailable* to true. -To set up a new remote, click *Add a remote cluster*. Give the cluster a unique name -and define the seed nodes for cluster discovery. You can edit or remove your remote clusters -from the *Remote clusters* list view. +Once you add a remote cluster, you can configure <> +to reproduce indices in the remote cluster on a local cluster. [role="screenshot"] image::images/add_remote_cluster.png[][UI for adding a remote cluster] -Once a remote cluster is registered, you can use the tools under *{ccr-cap}* -to add and manage follower indices on the local cluster, and replicate data from -indices on the remote cluster based on an auto-follow index pattern. - [float] -[[managing-cross-cluster-replication]] -== [xpack]#Managing {ccr}# - -*{ccr-cap}* helps you create and manage the {ccr} process. -If you want to replicate data from existing indices, or set up -local followers on a case-by-case basis, go to *Follower indices*. -If you want to automatically detect and follow new indices when they are created -on a remote cluster, you can do so from *Auto-follow patterns*. - -Creating an auto-follow pattern is useful when you have time-series data, like a logs index, on the -remote cluster that is created or rolled over on a daily basis. Once you have configured an -auto-follow pattern, any time a new index with a name that matches the pattern is -created in the remote cluster, a follower index is automatically configured in the local cluster. - -From the same view, you can also see a list of your saved auto-follow patterns for -a given remote cluster, and monitor whether the replication is active. +[[manage-remote-clusters]] +=== Manage remote clusters -Before you use these features, you should be familiar with the following concepts: - -* {ref}/ccr-requirements.html[Requirements for leader indices] -* {ref}/ccr-auto-follow.html[Automatically following indices] - -To get started, go to *Management > Elasticsearch > {ccr-cap}*. - -[role="screenshot"] -image::images/auto_follow_pattern.png[][UI for adding an auto-follow pattern] - -[role="screenshot"] -image::images/follower_indices.png[][UI for adding follower indices] +From the *Remote Clusters* list view, you can drill down into each cluster and +view its status. You can also edit and delete a cluster. diff --git a/docs/user/management.asciidoc b/docs/user/management.asciidoc index fa34802abe2a91..a4ba320e826b17 100644 --- a/docs/user/management.asciidoc +++ b/docs/user/management.asciidoc @@ -13,7 +13,7 @@ indices, clusters, licenses, UI settings, index patterns, spaces, and more. [cols="50, 50"] |=== -a| <> +a| <> Replicate indices on a remote cluster and copy them to a follower index on a local cluster. This is important for @@ -85,7 +85,8 @@ set the timespan for notification messages, and much more. | <> -Centrally manage your alerts from across {kib}. Create and manage re-usable connectors for triggering actions. +Centrally manage your alerts across {kib}. Create and manage reusable +connectors for triggering actions. | <> @@ -125,6 +126,8 @@ include::{kib-repo-dir}/management/alerting/connector-management.asciidoc[] include::{kib-repo-dir}/management/managing-beats.asciidoc[] +include::{kib-repo-dir}/management/managing-ccr.asciidoc[] + include::{kib-repo-dir}/management/index-lifecycle-policies/intro-to-lifecycle-policies.asciidoc[] include::{kib-repo-dir}/management/index-lifecycle-policies/create-policy.asciidoc[] From 6652045cbf6b5c08ba06c800a81abfb51ed2415e Mon Sep 17 00:00:00 2001 From: Andrew Cholakian Date: Thu, 16 Apr 2020 15:38:57 -0500 Subject: [PATCH 05/59] Uptime 7.7 docs (#62228) Add docs for 7.7 features: - Alerting - Duration anomalies - Settings Point security docs to heartbeat. --- docs/redirects.asciidoc | 2 +- docs/uptime-guide/index.asciidoc | 1 - docs/uptime-guide/install.asciidoc | 5 ++ docs/uptime-guide/security.asciidoc | 60 ------------------ docs/uptime/images/alert-flyout.png | Bin 0 -> 185486 bytes docs/uptime/images/check-history.png | Bin 287099 -> 227378 bytes docs/uptime/images/error-list.png | Bin 269428 -> 0 bytes docs/uptime/images/monitor-charts.png | Bin 147395 -> 149018 bytes .../images/observability_integrations.png | Bin 278119 -> 280039 bytes docs/uptime/images/settings.png | Bin 0 -> 66781 bytes docs/uptime/images/snapshot-view.png | Bin 95561 -> 55576 bytes docs/uptime/images/status-bar.png | Bin 37372 -> 86423 bytes docs/uptime/index.asciidoc | 2 + docs/uptime/monitor.asciidoc | 25 +++++--- docs/uptime/overview.asciidoc | 26 ++++---- docs/uptime/settings.asciidoc | 27 ++++++++ 16 files changed, 63 insertions(+), 85 deletions(-) delete mode 100644 docs/uptime-guide/security.asciidoc create mode 100644 docs/uptime/images/alert-flyout.png delete mode 100644 docs/uptime/images/error-list.png create mode 100644 docs/uptime/images/settings.png create mode 100644 docs/uptime/settings.asciidoc diff --git a/docs/redirects.asciidoc b/docs/redirects.asciidoc index fd835bde83322b..a5503969a3ec18 100644 --- a/docs/redirects.asciidoc +++ b/docs/redirects.asciidoc @@ -23,7 +23,7 @@ For more {kib} configuration settings, see <>. [role="exclude",id="uptime-security"] == Uptime security -This page has moved. Please see the new section in the {uptime-guide}/uptime-security.html[Uptime Monitoring Guide]. +This page has moved. Please see the new section in the {heartbeat-ref}/securing-heartbeat.html[Uptime Monitoring Guide]. [role="exclude",id="infra-read-only-access"] == Configure source read-only access diff --git a/docs/uptime-guide/index.asciidoc b/docs/uptime-guide/index.asciidoc index 7bbc01bb303f1f..09763182fa88fc 100644 --- a/docs/uptime-guide/index.asciidoc +++ b/docs/uptime-guide/index.asciidoc @@ -12,4 +12,3 @@ include::install.asciidoc[] include::deployment-arch.asciidoc[] -include::security.asciidoc[] diff --git a/docs/uptime-guide/install.asciidoc b/docs/uptime-guide/install.asciidoc index e7c50bb7604ce9..0ed1270ca92cea 100644 --- a/docs/uptime-guide/install.asciidoc +++ b/docs/uptime-guide/install.asciidoc @@ -56,6 +56,11 @@ Additional information is available in {heartbeat-ref}/heartbeat-configuration.h [role="screenshot"] image::images/uptime-setup.png[Installation instructions on the Uptime page in Kibana] +[[setup-security]] +=== Step 4: Setup Security + +Secure your installation by following the {heartbeat-ref}/securing-heartbeat.html[Secure Heartbeat] documentation. + [float] ==== Important considerations diff --git a/docs/uptime-guide/security.asciidoc b/docs/uptime-guide/security.asciidoc deleted file mode 100644 index 0c6fa4c6c4f56f..00000000000000 --- a/docs/uptime-guide/security.asciidoc +++ /dev/null @@ -1,60 +0,0 @@ -[[uptime-security]] -== Elasticsearch Security - -If you use Elasticsearch security, you'll need to enable certain privileges for users -that would like to access the Uptime app. For example, create user and support roles to implement the privileges: - -[float] -=== Create a role - -You'll need a role that lets you access the Heartbeat indices, which by default are `heartbeat-*`. -You can create this with the following request: - -["source","sh",subs="attributes,callouts"] ---------------------------------------------------------------- -PUT /_security/role/uptime -{ "indices" : [ - { - "names" : [ - "heartbeat-*" - ], - "privileges" : [ - "read", - "view_index_metadata" - ], - "field_security" : { - "grant" : [ - "*" - ] - }, - "allow_restricted_indices" : false - } - ], - "transient_metadata" : { - "enabled" : true - } -} ---------------------------------------------------------------- -// CONSOLE - -[float] -=== Assign the role to a user - -Next, you'll need to create a user with both the `uptime` role, and another role with sufficient {kibana-ref}/kibana-privileges.html[Kibana privileges], -such as the `kibana_admin` role. -You can do this with the following request: - -["source","sh",subs="attributes,callouts"] ---------------------------------------------------------------- -PUT /_security/user/jacknich -{ - "password" : "j@rV1s", - "roles" : [ "uptime", "kibana_admin" ], - "full_name" : "Jack Nicholson", - "email" : "jacknich@example.com", - "metadata" : { - "intelligence" : 7 - } -} ---------------------------------------------------------------- -// CONSOLE diff --git a/docs/uptime/images/alert-flyout.png b/docs/uptime/images/alert-flyout.png new file mode 100644 index 0000000000000000000000000000000000000000..7fc1e3d9aefe272c87fa4060cc932da341d9d716 GIT binary patch literal 185486 zcmX^-2RvKf_d2y&d^;$LE_>Ci+AXb7vxpU=_J~j;W>Ia?+O+nr+7dIdR~1#nO6*xX zF=|9AivJ6K|NF`3lb3hzJNMjk&OP_6mrq(6O4L+LR1_2x)GEr)v?(YkttcoiqApzo z?pPmP>IA;dyUDBQUIN;iOI9C&-;D0h4cv8{ZQMQ0U9Bl>ot&Z8{BD-6*49pLcFyh_ z=bB_GDDG0IJbS9^mAX3V>u5|!BX0I4)j8i-vT*xUQR%WQfOe?5JeGGkK=jj2^j&_o z>(R>mSzm(+gLKD(sLo%)+|_#jBq$G5qe~41X|r$@ zRgp8lRV|`q((w{YdzR9>-Cl^@aNBnOCasT4-4adPDU3@$l6v1X$+e=OU;ycS2;t9z z6zF(4pX#S)^1$bau<5Nb&>pat$JBcj7(gCl7HOnOz6io9Fz~W3#gMF%_27Bu$hRmc zM9=HPIf3uD6FBydabM_vBnzwS5JW_dJ1H_7U*5YyL7^3b;|^C>>FGp4NA(VRXiqxx zmCly~SFqgmR)g_)`~GrZgwyoKapvA4!z^8 z9#R%-twV-SZeQL}83Jf9LB0q++Jx1b|?k$b^)wXm6{5+LLpWuG(N3wkc1ZcIW}& zF9Vl+91;KhuqnAEWx@#IsOoh3*l_}Y0(0&x87J=n<$E?B|D`lW7DLB{tuS7}C(l2z z%(NDwplFu1!w5c-`KT_;#^{h4a!OdtO*-;gK|@^Tj)?yrRrtB!${47(6Hgv}YxE%c z0>GQEikAf3E|kVw_f*Rfkk;dcM@qnLa>Gy>(F34#RkDN1M#syE6?|Y}j(|5-mjR5( zEt5@`ygJ>d4IyQFXGi{-sPHCof^O$BqSb!`tRTgn&oogahhI$9Gil@(}A5%tG zEBixP&AU}9IA?fc8T^_y#~WS zolbQnI(z5_@QA@BCb4k-g~#J4PF`#3PQhPHr$jbbJ?6(^zG-Wx_V*Es@mP3x+*OMR z%p-doc{>8_?K?X|Kv)GS2@LIM4zC_0R5CnH+b?vjfcj(r#fzswfJil;)pqz}+YZc9eGr3rM`kFw zh2AGm$EA=RQYOMEGDf@P0ODhBHSiS!nOkbR3ms1+fPt12N2X z`AY`8=Sz))IFBcc`aIOncHW^WSf%9 zDK9SP@6{r{Kx z6P;tT8~7Tb3tRLOakABIV`AJlh>tUVF_bQu7~FOO@CoCwP(|ksVapa$<=mzxgzOQh zAB;raeg6j?hr!<}?+zu7o@G28?R1Q%nvtEkV_DfY;#P`FhR~kbt^ua=RM2zo9&gxl zZV(+~ukKX`J+Q|RsWizl2Q})k71Fjc?$Q461Qx{!t)C#_k#I$Z6wg&F;_SO6HBd8? zAzdXZ?W(Iz(>aP*3m2VPWwjeI)g1SQf*x!dY1+3ywra4e+xeqQdY^kAM2#Ebxyf?E z)gta0pdWm%fwUFo0D+`o87wX5NQdWWU&Q(!kxFvJ zy_F;;Xp#sAl&q;Bt`sWEqb-#tgxR1;4x?VW`Jgimpe|jJBo{l>62FIm2SbWUfAZA# z#|$zWTbU#(+Jd@6fd8Hg%xoLK2uNQTWf+@y&yjEB; ztA%&&1zT=O9+Y2J%-h7le)reP>z_*t+r8N9pE#_H;^l9=49dP75p-XNSYu2BJ_Z05}X9_*C9Z&|1nrJc0 zLA1n!Vs&VhVPIRNaY(JT8N3h_%Osu!_*d>EbTxP zhZHmwv{$soy)t;vayjU`kV@>}tX4<49>245{8K^lp@oSX{ZJmk-2Q?rlCNSQ#W;iP zWtUO&RZMb;{ZbF(PosE8DG7g`=r}-WLJd*uUCCFi=3cg0=5~KjxqIbR|Ht+lq>X0l zwi~(Mti)E4Y5p}P#b6`n-x6cdvzmG7kIFz}#eJIO`e9Y2rvmR5}C>DyoNI@Sw8xt*iuv*U7rB~Oa zGHf=S70;mw&kMR^4Y&Z9swfqlBP z#>-x}^+6U>FWKOGQu`)rRi4U{eTckY!?Y|x9ZVOZ(#lvJ3!tHKhL<7Zom2+n>82u& zYND)+aserjj?v<~mOv*Sr)*GrUCrMjM$GCApQvTlM_@6bZ1xMFH6xsJ;byp?zWzIN zlX}tnDx^9{{I6+T(PsGZ8oEq%^akEtwq!p(I2PNCzmI6Qchj}g-xi{4&wV$7p;^g- z?vAw2AL#`0Q}BuQ8_3^kRKDmr?Ed$%<*ko7hq(nWMw@f4J-7VC)O+c84XZCkgKqv$ zvI?HV9FeUf*F7@Iy22lIjLt1GL@B0G(AQ#&vJ1p46RN5(J}>e!(F;&U$S)&$>Q(^6 zTOUh?nkFar6Ll%zY?oXM|L4q=x7$P5hIr&kfd~%YHa`2;3(YZ57$^rL!g-lAe*%Ir z7RioGrzw1e#jd&5rG~cOV5${1#jlXpnfRr_#&I{fJmUC>;A6UyCFy~PD=QFsku==x z7oH4nxKGzujrfQMWluAjmM7}y>YPL!uUw$e~sse z0)CaR&Eo-OM3L#?8dL^_!bOI@KzFp_$)^_|Rm8QsXf=hwrL;|kaOUyQNIlZFV1@dY zyEW8OI)Oq zB&%-vGz)XbU-Fl&sZ*lf0o&&SLTD(mhvoHRv9g%(Mz5H*gYWJ}ytO)YbVE-$e`mDX z;1@>~6#sa-yXSrw2<-ZO)-U*8A+B!mo2{USJ4;} zGcDR{ON*O9m*83k_lSQ;`uRn^X{gnIsNL0xObxR=ODmecu!etm(+(Z;kFzN^UiL;! zJq*AdO1UpjY}eYivmB7x7E_QVa(?4fYi|yYmII)>@d4>PHP^4=f9G7=lNNy2AhJ&v z6agIftCo$PNAF4BO3ch^8o?!v#{Uw1 z5EOm+*K>1}`R=KRU9wcYK}}O|v|2ZI^j92d-Z4meRXHTW^LxUaWwm$e@i)s54PNcA zz4;iQh6iOIuIGZRoB>i�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 -krHaG$zcqz(!A&u+EpTy*2j_+5o1uFM^-Z&uH1 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

    T}^?=Z+1YQhBucGlEvoHO;#1&Lh(CN z4o#Sk!#{>_kgd?ev!`aI7}Wei0gjtfm!?~=RXQchPQk}NS{vCNb-Br?@@saV#mvke zL2+mW8l6PYC+qQ7OAUr66LUUNBO}UDKZR{vPQNdXWV2{fvXtwdkE~TUY?F&`azw@B zI%AgvuIx z_+N@&MJYl>^hFf4IXYfWkonyZ#Y#*4^T%Svv+W$_C@G`I+GW;jmOi}|F&wWm7t(N5 zr)ka2-(BR0BhIz|1esy-if)%+$NT!gUM!{J^M$KbGhi>l4T@AoedO@2{M=yhjngt$ zAsv5{0E-4?3Rh5XTy4!8bG=PJfv6%$a~CG!(y~+Ja9Qp-C29KbX4_e*H^h0MGc$vH z-C_~tHDJXNGd?zFQWqi2qW;-(!%{;_l*8Q$J8ML*JYUBF;8*TW#dgap9LB5am)^jd znqw?Jy5gtT;(5&S2B50!izwTW!pv|X_|pKhvRTe z`^b~y`vEh*HohEA*bHL9`Ey3_af_+3_(;W5QaTD(GC&t-sRzOv8~oYX)`wkxElt^?t1^*^m zEyewt#FS8x&|wRaP)mxFg*xR7%nB`A2rVTB^p!C>oO8nQ#er-;gt7bF_eY6n6n4(_ za=d@bE59aj8sU51uVf9I$7kM@8Xreq&jM~C;m%<$u1_KC`Vd%*^p|yeibQWqx3C2b%(ZAO9Wyey&ZfTEUmcW03psdMxG)=g**Z0g&L!Dec>T)>F<`(qOx7ykr$gj zn#)bge>xO>qE?7uHJ8n~-~CBc`YRiOeUf!Gp;u%2cH?*imoquguqMZh_q%qshlG3>#W>N?b2u1Q8g+bxPXFEi1;aiP~N z4JKUO{SrDJo!>=xC^(WsRLbO`n7d}kUr~M_&ze7byy^F_y#A{6D(VJ+{?>&P6LW~EL?Phu zSC5JD%1C@|swh6hb^A=Npi6kho=ODr9XX>c4`bEh(&Y$Vvz>@?L&i}Iv&h)3V_jG= znAZCZ3I$&{N1v`29+fVqw#HUf#c?s2kN{zlQMCv*fOHpJGT+0tI&0>ezH{){YizL? zgaSHulb!wQM|Ph%4d=Ku)>S;}hy!tum#xb{hPT(TYP+!~A&(>tLBdJAS~96*MiT9V z)y~wlnOO5yoFEDAf_no+s&Bv6ixA^sFbAAm_^9@meTR54r$`bsLKGtrwwBWn2k+tc z(J`YLJ>5z1EmEScPU2ntGQ zwU&Rpc=Z$P#(SE+;+$nX-LDLFC1OnXgG9D{&?mcsBg8}dhv!lpfI!6T$>rbajxJ8n zJv!VxUahLSNSp=--esp$6Yq>)@zY(3iEj$?>1wS-MyDjDGjtFisK$V1vgEn?=;gP% z%xc2(YHJRyOr<9##&R>aMB?YsD$y^+mLU?|8`GV-5CU)oVO`Eieekn7>p1Nb7Zy7n z9;hVRPj`dz34;)B#kP4eOH*nC@B!KojvS!AW_1X-SKX=W2&N6D4s9YfzX`l?$CnB- zx25s@9%i5y5l^;zbBpF4_A`_KDKKL4oVfZvk62h!JZQz)Oa$Lp7D>g@1Amq4*Y5vF z;)wQ@Sc!QUIw1vj;99L~SfQ*zh1QG$Wp~ui18)oo!ZvR16WqQ;NcF~o*g#Gz|&s-q}Iw@7YW~>)zM!2%PTMN=>Ls~bfZ#PCNR#oZ0>z;EFnxQ0z)b5l1n2dOIX*i-D9Tm|*nvUh zbP%QSnV-Wx1!MJQ(9oXw_NW?Y^88K1^I|{$XstaRulZBqcC15?y*+q~U=sV_co`u8 zxcEw~Z!gJN@Q7Yboh`@}KT%w|qHdKh0|UB0Y^!f4yV3Q;B7+Ed7sN=u5kgABBzT$n zCMpmCZ7O{u_h_*zsrS)f&xq7~0j@@8AePJH@nxa;p`hfD>t##w7%I0zx&lU^7cH5E zEiaF^cDiQdL#^scmb!T};NF-iyINJE`fwyE1yHhJr+S&7%Upc&jY(m#K=vRpJKm~i z=`(XL2I?z>aj&l%MIN4B!Ed2lC{%#`?D$u%?mX$I53b$pn%gewr^KGxw7=AW^S9I?H5UnX@-Z?EbN_{%F{9;l-O{(riDspVGE; zxza&rVtDK_*tJHe9$$XdU5&+U0Ri8>qs_J9(H#DilInUMkt8Rl&JMNG*<6g00va|F z^)~7m?4;coe)(;wiSg>~6(#mCRhiQ~kYAEEIS_f+JCygQm|HGFG|z_CcsR6E&sbQ` zB->NE{2KV$KKYL*$xsb>!M3N zr&Ns0UXaBZEc(e<1L;vPTtbfFsfHS0-lsy=;CQDt9k}_l>GWOV9?~}(C*w>-U5Gh8 zn&YW{WMw6mhxZm+x9PJU&Ckn)MMY;yl9(SF$Y%sM_C|X)|Ix?aZ?V9ID`e#QpfwpM zduvhw`8rrOv58K#x?E5d4R=_tFu&7PTU$+-QN`CkJ?G@B5eN`N?okSF$bRv~o5@%| z4d3@1^g-d~Sq?X*d!Imfa{D32r)LL6Za&`eS9hJr&KGTMcEt#mP=3rI*-IVGw+m?5dkat^ z)$t6DJNbwz)qiiAICV@vfyHhFLz_lTR}hl}{|{%IU!slCHf z3-L*k8`?jNCZdso)UoY!3EGy5@)Xi@kCdBzNK73n4)@x!bob|Lu~^sUZu6=9e6x7Hae=d$xboo=T$oi z&*%p49C-7;XQ!_#^G}sA?7X(8R<8C}2X7~$!(|%V>Y$2RI{iL~}?n?ov!mO#>nj*lX~ zkl=9@{R+}RXwG#FyP3mE!clJFiW|k2FLQ1G7}`RSHp1RsT5@O@x^HtaqH|rM?*8b3 z1pC8C+L{-+wUQGrc}An^?=lY$F!y$NEr2C|27@Muoa@`hGs3DTk+1oK z;AOQmp5$BW_$u28H3M2;9{THV%=z+mUKd@z=ZpE)_xn)n(Zn(uiDhYLq|;F_;C{2H z7sNXn6;uMuoDBMypTkVb?G8lQ{UlTMeP^Ib|A8k$e`97p*5ON*i=mM_Hz$eP?MGr+JBL7n?Mwa8htQRVyc=D`mhgiL zt)a=3E7v*cXk@W-QjuxFxt~bvy%G?`kUoKgu5A6dgmARXNZ9P#n^$m1QH|&B1{Oe4 z=SSZwOZ&~(ixxYBwuVUaUimQ+lI;`V`qL}y63wMRL4p^a)C1g>QuT>GXRd@cU%D)v zAj@=!&iE^_f+wNjn_Ncsd(I;cHEGjgs!d}I%p7t$0J5U~@R z8F{xl2OitW%Qq}x`s40{%M(AH>PP7qpNDFajP+<;0&7l?CtqSE!mvw}(mIZL(>lie zvauRdd}=S9X!YTez=gx=Hw;&$f`R>$G{Z_0dB|I&h?~uED=fqCjtr-9=&Nh#gFXVP zdv{WETiPoZ+#`TSuu?#(*b{X6W`{dgP}41gb7z-I$#H!n?ADJ*6DK{>mydF%^h=Y~ zjrZY#PF7l@E1HthZ3(Z+<@{K)W4@n_ySMIH9o4vt9Hj8lJ06nC#M^-mr18Sl120A} zM%;*eKP6wbMh%8Gp4{34S1KZtC@!6{KY6%LB8e_=(fQXq5|EDHtKfgIrCJGJ4ctku zvgqX6Eg9SnOS%klJ|Nh`?D8u9o5`4DRR=FXHI{hl4}8KOXBsl$8&J@3*9hmCL^}k3?L`w>pF`83cP1fx7?bL zK1V6pqA0yeJt1;(yDBB-y@JRt@?(Xh702zW7=wIma4G%Wo(3P97@@sd#HqR}ezo4l z)|D`Eu&yLog@2YXa$rEv65MOQU|X9tcXy*#u?A*_l5r&Pv(!Y#gfL~eU0b^0fvgc@ z&ER`o1^GoR#!)+@4J1W**=1{Ps*~sJQurYz4Sd^uO49>!7&0t$h#+1SdeyV8Pvj zYeH}j!7aGEJHaiuTL%vw+#$HrNO0H2t#N3WPTu!^SH9d|)l|)2GgC!%ol{Mpz0cZf zuf6nHE1?D{PDjvC>)sM>L__r_4+Wp-_kURy|Mp1~1gk)2~zuIVQ&pJ6;A@l^zfg&Lk@< zLNf8QiM`%605=($6%}OXm5tnSBIfJa6UeJBI;x-x@WV7~Z?Rx6ymN38joa)QMeM-Z zN{Tv9Wa=?wPi=LIWF`PZ=x$P^>h3D?a~KR({j0Bur!8e__QAmjaFUAGXAs=O z;ezMSjVnxdMlSYglgV;nzV2eZlxGe4K*)3e8eb?ke4bNw+=l_3I{IITt82 zm(JB8Je>g~fbX!xppNxCKs2^%1N-YU+?`lr1T8n-DkmdVgDPiB_yae<+uQAet>a-D zFMXEzdy#^#-+}_*n~ceLiGGwF^K%zyx`aLtB57mkywiR99#%LVf=eO#p1__UU|T89 zd4yH~lRUW;$C3^qOg^lLunCuBpuitv8cFDY8s>A&JvS@shyk!&ryA@yAY>ob)g=ZU zsQ~M%W!`w#t8>ei;}_6LJR>tzUDnWQxNnk|#D+V#`OcQo>S(SFw)m4CifHDK6V{Z= z7ppk&*}I+mII8(&cJcW}#JIufC+1i}qzo5&rs!h_>mip1xgM_j%1;wcgyus9T*1V!uhX$%agz`g2PC+ISUIMo(;5OU z?@OJds6}h=n4yM&e|g$Vim^NyOm*kYGQp62t^&=TK@hV>!#!Ww`O-@ydgfrF$(ld0 z#an1FQfHwZ{>(Twt0_yjKzGlz8H!+pbZc&d7`z?le7GDuSMxkRSe)w_x#thchyAg7 zmrR#85ALaxla6ClgLn?xSfpgr@zb0tQi~7_PEhZ8&o>O(5cO_29U_>3@TkX8g1Z?{ zy=WFa!lg2_3!kEew{K-+1AjvBn9M){B5Y2h6k!pdJK}ps8$-eJTL$lg|C%q&d#`Z$q_3}?s+c> z^^!Kn6^jVa{~+Y`Tn?PR5-qoX1Fdaro;~wrsT6ek4D-UJ4gU{zO!4P8w!3gF&&&Cz zYPjs(ks?KIYG>BB7uDH#OepAw-IP6(>03U8(C9;`+|%CYBuTcZ?BBEvOD!Q z3038s$kcCkX|LuuoVhsWO-Z` z^Ci@xhx%*Sl3l|e6VD|n*g$10?2s($_$iIjrH<`zSyO|lttq!S^!zalFJ8h^BXniL zoWY7@5|UD;lYNF#Z*4ql5Vk8EK}*`4)~>sN?e(TrQ+cGA~Otw_g8X2ot+zF4ao+1qEqtIC1J~7?a9_m7f@91CiY`M7~K6Jj-8|T?HI{k9D zmzCpZsfuF~KWlJ-a@>2EP9Lv1uc3TL*Fv)(!5^A>dN1&7@RlEXD$0_e1f#g$`Z9{W zJA?S#^mK*ZU=0OeBW>cuwW?>+qP_woR_uhaI=xq(AWxg~vmfSLD{nMXI?r=o3E!exndW^@gT_MijSD%P#yBQt%06ATGmsGA+&M{pP~mM2*%xL9wvvEU(QvVQ~hU$oHr3C=v%7$`_vLzHmUS(p@ zFtaXn$EShaJMKo-o>3OAVpZ6|b}pZ=LF$;d)Y`_yy)@2cP)^8#!p6i1k~Io?jo(S~ zb3en#XLs|RHexje4&mzQYGdDNE%r>J4QRIn{4BY~E7-DikK9A$;Hx7uN4-NUfBw#l zC4D#(9iY~fGJI=&|G{)@_^Y7OD8}N2*~br5xF?^+O8vI;x)|=6pc3-dNqXLsAUD2o zv#&9h6svp+eX9+sL`}8Kl>V#PSYNUy2 zRI7i)jC0SgG$|6qAg>@l11e0p3MN9;O9rVO-ljreIw?UwJMiGAiloYf&PcR$Co;c(`em^xqr9&@?#?r6#!+$6d#`@n zNS&pN$}y;Si9};#E$!{>KiTSi9x&SEdsAo3A|+5qxig=*V1m^^YXVieF?NK(+AHn3 z)Dy6D3?oIS_WnVzv+>_8Nz!OXTWW{P1wD;~r&7!kxUV}j8outkU}7&HD1^Km105~X zp0G#QUQ;{WGdg*Axe>7{=tJq;%G9s9|nXBUCgOK zx#OzH>ES8OlsI`k1LT4?1)7mNwK7s$3%+f;33CBhCOnMdXUoblr;+(kH%MKaP1>#T z2`08Vk#s3z!tRV67SDBKrmP};1G8Jy6NS3p_kaQ`jyWgtl*3Q{VR%*El~(#8E0b9m zF6b@6x?^idC&s{&4;mf!B&K6_gE(%kYahtV^0* z2`k>&i6G%kr_D{S`gE)2N-{v}q)%18pf7fQN^udR(Qo%o&jR&M_`)w-vkCfwZr?$o zENQ>I2k&j$x79+ZO*wp~n=N<5#|>`aA6mgQ$t;Ry;CAooYZZs(P;|pB`7`Sby>1rD z1&)g|vdO)`X(s8_&I+FirE z5YgdxJFSio__i7x0VB0f;HHO?bRn-avcCt6s}_hC-pn?ZGZdTs9WMEg6KHy|nGwnV zMs4&t0-VldBl{PqV_2Dzp@WZ>M3KcEw8HND;6R(5$;bcaT5$}||Sx}5;-sKv>qG^F(J0>OWK&KMUo zS_Ew{LKieslU5x@Jb5b8;3g@n>QGoMJ?V)qHR*fspa*|7JD;|D#x z^J{+l{u{DMne0XfVvR?fe0qAb$zy9q1o8FaMxv#OH_nf^+G6y0p=g()Jm;8g06t&ujtwdQQy!mDzrI z1COZ7{}z@|RDgF-0HElKv@$<8v-GVVKX;ZO zQBMbppzpa@!`>-=BoLhJr$y6hlwnvp#z7;qg?HHidyyyJTcIl+`|v+JkV;n$iq!KO ztVF?@UtV$Dia)6aCD-YzkGO`^8L7e!42;9g_OtnWt!;-wlT$03klU%-+brF%{LHf6 zjtxnb28a9{tEB%~qJLiOy@rwjZ))bJNGoAP6G(nuuYRX?^N~=+!*XuAHo9bPiR#!= zLN0Si)~E#w!x&=0K%a)L@kgnJ{{lX;owdz1BBpt* z1W97!xZF|58@>*Qu0~GdmN)Jn6awkV-ccAcW?LyK>)56ul**^XYJQB;@={aHtdxJw z;$L1%^efcwJpScm764r=z}b?L1-2^T8WUsA+Vk;zj072(Z|13l3LoWlxrZI;>G&X? zz0aC(;h~dxsR@ez!vu6;0`z@*+gruFm9@rF^nIqsw{^y$!PQh*$}aP%628x}hk$Q2 znKH~%XbF8na$yFFbfm(6@|)x*yc;; zgQO}>=Db{ZGo9B*2iULvz$eacZ_Z0A2XD4iB1A+C-D@z~ANCocm+$&$0q5K5`aI5j z%>#sMWq}r}9a$&6GpYW9z1N1DsaKFiF)gtK(%A`4>@{-PqV~>yNz1fYFbnJ0Dyry> zTVL$&6WQC&v3A$&s~khVMkEA|F=#-M^I7_yh)4RPCt&Gkk2ky1Jt#|E;)MGK|h(+qI5UGSctDw0~dQJ#U8F)_MiU zl5i*}F5~$4Gab1?pC{M8>jPjdSLv;nDI(d<4$Mmu9y=*1WABbfsy8vhX7?SIOH{ti zR&a_%B>A7ZhXq|h8P59?8SO$9R4g2s8=1@2%csJ{WF+}${=-s40^xv*=OUve>XQwM z6vYW->z~oD69f+}7bHVe;%maiolI+X^MJ7Cen8%MoU!?wKkNp6qyYT|AFv!WL|#vn zl;n4NxrgWtxtvY%V|aXoF4qe*#KAE}IPzknB@gT0t2Suje zHrX}gt%{tLr@wfP(3tOFM8swJK2PGKuZ{Dy85G^aF zxt__{nAtfh!Su#_y(MoD^U@N1GX`T~Y}2{!hh(20W4gh(I0_$i1mY3Vs6907v;ap% zI(U9v>Ak3$iOFx(6euLSC@q#BEfFz@J5Sp$Ay}gvS9b1z@@H5H&O*@q8mpC~u{!HP z`aBjl%V2v$eqFKIsWNE#5DNx{mmc$D5Z5qXwYe%H-?L!clwh1G;kb4&2{!M6X|tOV zEeT&!L_TVmmj`uMDPn(#c1GJ`f+qA2?qO>p7Ei+7KmQM2P&+Ec(&W@4vc9E^3nun!PI`biQ>5xkGU)VON!** zL9OGW9NETiX@GlIfjbD!Y6;s*4&_#5W|vWdx)Mx~q?^%Ao7mo> zaC~*ZC=+C=rEG+MAcPR-R{19KVSU9Fln-S<9qzP#8b2jvBOM;wb|);Mjn_HuJjLKA zDDDoR#_1905oLC>*|SoFC?8{ObT=11vZ9KiBT)p~z~=o4->_?VuEXG&9kT*$5nC3h zU-9+BcJWe{Qpa6{O3~?D5A_zzx_f2>d4GVuO2Bm8>grofW}??82ETJ5hONS=teP?}oN`7`ma!@xS-~#nE4N>c4M&A`?%~ zhOXzn8*oM@mwz%d@B!h+Yu>KcX7vGgVy!ZvcE~)GMq6%VI|YQ-4ys9?y3xgKHy@K! z-0e589fi|-!I4PduJ4xo`a9N!2A2H9YHj_KwXL4dK6xpmj_T9=6lU?8r;?Dr^T%G8 zCGO5y2z1v=chpV-G41l4;vKhJFks4QNU6XP1_g>FJW9t6{Y0U2@Y%o!40sY0$nz1v_G0}Ma@l?!Kyb27K zgw9f0$nscq2>%?P9|LeiL*qpznqBV?gSN2J&83mv8cnt5L2m1DgR0#bN$Itl$AdTo z1jvatW>-t{uaF(ki`4s)p`J-CxLU=XS=u0;n24PaT3QZ4BJ!AmO29{>PA@q?2YzGJ z=L8x6!HS?~YL>)#WR>o7q#^Fs!Q7E%b@#2j;Ia`|^WkM2MKn9oX~#8QUye17ubG#T zv+??){Jq*L?sxOJcm>Ae_h9dk-dE)BXC2StDPO8R^zJ zLgaJ@?C##3jk(=IhEX+}DDn(D;+Vs%{J4BVm*vmDTbb*QW}y6jn^o5d=Y1y}dT z(ph%nAJgC6;q1y6wC_Lqcj=%EG0cQVB3Ig6G!^Gy81i44uF1zyUF`P8ex7wwJ!6t! zQK;-5QM|d|ScZ9jCB1VTL=+;f3#4?bH`!il!!6SpxTCGiS(O$E1$dy>@m7a7ByYo} zu-jX6=vv*~b_{YYiP+LfswIoc5k3<=7)rTf)z)|+XAT(I6tl$Ot|fI8iLurgQ0ubz z@B#7XQ9AzNLlB(*t`&iX5gkXog3m%{$x-6=Aq|qk-YFsJ)R)ijx#6<=605MYQ>+w$ ztG<57#QPt`kIwOd8>3AAj7@%rmzkN4~w#`pX=srCckI(+s{n^`4=)4a9ms0ZLu z(<9NI(1FCuX|_8ic8MpM2BvpW zYCKUQe>g&4d@~-I>gs&N8E{Y5{w13$o9ws1%eM=JZ+!y$Z4J(f4o?I{86j1o`fJn$n)`UmU1CrFlF-*nsWlZ)Wv<_eUsOK&L(39iMvJ zOUPE6Gh%p(&TWU75Fv|Jf+?8;4G`v@*$3B`fF#7Ur$DPFns!a8nWaSCo~#aiNpKh& zxA3$Gm6fkH!P-NzC5JHz8Jfi|12mPp_gHGD<-u{|W3ovS;Coxyp_8Mljp;@LJ3M*Pt`z1#(&P1+| zy>3M1wp)iI$LT$&Zqp`PXQ0%D6||HNYX)GE55~H#`@`U(`KbQBzDAwQ9KQ>k z$lcU&-ZTs#0X%`Cm-#&zU9o+@NvQs;XUfArqfP3}1_MmdKZ%CX6?OQS=m#klzS9&>0v3N04sM4#<=d-@CMDDG!S6Ege3; z%~;t1()-cYxWiXQ`^0kFbqtF1sAqYkl0Y$5`fC_>LK^mlkFHk~K&Ik{8iJt>v!*Jo znBQO@LF0`!lz^0W8qDnpMRAQ=WYZnMZ7X}XL5-95r@s;X7atGF^WdH zs`g|qIvF3_-*mh*rT{gdIrlEsrTAU*RBkf15=p3>%qXa`0INTbR-4LmTTF^U2XX3CmWI#{=^78J?b$GKc%28Nbk+f1KIqpvD2tN8=Uf2vk28#;Rj4 zONC*{TYXZDmfr$X9y&&Mm|LI_ffrw#e6!V2rG@TZC5(T$Dq`OC$p+lPQU^`!ts_&> ziuQId%`+}?W#|_s#X1A09=6t3bY4EY=V=|j7-X$x0y%vslHcfT)N!4RbWrJca9eeK zPeQ-7sY)-%c`09ycf4IbSVQ=D*ND^7jNjVN%GjL&Rpg{dGe%lrFQ4ftHaQNJs>XX@mZG|C2`$hU8O>@tn{@x9-$!zjDX= z=Eg_U2Ve9Ck>!({ljZ8Ck*%ka%*9&+y*ohBp358URKav@KcUQi)00ALupb-Ww(H{! z(1uZ8Q10%8=G<2J$F|P($ZNgkgIy~l0-qCfLDzc(VYGg|gr|FsY1^@PqPZAD7^V`MwV4y~V849aBZxv&In3tsE z>;aC4^@6DkiaHx)+t@ZW_PJ<6kkxJqOl;>2;YS2s%F2Au53OcB7$t>$z)H}7ZIN%a z!z9-Qu_Lit2UmE1wtUf7sw~hG1pTg^-o_ZjoF-H?*iVb6h7Gfh6d*9Hoa$?n)<`oUJACIrb*y&$48~a-SxQ0`HP&Hb zreELet#NlpojhT4G>WGaGj_*qF0wuf}Z?( zQNMo~Q>2ShY$3}b7VI2tojO{Ez6}MydF6U%Ta>eU%Wc|`sX&P3k?<>*07NQ>(k&!UyFP_~o2{XZmfv$@DTm@T^f4J>lR!%iS>?l(k zPM(vs3x|?CJ=i%T(s`ydMT$HlZ@mWIOjkjlcH?z3-2q9<5s@!oda}{GU1Z(kIuyte zxr*%JIvX9x6ig*9EU5O-KO+p~Rm8A+^zqhDmki3vE9qz=;&FzJe-!a@BO_Jy0X;nx zXQ74D&{I7RM?kjv8lZ#_#QHVtt9#A2m#C^s0otwQ<9LVYsvWzk4%*5M<1CG`%J=Z? zR?fW?IesJe=WjL$6n)!&yV5`6&g{+ZefrL@R3ta~#ONr~jF8U| zj!fcP&G;TJ1DYg(5l)zZsU>@IkA1>eywbPFoEJE`-%n*>HVlVv?KkKo6x>@FS_xZY zdxB7r;Sx`bHXrca&2M;D281`fK6eF_6e@OV1b9?}*Rnc{EqPlBqikGH+t9YXN21QI zIUOhON?6q5K32z@(X`5wVzoYylJ2@i*%rO1zlIRDrXktWUoV+mLt&fR6<+(cYb68I zsfTau2a#GKJI=l?Cu|Z5V^lrC&P2kWB|T?-NLA`x`GF&>Fj|hYH(nSgj)cfn>P}BS z7Lu#hl$Vx>^{67pu8a*o&%Hh**h2R3P?ba##@0dA!5-^AbA_l`F|CBpMbB*>7R%Ic z*767+ex5>W^`KIYAD^ou+>6XBiaiDrapD$MVIum*VOoSc`7q~j4Xo+?pnP+;>34^* z+LD{xB;O2fdz+#r^mq{J{fboYssmL+7h^oAG-UbXfqZYezDQ|cgnX{QBEXY_^p&iy(t6N0Y3;@GXVbiKuF=X^v4~^= z_aPI$kEqrrWMpIdKvu77LF#3W-!lcpJEl`P=c{A@2N)G|S5FO=CQeY=lQdi=T&1sM z@W#@|5^oogx0!d&^qto_^oibCZsPgq49Ro>z!?a9R|UIo1J*GYw@r!;cBCnWx-Evf zu4&HPCxnL*yzGIg%1cux@g?Mj^JYwbHvGWW8+H%zQg_oO=MQGlxn7s}@Y^{hqNW~r zQ%@%hC}Q}N!b`y=UN>z^EoZugis?fc0N=rx**>uQ{oaGG(g$PioI}nP0-nzv9>1`F z2>sGy;;QB48t#7;NU9XAdDoc}s`Rz}=t~DuJFjP-Z4xfGWUpEdakHBkPNOr%BgJff zRwyFhohyVtvVxq^CO1MWjGF6ba|d(SsUYZ60c;CMc$N24C>= zKq-4iG~eQa!F7qnBwGcIb}jT z_+T~N-N@oo!f!RRQQf{Ae&6jXGhjHK48P=M@kW4yC&aGVlTWDm=Y%F_yMPe?j}1Ax z)#?zErH>%~v6s^nW1B}%z!=Wzzcd|$p2>DytARP>ZN@Z?b@&hcnB@n0&g6EumFKvl>>~S8=dB1X92T{sG!bx;TfPzgQ$9eE*q91=C zy{zrV?bMR)nem(A_K3Ee&m(~i(2lWLp(TurtP4oU5Rc>DGac<3&JPK)yPSq_tPN>D z1{@*>hi`FIc9w?7PMWvE(yx^@aK(#4Y0va2F;13#wob_l-n}Cl#EdcAFVe3z+(%2+ z7l{_8g)B?HAQKjdHkrD|%;Jdei; z&OxCYGVW_swk8makR)qwPF@Wix*d*8aOXsl+6A(bwQu~)bb51INZIdt(_{z!yjpOL zn#P1|1Dd`+HaNP3Z!}s{bw2qS_w&7gEmTjNt_Y*XkpzzvU4CgwRIXG2>8mKJKsRdf z#Gxm6cI1&!R8Z)67ufmjlPyb2w|=kAgJSuCo@i;wI7pw)$j+7}w(EFlsbn^w+`>y) z7l$?1rqq3asX|MgP-kb9GFsr*Qk{?49l}8g@9cUvqkFA%>E-*3??hyD{ByVa>5~Gr z&!Y_YRRFO>j*f8IbJ`)`Dxal4{`O& zSlNQFTRoH#-aNW2+0??)Y4x>6B^+@O8Fv445ESl!X^gcsqB%A0@N8DgLNPf=6K0(H zi?+bQ*qxIW1&jM|9(|R>u$c(awzPmaCIOEUT__< zkmzv8+jXj6W`BKbnVtE-)`pYo?_=%rgq}@!{ag%b`TbL8-pzczNR{A;v&+}NEDrvb zM4Rj`*6f>DZ1OpiH=BrcycdRp*@3I#y}h$ju+`EDfjkI|^Y_n`pzvll@78YI(|-~U zLEV1B4~Dn+i5^F%Z=sumrF>&fUrYLFwfvKh?V0i>6hDRNcfN_UAvV&f9cxsMzKc|K ztAE`|N2eX_LwsDI-DZhjJAh2lJs7h=f`5ciTt`QYKLtU$j8vU8ck8FA%h|dvQmsv$ICj(D9wBC`Y2A-g=b;eq4f^`O4l4Di)Rp-S^*V8!k#t1OhZXF%LB^ z*~~cSr$xs5`bZx-8z4W3rOWMHj_#)f2-jrmZ66MMh6^(fdHTVdnv3+b5m#;sYqu@? z&!e;7wSa)%e@U+m<1zINDz~kfsswirZ%o6_T~WnynjgTDsos;cBcF`;daj6iSrxC* z8DCRXOkw$om?5&pbi@c$?1^T~l{k$nt(Ydaa;E{%Nc&>+N4u{N8;eNC^{n>?j2_+LM(I2Y?b*3IU%FC(9Awe9hU9Yg*%Mm~w=%4v^--1n zzc9lz60RD~9<25rI>Ir@t~R+uJtkb$M*QLcF$8^>H08#2Ju_Oc+vqK&RoBA5n~`uO z2Y&90AJ@FRt(88frh-2u)OLzy=VgsN#1h3Fw24=6u`sBjq6rnt2uG$OrGzC+!NSN- zCfmo8F+4cserLE*1^29qN^O;_^YjgMM&Jm3rpmsqwt0X;6zD z&B8BqC8w3a>`FbsUEg-?$aDrGo9wtyLI;9dNl7`{~P!$-WkQ` zk>%;Sy^3iC6@e9W&-y^SD$8dmmq3HmowD6~*~2(IgyC!U(s~lX{9VHSCsR$$wpGd` ze0+69K{bqv%#Ye(;BrM2_k#qu?u;U(uT{T%p_B70pY1M*yYe6*FiPVf}7D`ipdHwfQ6{MxZI0AZl zduO~<=Hk0@OOPC@E>~f%%Y$*WCI^e>eZVZgO-(KrexQ1Sc>>y&=(q1-*yPcU^(^za7-o2Eb`Rz| z(=Ab~n(VhP)L_N~X;(4^%FRxtWppehE98#`>fl>W=du(}^^{>zS9O4t%bwX+WBY$w ziHRHAf?N-wt(UVLSe3K4k@otPv=tvRY z8n>b^2;T$&gaxuh+IXX`-uk1|x2KP#d)g*D30Cv?_Eq60^`@7(eFy9Pi`=#Ga z4l-!>RU)FV?|g1J8_y8GM0<#ON%#x~VbO*BvKAMgLcU@xL=PV>mhZMh%tR0G*5> zo;-MOPW~T?74lrI9udED7bn9RQI$U^#&c9mu^sQ>35T=ZMU`LbGTOfynq~PUJ;*Mj z-QrKZe%Y(HvU%97@w?p9+0=3}ZY8Tk7-XBt70Bh{%{}Vtgw0tGt0UF%R!H$}QMaRO zCB(lW#kvG6If{dyf33?Cho*GF(&6KvQqH5iAmoSrOH?$*uDGG|KFjIxtY>$C>Gsrp z?mZYkm~iv``xW(Jwn#X=6{A00GkS@pQS7msZ^{+SqUmXAnr7W9U5T-f3QfB#spvV3 z?Vjsa7tF8tj`lRn(W6pSZuy23wn>yEO zP$}0As4Zozi+`+!d}&#r$dYjR-UTg`HBjgNV$u6yBH-?6Cn|>+X0*}7@uumT*1nt2 zA^x0@vrnjNGeLigCte#x2aoK-kIc%m}!*(>g5kT&j z`@|}J)PO&*sHxXkQW3(@XLy{+`Ui|>2=3YazHP#NfEf~|^w~%HsH;96Wp&cHf!1X8 zyMBM~Fu4c)I=K6bhaGq`l=i%D;UN&9IE=zmWk0Dw>dBpeg|&F(D{&q9#rZ|_o zP{2;HL*DIUP!jr+;IgPZ|8h6wEDt=x9KY2oO!)`@j*pf3On`09e(-pZYLNfh_Vww& zkD%x3_GLCv+Y43KQ_Oe++9R9SUpAk#<6Z3KF7Mf@oBLeF+>OUya1~;#$8|D)M&WK} zOOC^N>Pc_iCpQf{d|3&e^VxLgDuOeY=m5aY}7jUM_yVCp%VTV~y;vF5hIm=e(M6N+?VCP#?d?$)oPF+PdTWPi{b7`XJP? zYeY&Wob2akhtpz}S(LbCvvDMCM98;pgz|Z9yPH6W?Httlh4za+OxGbVD;wsYKG%P6r8Q+=d(x+NQqX~t``hT!UHXiI*HXHh>Haf7N&&&qztvaPzl>G>w+_n^XG^KTo53wPlm_Otv{3w0IjAqCPJlX# zzM*3I{bdOXk7;#Awl`z$LD=?!15P8Y-78LENctSg_aRu~GSwR=D2K1a-HZQWS={>jlV+xzNKi(emcPuTRe zB5w3%aSX~FzZnPSXc}54UBGr|{R@`-scszi^MP2)6&mgx)s&3hbenB7S)mI^cL+Z1 znW;i!^tfqZw2y!BrL7aEt;afg_MvN;kJE!IFikn{ey4c%Idm6~QPFy}FXS)M`HHlM zktyD!w&u#|k%*+LfBtkBj4+I;FY$f3T=4pE8EW@_chL3j=Y2eyg6j8vv>t?Zryu)> zB{5Ozcao8DZf1W@>1F@62qy_Y(K_|}rXVv$!iF92rLU7j+-~`$%yQHtYuR zj5KE0467qi_aRjq(BtaZm45Io-QeQLLX=6_+?9#@JF8AhvQ=pEsjJ`lhxGG z39{8A#R&Q^uq6M^Rm*A#@II)Je(1QW~-ETu`c@lYDi3kiF=N>ewOl zz5Y=Y_0V0E_;krkgXR~BEIERv=Sl_?S^>D{bM|{|zx2D8^nrgoi}4G3Dj|J3I`J#2 zu8v;{DEa7Ew*{tNf=!rnSAZtm*8uxkt+%$0S3BIApDt9RpO!a;lBlimEws^n!8zplO z+Gt>qR)7|uq`io$; z4HKiGn}VgmVo>F(9Tz}-K=jN zU_Q)azi2w~qq7)aqlC{i0I-4zXaQRV*CImJe4T2u=Ma5)<3q0U1C13}*Ac(?qU{Zuel{RFXQr_Xl4G8qyDIOW*x;-YH*xub})4AtP?7g0c+>dQRvswg}7qrOf}& zCp!KFj2YF-6XRihH)!PDp`4}2W{8K_9ljd=a5=lTqOCWPC%nieRH5jCrgjH3X7iU- zZ~KkYi2dWU*w@V3AIxOnd%WaY4Lb%_l#KhwSO4~(AngBA1oPs*)dFt>-=MrABU;fwd`A79i3@8(&j)|MjusoEls}b3@xv3Y3ChuH zuPTDJZ|8Am-MN3jMqF>#Sf~nTsF|>JOo@`Vw(yi25taYiAOGvm8IkjchZ4OuNX~3X z(yN#%{U<4;sY;)Ap)O(*?rSb@jQoKb+tc#pmaTW_;MAv)Z!5LJ%`g9yoSpRoZj~1> z)B$O$8s=qu*6!eIl=8I(nm7BslDngOnCz&4V?0xj((gwYhC^r@=}UlIim%&vfs=q< zI!6W<-wC^wG*OJMpE9K?6Vw|Py(g62OSnngg7P0z-YauleHPN)|_s>xwad405-%GtDM+{XI8+tV?n@>Bn1!$f_ufxdD1+NB5MT&A7m%2M9lm4Mz zCXM!Bo9P1?sa#zU>5{#!nO6TBXR?p6PY(RRwrp_=9inat^gO#!mt^0ueep=mW{M0F zuXoV4t5vEfB=;BFA=%}(rn-xXZ4tMqmbNO`B=_jXQXTmrc&;C_f-}^it)39;x3^R@ zJ|IuXOUuX?+;c$)$8!inPm2F$nnL#TVuO5Zy^$qx;`#a_OMU8EneCwiM2>G@@k}Mo z=?I{v&H;xZ+tvaRUF>}gLkrSUeCF*y^!cr0WM#rInjCQy60fW6 zK4BYaLBoZAXSU?L@=x>~zB@vW+B&0oF)N}6r&DR10K(j#0Y-ePtNodm5x(UsjW%H5XfD_0Ou$AEb7eKTFf(TDca6Cv@~d zndkJwsW^bLIj^HBvVa4i}$BY z@axT3-D;YhRl!|OOlD5UQK<#wE^9J*2}R1cgo5YBT_uBfW#{?r@TTy#KcFCNq)&2C zh>9yiw-R(mE%SSRAs7oA8^zF97AGZ>%ji8=6chc$DbnF3`QPa>xFV}HYaB_sCDHTT zvetotsIQ+kooQxYtd!Ad^vh1|oDK?;W68gZq+pupurbAfq7M6^K*T8 zsmT~m1!Ss%hLD>vdA?!JAakzCc^$KLOej-nbi7BI6ni^F=3z0d$M9KH2b zHsp;br#qs}m(uJA!FtV`&AP_H4%BEyN0+my;jn^d?U_tVR%!uHX^c%u7wtlO3v z4Q`%DE=I4jwOzkLpTNL|ezjIxZeaOBm%4*=eyw!y(2ldB&{eY9p;l)i{mJ(uQPpy0 z?fh|$lK71P9pPKL6h-dCwN7@o@$K(Q+c`$X1mw;1%&Zms$+II*lmb_1MoQu&j7-ae z0V$?uGgt7U{x_!5RDG|$+AF&IFhbM7F6afNmD}LX zRxI5RNNm3+O=w_x!Qq2Dw~9V6*Zfw1>2NA~QJWhQHBx}Iw~K)5 zf@9wlE;zS3mzA=)!KD0rD0hf2bcunhiK+!e`};)|&QPTY|V9sRZQ(t-}xIiD=W zX9VOjGUOe;@-2sAn9OzhD8F3~aZBZP!T=Ljms;HzZoe|ESdcYw#)h1b_8nzmx-330 z9029Aliyyox()2|$G1zmSdJK;<$i1jCsZw^YC&k!l^PwnfdzIHUMm7nSe1a4{)zP} z=WZ`1+v!N<&3h-0#zj-{326L2ajbfIek7~m^YOK-Fz!tGT<4*MT}?5S=x{{?hvRMz zM)I#Ii#TzkI&q|ObEfr^9?EPu90L|eK24SA@UQraP~J~3LoVrFLXE!mX6{`M-?AgXbH{64$m%BHXYxN})@ zbM%6diQ37P-_AxvbZvvN$*pJ9xmXy3QP}KqX?{c}d-PyxC-!FddKbI%Pl!#kx@*Ls zshy1=Bg{lxWe|@mtXTk*@nOU4CTiDV8~9b@-KW`(g$Ohd!g4NE#RwfWVdjPl%X~sZ z)DJ&Bwlc}U)1!Hu+9JM!CV8e`uenGor44t93-Hdh+RuL2sX%>uVG`wjS}z8LyGb>^ zizbkH!h@Zw`5dL|GOhLYacJHpl;?9-(n*ywCe;PO&~9gFR|bqS@(}_5xmr63dhbDU zbz$RO5;n(*uHp;W4|aTx`tRfBZn;TcrNbqmFBKT99(pq7g|3c#_wxHOP6QnVbrO+d zw;JZ-&bft}4HU8|e}$t_!ktq`7MRhLgRYb|TA0}kg>0gT?TbaS<0V)LD)Di=UT!l- zPBgVKmHZ-($Kn?g1?{xqOr9tC3dK$h*aGRyxrhjyWIkc}!dz%;oC`!(>l$X%b|m$e8HHT7|Rr@HzM?63?8WHUqi=>4ZMk}qN4kMj+Uc8Db`GWy44`c#3H zBQvmn{HnS{IJMX7U1;{${0~}ctf?keAMKg?RywWgT{)D{&~4X>#dol=<29`6Gc#Nq zC0t@;J^`yD*QW-{!kEST!hC!_vRUi$bOuw+)(q0QCoV^pm@s|%5+@iFp-8l{H3K8X zL83(Po_Ze_nXp@~3Wm>)kH4AL9?fL5Thuk^qxB&8%S6ax{yeu-St#Nv-M%%=uZ?)d zK+jZRqqhuak!5v)FkiwHK|GCzr)Plf~=-;P~xp`DHCJ6ByJAHk47kW`0j;>m?TN6YtYRWgd=FdC$$$s z+7$g@s44rSH%#Mh3u`N~)sRn6@S%S-M*0o^uu!_769&PdTexV3oA@nx?oM)?o{Y+az-v{YzvtQy09d@nlVo22bIXvWNJIm6=c6+auzMc4d%G@ z;;5_OhEWpztja(OprG9O^3~L(U%846%-)sgpv0tYYY`SSq96}a(4UT9qEqQrHx{gm zrp{jH1VUdCXhZ2{gk78!&I#{$*CsTR2WQ|xSetBV1B<_YBknVpJlTY>Hd%*dJ{`E> z2JCn@bc6yJ$GZUC*)jh5WcZy*^MxX5&G9UaCcjvlTq}37va&mRjtWo>t0!O-mf1TO zWg5S20K=9nVjz{x?06{2ikkSEN5=EpgZrPtVfX?iRK#u;BCXy1Rp^Yk@2+1+n1#%C|&1Uq_8OuUwYkT%)u^9!MvjZ7Hr z>zR7^8&yW%-i_7x`zvKatD^$mPvSfszPaSxanILuWUs?TzI3ac`4sabR&nA?pv=42 z=DDwG`+?-c_rlV{;TR+8Dv57BY@K$;@fVAe1Z&*L(+{9FsFwHNInl%51tPq9hN-ZM zbr-5?=k4F}4@xQ72&5rbnawA6`NkJCh|MzYmy~SIiLQDHL=jvaH^~5shN5 zyJ5dXogDi|mIu84JBUq&o4&1Y+ls?p_Wh37!+mHSGYOlC=Fw~d+br{vT+aTSE>X!& zeJN%X8z~i2U{F!gOUzzxJFQJs4#(C(YoX?-t<0sAk^%rbXm|k{AXD>XrOKw@=jE~| z?A<_*5`7JDu`kQ43S-2qH>G1wO|0x!ZX_1j;L0RgJ8@4jT0M|)ME{v_iHKwY&2qDy zbJXBsvSYaW74esn%m`MOXFpPwRS~AGuqEz}q{V!GEVOG3(&W zK!H)%;iaSq<$3(+gC=C#L{LAZ=8g6dYOl!2$0vS;;r}M)BbIRNP;~(ta(_OZyYg`e2?S+u7O}^Tw-kBYRF8l)`jejRs06k{Q~0 z8R0ft;zGmL{v(Q{c@@HiV9`wRB!Ij@WnCD*>G}Ys9+C7)MMhLXPbegwJ9T}JtZ10h z4>e+7yPpV6@YZJB`LzlD*9ISy*j<=%+oJ^QvwegO-9V`K4#(QNveED78s5`vK#c?i z6_kB*{XE&(SmB3hKF5C&DczGhk&P*n&cCo59_?Y0vX$I?LYY^;W|m$K*zYKT>C$7%_}KJ)E91P$F&D-aPvOi zN~S(aa^gO`9n0bCe9*83(S#ZI9<$}3Y11R*W>;!ov~+UfyT>$p8!@et0q=BUPYTAp z7^~@P9fJH|)Z#ggrS-6;;uR8mgDyE-%N_vawk5Bpr^(89WrVJckYny>U5!R`pc=YT z*(M8df0!qCZYj+WzBYoEKO%!DK1^|?hUXc>ET4U?E*th=qver1Jke^ZCiE)#Q_9w@ zOGDH|Y5B|Zqg?WZ8tC_xD(n`$Iyw_U8-%p+tV#OShH#@efo^ctc1(FoPsnnb^Zf3^ zYz>a^2%2Js^SlA|rf+>FjH}`$%!C`iX-mUZ?o2IRquJAn?rz7V_suT64|M#gy{)S_ z#a;7`!s9qeA|Yvb{EelQz)?Bo1T?kZ{djcJ#=+ZnSz#|ebDzP zx*^xQQCC%YU<&3#UounhWhngH67*WFID+zHh_~y%#WzbXyXM_A$9unPpHo9ybx!)x zQA(F-E(x_OWPleyo=Bn)R;14K?M>L8ttq6CPRyyxtfG6e@=WTCANSg9WC;K#TEYM`Ri0s(KLa3B zUwq=H6Jd|7@fb;?1XOYPZFkU(Z=R_=>|>)rxueEbXUH4$>DY9X6|wQD+W9JDR_S6F ze~7^fS>K&u39+%g;)5Z!SU?H+OfvRl!lH$0cTN5Lmiwh}PpOHN*k{iP?`8~n*6jne z5^@*wo^e7(>6|I#$2+N9S_8ACjv_<%PBps3XjIRQ42ZAeWrXu^OqP39;t|=7#@M<6 zQIk2n9M*Oe;~}3iPwmcwrs(JJcEtCIoob8W>OcaG6QUjm&BSiCMW%R89To_DMqAEV z#SSMcVuh0RKm??hgSyFBllBTHVRf8_aDMoD7Gu*=3svbehXzGiq;X+jFOlBpyQu#ieZAdF$w~ z0kXx;4EN(0iu9@j6G-z%?*?-7KJrUcVzex$)4-S?eR{af#1c7lCv(b}{=*+cHGj8t zQc_U-a14VxQA#(@6mCH;nEk{A?5Q$X&%lIm;meh|@OjnkR2@&IEn3t=uRNk)5wDU; zH|E9qUvIC#N@pCAb=J}Yp^~*cQh9*%{oqA1tEP%GB=P>WtHPq)fjBTSy%zV zq}G}8AYd1h+RSQNJIGzNpd5@w9LmixXNM{DRPFSP^JP5timQ|vBP`l)M{Bqx+nuzB z&e~-k%l7^gM?y-%2u_TT&BzF7ZRha?-S77l5u2t^;21e**$Un6f5m$L3%~?(h4wK=7$aN#fnzN*{H* zhSldk9*hNdbE$AXn9cm)|0$_dVmj|=_YVL+kq`0Qe(fT^A`n@%+ov5;86F%h+P%UW z77YmYn}9Hzu1Hh!R}SK^X0Qc@Y83s40ROIA%4djQSx`zs&7Amxtf5GKzSUUgL{@7%EX1Iw=bjZ1%6Hy8p;9`g`xcv7d2R<6cCs`uk51u9?H$e|zj-;}!q6 zFBkl4;+<4Mgs6^(UMgt2g zOmeTzP}=Io4X${&GcS_|8|2|T$a}z94qBAU;1r>}KNhI`cS%#I5iMEAFzLZuXN9*<76%Lud4yhd;qMSsLE+vj4l><{|s9FRA| zRz#VNj=cXt3lilFPF{t808$V5t{Cn+TcQ5WsR5*roZm48m9HDYrnh9^>qiOep!a}x zD41m|n`Z7@*F;bH9q>oyTWJ6I!X%tEZoi{PK`<|H-)i*1t>8jzi8b)@NT}$aXcDt31E5BL zw+vi|zPlg#SBTohq*A&*W!AO2mBlJ~yP9;pJNX7vmZGGk=8;JAPm;5Lr002o!`nZ~ zwO$YDL^9?6{D}~En9`r3DWwiuu_mf8GIjQt9vm9_{~^GCiiIr}B)&N!o+;OOFPvpB zM)ooyPEcxoKkuLZH>)z~S5fW1T4zG)>|IXYGtHMJs!JOP*d`JCoSXUXpB@^4@H~aD zFHBVlCAd_rol8?&td#-nrfDtC{(DcMKV%IJ^_NuJ0`D)kA)+bmXr9F!hyc$%D1Z?Q zC5gvCjge8HV-Qi-&|n(7D~D6y;Y9KM?gs$;e6;MQE^oK;e6B=?7zIPE{4vN|DZrr) zFDK5i6yG4&eslQ!NkNj4UH&ZPG1fBel}Lf)vZOuzmFnbzf4saM!=C;8?E$gp8pbP*x=E>^J{%MCRz;9pJxzkFiu#8WeO|?s_FDhazBZ{n~P7{0XJ|xjpLwGVAP|l_w_S2MqB&ohihU$$O=1jZ=HfRI8gUI^WwAXL z(Hcme`ivs}dOoTyAjRI(C7z*WSK-9>Us@v|KwbLUrdlB?`e1Lae;Q(MBF)kE_Khq^E~Hno1HMUhg}g`&WS$y3`Z9jDX$?@rap$xCk@!tg}l8G87z8T!KVnAM+8A34|N# zhpc#qyI%jU9~_|E^kbXrCfdSIm!XE7xd~-_6BtOiv;ur7|E~@5G!C2a_*O_B?bt9n#w(8p`vv=IBPTHaG$gOq4k^b}2ref4{A(yM4cCSuc)X zy9?l)fLL8s3moC~Dn{nPm(a0&T~yra7n1&Dx`Q|ow$MHmv;O9jo%&#y(=KI{+)YG^ zMK%G9dk%xMV7P9_qlS^f=sZ3?tDnhID_ywsSGEd$C89eD`vD}O1z%f=_s$q(@U<3e zr-;Zw!%oUa061uYj&C+Be9CiDWo&k2)ca0bYDL&R?Cb^@WSIwCfd_e*md_ST2=95_Dkna@M`;g!RxhqRy|EUaL*r&!xc(Likv6D&fV1I5Rze0Xxwbq0-qzj6UcNo(`CvBEsOx9|9SjfylmBFA!wqJ9siC3#a71V_^z zA&^(V?#iY`rpc=(m6@}-%;5eKfz=#Qi;MN4vL0dqx0s`yZc+Nm>DPXrS`8nXbgKFG z%oj&HZePS2rd-s`p@IOV$ z$_&`VeYCUwSP!Vu+uEpZLQ`qweV?*Y?`eq67Ns_f1M?sSbl>>WFw6K>HOn;HBbX(5kehiAPgY({2B8t<9oYt<|Dg-Ls2Y=wTsr z?*9Urr5{0)u^>}#njuBQ*l78cL}r{O6I0bV2@Rhf8I(5`6 zTIwrOrj2>FxapCRvpP1$(tNZF@o_`gaJ+tuX7_9}7r@1xOnVvqrif~;){g9OLRxpe zIzD$J6wGAw!mPx)^nd0*T8~& zwIYE-R6r$VYb;}-EL>y!Xl=Hq_%no(NR^Vi*JDiq>fAAqWEQ|Sl?025k9J^N={dx zdT;#fSu9tRQIJ!#1N!~gK}QEKVxUt1W8sDq?LOf8Qjm6u!;=jTAHS;hFXNR!^ziD1h$$-YMvRF!bUW^vl@C8+A!sCFL)=K6qnF)TjWfx#-N z2d`Q28be7N)CgzkM%Rupd(~sYPQrI%3f3jrTKm{Fi9JvN6l!tNy7d`xh4=y*>VnVR zYSHt$u-}IFoZ|f0Xzm0h4BcHVLiqb@^hO^XIR^c~I`cXN%v9DrIHZT=TyZpfRgo!J zp7tSut<0A)`O|9&+)Q~KYkFG7aNR`r^*g(GPDQFU@Lbvi%qi6Cq4Tv6iDC`}eWs-V zti(%Pr6s2`mH?%4PpuS~*)9!cjtbU?#o#_u4e3d|Y~z@y*^$vajr>by`a*v?KEtg9 zdW7^6;q~Rcfx&$!?7e-ALL#6p9&9+hkOF_XX&C3ezBR=vTHHNvnWq@In0vg5bGlX{ z!{yR_3+xSDpP!AZc$mBEnWKml%6w?gxi4|w$GPqh% z9@6?lc7E`l>pwQxn;qz>7w@m|A+hEx?P@Cw#xK({r>LiT2laBVf6Z7RQmEsh#$UtV zN;yo&i>3o<_FkPv3bJLbD@3vSm}#yc1{vC0aE5eQT~Mf=)MfW3*$2!$b`pWvphT{a z2xEGNj)1*Aq&umjna`${-CbnU^KtA!xnD?`S8UvdpI+8uT7 z8BGR;T1y+~4(e=H=qVmAgwI^#Du;4oFMj{TwW&|f{L5v}>6 zCf8+ERwCgVwHc3-EaXoN?hEh0wQmKBr>fb#RGY4Sb_=0rV!dcz9E@+cP3wBxO-Y?~ zdyM0*1y9%wKl64Orac8ud!+R=IqWd3mC(%6^3`}7<~DbP$tmQ%;OdEkpP2j6^dp_V zxfeWF#`!#R37oz_X}rxT^1hN@5+2ol7TUM*_(UDv@`y|4+I$E8?iD(*Tl^VnMD2(4 zrTX<3wySr)CLaSO^Odf`bA-7>kNwUV`7OX312t5kUAbwQxM~n zsLw;K^}@zIAt^(X2_4B2gR|YGK}vTZ2Mzq<*7daePPZENnc_VMgRRbt4a&G5${{<^ zC^QgFna~Kn6(GUFVq15!sNFV6k28CzPBW@=7bM|uHB24ys#$0eQqsu7LF);(Q*zHS zJo+!(CLxD7t^8y%FIbiK#+kTS3lAGcv=P6pRoAB+!CHZL9)Sual%qNvRX&1NxOzOb z0e6uc++08+qnUz2%*dpcSPm6jJu12lSQLs8GnHV+gZk<%%^Dc{LB@$0s>m8U_)*%_ z#lD-?zce6oqTV=(?R^D*OMrU{v4Q##jO{gjuH!R2nC1?BsD^eWg)ydvxM&-@U164c zG?GHj$+_M{Ltyb8QR*2(%A+_(RD(Cl$Jb?qDm{}-Cp&4+@q)VrqC=&u=MSQzm6Rl+|0~2=x+Z!*qGL?R*RS_}g zH^?TG7Q?B*`;RaD>P}md;JVLuQMr&`izYP2rzo~D|JXG|>1I(WhiZ*DD9~ju%cb9* zzv3#xQANjP@?-SrV7T)djuKWqP@T!fUN1XZAI5!EX8i$(cjoE+d(41wR2Umud*K>R z-^avlMJAba`+2pEF>odr=e5~%(vY*=&;okGcwQEl7e}5%9+N!cAYbT!aIFNddhuf( zbrpXq#z+#}^)kRL^RQGL?-awjlx<4hRf8VF$08%~@MhJpSGX1`3E|>ofgcDa)QS*&p%#TC zI6Tr~SyF7l)>+W0uBXOSSA*4)tvSPmHILMLbI)2+vKF1u9eGsZP=Jb$J*7JEdtmUK zF^90~S7?6xqhhmPmb+=hsU zl>fl0h;GkC@HoQVb{*U8L~PGS?G5NG*&W;Cnfewx@Oe|S_JaB8KAhvSWC*KAYNLHt z7&HX}vLk~7ySDuAc1suQu~Vro!p}|L!_@^pS>&9}j>imAG8uKCraH5S@zj*gT@K)b zb!E_+E!J1fSh=l;1)|iw1`GcnSGxXo*t<$~Wx6%~bW8oGSm|oE{=h)+WLt;qgfd%~ z8pplIX567HR2sCKp9M2l%%xmM8%tuP1Gx3Q&eD3vPc$EF1(#)-npR z5R2iu&e~uzAoViXJ%I5L&CytslHyuo<^B;bV+Ge`nb;fS4^)c8mvJJ&a$p$Mo*ym@ zFV!DRuZ){=XZE`^95_no5`tyfBLU^uG5%bjY`Q*AlK6zf?$@c>XM}&*K#k@K@}cMy;5?PdSyC*dD3pNX2Q!I@W;0YX>oG z-^mT;$2JG8R%{>)!%FEv5@am#QBuTyp1m^r=~L8w-c-#S4KBcL@{9e_Be9!+OSU)F zh7h4z3hV$T*gaFGF5Acc@O2D%bv}f*^we=>WOeP|6jS!Y6ds3DO2@z!hDx?v`8=sA zpmhkbam*p9&)*T~l>&Y>*k_ka&h|`XP$IH58*>xw3cZKH6Wxk;%uP_6fHr7eLy#hR z6A-+Nb-L6i#ihMBd@;E5@qL-KD4cvL)8707B;=w_b zyU7frP&($Ky8x5m?n)fOt+d=VFjWd*xO9q~{ou>C?A?2@ApX4JwL58v;nBvmsG03B zloHx{$`+W~{uGby&qz)k3X^M!glwfrv;x+%$AHXcrQ>-XP39H{P`_ZJZ@6!yy$Dzm z*8?Syw!Tjy0Fy%5b@5rkLr5xdxG3IJXvy6Mu9r$3Z>6YWd2IYu6Tu`Jpf_DFHiv_| z3jMc;sD)KWpxr2S9bFBIaM)tOui%7YTQJOD+?2gD=aeq)%WMkto3~UnwV$QQEWh?& za|;o2_%6m}|4>b!1hiH{h9#Ic5oJ_bt#CA{Z~;-bt+%bO!_bYY4kYCZ@|#eSOVn3^ zCaU!ySlSh;3=pWL=4QOTS9GWQg*8~e6c@>9Hi+KhE+Mt6ra@2ZqWshXQOduCoqsk0 zRq7R|^-lE%x=utCY}z%1F@7Z1c~i=_@SVR`N3r`k5$dM*qdgdd=>86do1HGO7>nU5 zrAG@(I!n&y8e^8Hz(_|)N*#^Ub1&>^<3^rvw<$gg~Nmyo%r5!_R-s&d^hNRqqUO9jftzq zjM8Qo?TTprNIQGwliVXz<>ZEQ=u`c(xu(77nZ90jY*ak(YO=rGc ze6+Y-J?-SshHw)|PM$&YCTFLlbuqYalrOORpd^9_Rj9P@I=*BFjW!Emorr3UVPp4X z_SU0iyLfV_m=X>DdD@h!oJ-dRhZ*b<*PO4cxUXe6x>RN|;Kgv+nU*@|J{(9ui zn>#B6!gl;%VMom!bpG7EeK17@0=<-TLh(#x7C8kIiLrAh4Kz!-wQ-_l{zNw`?`$DR z5BQRx{lbdtR$rI$I@83-80?+_6k;SNeVLgVQIwJ-I&UA3riy0g;c{)p<=Ls-X4%in zd22lnJ+lo1CE(;PGD>Ao&xzcAU{bYyy@U6a(VP5&Z%lhfD_ zp!j~YSe-z(?=PwX{;2jgtzz?(xuW=+-Ln=pKMx~ym8-q;K=@{fiZ z1>_WqoQI#YBKiR~B46>~rRM+C1qDa7J;IM6{pnip=S)3e)PbRXbCI%T;Sy>!Ue0~@ zAV{8TU^!-OM)M=Sp}JI{@a<=TB`qwm*X7^f`2Oh4H~GPBP~7OViyBsjY-%=1&iq$v zz&aVhJ{`!$9xCQGb%yyYx^?}j0v71eeOhUUrv-C*JUufpqD>gj+|pF!<*ti5Vu;1K z$z`6inaesaT0O;mf_7M%?w%M4s`MMu2g4)ng6B;?R9`^MetXhVMC3Xm{FXdd zK5-=?nJWl(MXDuwNkwns5JFpqRZSssV=%W$JeB}k)MM9>EouxbJHGNdQhBXP;k2K% zcjE9mlhTtz+$P=SUvSzZTO;GpYUP%c8)tFAaA#r@h#AmLUX@$sYJ*AVqYNJmUI-AU z^q*q6_GyZ1P)hu+Geq*Qeh_Q++0c7oIJW9Yxl~y)fk53^_ez!vql~R|gfeCRl1cB{d z$#OE3im$QJgs-=C`nyEe z`rDBf4!X4j2D=ab^LJ0y83v>J?&#{1fsooR#Y5vDqkn>KX$4 z8k_GeY~`Me#$uwod_FIP@hH@0Qc*?eZdiO;F;H%O*hCmg>Q^TkF{GXO-)=s@+*F@}t9xzUPjSj>~YXjHuRvG^&=4@a88C$AV!pJ;u{d@A+irvKK{|RNu zULLdPl|->TmwJY3(dY0rDovPC!{qkE$=hd{^h5nV9^aKL>6C|f=a278s4}@f*lF|H zLIdPP=Dq{1IPE@I5L-hR# z!I#10JfPp&sE-~Jr_!#DT0`tx{y!SKej7Fs+LN?w-lQq*>*-;9W`f>4lqwT@j!Ed~ zdUb;bM)QtA#iUh86)jCGa`VV^zsV;0mz(%N+wg>!p2NwVEk%SyYIh_?v6WdA6laRJ z)|vrL{R8vCzvU@F9YM=%<7RSWP8JcT;k>Z>d63?l9s++h>-$>5Mo8xaAP_>U3a+aw zfY{a5)f2L9L#s^pB)YJX(RNVvHot{v>gQw#?I*gYR_Rjd*$ztv;13_QdNzO)iD(eP zrx#kga?6r|#=q(pgxeuwEDF4^g$B3{9k&&ut6>)I^*7h z*BM=d2Jxe%l`l{;;oA}dD;sI>ag5{^Vg17&oS7*TAhih4HqPx z0=3|Daw<>M9aC7rjQ1PivNt;W+ihAwTsM~^F;RxC9epQm@@!RJ3Hpz(a%F|KD zM+okO{^ivLZEhGIh_%L-gY8$o@~UHr*Fm+3o)qX^Pcx`Uxy4sX%eW{x9Szzkz)&y* zpt`;Ktwh&vyVaXgcIx(gGzEL(wPr3jlWp;l}MbH-6zEJ#qx`sx2 zu}=|!Up(XF)Hy|HmfbpTcxzpl3bb|$dsMt{vs4{Rr`R^l z5fW%79-<%B=sZnT6K{bDiDbIHSb9^HZ%7=P0RjHF{QDe;IS{USXRaBFJLofxaz4dr zf`lX;5v%#aGaZN>9__?@%h^NU#v}WMq<$yS*aez`iv5_#;ODte{fWH{WIr&v!WCd} zeIlhhPvC2Z<|?&f7DWckU)TUS?#5}Bd%d+Dqoz;JcE(^$oapY&N6k)OXZpDKl}-Ai zXuLGiEV*5c89d48^r*W(7|XWqm=SQbs%vQ9I`7uGLF#(m6Y_UH87R*B*mZXqA#-B7 z)15Nhx8hHKa6G^Hi+@*2mo# zpprXda#7?SXwiPO)ZiMEJY)(XSfoy6y&G)Zy*9d5#wyM@|DHm0P> zqVS--W@2+ZEf)@F4=Ao4xIgs;T_Q!ZbqdpfCGU4HB}yx0kgDJ4S15fj)MA-U+Ob1W zcE|Y1;RC!^cQUhNnPnt=n4|%$5vaww1=KG*h}d6$kfKEJ{D2tPAX{LOs_g`3YWh(X z!bfff0;8tuv#C{T(8CCL+nQ1Q8JVap0hz8if#aH7vIrnvi_(@}aJ+GWG4xm{6wfjr z^YLoeNhxByXA~S_0D?tYpSbjs)=rHglrQ7UD5prUO|mpmHwIkyp0Bs z!CvP+Bprv=$u&W3nE2vV5dNcj9)Ss*xDtWA!YTo?#%~3B${UB*%-5s>VNl4O3HZUJ zP#qyQZmUfH6M^(FmnR{Fkk@c#ZScL8=CNIfv~-U2q1PKr0@WcP6IK~xVc7uBTlnt! z#=8d_CMVWu1=y*}JzJrqlKD^hkX@OmuG#=|le>&|*QBgD+uAi4x+BBu(RK)qpmV3J zc`L~<#uh_46y@LJ1ELN5*gY@p?TxbiiE*~ug8kf|2JAF;(!7y6ak2F^`ApkO1wMT~ zYTi&;13e-*?aIwIy5EH7wzj%_iaY0?n7;yDHn83PTm!X8SFC$HbsGU1&igWF*NDbi zQZjlS;Ra@HrBRq{4}y&;a6*RL-NS72Q_r5%R3*2>}K>)+2N zPaf#}l?#xy5)bh?$IY|Nd`UJF>bxI^L<=Ko53m)x-^q@138Xs>r z*R$UFp~oqf)HY!)y(OO6OF+O>@NaTd z-k9>v-g1tnwbdCIM9_XYKZ%R!j^rK6U)Tb~!Hp6SK zCPiR>^HD&Y6s{X2v80R=Ey@z5dOf~wDPOr^m-B~XwDv8;Wkl|_ehG~`qO9|hYd)P@k4H9I6&6m}mWI2d(DUigwr>d4-K0mA~C>sn`PYhNPJ z+yh36;Z0YBZ+213vp{U=YJ1BOH?1NSvVaY=bvSZ6Dpi^HW!o znU=AfYYO1`(rndXlC%AKs_s>KYqL$N5CRk;(Yy2^sL4daI>>ONmm?-wFtu-Rp<`HL&a3 z=jUttcwDR{heI^tBjWokGNB8MWcqq`4L%yq&Wo=gg*XLEzT%;8iHz+Vt0SEA%JW5W z;vrASHK2-C8}32M`5l5=Z*cnXyN{=>WK4Ozx{Z5v7<6C1${eVGwaMPu&|m6^|zA~8#u?A&b+p;%|q^fwm!BO#~=nE_7wwUKmT;YuEiS|BDq95@8( zR$+4WYO&XkhTg%S!4;A1lKoeVb>UqtrtS#6tp)c28!b^5U9(!+O)ec zCQ?~v_f`J_;4kVG;i`D0l^T`%Y{y!22UE8oK<=WF3q)^Kax`2_7r$q$BJ3#DOc7uD zX+M4Gkh+;)%CH;$yiqB)t)SQxoYn)5^^K#Pyu-_4i%Dy&R(N`NWquqU7l+MP|7dUC zc+6_vh;-v&QE24``>S+cwhDgbA~|_5sa04rsEuqi+^nFBma~uMrl>$ zh))~>DKyT^A8H>(G=E5lDI(t~QsJoT9?Zq$?a4|w zOi~mog|DRK2;&K_(NRlternaUK$#TV=2kuX6=Rd#v=an_h zpRUtC!S26LS&@H+U;goFQqqaOrbK4|8)@#XOkHU?OB`gddwk6*D)-sgB5_+AqY!1$2u&CP^!0SxoMCy!2w zELWv@ABBskLRT6Jjh_tsPg>RA-^=!*G;K+$+hLXMiosk=ldrxx-~a8eT-4@TPh?iJm^(?6sY zEu5f*Q_cj$Rklmg*E*l?<+{E6nXqYiw5Cs9X2zfaAwP0VvtLqK=1pJ{T~@bC^WNiR zPb~NGIp8d#=~1!1Wnw+$=^F=s7Bj^hD}w!$o_>kP{6j}W)p|dYv)_fDUf)3lM{c(Z z&D9YepLb+u4|lfw^*8(hH@;xXoCgi&y!e6(8eZ|c0J=16nQvSu!>XuD6yESc$l1dD zEIhF)w?~`O^X_93?YLZ+n!_*axZ+FP;6VJX$S*W&7T9o4L7yvdS69N%a|4M+YBHpq zHiwHbmUuj|HF2c4ZWiGchjjXPH80&ZRCGlQJ9i{*?&iE(pZ=g zwB!`mzdtX3^0hya913tL)$QJXYasmqbJ!u9>)S$|1+}x+PUEEHea zURy$A5RyDHj})7sZo#=$HG8ypA7|?xlbD(i8)&laR z^q#OdZ6&961#fa{Vr|fpvFTHY^M3e=cm^{0bO@kNp7~=;-GOcHrBb`LPUz^DBPKhp zDQHw|hL9cCA@b3_g84&v_~>D7s3l}Hfte{b&$u%Un=`{w`lINyFI$RW+QmrJm8%uj znXypY@~5TsD!F(MU&1?Kk8F{bbwz6*SnJrNx+g3S!CcX5?J;%Bo^2$uf<;C>SD0fHg zuX6Z)7Nl|hKGTvrB40grI#DcrY8;DM!P6}jKKH!Q%}ePZQyCKNqFDJ&l4z!xxI9}+ zn8?V*D%9emVq-@V9T$`R#ydE_yLumA{p6*}R0@-@h!$Ozc6#piGS7kP0rrTa*A~vz z_2K=|#9J)`WBLi-rB}r%Ik>{NF!ya8?cYw%HWs1PUC294Iz=I!mh1*s4!1Wj zOVZ~Sl01`Xs$8B(*jrPfXNO8J-Gn1yx8v3og=8SstU7M8#I8$EfIvk7&!^iTbd@!; zEu(ZU+2gDTVb2<;4M;}^I%Pd{8z-&qJn}`wW&x${0xn&0Kb{4Ng*qMGvj6Z;3)}P> z8$g*C740$Jp(1Wi2E9pJ=1RzOmUpD(s*52sd-%wt^KN-*nl)u6v&fw)VL5l$RD?sM zw6{?U@sKmT(z##A+ElZu#Q{UESEERKzlw;$uG_d~E4NbbdmwgNQ(T)f5%K6qbhHZp ztZ)vKo#oZER_Pjdzn_CTBy}@DmYcVnjqn3OO{s|5Ih&%vDV5Vjvn}E5ddKb>^Qm@! zBDa`PyL4~Q$NJ~)(Pjn{GVv&-${x(tW>X)10_Bt;_}-Dt=^b98H1J!V_oD*4O0G3J zEHu}NDwTRXUi4sZqEH;mzdTR>ffkU9yYh?s{$t;&S9#6p0n7!z{B~^KQA}DeYaR~4 z4e(0^3ZJx}m5EwWm0z4?Ydl+p93R1AL`OSZ>)PyEeU$^fyLfGI6pfB+PtxRM)lB7q z^#T*t^zN1&I|w`V{s&UpV!DbUCEwi`B#Q4@8t4_>%Xn!{&u$ZODK{NDEvnOVaL}2= zFWRHX%L4<|+{<`49=t9IIQ0w*N#YDjWA&LB<R$hUL3axj zM9}i_{r#mS%z7+M9XJnLX9(+(mW0uP=noTk?*_Ss&fjaq9xaRAtDH4ZC8|WzLlQ)1 zUAFqIF0Xtl$kary>QIn2T~71vzq3I#Exx(fBB$i}7^V_k2>EQ&DXFoZv?@%tlQ4Bt z+0PJ|q)BRMZx5`&%}4sjB_C2@CKEkWDe1Ha{au^zg5C5RjU_g7v}i6i7&TUW-kK@H zzs$=2*0dnkiN4Uu{NK4`?ftbXh4zXuc_6UtxEhC?qG87%J~~I=lHw6TZ@RYV_7+CX z}|^TV&IIZ0$lL zy9V!H>aLA)IwJ$_9ViRLE5&`H^_>X%N&%$|epmH_ld3OPxFU$Ic$QY^_EB-W+ZaZ- zv723+Jzt9rj<_fTB?!Bd=kyiy(-wnoLRP^=&K=oX%3fME9Xp7Ke-erR9>Bs-#iGRG^C)u>^=`Ypi?`L&sNIcmS z-z%>6kipfY&`?w)JaPS$Ln|OoX?wk;E+tCt`wwW%9ch&c^2v*!ky2`?caL~Vk>XT> zxh-%_d#G4bo{Xuv+NZ`fuCBgcLlEPSsGDBN^qtEA?61v~+sBQaA8PWT^V*CnVd&b8 z)61a0O|DN2geo|}zgfY$CNya~OVP(jegAV!o&+|xH6v?Esz2fL>k)Z41|GLCh(=r$ z?CG$*`&G7ebak;dp*Momas3b}+5a_FT~t^%1_soNah9q?FTkht_FFlT{e;hAdutqf zD)gFbc6QH0DT)Za(wJXm^wQ6UW|fPzMzX9Rbwb8E`!ONi*5Jb%*H&h#sCtqBao(xH9EZZ=J z;xIHZQkPv1qfE^mQh~xbzcLdEDvrMl4_+=kK3crQ?KBXy60{vrX|KgBVTBb286QvY zm*|NlxFok|vLtJ3-a5}-T-u~=x9x-$tt9wYi_J_FCPcQ?wEMaw^mAymzE4!jCE6_I zj@2Bl%WSYD^R!@c^_r*%60eAqTvxN9>@RdEJGG4oDtBC8g=iQ$=@Dl3-`QzmQXCXE zZBKm+Ax+v0u2YygcD=SI=2C;z*O!rWR{V!y_50SA-%kLQrLYLRcYkJ^Yka2u^1iHG z8?t95!9ZW<0rNz;G`4pMsmRXpETX69r^)|^y|)gE>*>};aS0G0xO;GShY&nSa3{E1 zaED;QT?hA|!5xA-gS)%i;Cd(dopZkPoj32Td#mnWU)?H(nt?rgclYYmYxP>IpU3@V z!o^vqlMY{Ta6=Sr_q5RHCn(d%p$Z+tGG!wjXPo9@F;JCU$Vi|n$Fk<^$ zN1Qw~w$dr*ntdi89Z5$+Uz&YdlpVi};%hXxTG`2*0x2B6+5Yp37JTit{B2`YrSB0R zJkL?irADSOu)##prt9JZ!eprhD0KEy62rp41W2zo3isE!kM90>GnPMOdxb-y_t-Za zW+ZzLRi9HVVyo@)oNCO}6 z5jHnc6<8eXUAva_knNy&hHb~s-z#2g?531fmTQ_bfkUhv{NF`xJy%bE=GEk;X&5hP z$`Cjfiwt%Gc|C}|&WQSJqEV?!Wcj~=$+#;zbu`I1etrB>p5@8f57c=vB?9g#_tO?b zKz%bW{}UhjyRY;$K-mw&uLYN3m~@^lD$@0I75Pkn%-SSlHL7<_;FBY7KD#@U)Fja<7UWwXk%T^FHFZ z^E-e53&QhrVChQRDd--gz`O2XX6e&zVAS!gYyAm)Q6)Tg^=s zv*z*S)nwJvf{@3gMbTtj({f`x(|P1kjP1azlirvn9&XL~n&9SifC4peQ=C;hiL&PY zd_k6uz{g77XfUii|7@kRsHjBc3o_9F1^Vdv6S^A1eGIg?>MUJNOj2v+NfA&?#8thx z0?yyNkF`#pzL>^%nE!|waUAx>J*J&82MpROedg`Mnvb|HFzi1wST^61MMOeU@s9i| z@9cXfjH0OMq0H*w&-0VsL>k^ZGFdLn&6P5te%kMEZT#P`Yb!oHo z$7?l!xd}HFkuB!AK}TBSmok_^ZNB0GtVx^RYM!4E%6-yEd>5ZXbTE(16F)X|t$MrC zcabsJ3NWyHs;WonBB2?Y7uA|^3}<^&Gh1aJkV=2#U!Q*lT|rvQYeGd|-CpvQiT{50 z96PCOtovZcAixHmjj0Qvo}$d{_SIoP%LFi1L#WXaw|xv+$LXXHX6Ib=`OkwQe=&0O znYk(rH2Pg68Dk6`#;bCiMq^LksZvQG*LPsCa3(GFV4R|MF9tu?f-353JP?nCqo@@s zjR#i+gxowKfB2LmT!OkZZ#c!xfGzdzXL$lX(qE>dAK%O8ei@Xh-}dc`f0Ow6mDT|pNU!)j}6c|n9e7NY(J|{3ONXhSdyu{q2 zL%KHnS}TP*N;Qy!db?avOIvQ5LsPO4Wp$>zC#D zyq`>q;AdLydcB~RpV|7m24#RzHW~+Z?v!mk+Oo{I?CHIM|(R$VHe~#6*~3WMO{j!?Wl>$0!yuQeeOHj$sPWdo9be zZ{u>zOQ`ZO1Jp6v#PEYP>vXmIGyrG9`xiIu!_*-LyV;OLB;+lb!o*`4vsdTH>q8X@bekQ_j_r`MwVZnrMuV6gxnv}$;8sq-O-xNy!%g9 z91g2a?uxQ~rT7>=e|_S=^yw$*!( zcI&ksx-TPr&hZx`CUY0OHS=5MtEMV;o3u<8(&XFLa7kv};V0qBot4~oE~j)^+C^tq zJF}VUidQl#s|D{Z)=ZD*hc&PEytu6C4Q?wG%+u%7=_^h~UE!PpVPD54n^D{sIh*bV zJe#)L$X!ks2Rr-r;+>@F`J9`g2rApYZOaJhFnYY*>+I=$Isg(ZJTwSmdSh;HPDddV zj3*y4xrONWc^8fjv_7s$>9r?_TdnR@`qJlo2T4D8(A)0cGCnlW8E%HT(jB-$sv|eX zOIB(DbA>BSx+Oj5o5C+&PoF&^BE%Xy}92b6mW~lXt{-qS>@ZQ{iHIP zESl2rUa0%(M6@}|{X4%F=atw0guVdJiyvPJ8iFAjk2ecBY?o6i!KnX{_?)?)Dd=9T zRcu~C^8J)l8T>EpHuNMuTD_gnRG2R)qyxR7MGk+ci2uh8ozggM_YtKYE@?Dh-T|L1 zsNtFJ-@7hfFt)op#8bfEdJky(rVlr>aL7O7fdAAz`Zx55LjV{=$YCm1R=?tL?SO&K zCuB{aEpx7YH9fxvv@xYH-*$u{1Z(bs)qOfZ*_1>5Hx$h40f?gfyQcLw?d&)GP8uL= zq_tIW_*M|}`GhnQh&st}O~+U8isao~m)8r6BKQxT#sA)!5`8efQm-bty3;+^t&_#R zyVSo*LaCd#GKZSTtbD2IOsB=moFCp5Q$Gk^V9Y~-9CR|b>t{fi8x9g3=zUI|i@hxe5PWg@i|i;5J{kDcB=O0=aGoUvT3Wjn^XkahD*zyb@`EX<0dS83k=Tu`7a#>Kg}!_ zgzo`m7EtvH@+j{Dgjmxo^n%;iMr?*@CXRG>a1QTwI*NjsOawuSy&$)7*d&n5`R#0n z$v_=i;qzZwn_m+OIfjqvt<;B9x>n-Y0q(0fc(|@v@_53_%nV(KhmB5f6WC+taF`8F z4ynr0*<&T`EF@!~F@e5ukC$8+Hv3I~0XvLyN@Dq?8GvXvC)kP?-CiVjEXEbA#b)@G zSomx$Q}*3(mb{b&@Yk_`9^pz9grWd@^no}EkHX*NFh&l?WA(Gld`bFNSFctuiv5T1 z;B!AqiClIZ1?1u?Yq01Kh^16k$7hSo)W41xHFP?sTLY!jq&IiMaoEhONfoHDBN=uLBLRn!+T9p>+ z-|)8L{C>}8_LX_7%B`Roy9}o_H)*Ld1p7Yn1PT8@EvK-LG|VY@q*Wz!fU0*g6f@B{ zOpIj6Xb5q*W!DLRxnTz6Tb~$$g(mc|c~0}#wNV2UrfwA;swW}=E$r!Y zTsb)FQu_lo-*1O=I~3stpIZrq7O(Z9D8CA zQ0lG}>`f)XkAqn?fr6?;Z!3)-F54g|&72BtGR&C%Rd7FY0)<}q;ZgCI%Sr>_g{iMD z)(AZC`G)b<%L=aZe3eRN(r=yHqQGz8y&_WH7)&#&zk@K;F8b;_d#0(b}bl&q6Cli(Mlg9PkFa?A25KNTbPH$0-VM_3>W!PGhVzcm-7%6vVQ0wBqAu17pg@IhQB@TATIxWNT8OR|3fK~q6}>tlL78o%RNq&!38vR=bn zVs+k&qp$LmApCL+0`j_@lk&TsL6f#Q4_TxZ(|wfH;Nng0H?t*E(rsDaK^_>|FniXH zRa{^RuQ`aXNz%wB0FK~Ez3da3;*b>Qn_wta0C#(-A62w_|Kf#DrkZWdDvBv=l$ri! z&DviBn&5C3IBfNK?X-f-r;E`e@jqXf8ly?wEp;uk~E8r0rrd%Z}V$&ZNAEFC4v!j$$YI~lolPu zJi@iEe}u;q2!EKkg#DD&5f<5N@)0p6Wim|O8=mdz;fAAf>uuci1%6)6HA7lkOfSGi zQ4608{}Xw+95>wZWVD{mw<4c!=Wkatg_GS&8$J`#QQ#wdmA3TsxFH$v8)>%9)qDhM zHQJ+`1sV2O3cC1ha}hNaf{)@*O7l&LgAeR8l#kMpN@;lvmsE}hx}M)`HjQXkMJih0 zZD{yyPpcW<5DoaXpIGRHvj>LH)>yxMNU~cLE#^>a$F`h`ZGVRUDkg!%jrk9EdfZjP z-2cs-VSx0k4`UiDR2b7T^tTnLAy3vr5hVLf!L``eLndsj#X9am>FagvGKuf;kD;0Q z+(;VDF9|HbmGa%ceVWV0{}z-p*9b})v@YwNr|s6?jASjhwAE;i3keY(+GInxx`UPN zyA1^wh)}cpxCvs^IHsum1Xm#VPZPLXf8gStzEM(M);GelQyAI^Rc}z#I=DcRCW-52 z*VMJdk}n>q*l`y~;ZN?8+UbvPiP}zGUTP{#;@6tlskw1E6*5T7Lz^^lJnd$@g9*phmir$;nxeesdg}ZdkcSg zH=1(e{5Cuo)bF5h^WlRCX#qQQ@YQ>EPDFC5GHromclvteW)HgCNR)GZ<~6OYLN({- zGAfvODd{)Uxlm>ilhw_zf>hFzsbvw0`{S=m0JP!?Ft#FmxT%>V@DAmppNI^+ZDTuk z>H#BylEg+>&`3&$|75wNyS=p^jy|4P5eBx53BwRxHwFC-RE(Fi9o*H4goh>CkV{O5 z8#YMo?ETfQ+bP+AUDmPBB!TIFY@#Pq$NraFsiYe?%g*h~2uq*z)BO5W3uZeC>yHgR z9%Z-NwLcjgA!`n3Skn;`?Nq{MT>Vg75nsG_5pEh~G*k#J!tSyAY4gVmV-yUj=Z%s5 ztH3ECfAZ$|hs>05fbgypFKd}rR%O*bXJ!S0T|FLK6iy8vvGdF6GK)EG0I0grZrA0F z*)D6#D<*g$Hh9`MeILb)Y6n+IJQyBtS9J2ZGg!~t&amgwVL7oaX1tJAfV%^g`KmJi za);Jymd`|PE3zzY=|nTV+lIIFyFKq*zV>gn`5JvZajcf0T0H*9HI(ukzNd>1cITyt zI~$|h6-Mq3%X0lH1FiLD!f^Uo{TZ5$v`m@3j_mN4E&N)<>>u6Si958aa2jK-Cbrx* zqHZM1>zc<)U*(WfID$R(R^$%=@hM!jNW#*UOcwu%cjV2 z01_BVl^wAWUrrvAgJp&S+y)t?gchU|$_->rjSEMaQMtgqm0BxRaQVp-O`_W^TWL)V zN2#ARY9txLO;2fRd@&tE4@sjd5b2(SA@O5w?ymDG2os9(ddq);i2jEYe*V-xE3y=% z;ZkaYp=3s1v~Ak(CEBkYPLiRO0=F zkukz%DCmBrlIPQ`8>3=SI_%Yk<-NApz%{i!_kWhFgOQ(R&slD~kMgIj2YhfhEm7JX zzSJFeK;es*_Qk7=!Qq7l^{bQN4A*EXyPIa2N&pc>b7bP{GYzVbFGR!d>+J|e0uqADGIo??tZ}O=1=1oUTAZ|iB2|~H$u7BMt_A$$ z1g-X2I+PRAPbQ+kq4Hs(0YT6$#{LD2Y@chs`2|N|YjvD6*t@VNqb+Y?G2f;MHc_*t ze78EX{9`J$%1}@|=NYXvrS|F+nMm-PzfH*kQJxdKquGezYS=YqF!>HZkFsGq4J<6y z%lCX4SGElQsEj_GuhCB4+Exx80DwV}cz;QC) zF7CU~!*BQOFZ^;V)z|R^v(n*W2;9F>ceCF%VtA(Un66p6{~{)YRH%@1OVP2HYEUje z|K&z!>O!6V?y(3y71V7vc~M>Hfamx;=DmD5$*T-Z@cfLRg$##IaAEj=eq>*Ti9M|E&3?<$*9 zmx5OYRORxHHDCFBQ`#eP?IAnxym6A-g~HGDT%3Tu=P$pno*H_DV;bGw&Ea-bo$_uK ze#O$$uZcf@RBrOUn!8`IJKHJA>+pJTgY3Y4VNW`RG?!VjL*3i;Z6g#K+Pgle1c|y) z%aRa`FsCu^rnc(~N1pYi?!_yhD(T$Nwq*g$4xUqs2sd>)97({Re*Ysb4YNo(Q|wRB z_+UG5?%ZkC4O^X(CZN2}3uF}1;iyQ;cQfZK(Tmfdk*)j{1-CYm8r zArdVw(0%KDO)Ik0!6>lrrqHWq6C(77s%qVLbWOn^_&o+H%*K?6mjJxwJS^H!w6``C zzAp@>m8)_LwP8h)d%sGzaJ}Af)BLgAD#AlFC3m`fO`Ah%wN3;N~#)`e2TGR)9N}r=?Mc9jCEkpDb6PMBqY_AA3T2B_qgOv61H}9 zF6E2Nikbgbi$B$5Ql?!6?I&W{5?|Tp5qHzd8@ZsimOyzRORb}&q*q5e{w;wNEmE=8 znV_YM_1!z|n8jwQQH7=_5xo15Syl@oDZwA16=v?eTJ((1+jQhT_3~R6Gw72c0-ewl zE#qA1E?5j-3{NSsLvG@Q$wFF`WN7l)jV}9GcxtFZC)k8ESTl-1rd3tPVy1iYM!zCh zbsVo?WRlO_#NF6qCQ}XaLMFJ|s0KeGU{x3o1^(C$;X2p3pTmd zNGVTBqV5ni-CIwm4S9{5n69r@PpGwAC1DI3K5)Ha&sb0_B^M}w-9Y55(re{LEgi*bLpL9`{X z#4P+L%FjnD?pVme3^N|cCDwOgsMc>}dqu!=r3N=Tu$zfU@I8UiWOLf!YKX35ft9SB zVy+O<+Gxvo2s*u!{$RSs6NTFa%-ZC;%Yfj*<6yRR6{WLu`yLKBwvl;ZMH^YR)1==j zu{+$5c>^H*qh}>5wSkHj_uV4qRMBgK;o^WBVr6Z%l*LGNqka~Kn&!h8vl0r(8QH~Y zf!BltY?yiZvagMBBs0)%i=c_Vii1g9?|z&kq%0>+fSgl}Nq`RaJ>;tGx?50J{` z%*aaW);0qsIe%cIMM+GkWQ;e${4}=P#A`(>%+@zph2 zA2bg5EHj7mGu)~vcXR%cz3|)?d7aJHXLExBTsGM*vzH~mzRL}N*&m(T%D;uR`r1jM z1N+ksvU2Pd*H0ul#QoCVt)|OF%=9QO5b z-0Fi6fzX>Qr|+P<^WEyIRInL}_ei@=o^wYLg#7L5M3T3v|7?3Q_{pCqq3#lI;8!nJ zbMO9Yi;OFjAxb^{fI3Q>kOCSFD%zT2dYB|K?Ro&4EMSwfglC8#~6 zH9L%{?Ak2KM!bg!kYxHQ9;VJpYlV5+S{-Q)EeG08M2|`kegkJ!L79eztn{+v9VnGA zw5Q5F5vlBEeCT2*av1Y@IY!4Qxf!u?<6yZd(C^m_#hn3gO552P2$)JCf&x1p6y@!- z(v!)96`R$U@HwiV0GjBl$U0Kz<5Y?BdT(|k_A2!+N!syZhYuxDkT)c)sP;v2vft!IRa~6J}@A<;#DVw#TJbUflS4mu0uxLPUQ6 z7!N(W>8O6X&`+u=$#uVaW!%od6@gj_zAklAuG*bLEz*V{9a`+YH`}P2y=&h8_MU+N zAPrV|RQ2CBM8EuzU^Rk--X83c9ZdI>AW7D*2dC@Ue!t~aeqhbDbM_x6or@xr0NlsZ z8Z!^?R_>Xl>W+1lQ2m~u`OF#SF$od$h#};ZwWrQQs%VL0@G1zZ93gr`PNhzHPkg1`+ISGEacQ7p6pf)?q-c& z@KJZm1b3U(XQ17W2U)LVc!MB}E%_H!niY}aG+3=!3dDD?K43)EB1%TL%_gSDee^>O z#bP#@?E~CNKZG7#?9wvI`>cWoLSM=A4YxAkk6oc$k(lY(a`RIZum_Xz%ycw*PI6UI z*eNklEq<5Hc&XDr5;5VqRx_S1szfIf&&7lw= zLfdm@@T+{*tg)cxYX~SHAia6vdy(m&13FajU~ZOykzKk07bbra$kb#~fZ62kLsYW* z;Ls*nso?{$MT>`ToV>}7Ue8F#noLooZGHzMplhbiGJXW?aDsD&jjz{vqfnx$X0$E>Zc!?->|&7P5S zAyEF5O3F;{u_Mu=j;Y=S3=}pAe7)te#f|TUe%8)dPNO6f8NC25!hDR@ZQwfNPZ=2` z&>&tIi-@J5X>3OgcyP&6_VApHD{rKgj#Fu3ONwquF5*_5+m-1XN$EnJl%E3YoKnEO z`3>{^mOezN^r|0?edJTb~k>p zUH`z=w|l7pTvRO&1MGVgwl;VE7E8tyRBanYI5^sWUoA2?zBo)hv$>28-HbIiwY>ESl-meJ_WVwIqksASai&%!||y_dP4 z6e@7F&(_Ao$UdJk65UFV)GemkntBH-E|4_1h(a&4LtF<@ZA4f4p)7B_DO zB2+;sHLHWW?rbS!TEoFu8^-&K>FZIy-)m?8@+2R!13qQp+7Oas;RPT)7Wr@@YWmCl z^-n2tq+v7p^%w16hqVYBH`Hu!$H}CTecTbP)YWf|uH~fT+OJ$*LgCL|sLuNQdi0F< zR)(=u>&j0*XwD$YL6ofE+!VL_xH^`leMk@HK8pTRU6N57$i;neJaX{lvb=A^qzBzI z1l}C^(xI-hM(~4Xe^T3;2|`pYo>(5Q_Wv;gHEM?M1|j{R1M|$3{c5Oe=(s%T7+2N0 zZy{O3xDykEKeffxPGy)1FmyFLEC{q4GLJ`$qzm}q?G2@Pf;Xk@7X;rSXy^9Mz0~@r zNHQZT%(TR>M~zGEWa6C0WaWQooCQ))I}7f_z2xC~6^HGGjZ(9Ic-Pj4OhE+BarMHQ zt*3G4z|LKDWMoBW^;p?484pH;3V_DHuqhAGJMJnBY&1bt{s-YN*LmdhQ=uTHK#kR=`6S`_ItjQZC-KUJvvh@nX0OnQ@4D>PWk1gn`AF+WlO4 z{Cx>eR@SOw9THte3=8KGTGUdt_D_sB{{cG^jfs(huwp~v47?2DieS9M7%SAbgw8js zrSolcV1%8~6*M6jegh7mE*A<~TnpC8^xmx}TKn+ri5coh_02m7Om&Fs0MVFIdIXzf z5g`Y4Nj7__Tc!jm%!)JeO6}g({fFi3+F-j0q~KJ;K_F?K1!o}J4Mh{RV$zgeXq2?n zPUIX_Wh|s+(AFUe3e3Lvfp|hKP7XNDk(pcL#MUVNR=|0URhhTH#ZD>xxVjs<@!EIf z8w!=|;JA7=@G@7KIbU(V6H*y}a=&k<8htwv8)*p8e{f#+O5?WEdii)~cf6pk+TQ`1 z$PBZyO7qFsh2x=j_WBOuXKw3u)$`~-Hx*?2T`!a0DD%kzSodtVL%mgW-ZyPf`=c0J ziN}cVXwwO{#e6GDO9y$auel3)2Q^+h=8)Oo&rD?h1+UycUi4aig%_uOayGc}O|=yV z+FTSc3!a%6Ob3gRTo6^9BU(C2CN1VKI@lo)X|e9!k5e2iMki@m-Ouq2XgP>B!P}R| z<7z!1`atsytEa0RP0W7M6xOu8{_Cwco+$mt&@!_jmEY6zssKlKa0}crUc0hb}M)z$GOU;c^XUKLc?5xK9u z68n}R*xif)dgHx2^xT&!>o&u}VD>5)0dGS%q8s*@L!!JR>0g?>%IFtWt;vVqudXP~ z7}sB%CWVFneD&f~pS~zamwg+=b9R>4rw+6m`Tcrsn?$yo#rS6n=stn4VQI@H_lczM zdqkMH*TUO3R?0jz*oLr3ntI)8V-w$k7%F-6&kx5?RC>k!48Kus|2y6&H+;9Qa`XHYy!tjW6Zc8)JmFLSjv13p(d8Q$kEINBXIgwWR~C- zzgW(t(=yOOL;VvBV9XIrJ=mEu;cDlLbXL`orA^D|uPukbnXK_mrmzagdkDc+sPrOI zHvq57BlJupdCI^WNv=-wmDDTJUp`4~4{+kDQD_?{gHsC#Xy)RkeW~x(mpf~Z;oXe8 zRD3uMM0dE+gVn0tjPAR)r?D%_|LDSG6Mb`R^4SYWNWZ@pC%$+H*Vqt%)CP9 z9qW_%q>K>H6Ouz`ZXQ8`KZr%o)`$K+%Io$RBEJWf3)FPrCbgr zT^<4iB{YBMOqlDimszSwXd!Z%mbpC$YofG5#AUf_Xqdx2`|L=eVAv%b?0|Uz@zTgV z(;e1W(a6Bfxp3~9qhe@8XK_aa{%e6FbD0a3b(+d{ldHJrB>Z13-O^+6$>G*#LVDm!sMb ziFV(ywEKLY9+#+>kqC8#W0TkDe7PeitNwb&d~-3N{q`>^&5wJW+p7gu^nx=V@#JT_`2Czef(s*JdTs zDoz3SdxCK`E<(AnUME7ukDa%}z3h%|l+J|FD3;F0V_+KKkKZ^YugYh@s*T zI^y5zOqr2@jXXALu(hwVi*;78J|lVmQi_J4hY@7l9hpRY|p}xAGmG32M#s|ekgUby`sxR;voA4X&9ov9h4tU+z(_s%2`yZt8{>$ z>X$3}X-HgEUgLHir3tQ!+3!;hcWl}i$J)bR?Y=DpC*2wil}iV(-;yAzn+@F?HtXB9M7|YXXoX}-BR?DJ*CJJYmGF$j{&qO#8IiUoKP!(>mqRa=s?myQN{3&1ZbB7O&pUK|m* z$Cp6gqn~~k1i8m)4mhqg zeDR;O7uu3|ArN?B;eI{Z`RPbhDa@bbV3!D_zE28iIvMithR)~vLk*kXEW6)@D(OP% z+XY8n#rTPUH{yxd`%hI0M4*^9jYeDCQ~4u3pU&8L8G!BwZrn%U5&yYPC!FE2>CL`D z*|52S7K_Ltzn^U_viVi~U3=Ek_me9N7%T z@DbKD3xMDs-ohv|nC88&ITFH?tA zTcCw<5xd>Bi;NLi{_`8GixZ$I^kq+3RioN$^)bws`7O@(?QF?A02hoch*+s!I2;bL zCTASD2*TdtOh#bwxoK0_z5XlQ)GmVwn9ewG=q(zOj?`Bf*~ymGfuH;j6SNB`AOEZb zle~wo&uJHSK3;c~8=M{6FB__y?Ga}k?ZL+`Aup?88}9C9&!^@|rwjcpQ>UBt7X7#P z;2`cDYA^{-m-XV7Mds_q`%@1KjH-@S`P1{cLBR^M^^#Ztkd$2-c?K_j?^~}Mac7iv zaG`%#)@6T|_X{sPDzWk2>7~k7kE4Vsw%?`e85ZPafP_&6{gtnGxxNM8PH@uz!wPKi zCFY7<%OQQ|Jz;JA0)XXLUhHirfy<9ROl>tu?;zP6SJ!_`A1t%G@CB)+3&c!D!uRd4 zG)Ce8|MbkP8rL(-1&uBo4GBhC+NPJP=*LGx4nqH)b&DngA+6?sTt&QC4ZklkvWtb& z$~@P1pjnWWK*rg|V3-7bE;gb+yGJHCuj})%n+g*vIia#UPAeuUNu{4tG*DNZpN26U zokHaIh#od4Atistq|4!W7a$UoFrB0mw|`CW+XV&lKU;vSF`nSGS(B{5Dq&xaPeQU@ zc7Czc`ZRCU`m|eU)Q70E7=9)!6jer?tj@YBe0TKJ@3y%hd_E>Qk;mr~X?OLC$Q!-f zsd^o=$|3A(%YSvYR~-(RY;-Vc|GMhVVLAO>BC`0d=5yUM%AX)vLSVQWo89gQY%J?S zn%d+`tFuvX!JR@;CO6xD(rIn^Mc)+LDnK~Hf?ch;!i^i9iLyWvyTiR2brhA8m+9C2 zhgZ^xar{Dsw6WH2qu`2AKM{5%tp@6vGZ6`urlXpFR*nDq?R5Ix%8xzs#(Ut=_ddoR z^Br?r8a>maB_lWKBfMw5-BzC9<98~KoiLXJj>`VW;89@4(m#oyWkuoxYb5CH+q}{Lf(i*Fz~YWdC2EK(JaK$Kb&rqFEX`+_4(;^`&kZCifb; z=a6gtKCD%jtDHRMRinzDmOg$Y=JUFbsTRzMO0Rt@P&G7^Rrj; z%eld+`CN?S4?sudJ&JIaUJq=>+4fw6{>1pypV-y^Y^*=BJ@JYyIq{Bvtly> z5bDhdqXB5~9ap99=+jmE)BepTrjG2+_y1W8@yEdZxzE*WjqBNj>Wu5lYu04E2uDs# zw)8f(4;&``klfun7<9}DsMQ$DbjW_~>u`BkGlrSBCnZ;#1MerTgohl1a8pq2OM`GS%B!@BRSS5i8=8n|PVud$U2yBkB4Ej%sh z|49t|FG2n80v|O@`&8gKxG>WNZ?E8&YZ`|OA|DW3CwaM0-{9un3;Drc?W*mTxX&qy z*TDTF=wmZVYox6%|K%jeQ6sA*aA7#!{jxcn;D;etpX^enLm7tC=jT=bqYmf4MrtoH zoXL8KnyMgDx6hsSA-6D6_uH5w91rAO$_Olg=aV0o*pxh?T_$Ngy^+L;@g5RjKs%%J z^vE_>45idNE~C>5iEY057Oj9I@1Dx$&Zk3k`KzinQ<=%3LiJp={ef2fE@Ac^!pAym z@sRBbMN!;@oy=JI(MK9`fx>p7PK8x`+pQCQfs0?@M6LP8&9 z{Ea<6bctQfmC-DtZr>0i@9`>0pa_RU`O zisD+A{Er&*B|hx()vmE+s4$riU_>EAY3ZwG53~UOhV34Tx{!`1FSt^f_@>(*9E;Z4 zeXRwW$IJTeWro_+4m)*XxU<)WW5ubKz5Qj{=h)%gyPp-m!lcz@%k5zXza{zDFt26G zFlx3knb=xG71H`F`oZ6{M{hEi$s3NPRv&&-9{*-AE!mx1Fr;|(_WaCs#=Z`#Vw+om znd~g?Mc|_6y0-km4OCW?(#|TfMj|-I!j{@#ZZmTY#uU1JVK?HNGm0*?)NNvnZha1+ zL4h^*k%p31zcQUi5wvV;7aCp|=qkXo9;a;Fo9?io<=&2TBn53pR0O`N<$XcPIK|!%1)>@GGO^R*Xtn~nv8fxy7JaL6tE~Z&b5nMXB z0arn=A9a&HCRfTeYZkWPmxefWdu!EHNhE}0M25>gcvOkU#7Cc0p%z$gFhs$*e;cVr$fCgv&R)@F1 z@|7{O-z~|4$x*wKDe+XGzcD?30@+o8q)f`e<4Yz)-m}pqu&N*1|ETQ(T5nw1cll6! zc~|Fzo2`ko$z0x=G{^je(Q;eFT9%uHl5}b?AzS0_IEPLu0!l*c5huzq_no^G zSCM)!H*~VzUJd|+9ksC`L`6FW?aCpN$8>>wslKf=8syN$x zSo>2JXL8Ur@AQmUwJB50EHUXcgTJV2frISa)(V&K@C$)*p;=tbIwPCs^01#WAE#-J zwZ%JbVZO{9X-S2zu;Ny`=Ql9G^K1ORY@>{qVQkd+q3mO(*H3r{ z6agVl{;t_Ncc-Qu$WtN>&)Yd=m1BcdSuh*kd;J~zN@)v-cLyFzMl9-6?{IcNL(Xk9uI_ir4ehHwVg^_KgeO>VolHEMh3i&srOf)`@VL9FY4F{*Mnck&pE`uN(nVR2n0(ndJ;Of-wW z2!6ZCwZ*=_%GJm=D`d9Xjr_&^XcqN2!BH_4fabl($8p>#o``75 z#Y-?|wX^UMyZQK^3;BQZoA84mzqUle0q1T?QByy$WCN0%C@CS)lXF=*{D$fmkuaEH9+gXVs_x*^~&lW{+ z8J+Q9oIMe8kh4J_`6H|!T8M1)^v_z@j5zJtb9dRr+9lz!3(e3r zX^@iN2!*iK1O|2^-2=@f8mubInp#X%Br7`jAQ7sa<@5q9c{ARsQ)YZ-x$nA*%71$- z(>0h3EAkQfGem)?Otg<$+Gz9f5J+f$@uMX^_M91nt|iZzGdN;tzcY@R1|6hb|8o!d zM)EHs*Dmkh$F#14_PtmDIV+LlCzWwz+C=NF7n%RBiEeK%esNDE9%PuWYHZ#Qi)rv` zgt-Xo=VWvM9W}+qTQsz6v9Dct({6#SGmaXqPW&OEg|8`TT>uE!<5eUy_knWE{h5Pm~xzDiM zC&Ku@$_@m$^4#TG5IzzLGUo(mynZh>7OMGO;%B=?IQWG}=FK@j$yvc{Zy zv`n_LKx>xvbNA$fF0hj#t) z$g>SHE6L4gbHe3I>7Na7E+c%SDvlAYsD%!d8ydzJkGTZNmP}myz&r5JFvofqt0Esd zrW$z1pwcA2dUMQYR$hE)EMuXX@!5Y$=L=*mIlkMyDxonb_kKh(Q_i8T%p_a$kJm>V z(>?2ra+K@tg0J{GVT5Pi7gQHS0GXSH4ok>{k`WVWjhwYpM&&)mHhWe&%bEl+s$HKe z_w}9ej!H03G@YQ*LS&64iREm>?q_O}2F2%!z3(MP>hE%EF)gKmf7vum@^*p|gbW_v z){+5Q(`}9!PGlOUV2>eq2H>r#X)C@L8fA@9ri;fgkQd@XRH+O9s&0YZe8#0HjP?a0wR1wf@FBam0_PMED-;A%Pft-n}q`G1<@{`YHK7`r&zB}s7 zJapaU#81;}kRI@;Dfe(57V6{7trj?$`9F0dUt%)93W8+R8_|bSNs^6X`C0H81zO-3k;!6@SY*a{Xekfh$V3n3vh)>5&2e z0<$8sd)P|e7IHC+>*BX|EcqQ6VMrrDJi6Aj)FwHDfond`$D}z9EZZYUt?!2T_UJ;l zO#ZmOIDao9e!z>r3R6NdT+Ul}JIgRIxWzL56bG|eA{1WyhF>kvGE_W?c-x*w7B;Nj z+ISEB`yp#s|5;1s^q7q_517=AVR!m%PE}~njQc9;PtVsul39?)Y73wh4GkdDx&p2v z`=33h%-BM7w1r|cu+!!&N8nl$^N<`J=$&UOy60WcjTzWN&M7s1BtNnvn)x(dLj*( zi<{C;6Fs-u!HC15ij#2-yyQ9Z{#uB$6V38%fOo%w#EK1n>}PnXB$<4gg}^HqGphwx)zVMCSgAoGL_ zE@ovawPqOZ48HTAP@6Kp*L)`#Pf*H#4klsp&7IDbSVtEhxNpkw%{6iZ1ys$U##HT= z8v9En>i;!fvT-Eg@MFwGF72_N6*jM^oIa{?Kq<5Cg~6U>0AVs>AVRj0X3JLGv#JHHb{60SRj1!OYKOH^1i4){Mkusy3iV9SCH6Fw@=-tBJD z`l%vRg8gEe;N{aK-LhU&6=@+p#7he=JS)UUfybZ`vc%JC#vSM>hOX@0*yFG;oHry0#&NQw+#f&P9^SFN zUv76rsn|B>v{Xl>@Xd4GZY;viTjBTbo&wi6AL;tET(TK+yqACg_V6B6fD9q6ZvEEN zcFXfkzeR*hdn~H0;I{;K!BS3`+CokTiY?Wm9K&hpUH6A8qnq@Qa~;R16A ze^UC;2|~D(k3!t}@?9u;Mwu1>*L&=+(04c;h=cjyg2QoMd(nzd&S=Ed8j}k$M7C5y zB0+9P@L2|F(mRJR)0NhJu!yA9i4L(kD4E|iv$gkW^GaghD97l|s9vfhmE{>jsV67PjX_f*)w(8k%1+-+)U4fBCuCN?!6Qwi7iA~ZfD4+ zZ7+Q}?ztI%NzZB98=TYd1ZP(5s@O6?)PW@;>hG*+*TX8iv$nW%SFI@+%1jMx4H0)1 z&8-a)y(KjZZ57F zeyKJ)dyw>OS+o*Su!h7XfjZ9TTcf?TRx3}y=mIkSv9Kgn0Rj0f)<)9$%K8z^RI9rH zy7;PxQY`7jYVet@0Y#2Dw=suefkrkw=FyyABME!?C%;^GkU2Ue$-K%D2Jdhwg}2r& z{JuN*In@X94s_3aHrcilU%Un{;_x{ui>n6&hj&tkbc4FS-I18`W9v5r2Opjiy$W8x zI)$+CRk`hH12k&!RZ-^gyGn^=A3f4~QG;Rn+(oXRvAzXUo-A6mF2cfqL*@8W=wLBD zXYTTIH`CmoHpFM9vols)Lx-ozPPdZ{)bGDSZy+4)RQQi#HQb(lOo$3Kkk5&0N0-wC zK+Ab2VFf4MVnzxMCUZ3Z@hJaolzE32Q*p%8uXm6T;M=G2(1~>I;E8m_XM8yXj;`qq zq+{dSMMMWz2eT%%3Dxl{O~k}`&NvNB{sbcU$&10`0uSV39wl{rbA+51HU5NDAXT>@(mwzto>m);~T*nhap4;5u0H5do1n@Ec2i!~7KLLDF{sG|g=$}X_|3AM8 zgh;(_3qy;kYx8vf=Zf~PdCYq*zn3yUPnSU;{42Zj-}4{1;J)Su@lyW&r%&^2DgNo- z{_jlx=V1O{as6MC_5bCW8-w%&t4{5%xIS;I@C>@RAWz^9Sh~Y5a9w*0Ner#)d9z2p*=+)k2NSTgtdG_mfc%0$lZCjfj7ykic0i?nnA!b}mdoOlCd?b7_ z56F+kn(Plv3|^{Plv@oVp(yLhyC0%GTsNHkWCj*6w^Cc%jaZs`2_&WZ;}a%>*Io1M zbv_^{lC~KBX$Zz>0LA_h(%IP2rUf*Jd;?q(Cvc5EfdqkCV@uG3-Tv$QHU4-VU3hW# z${6xg$j$wA%T2KCNo7T>{2$_6+C4Ahk2TnW!C^NqcZN`+?_Tc60mJ2s4E&xQ-neqg z$ocu$GT)i|s_r?qCHI=q%rf}qrYtkGz<)WgW1~O5L1lKn?oZmpDGPw}1T&S8QmkV3 z&sQkkP*k5U*MSdrT)y2D*cmBp9cwn9}{X# zkN55~Nd_N2GNCibY&61wh!+l!BuP5lqy#sWiF{+%cXyte)BTe-A`1raJkD+%RIrGC z8}@mkKDl;gHe!K1VMR;5)xdR)2ISB0y0t~2%|m|@ggub?M~DtbYC=?@0Syyfs?0~I zmBVm*RN8;4gujo4I)GGV_Z8j~QnSN3daks_l&OkI9`-bWkLOf$ofWx^f1FfX6oCUf zMHPqK2oW{Y?%;$u$GYa`4@q;Lf3p8^NJxMPIIcAMAYKD=#!W%Wu4qz>kg+WhHuSOJ z;we6+%EEK*xRk|at0bb=_@H|)x>v{vaFSAZczP#se{e}M5np8ccCL24^itRE1RHow z%x`B*{r0q^UVRs8NA^3J7kgvT&r*af%VvCIzZQhb>AUO-2fXQ4mo~n0kwi?erP~a+ zz37HMH^F-aSDUM9Y;EZ+DK)#d!(t(A?qY^I)?>Oj#~|>B+u6%Fy&*D)yPxP!@X|JS ztDz8uZD7cWveDe-M&CfgIY?W`GQj}9s5^mjdE^T3gQ9rW#vOX7!cFI>QCZIW@seEv zEW4QAc!SOEY9W-Zj?w8RPq+~1s#;#(O#Mco>47R&2PW=zJPr^qf-?F{qg2`K7g#3!p#D`z}boCCsq6^E0GhVVwI7MWxRH z4Zq9R;NrA|pVC%UR%~JF1((VlVLay^{PBVv|NHLd@1jC+h7a_FBWZ*FIHJg(@5yoElYS;1 z{XxF-D#UjkTWqtKqBF;4k+%u5echW0+M(ye#bSwKK;u86PcNRGKf*zbndAgEN4`}X zdgSK1Nb7U6&*xvL!_myv-LJe=*d6y?dx}S%{<+(R_7F|QMpF~bz*FH^eg~Ehn%w?9 z2lS`?23VrjM1KNxfwM|8ZzA=&+()6y4NDUpV%8h!cxXu1O7Zl%cAdyTWS|CX`%$}j z^v%8fecCtP&B8bjFbQF6bx1F1eKk!(jG>^UR0D05H<1Sx@sM@*t)shw2sq-P8;?VY z&TJ9WoPABw#vVC#f=zaRI{2AuUMydwUgWda|2<*A{u{st1%E9F^?oYYjziPUYox$M zLl5c>L0?Y;49Zv0FfCZ$lIfPOoYSOQ1lerhZF|6rU(=l@w|%%&8CFUiBEP3x(K8@4 zixU@r@tE!+MUaa#b$D|>?L^_jyT-T-UeiO&7sf>8%Cbe^A}Yb*HG1!LPt$EeRViA| z(7~T1T>iop2QNxc+S|@XK3s=^Iati)cZ6B>tCPr^kns~=PBpsZ{UjfrE@;aRB^Q&+vB{iG*|KC7KqUe;;Rwrtp*B;9{AxT`)YG7$6a`R z#Z=Y5?FUxW81||=KmultO{BO$ygB+;oOFUEn$KN{iM1%zRxMxk#Z7-b*WbO(x=8~64zPeQ=MgTw)ap$U0vO8kLFdd_I-H@F zBrO1p^e0>5D8v;SlG-HRf0xRA#~w%0^85Lkbk8^KHa#X5&eo;cX7F8CZkTxt9rlg% zw8@lG7uiuFyGQW#77&E;^1Pj3&LX>aOu~P;H3RDt9>*@flemgg1c@0@bMt#?Z*B}+ zzP#y8K-V=`t8gF73knhlxRI~c-?YH9h>10L19>!&*>txc3!3DvPa+-~)Vjum-HvcM zSYis+=7HyBp*AC_9d;kq&IduF??r|Ec{!pFJjKQpo5Ra5mc?I|*UiLBo$hv}jr&@A zJZ$k6tf?=Z0iptKMOi+ez!UZtd$0zzDcv?&^;?2ObLu_I(4JKIq=4yHdbaCUYYA#R z&XIgB_t`(R6NFKn?W4NcOdb`c{%cUzX(bo<+cZqN?}_(eQeM)RxRLsJcq=@`!6a2!lk9 ziIed8O<(iDcx@24#fsqAzueF8$MWTI+s8^csE>dX>6RFW^m@koUi>UY|5;)pJzf+P zl;DX1Nj4k(kyEvI$cRe46encG_|l`EhP^riT6*PXa?Is|)WGSuEcwMCV?@kZsIFwo zZ+raod!89Sd~DUqQy=hal_hCa{o2&tiuTd-mD_K?5T00G-$KIt z*$qp<>28mVzRx8JyNH>;!>lsJ_-4g%4q3?EDpe3pOISkBJI05Q3;7+0)DFeDhQekJ z`UKQnPSNpS(c2_{!2dvSogN0(dY}Br3M~R;I?;)~-QSo*OB5L0k7J z6aV+(TYS2b>w9js_0cGro9^1+J?BHJpWs^~8aMAQx2!Rc%xtZN%!zPfZC=pfntGOR zJy$F7ecRp5W^IeoF01osOnRf|4fnFJ(c>G+ksntWsE}YIUZ-|YxMkVgbt=@^Yvq7k zlPmTO-WrXJPIJNhubOy>_68Qz<{0ZjlQSKBa{ZXw@tIIQf2NYA`UupbKs|^*x8-ae zIBm%#SA=EIN{@9-ALM(jHGWyj(3Je`Y49_Km6uzseJ3Sd>7m_OJKLe&#Vg?#>uE;( zoac$?%iLz%og-gC9j#&=#816lU2MEP4gksHG8ZBta%w|iw67& zSy*nfEsPzXxsZsG#dT?BUKeigj->EJred%JL{6-ccE+5{I9e@`=%>_`R8LJf<6XbH zI5kg9$=bZRAWw#WU295@aju-YefXg$x+c}P-)nUq{d?THSSpYagA_G(f?Rz0sr}Be z!Uq_I?Cr<8QWMF=XoMl(^7hw9nH85f9VXpSq!724QUpEmF5a0sD=eTww6bu%C&l6^ zVcJs6eE87~a=CaVj(k8=zAlah@!FmvS!g}q@I><4Eus8ztmKRh&{fvpP?JV}T-l!||5aZFjzUb|Ih*|C*$6Ixk7zW4Yk+NvK$m{HTZ!pr zS5=%(erhT1!(Pw2>*KtMyx{e*b@8vZQoo-YcZX62JKkX-HhNFXP{1xQ)sKXpMCrwK zjbUd1`cFvMtk>%1?jVmt_vLI<^Z<@JF0uP#`=j{18CN9NDB_WA1`(uG?gJYs#U;m$ zU||E(w`)Yv_qH449@9 zYKalDq6K^)$M;w`(!ZmaG22-Cm8Wjbtf5RRGHuOb_i@!XM>vF4Ia!-m+k_eqG4o0C zq+f%Y`D4U~W&&j74i(1zfP|w3E3ue+I^El8!CF>FAF~G9MF;RbuhVQP5T5X;7~B&O zZ!c+9wtlP?#_Ljl*_JU1-DcaHZs3=VU3t0+*%I%x2a;DY1Lh9H81u0>{dg^uXUAQ7 zaFSPwCZ;NEcs)PCemYClUY8VMN#hpx%FR<1Ssj*)i)W8t!BwpgYg#gLr73wYb%t3d zfKR9?mC*UUX66?C0{gp3U89c-4lbyH-IKD_sW%&o#Y6(j-a{Bm%a6@ zSDNsiih4Zf=41WBctuWVD)MccsXv);o3ah8RN!64|8y|VDdOYuBmZ9Hgl|k76kkVg zWog{rtrtq_-{YTvmNGNwxKlYT2@V`F&>bF!lHb`a-Q&b0X zR70W|nDWJ3quSCRXDUHlBEA40ZaWi}&i6z?4YxVNEv4t$X&Uby(s!K;Y(M=~9(yY_ zKVF;-Llkr0MwBb|h5EXlt*5;Lk~QJW!bjr~FoU%+_rnU9U-k&d-f9eX|IwKR7Ay#J z78`H>iGR-_>TJ4Dt_AXeacI^z+_H4KoUQL*t}11Be$KuR1W(2t+_x0i79V%$bu#2X z+j-cPYi@W?ktE2!O};ZrG&@1f>>sI&i8h?EMu;NNk)MX`9&{DN<3a%JhW64(g79@@ zJWr)-Vi48U(tlvO5$3Nk1e+7G>h_qZ($Aa*?bN&(Yo`MYSdZCT+b1d%Aem#-li0gX z&sNSmW(rSpYMSn5yrfi?LPg<5)v2a_Ee3JyuFax*(L8e$txCl16EM*QM3kL?0b@#Bshm zFMkd373(6H@s++fTY@g_W>+7=i952xI^Wqm7+4$GqSzL63}dH`R2-^7xtTV_&N%sPA|Yni8t$wimpQ&JsnXqLMUv=ud3Rp4_ zOeBj!__4WI_rR1W)9>WQ?Ik09;r?2cz1kXcB7s?ri8LpjE_VEQbA2 zL#W5O!Y(v>wFgpDbr!+{%dgzW_#B$n6ON<7Eg4wp%mz^WOa-~S4;U_1Ca7>nyNN3O zH^=jlO0gC320k$vdf5G6-eI$84aiv-5go)$%TUqbB?>>v{4&fSARGaV~ z`LlN8i7-A})6R+H4;ix3pUyM6Z_LbN5`?ohs_yRW+%XTAPWi@_(}v=p%7ZCfv7UGs z^AffcSI${M+BVK;7nUm`i-}8rHS(p~@WfYt=wqFTBVbt$~aF|n)F7bR7zDKzPr}?c!i;X<> zCT{!v=Dx|?kkW&0<`T{fnYf~TENZ|8bh)8Wpxl^wpxQFUn=gDHv^>_KkUE&{JK4g8 zMxr}>0z2Zp^bYL*&5m-SU}B-_C_3*SfT}^y+hZ{)E@_U*VXDA-%2Sxzfg)zJ2{kP7 zjkwmPx<^nH>RXPZgxBDgr=g+fiF%ab81owE1j(1YEDO&Qv)dXmK3;Z9#c3ZIk}8=iW}>>j})NOsnDBR7s+B=bi`*_=nT~M^PaTm^PC@36)INl6$(CbIhx1Bag$V_w>mVkaJ+Rcw`#4Pu?z6-Gt_4_cNNqbc zfup_y4OT=2@|V;$1sL43)}7ytBLWSS*Tm4fqp~^x^QbhI*Xd+Q?#SBH#B^d802UN% zy*X~IIoY|fHbwolrz6vkN{8>QD3Yv`FU3=xsh2^qx;|i}ta-u2i1}4aGL;T&f(ysT zhzts}WvZrF!_>0P*3@FKA2t+vZZYRLlc}-xcpWlj?|)my$p*Qz3Dn7FmdD|y@VF9A zJV*fqa7d18Ci~Zltdzp3Vo_gn555Z)ron<)DTtud-XWHFAH?%}3fv(f=T8f z4BfES7aL!$mpNZX zW5xcfE;n7ksHZ&1a%fG#sd;!&NJZnmE&cB-vXJn0p=XU9!kltO&&B$x`3Baq_oDba zp8I3v+^Mejhd-!J*q3{hRqwn?V2|m42`$3V7uiF1V!9iNG#9dw6<2J!It!rox7t`# z_e@BYp)mdplu2uf{?w^I6-s?^fHj+$$R%)F@v}hj;EX!AAeIN&KS9;Sr=G0r{Becy ztzgBL#vLP9mY)g3dAM*(#`$Y+E!mkjA4p_Zq?zIdiVYYOk^{fCs4PggiW)rumQZ(X zKzwH|ab4VwA`Kmh#4f*(dph86YZlY@2*KyMSMjkuGn?{>1@;r-&t8u)xymW#zR#Wv zOu(Y70yS`LrRv;!Kdl06(n3^EjXTWzZp^8;YV4hH@lK?YLeZI#Xxf9=<*`U}@$DE4 zrt0}5gr133<_X%9K5_UQUHtZs)cza!MaY3)1&}-Ri`XU!t=Mw!jpt-I^o3psf5ZH8 z$pGz}mp~>cHhlb;_QpZF`~_nuQk>zF=Yk{-U+*7ckr1{Xp(31nmG)9+KyD5pt9Mqj ziwqVWq9-OMVM>i-;ff*8GQ1Pa*})fOuBSCN48HX55^;S=0)aryTV(raQOUeAYAq*F zda~VwtE|;e8VI=!HVpfqC!Nli^FxcH1S=HXusylOw<5aLiKD(H*PO-ua6)rjEs$>| zAs#+BukvbKz>g^!zX*Er+m`7{9?ISRyfz=j%dPmLOr+UPEazHo!O<{%OF|T;ie*o- ziutQp0f^*~W1aTru_rGj_DIYXytDI|Udjl`cNj(&9e9i;t&m-%&x{HC{MP zBC9>R{*gKes$0jPipo(f$hd$rTip;OSbx*<3)r&GxGuJ~)W=)ZWP`057TREx8M*Y!*+_=1w%==~x#;i!jyez+}ofry^-$6Izel13`& z`=}0fE8d^%x8sW=VLvGJy-)S|mIXcu2kUpMtu)8slZIKo02YQTauL))B7TMSGrT*G zD14l;VZwW?zbc{9MjrTmhM^tsl2hQZPO`{H=4SSv&owx$AHM1xk-pP;d<*^b_H3~a2oj;R;D>Pq6~YQ5d6&xey+XS6p<&YJ%vpJtiIjxrjsv0PR^9y4CflDm=s$!7p221ncOKowBiresJ{mmeT zD$qC69y5(AnBO3yYy7x9FdYSJy+HV6y=spGGFv*~6#i*)q~T_J`f5;kyGOXgv9wQU4C9EzH-k7`i2pzt)h{U>-BHcj)sPndsY90ps=a9S8X@mK%QV$n1d?*pIsu6TJuyFLEnyc6`Dy>JekJE`IqW%fskyLMp8aos$55#SnYp z=EA!4 z%+7!@P{IFMQ_jU_o7ch$Q<^j@xpZS2`3_FzdKKS?`|zBk!u^X!^yY%BcL1 z*4lc$hrdofr$76G!uv;qm+m7;z45L0c)PEc=9}9YOGI+e#WRP?)q#e8Hc=V|AycP2 zseg4RD=gJ26u!RCR=tL0Q}`|?&%xy*d&=lR5u&5WN4=+JKiO?>aWPuY7x$HWv;Hzy zLUeC9dx8)X-n?}XMHb*FRNa0df0Md*;YG+n=cuF98+}wkwP(eEKJIUxDaB>;P9CmW zOjk*2W)nR*9`0M=;ZUgs&BC535`34;J4)Z7x~;Y=9x-=wZV9UOJ|?J<%6JWBRw?0X zNZlQP0wju%V*7#XDQHa%KQy11sydz|W~O1T)mwX+Ou2M?TxW%b(8Kvob57`_+tPXS zC=sLZ@R{?=dyJS2=h2Nl(L)MgNrArN-WmO*LkK80wkNvBV-|8OP|EIdB!%+*m83`i zIKH|K0||s~yNh2Zdil=!o{xtzM7*Cpe0N=4TN&kMCObIc`LR2l7cp(3lsQF9#i2Ib zLQxI_qlA7o8L^FO27ki~vZ=cY6_`8SAqI-sfKe)B3bMr_aX%bBK<2*gPB>fkULknP zb8_up=9|@}4E7{CT1d)^2yUGNBjCXwI;rs$b&(^p1giiR$9y-dBp%#-(Eb z9jEtHj_>RoBU0j1=s4X4WyGIwcQdm4O2^5@SR|eBSon*++_P@$|8d9Q?-K^qJQqyBFy` zbKlWFJ7HCHXn4-$#Z5Q3bC7ipZP=99#LJ<6r)5ArT;edE4oLaF(<3!Wffw_CzR z9v|+)3R65s5`tA=pbSt^3CE4zz~iodM<%1*6RWj+MfAzK0@7E$DD89Jw?u%U_vvb@ zz-OjBHCo?wyOJe0D^T@ZY+HPLTia@@$zerLZna#I)%$`V$$XlNwwU2wSPlA=mGK+J zFK+`_oby+2%zD2DBiaErRiY|;W*XpF>p|v+2Tw1l4x3C20f>6SHXLy4!7@sM`ixEq`wd6T~)w$yBPBgmeHEL9=ubgupotxfWZv<{ya*+@G`uB7O9Cbw3U~;$_EoHaz3WT2n{Sm4meeXOOj)+EUi6 zfs^qps-B^(lS@PT3#HG?=(P>^zxfNYTEG1j1Z7^y%{~VQk`rJE=<=6$VhGeWAG4$M z!X46>-CCMX*X~8kx$TeN!G(}}5Cs$)=sL9ql^Dad8}4D)#=beYl95m!moq|y(`#(^ zRp@>M+7#X19*jO6-s3oJ**lr_!ZW&LUR}~YGqJjJtN0g-DzL zI3ma*pDm9<*Kn{NAL1C{Ya1>e|3KmxqZZEpmNkuFHQlo1EoiaW;$+CvPi!-{qr9T& z@kjyxP0=}#kgNzQ+0o_Kw7L*9liL9nLFirjufJ5$bGhzxi;&-`I9~nBJLnQ(E-`2q z+vggreDL&XUQtms2K~C^th3m=Q(UZeTi)x(<8uyB`NXx@JXG$*AS>w zOez-Hz`ynO4!bC!Rj=e4=5zKuntcqJ%BV-+SV3Tv96QxiDtb>s09U~?=#F7*>uCDO z)D#?3WhqSA${86<;TAMaMbLlgDU#m&SLs|{!JD`-80dN2UOI-~yK*0B$4&R{mdEkj zJ-tSBWB!J#T0Z4zHmvG4&(lwyZ}dlRB0;p&%C$&&Xt~#y;j5>sO&k4)w$LR08l~k+ zQNo9Qm>t|l7GhEAn;v+Tcyu0T_+JhJPOqd&T&g_o{6*K)$nHH4Uh}K0=Zpgk6-p+3 z^+UcctwG0C4Avo^G^y|g^n1TxT}`%Kg)V*7+Q}|F9llhClnBR1ckF%MQeDmBN=;p2 z_Rn3{SRHO$wfOv(y4VBZkL#%xRysr95}HvMcegTJKY-ApTk-u3>{t<=_J3wlh71s2 zgHjtjg;Uiy5}GpgkiUye^Ov|b2U`>#t_Q0o#b@3>9*=~DfV;ZU3L_?Sh25D}`ou;% zE^X(*r&5EfW3z`t+456b9W4nHvd=(CRdeU*78F|ycm{?qpC=R4WEu9dqTzHToSv%q zcUGI2(6rc{aH}@n=b4ZVUc?tV*j}3IuU;bS5JA&UIIeluV~ucGg+16mF<|cSk5A)n zm03_Wv_6mI=VCcPJ2u?OqkLX7mib}Ox<((Y(MIY_OR|;FO$sP&sB;>iQHc3c*Q_#o zaxpGrJDvqfpD6jAKJSu`)?;|=gX}8C9k`@?dyKlcESR`vp}YfzxZo~d@+n98rZb?^ zaB*c!PI46M#RtXOt@fOn3c|do{(!*fu{(bKCfe2A+z}mB zzb*SNUD0AFx}wmr=EqJCu&HP(>W{x%>AIzJG8=O~5k z|J!c1;(M}nqzMN<)R><`H|k7La(FZ^Zg?X;tu{Qj*$}WfaYFHr6ff~{wb!{jVjcSQ ziS)$yJMlixwD~UngK!S&xT0rj{u1^Z?IZKMfy+6&x$9tJe#VE9WyWltPc0RmnG9ke zNw+(l#u|g&fXdP4mF`1i5%;^mWcQ|h?@|hskcix??-L3DL5+kkp%{NA5glM890k4~ z(R}U9{x*ocTW8XGw++N~hTS}u;8touDGxwMQ>KxA2L#ApZxOJsvL+F*IWbc}@yX4j z>rF(fW-ncc$=b3oX>zW}6|Q>)Y>J&@qh!iG+~^^99law&D%XZD*(HXG*=iq4S@pLs z^SO{+VYflabPcJq4hlz%9wKee&i%Jb*V2?+B#86Zlb@v939j6(jO813kjJ(TUliFKbHQi6)Pxa^;IUU0}Kjc8gi*!0}EUG;`ffZSP z6MHy|9ugxEgWZ=@FmiA(uryF7E|+Z*H`j;*>ImFObzq@ho~1iiIl#Uw;>;{|K&d+X zk!bvid4z$4gkyu7bSGl%62((T@;qLLs z)%kqb@s~%dVl6i~e4TLUPnEwOOIxd4Fsjw$*_!Z$IwVX;I9p5pT#SyU<)h(yfmrlp zNZBWDJSCAm=Wu^q0(Zh@rbLy5dnV!q2|08IF8ZvzycDT+n;66vQ95BwIX6>G^dpW! zHAFtU%geLr#Dup&vgv`@Q_cVb50{xKAL*lATIMCPc%5aLYMVJb6BP}2Fw~IglXTqo z2ZzOsd`qKWmj}d!^UcD-PNa8s)QA*N$}ke1>mE3Z{BeLbUE$Lk?z`f$?9#QQKYj%} zdQY!6SDti4ZgjF?aJF><3wFMfFIH@gu*JC}R`n4~8nd8kd+&4HrG5cp;ABq|r~1av z-kuW9-W(Fn{^k56d_TkXFTXFJ(S#uUq4iTfX?=XGcSzXDs!rVZb`}k+=2T&6-QkA) zd+LslY~iYIH#2Ib<0Etf`Lw$Hp~*fXpVZY}Dxuju*lW_#Em+E=rgnY7S{h_!3^+}q zbvl%T`=?~%_Fcw+mZNw(V0NoQ(jTqYR``F~ z>lEko?6+3>OF{nUD?ZS%^zUl1-&64SZ@*yuK8>6aKJ>^XzTTMat8mQ#&_zwb@k_3D zOiIRxn)jWZvx9t>Qd(WKMpjC9@fS%cr5pH{#%Z5VJu>Ba3FCz}T}PItGJM3`GOF~_ zs+0O|yhi0gNpTXA*>~4hop5ig z6{ALXi#&v`q(d*SeirIU#uNOZ0vYgJj8K40^5%2?f+N?@qaD)Xr!AiIN>MX&m~ z9p&n_*9{s%EZcR3c}E;QabAWPO`!jL>ck+@?7G!U4AIKIp@68W#I%3Pi%9{~YPFv_d48(bWMR3YCV!#GV^ zcnqUiEcKdb!b<~!nb>h~SA??i#=M`p$X95OS8#CiRl8|1r%#o%ogfBro%cy{?L3rM zm-iDdZTF8bikk5;k=5OX(^Bb&uaCUk}lc65>3o*r7JGrn8( zZ=5X)VH8m4^m9^gOB%aGG;#BK+mH7mqxVpoCwgJHnh^!z4O>V!`fK%=?#ntstF^{h zAE0+lz31?zK@n^EmBsjGornb0FY%xaN{ly%>AW=~E;Xo$<;00D@GV;(&n2Y>=i(R4 zJy~TPUKt3lAv!&KM)f@-W%f*0g^-rPkzttIHLl*A5s!jICb)95p~N3aqfPDiwC zz!N2Glces|=$+VVf#499xZOpO*o|dO7qes2J$d3o645Bx021O2)^Vf3k?q!0EhVP| z^&V-YK{2toPl3T3i?mqs+3H?-Aa!*DX4qZ+eUNy%pKsnt5#dA{^GU8jwq@u0D)Gcw#ab4smlF2jEps!*0ej zQ8B)i=NGe9rdyvlG2eU2z0vtw!Tv1>z`_oI{^cA@Ht2g;?)K8s?OW^M8qi9%)%D^` zmiz=Xvp`;Jy#7+aE)5n$%=ng^>N$vjAgi}K|M`cmeEH#0VG`KE&G$_VMJ~|p&l`_9 zAg%ZC?wu$%@B|xP2(yxZk6pKp9=-M&g@ys}sFO}_`=l$f_X=Md~Fj% z*6R=zGxTek+Q?1<@U_pQGZEyTEE*bt?BO+9H*$}dbf#oe)1`u?QB^!UhCleVqzTz3 z9ht1lV_aXqc8n`0?VQ(X#x-z{0PIDL-LY5FiF@<{WYc{k%cOI<`loA3+w*`fah7rt z-mnSj=vTxyI;%#P%gC%Y13Be85MGRw7QX27oiogK3!d&4%7gkFvs;4{QJ`4&)k)0k zfe%X7^jFTz?cuoVV`T<=N0pg$U8#q(8&G<6Jn)Um@;S|0{x97oXGvF@tM!yP%ETjy zi7R}=k6gH6z4+?n1BUBg*mN(%uS|?qs@q1g@A;O(5qd6~Gw-Cy4-B=`E7N-&!8JVG zkqeG^ZqOY49=`MI=|i-oIr9nUYk_0Rw*b5)V`WxmipJ&MgG_8hIc60zuB8c|9ewfd&L|b5`r?NsFokGb6y5)}%I(JpYmF(F*2epkj7)j# zHv0%;$Tz4sh`1}wueuR!>X;cW(5v{*`URy)ECn0Vgim~;h+V95_Q6P85P7IJ?gm|0Heeu5fJ;M zjO`BK$d+F$J}iD^eT9_GhGq;4`S-ZgVa3Qrwbaw!|5-^>7{p=4SdGfgmD zf<+ZuTLED-e4GvG8@5(0E%`N_rmrHevpO$F7PVi_Qpb!81ltIatbPhJaTpi54?zr@ za;i>H9GhSWTWF2V}fHwY?N$&QN$T>v`iLOUu~!5V)93jRoW+brO&NgZ(L;GLU66h2t+*Srcd3F$b~e1 zcCvz=f-dcL2u0cbLyi%NpK459cDb$Oj>HNXJ`^vSo71>13*@lE)gDw=nvP2 z*PG4W6si;64jw~e+TH1|doCl16Y$2rkqQAItB7L-82e~6juK&EjbIHK0J7Ti)KaVo zIpU3>h!j~i0zg(RVuFAzG(*=TidvdLPJq9?=~Xil{*BFDAN zEu&XkqdrMTl=jD`z+#~=hV-!xy;q7REiVT^R+7>-&FmCt)!vHgxgWmD2am}X;w!Y% zmebs$Ix{@WFs~CPH98=EQdUBC9E@^);3e+Sy zG*}s}F&zTUkN?XuW-9s>`~q2_l?Y%O5b{?40$JhdIkv}$f8MvF^vs0b3*saAMI?@7 zwbk#0ngtJ{GJ+Id#Se2iTv4JRILSnb1(HO^)Om=?Cm-d-$dr@or~>%1;I=z>|55{i zOm&dMJIuF0Ayu!=JWyM;40(Ajal#3;W)LWFSZt{C{4$6 znTJlYYHW4n=awFn>3Dim>9=YHBtsD+K z*Jw8O@KGr()O{-(jlhmeQMAajXZ8}puxG>Hb;5%yRZ;wmNcC>NS@M8xthC=0UtJstPH@W+AL+ zi*`Qk&Et(y6|cN6q!!zv)1`tFj~OT$&Vw??jS~CIi!wHhi|9mH{#z_$!AOAhqXQ&K zMo5cTcwTQglfwBI$Ev5EcMm_|)nt_|(S|aO3?bnR*~gTFzO#eJMJCR7G5>js7=`0`(kJFyQw4DTkF7WA1aOu25Kmp&Wj-K;m!q4;ONR5!#QY- zgY$VA>fx+k8Iy@)dtUJyLpafUP(KEEF6ihEr&P1LZ1WZDU{3Opp={h7cZ>bVl33ZB zz63~spG&XFuxt@#qPH(27CkL@OikaQNj5|=)Sp*X4po|HxwBObY`nw|s(wr5J1pfw z=@+7(>-N(xeRnON{0!KF5@xJ)j7t(PZq;_;N#Ti;b!~_^4!-vsWJWdK2(9^*JpDga zLY`v=yb>I{$q#Fh(1MIoI;Pg@+@i~zKw+8Gj?fnfwAj1K!Bbw_m0QP7k^bi*Us=}- z94jkWz3Cjm6|}tfn%}DR8cdBp`U8Xx4ONc{D@u&)dp0q5D?<5wG=reJw$NZHIy}Xg zBZ#V|n=TgH-UJJv<9vFPv=It|HThv!I~DVt?Zw~qCAmZvQ9pwMw(F3LA#-`vO`Pt- z)eg)g{||d_85P&Eg#k9f2~Kbe5FiAX;FjPaK!D)x?(PuWgFA#^!QC5o>qdgRHtw#| zxw-GYH}Bm$Yt35oYi4S(nseZs>Z)D4w$-k$xWuuE6(`O-)RMfJ5VeOna`H%B^wLVoa^6>Gq-O_+ z?8c);1y7xNq=eoM*f6K6ynKPweCVXpv&TabpN+v@(KVApYK?8`h`qUfs7F&IQTv96 z`}H&F8dl17oP~7HU7y;qLUy#Vii$-nm*p3PzTw70D$aZ0`{1|r@0LEaC4K@r!A$7P zx-#SJDOLlp!75|v?J?^r1`EjIo@!exbd&Cs8-BI%pES4Okb#fhHmsT`HV1stUF_UF z^59|h5@#vVg|Rv0Il;}@wga2C-mUR3EyVQ>7w&~vFNP(rgQ{P(dORVyi>7m{{I?*2 ziYAZ%G{A)Ou7LQ+#QbQnM6)i@X-91X4~{OMXN*w;6Pj>8341%r+(=C^XssN!HYmS- ztyJ&CaAQj~&kj8#`jhN8w^w#5jyZk49ScA2*qC?<7o1VEt__;JYtr+ICuTiZf=f;T zSd8m8&R35Mp3=;`931<2&V(X|~AunS8Js9 zZ-M7|5sw&Rn$ln2e6HU=;f}%{v?jRE8M%# zOPW`ad&FX=&zHy~ZRFsN-iU~f6JjnF4C7Dets&=nC8WC4Ad~5&XV(|Cd8fhF&-+!( z?HdoPRcvF?k+3z{sNW2cY}xfY16Ph+0X(Mp!9#yHL#S0(<|QY-%o*>8wRdgRPj4ml zgy=20AGXP$RUOxY=+FCsBhiF}))KV|tQ>`3rjeVjoThSEb`D6uAmawFkgG zx~u4j0J6p$u$#LLgg7toul70Kno>(o9U5LelCTwlst>&yZi2KOxp(;g2EHTLVL~j= z$mdBy3lwpB(+ICuKgJxBJ`*wffjb-d|}bC>bH>zc|mmL~S5;a>sCEE5@!OUHDA$`@G9mk#!4!y$t>uRch1U?U?7S z{#8NcYu@t*bfNwEpH6=RVWcqe%U=2Kc;_G5{kG}#{Y73H4kzS-o8>9!0_1l4p)F6m*B{4 zknCV`SHHK&_Qa7hnVdk}^A7Y z5HB8!j8HpDuZrefl<8}9!v}9H{BKi-_wvc#2;LXxqiHt{<(sSeE?hqzX1@WylowGQzc{;OQ z_5Y2RLQ{I=2v$n^&L<-=Y=ZO;)fAheOJ|cDj!Mk~`rvf?Z z>AyeYP+&`~__gure||tz&?cU|6ThVcYsFO31|+2ORCbXWYZe?6WgEx=s)qK|;WCmUL&}Rxo%CXXX{%pCz=eumQ$tM9Q zUea-#cO-`XWA3sr^d_JrD&R5+2l-P|#!oA>z2FZ%23}`gXx&L8fH~DH+5njW+5_KL4SO+ z>BM!`+aEX(xmz?t=w)E5?+=OyVmtU%;hjVL>z!N`)hwN}(eI@;Cub+%uS9Sm>vh3L z-(*PBm}Jtr;=&!wU1@^z6iuoqk!;~ze99qahXH>>hibZOF|Uk`&&1IgvMRquIO|sz zQ@C|sPNbS_Q4b+Hi*tq(UN4aLm zw%m=kUE#hG4N{D62`(j8j%hl;%mZkCs6SD3&2@1l)oA(h_<$mr!5ekQxiGY?r)5S? zD9hr36Ta0t{M||iF#70$!OpuA@t@dLJ5QA^5IgzBtH(YasbCoFmsO&|@+Sz9&z1eh z=*z|eOv|LPlf*42drf1DtT?RRC&uz)S2diA&llH)Nfj?4C|Q?Hw zzu~@U;Bvp$w@Y+?y&hdA1nPUby=tSQr>83aM&R48oXutQeN7=1T<3-iyz0TSoUA=F z>-|=E0%T=*Cg;*+8J45t$?I%@VO&P^aj@G}d5d?U=KSS(DEH&(yEgM;*RYU(DE+0h zd&!O21-2TB-iL?Ek4Ll&GZ_9I?Q(}LNgjud!5)Vl7t0<+2jwW~^~7LIvNYbL?HDsC z?73egVekNmvE3LkCt4_*ac+z!Uq}S;azk%fJ&JH9feRl*ZLdukUS|?(VW)e3LJM?K z(a#L0u9I`9r}zXVL1Qy%I_^*dGm39;at%j}P7v35gy`QFYf=>3rF?#oW;RQ6m7vLK z-&QQts5H<@!!6OLf4{L|T;V`tfUhQoNiZ7+%I+nan`be~=vEJpiOk00CsCbnon{Me zs!ko3=4|R2b6c{5TI?i36sUXg<#)I6;g2<}j=)E;ttTjkj#c)ykovV?9Zo zJGm(^GHrYSG*Zxyp6NFdx<8eb4W6>D98z$gAy%>0RTM`zv2;F0ehGBKKoH>a?d$X^ zvnc?S(9XsI6P*fqHc}bmiM&k5zms|)pc{X3)WRPtf$owXkzM~b8`UypK#Xj;7>drd za*vCJ6%(Wj`8dVINn=Az&6h=)Mk<$usV?fQH(D*SO{U%V1krGqNp#0$Ng;8w(W90j-hEiFRmOpArGhyD`LhhYR(K>{n znE%8=(Ix5;q`dAhIHD7|Lq$hqEz#_7=S2 zRx2cyRA0z)G3h%o+(t_m(bDX?o+{Y{l4ePU&C1^dE+`tB>>F>c)kS2)v~T?IeIs6B z@F5d)ly5^_uh6>kqA?h~!b=HT9tY>TE7|!cCF1T>%0aa&qaNdI9euv*J`$Zy`OC_A zS7Vxp?;?y`pOPF7R`8L5v7Xt3(~F_*UOZ>P%1%INKR4>+<9pMucNhk_U3#7u^b5v= z@|j~pGGp6=sVqD);=p0og&(C`0D=!U(pe4W&(dktVvZ4{N1Re@*?XC^x;KuS&i|T^ zSd9X&+vzC(UF!2X<3+W@U4mxKM?Aw$Jq9Ahqs`N%wu~<=QbkDPQ|no*1|2!ocE{<0 z+hjrw#wZYNg&5s2C^+*O{ltm$NiEcxc96sxiCsM?uNk6pJka>uWgLDCIhO0)kC%vQ zXC{l*k+N`7x$FAqe^13RtuX-2jSMPj4Ahb8jm5iq;(^wZO3TYwlp4HvnQ1NakXR5L z4M+PQMeC0{v>kmTbxKS;4tdzNdQOPfH6MAa+%m3)QrR++);V<%BC@pz&NX$uYry$3 zW_hJeRay7hg(={lrqPK%-tO3TS`d_%K~f9k0NF6T>YrC?6b%bCMirqHwbq;B5F~p- zpdVQQ;*qph2$Gs%0XWY#_tN8M?SKbq{aFZ871xqx=oahi8LK1etk?uZA9c+b-`LJs zy_h9=TaWV>JsTtG{?FvZaGcz$j-^$JOiJF2*{*D#ZV!pk+KYUG51BKJEqa)fl_HjzTl>R3!KeFv4kmo#4+ zHqirT%?W%`xk5on=}cmUHse%jB+SF`zhwhQ@iCHn6^fU)kaJ_vW;1| zn+D~ldM>`Ztr7bmuE-GrUN1Zwah3b0<~?4M-BB>cdWQ?-|NpW%-ZFicUk}wEmLj{Z?B`L7BdP-G_uoTB%jX zy84J??8OWfJps_g=8}DIa$0zj6VF1`Pm@ zsO|z~_O8{Mx(m z@|ij z@SxH$t&AhiDGddHLM+gZn(HV>v+S$X$!Ta~xDQ5*YD{*2Mk(c3Z?jP%Ha1fT04`)Z>;^_<;%KblA3P3Irs zdlGRCPI3i7bdozu67Cirt(B$B(3>AG(aRt7F}o1Y^{+$pfR}od%~3if(OTGrE=9k2 zoh$Keu+@NtTKzi9>?|!^6;J!NoNhQ0ugl)hXbkN3%3+k+SrYJk!IEuXSXjr{d(|4= zv|zlX@!sSXEGiyW=1-=C>5Gzhg&m&Xqd?yr<&BUTmga>~griZsYtaKlEr~ zueIs_K5Z=5Z|l<;!uyc@#iZlWI?;=rfjD`XTwrUa47d5ddTLYR3u0k*@hBHXwTaDD z)=E*I6BxQns*?Fkx&8jH?r9>Wn&4|^A9a_#_YIX){@){%IG=}EO1wtwuZ6@}1r3ER z##u@WqWj9#s|E$Cu=?7_(eTel97xN`*LX4BX&;GRse3Pfiua18^!1fJFJybMBeG{b zqSuGDzqOv6ZJ+ST`o2*)IlVtj(>IuauhJv|5)Nh71)6SrzfoASU{|z6(`2HDt>*mF5x|TNw7;92 zPhv?H|!3XfVXIh=#+vj*})=SGNw^s4pr7+4~9QMxLC1f}v^2cp+WwU5Ow9B!V6k)NpXS}SQ z_XV4=u{JB1X-1mL2II1AwphCtsPVepE$K8O1$3Aklo|MogtPm}u_h;%C1{58Wu7}E zTLwENe2JhY=2(JwmJF9W&69P{ZOoACqYvz{=%?d@MJ(2KR8lb)i2wk>0&4|a;lx$fGRe_LNYua!e|Qj&beF!*Yd zz!x#YfLFR>!P$wqT%#a>6daMZ`DfS&#@Re_;8R^98SEb6&S$6&E(gCn^{=7`%Wu)xA-FUQO(<(;aAnL)DKWqPmpx!l%g5?NQqCX{KzeL-#zCcjH_=-j z-#PsDp301v#sVQrhD2iGE&a8cYELFU5AUx>?JwVQMsDrI$U&b>&KU?-i%Sf?*nY2_ zGLzi)bYwX9`TlUb`QqODoY;~P?s$FmiD+cvX%ZCU+n=Jt@qo4h78g*DP< zZLHxUotchmTH*b&P=3Wl!uB4zo$(g##8osM^zS)h!U8gBn1z{8IwvFmPv ztM;xF1!DLJk!0ZFa=F#X&`Q)W6z8R6Q=y)wYq&?_CijSAlLGAd&YKyaITQV24c$U~ z{}&O^E=e|6*2q5B`!)U_{1H>6%94^1{Ymf-6`n;1*D}h24o>oYJ7I3xI>x+a1=NgzQs)fs5^DL$vyIX zoK4)FS6=f>)vD=`qW|OtUD;W2⋙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 c4^ojS8y+BYZex3|P=G(T<&t<8 diff --git a/docs/uptime/images/error-list.png b/docs/uptime/images/error-list.png deleted file mode 100644 index 99f017f2945a5b6d9d11f3f92043cd1a71919262..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 269428 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 F{}0~)oACeu literal 147395 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%0An6iD%68!6fw+`siBg2mDty}zcrj6_2~izzlog=O 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 LaIxp?@r(ZxC@g!X diff --git a/docs/uptime/images/observability_integrations.png b/docs/uptime/images/observability_integrations.png index d5c612c7589ca394be23bda410fec7d4c85fd1e7..6589c0c5565dd645035147577855740320297056 100644 GIT binary patch literal 280039 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 + + )} + > + {droppableProvided => ( +
    + + {(provided, snapshot) => ( + + {truncate && !snapshot.isDragging ? ( + + {render(dataProvider, provided, snapshot)} + + ) : ( + + {render(dataProvider, provided, snapshot)} + + )} + + )} + + {droppableProvided.placeholder} +
    + )} + + + + ), + [dataProvider, render, registerProvider, truncate] + ); + + return ( + ); }, (prevProps, nextProps) => diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.test.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.test.tsx new file mode 100644 index 00000000000000..f8b5eb7209ff4b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.test.tsx @@ -0,0 +1,559 @@ +/* + * 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 { mount, ReactWrapper } from 'enzyme'; +import React from 'react'; +import { MockedProvider } from 'react-apollo/test-utils'; + +import { mocksSource } from '../../containers/source/mock'; +import { wait } from '../../lib/helpers'; +import { useKibana } from '../../lib/kibana'; +import { TestProviders } from '../../mock'; +import { createKibanaCoreStartMock } from '../../mock/kibana_core'; +import { FilterManager } from '../../../../../../../src/plugins/data/public'; +import { TimelineContext } from '../timeline/timeline_context'; + +import { DraggableWrapperHoverContent } from './draggable_wrapper_hover_content'; + +jest.mock('../../lib/kibana'); + +jest.mock('uuid', () => { + return { + v1: jest.fn(() => 'uuid.v1()'), + v4: jest.fn(() => 'uuid.v4()'), + }; +}); + +const mockUiSettingsForFilterManager = createKibanaCoreStartMock().uiSettings; +const field = 'process.name'; +const value = 'nice'; + +describe('DraggableWrapperHoverContent', () => { + // Suppress warnings about "react-beautiful-dnd" + /* eslint-disable no-console */ + const originalError = console.error; + const originalWarn = console.warn; + beforeAll(() => { + console.warn = jest.fn(); + console.error = jest.fn(); + }); + afterAll(() => { + console.error = originalError; + console.warn = originalWarn; + }); + + /** + * The tests for "Filter for value" and "Filter out value" are similar enough + * to combine them into "table tests" using this array + */ + const forOrOut = ['for', 'out']; + + forOrOut.forEach(hoverAction => { + describe(`Filter ${hoverAction} value`, () => { + test(`it renders the 'Filter ${hoverAction} value' button when showTopN is false`, () => { + const wrapper = mount( + + + + ); + + expect( + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .exists() + ).toBe(true); + }); + + test(`it does NOT render the 'Filter ${hoverAction} value' button when showTopN is true`, () => { + const wrapper = mount( + + + + ); + + expect( + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .exists() + ).toBe(false); + }); + + describe('when run in the context of a timeline', () => { + let filterManager: FilterManager; + let wrapper: ReactWrapper; + let onFilterAdded: () => void; + + beforeEach(() => { + filterManager = new FilterManager(mockUiSettingsForFilterManager); + filterManager.addFilters = jest.fn(); + onFilterAdded = jest.fn(); + + wrapper = mount( + + + + + + ); + }); + + test('when clicked, it adds a filter to the timeline when running in the context of a timeline', () => { + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .simulate('click'); + wrapper.update(); + + expect(filterManager.addFilters).toBeCalledWith({ + meta: { + alias: null, + disabled: false, + key: 'process.name', + negate: hoverAction === 'out' ? true : false, + params: { query: 'nice' }, + type: 'phrase', + value: 'nice', + }, + query: { match: { 'process.name': { query: 'nice', type: 'phrase' } } }, + }); + }); + + test('when clicked, invokes onFilterAdded when running in the context of a timeline', () => { + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .simulate('click'); + wrapper.update(); + + expect(onFilterAdded).toBeCalled(); + }); + }); + + describe('when NOT run in the context of a timeline', () => { + let wrapper: ReactWrapper; + let onFilterAdded: () => void; + const kibana = useKibana(); + + beforeEach(() => { + kibana.services.data.query.filterManager.addFilters = jest.fn(); + onFilterAdded = jest.fn(); + + wrapper = mount( + + + + ); + }); + + test('when clicked, it adds a filter to the global filters when NOT running in the context of a timeline', () => { + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .simulate('click'); + wrapper.update(); + + expect(kibana.services.data.query.filterManager.addFilters).toBeCalledWith({ + meta: { + alias: null, + disabled: false, + key: 'process.name', + negate: hoverAction === 'out' ? true : false, + params: { query: 'nice' }, + type: 'phrase', + value: 'nice', + }, + query: { match: { 'process.name': { query: 'nice', type: 'phrase' } } }, + }); + }); + + test('when clicked, invokes onFilterAdded when NOT running in the context of a timeline', () => { + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .simulate('click'); + wrapper.update(); + + expect(onFilterAdded).toBeCalled(); + }); + }); + + describe('an empty string value when run in the context of a timeline', () => { + let filterManager: FilterManager; + let wrapper: ReactWrapper; + let onFilterAdded: () => void; + + beforeEach(() => { + filterManager = new FilterManager(mockUiSettingsForFilterManager); + filterManager.addFilters = jest.fn(); + onFilterAdded = jest.fn(); + + wrapper = mount( + + + + + + ); + }); + + const expectedFilterTypeDescription = + hoverAction === 'for' ? 'a "NOT exists"' : 'an "exists"'; + test(`when clicked, it adds ${expectedFilterTypeDescription} filter to the timeline when run in the context of a timeline`, () => { + const expected = + hoverAction === 'for' + ? { + exists: { field: 'process.name' }, + meta: { + alias: null, + disabled: false, + key: 'process.name', + negate: true, + type: 'exists', + value: 'exists', + }, + } + : { + exists: { field: 'process.name' }, + meta: { + alias: null, + disabled: false, + key: 'process.name', + negate: false, + type: 'exists', + value: 'exists', + }, + }; + + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .simulate('click'); + wrapper.update(); + + expect(filterManager.addFilters).toBeCalledWith(expected); + }); + }); + + describe('an empty string value when NOT run in the context of a timeline', () => { + let wrapper: ReactWrapper; + let onFilterAdded: () => void; + const kibana = useKibana(); + + beforeEach(() => { + kibana.services.data.query.filterManager.addFilters = jest.fn(); + onFilterAdded = jest.fn(); + + wrapper = mount( + + + + ); + }); + + const expectedFilterTypeDescription = + hoverAction === 'for' ? 'a "NOT exists"' : 'an "exists"'; + test(`when clicked, it adds ${expectedFilterTypeDescription} filter to the global filters when NOT running in the context of a timeline`, () => { + const expected = + hoverAction === 'for' + ? { + exists: { field: 'process.name' }, + meta: { + alias: null, + disabled: false, + key: 'process.name', + negate: true, + type: 'exists', + value: 'exists', + }, + } + : { + exists: { field: 'process.name' }, + meta: { + alias: null, + disabled: false, + key: 'process.name', + negate: false, + type: 'exists', + value: 'exists', + }, + }; + + wrapper + .find(`[data-test-subj="filter-${hoverAction}-value"]`) + .first() + .simulate('click'); + wrapper.update(); + + expect(kibana.services.data.query.filterManager.addFilters).toBeCalledWith(expected); + }); + }); + }); + }); + + describe('Top N', () => { + test(`it renders the 'Show top field' button when showTopN is false and an aggregatable string field is provided`, async () => { + const aggregatableStringField = 'cloud.account.id'; + const wrapper = mount( + + + + + + ); + + await wait(); // https://github.com/apollographql/react-apollo/issues/1711 + wrapper.update(); + + expect( + wrapper + .find('[data-test-subj="show-top-field"]') + .first() + .exists() + ).toBe(true); + }); + + test(`it renders the 'Show top field' button when showTopN is false and a whitelisted signal field is provided`, async () => { + const whitelistedField = 'signal.rule.name'; + const wrapper = mount( + + + + + + ); + + await wait(); + wrapper.update(); + + expect( + wrapper + .find('[data-test-subj="show-top-field"]') + .first() + .exists() + ).toBe(true); + }); + + test(`it does NOT render the 'Show top field' button when showTopN is false and a field not known to BrowserFields is provided`, async () => { + const notKnownToBrowserFields = 'unknown.field'; + const wrapper = mount( + + + + + + ); + + await wait(); + wrapper.update(); + + expect( + wrapper + .find('[data-test-subj="show-top-field"]') + .first() + .exists() + ).toBe(false); + }); + + test(`invokes the toggleTopN function when the 'Show top field' button is clicked`, async () => { + const toggleTopN = jest.fn(); + const whitelistedField = 'signal.rule.name'; + const wrapper = mount( + + + + + + ); + + await wait(); + wrapper.update(); + + wrapper + .find('[data-test-subj="show-top-field"]') + .first() + .simulate('click'); + wrapper.update(); + + expect(toggleTopN).toBeCalled(); + }); + + test(`it does NOT render the Top N histogram when when showTopN is false`, async () => { + const whitelistedField = 'signal.rule.name'; + const wrapper = mount( + + + + + + ); + + await wait(); + wrapper.update(); + + expect( + wrapper + .find('[data-test-subj="eventsByDatasetOverviewPanel"]') + .first() + .exists() + ).toBe(false); + }); + + test(`it does NOT render the 'Show top field' button when showTopN is true`, async () => { + const whitelistedField = 'signal.rule.name'; + const wrapper = mount( + + + + + + ); + + await wait(); + wrapper.update(); + + expect( + wrapper + .find('[data-test-subj="show-top-field"]') + .first() + .exists() + ).toBe(false); + }); + + test(`it renders the Top N histogram when when showTopN is true`, async () => { + const whitelistedField = 'signal.rule.name'; + const wrapper = mount( + + + + + + ); + + await wait(); + wrapper.update(); + + expect( + wrapper + .find('[data-test-subj="eventsByDatasetOverview-uuid.v4()Panel"]') + .first() + .exists() + ).toBe(true); + }); + }); + + describe('Copy to Clipboard', () => { + test(`it renders the 'Copy to Clipboard' button when showTopN is false`, () => { + const wrapper = mount( + + + + ); + + expect( + wrapper + .find(`[data-test-subj="copy-to-clipboard"]`) + .first() + .exists() + ).toBe(true); + }); + + test(`it does NOT render the 'Copy to Clipboard' button when showTopN is true`, () => { + const wrapper = mount( + + + + ); + + expect( + wrapper + .find(`[data-test-subj="copy-to-clipboard"]`) + .first() + .exists() + ).toBe(false); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.tsx new file mode 100644 index 00000000000000..40725bea498f16 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.tsx @@ -0,0 +1,145 @@ +/* + * 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 { EuiButtonIcon, EuiToolTip } from '@elastic/eui'; +import React, { useCallback, useMemo } from 'react'; + +import { getAllFieldsByName, WithSource } from '../../containers/source'; +import { WithCopyToClipboard } from '../../lib/clipboard/with_copy_to_clipboard'; +import { useKibana } from '../../lib/kibana'; +import { createFilter } from '../page/add_filter_to_global_search_bar'; +import { useTimelineContext } from '../timeline/timeline_context'; +import { StatefulTopN } from '../top_n'; + +import { allowTopN } from './helpers'; +import * as i18n from './translations'; + +interface Props { + field: string; + onFilterAdded?: () => void; + showTopN: boolean; + toggleTopN: () => void; + value?: string[] | string | null; +} + +const DraggableWrapperHoverContentComponent: React.FC = ({ + field, + onFilterAdded, + showTopN, + toggleTopN, + value, +}) => { + const kibana = useKibana(); + const { filterManager: timelineFilterManager } = useTimelineContext(); + const filterManager = useMemo(() => kibana.services.data.query.filterManager, [ + kibana.services.data.query.filterManager, + ]); + + const filterForValue = useCallback(() => { + const filter = + value?.length === 0 ? createFilter(field, undefined) : createFilter(field, value); + const activeFilterManager = timelineFilterManager ?? filterManager; + + if (activeFilterManager != null) { + activeFilterManager.addFilters(filter); + + if (onFilterAdded != null) { + onFilterAdded(); + } + } + }, [field, value, timelineFilterManager, filterManager, onFilterAdded]); + + const filterOutValue = useCallback(() => { + const filter = + value?.length === 0 ? createFilter(field, null, false) : createFilter(field, value, true); + const activeFilterManager = timelineFilterManager ?? filterManager; + + if (activeFilterManager != null) { + activeFilterManager.addFilters(filter); + + if (onFilterAdded != null) { + onFilterAdded(); + } + } + }, [field, value, timelineFilterManager, filterManager, onFilterAdded]); + + return ( + <> + {!showTopN && value != null && ( + + + + )} + + {!showTopN && value != null && ( + + + + )} + + + {({ browserFields }) => ( + <> + {allowTopN({ + browserField: getAllFieldsByName(browserFields)[field], + fieldName: field, + }) && ( + <> + {!showTopN && ( + + + + )} + + {showTopN && ( + + )} + + )} + + )} + + + {!showTopN && ( + + + + )} + + ); +}; + +DraggableWrapperHoverContentComponent.displayName = 'DraggableWrapperHoverContentComponent'; + +export const DraggableWrapperHoverContent = React.memo(DraggableWrapperHoverContentComponent); diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.test.ts b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.test.ts index af4b9b280f3cde..753fa5b54eadef 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.test.ts +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.test.ts @@ -4,7 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ +import { omit } from 'lodash/fp'; + import { + allowTopN, destinationIsTimelineButton, destinationIsTimelineColumns, destinationIsTimelineProviders, @@ -717,4 +720,96 @@ describe('helpers', () => { expect(escaped).toEqual('hello.how.are.you?'); }); }); + + describe('#allowTopN', () => { + const aggregatableAllowedType = { + category: 'cloud', + description: + 'The cloud account or organization id used to identify different entities in a multi-tenant environment. Examples: AWS account id, Google Cloud ORG Id, or other unique identifier.', + example: '666777888999', + indexes: ['auditbeat', 'filebeat', 'packetbeat'], + name: 'cloud.account.id', + searchable: true, + type: 'string', + aggregatable: true, + format: '', + }; + + test('it returns true for an aggregatable field that is an allowed type', () => { + expect( + allowTopN({ + browserField: aggregatableAllowedType, + fieldName: aggregatableAllowedType.name, + }) + ).toBe(true); + }); + + test('it returns true for a whitelisted non-BrowserField', () => { + expect( + allowTopN({ + browserField: undefined, + fieldName: 'signal.rule.name', + }) + ).toBe(true); + }); + + test('it returns false for a NON-aggregatable field that is an allowed type', () => { + const nonAggregatableAllowedType = { + ...aggregatableAllowedType, + aggregatable: false, + }; + + expect( + allowTopN({ + browserField: nonAggregatableAllowedType, + fieldName: nonAggregatableAllowedType.name, + }) + ).toBe(false); + }); + + test('it returns false for a aggregatable field that is NOT an allowed type', () => { + const aggregatableNotAllowedType = { + ...aggregatableAllowedType, + type: 'not-an-allowed-type', + }; + + expect( + allowTopN({ + browserField: aggregatableNotAllowedType, + fieldName: aggregatableNotAllowedType.name, + }) + ).toBe(false); + }); + + test('it returns false if the BrowserField is missing the aggregatable property', () => { + const missingAggregatable = omit('aggregatable', aggregatableAllowedType); + + expect( + allowTopN({ + browserField: missingAggregatable, + fieldName: missingAggregatable.name, + }) + ).toBe(false); + }); + + test('it returns false if the BrowserField is missing the type property', () => { + const missingType = omit('type', aggregatableAllowedType); + + expect( + allowTopN({ + browserField: missingType, + fieldName: missingType.name, + }) + ).toBe(false); + }); + + test('it returns false for a non-whitelisted field when a BrowserField is not provided', () => { + expect( + allowTopN({ + browserField: undefined, + fieldName: 'non-whitelisted', + }) + ).toBe(false); + }); + }); }); diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.ts b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.ts index 82ddd2c9f29d76..cd3d7cc68d5375 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.ts +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/helpers.ts @@ -9,7 +9,7 @@ import { DropResult } from 'react-beautiful-dnd'; import { Dispatch } from 'redux'; import { ActionCreator } from 'typescript-fsa'; -import { BrowserFields, getAllFieldsByName } from '../../containers/source'; +import { BrowserField, BrowserFields, getAllFieldsByName } from '../../containers/source'; import { IdToDataProvider } from '../../store/drag_and_drop/model'; import { ColumnHeaderOptions } from '../../store/timeline/model'; import { DEFAULT_COLUMN_MIN_WIDTH } from '../timeline/body/constants'; @@ -227,3 +227,98 @@ export const IS_DRAGGING_CLASS_NAME = 'is-dragging'; /** This class is added to the document body while timeline field dragging */ export const IS_TIMELINE_FIELD_DRAGGING_CLASS_NAME = 'is-timeline-field-dragging'; + +export const allowTopN = ({ + browserField, + fieldName, +}: { + browserField: Partial | undefined; + fieldName: string; +}): boolean => { + const isAggregatable = browserField?.aggregatable ?? false; + const fieldType = browserField?.type ?? ''; + const isAllowedType = [ + 'boolean', + 'geo-point', + 'geo-shape', + 'ip', + 'keyword', + 'number', + 'numeric', + 'string', + ].includes(fieldType); + + // TODO: remove this explicit whitelist when the ECS documentation includes signals + const isWhitelistedNonBrowserField = [ + 'signal.ancestors.depth', + 'signal.ancestors.id', + 'signal.ancestors.rule', + 'signal.ancestors.type', + 'signal.original_event.action', + 'signal.original_event.category', + 'signal.original_event.code', + 'signal.original_event.created', + 'signal.original_event.dataset', + 'signal.original_event.duration', + 'signal.original_event.end', + 'signal.original_event.hash', + 'signal.original_event.id', + 'signal.original_event.kind', + 'signal.original_event.module', + 'signal.original_event.original', + 'signal.original_event.outcome', + 'signal.original_event.provider', + 'signal.original_event.risk_score', + 'signal.original_event.risk_score_norm', + 'signal.original_event.sequence', + 'signal.original_event.severity', + 'signal.original_event.start', + 'signal.original_event.timezone', + 'signal.original_event.type', + 'signal.original_time', + 'signal.parent.depth', + 'signal.parent.id', + 'signal.parent.index', + 'signal.parent.rule', + 'signal.parent.type', + 'signal.rule.created_by', + 'signal.rule.description', + 'signal.rule.enabled', + 'signal.rule.false_positives', + 'signal.rule.filters', + 'signal.rule.from', + 'signal.rule.id', + 'signal.rule.immutable', + 'signal.rule.index', + 'signal.rule.interval', + 'signal.rule.language', + 'signal.rule.max_signals', + 'signal.rule.name', + 'signal.rule.note', + 'signal.rule.output_index', + 'signal.rule.query', + 'signal.rule.references', + 'signal.rule.risk_score', + 'signal.rule.rule_id', + 'signal.rule.saved_id', + 'signal.rule.severity', + 'signal.rule.size', + 'signal.rule.tags', + 'signal.rule.threat', + 'signal.rule.threat.tactic.id', + 'signal.rule.threat.tactic.name', + 'signal.rule.threat.tactic.reference', + 'signal.rule.threat.technique.id', + 'signal.rule.threat.technique.name', + 'signal.rule.threat.technique.reference', + 'signal.rule.timeline_id', + 'signal.rule.timeline_title', + 'signal.rule.to', + 'signal.rule.type', + 'signal.rule.updated_by', + 'signal.rule.version', + 'signal.status', + ].includes(fieldName); + + return isWhitelistedNonBrowserField || (isAggregatable && isAllowedType); +}; diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/translations.ts b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/translations.ts new file mode 100644 index 00000000000000..61d036635a250a --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/translations.ts @@ -0,0 +1,33 @@ +/* + * 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'; + +export const COPY_TO_CLIPBOARD = i18n.translate('xpack.siem.dragAndDrop.copyToClipboardTooltip', { + defaultMessage: 'Copy to Clipboard', +}); + +export const FIELD = i18n.translate('xpack.siem.dragAndDrop.fieldLabel', { + defaultMessage: 'Field', +}); + +export const FILTER_FOR_VALUE = i18n.translate('xpack.siem.dragAndDrop.filterForValueHoverAction', { + defaultMessage: 'Filter for value', +}); + +export const FILTER_OUT_VALUE = i18n.translate('xpack.siem.dragAndDrop.filterOutValueHoverAction', { + defaultMessage: 'Filter out value', +}); + +export const CLOSE = i18n.translate('xpack.siem.dragAndDrop.closeButtonLabel', { + defaultMessage: 'Close', +}); + +export const SHOW_TOP = (fieldName: string) => + i18n.translate('xpack.siem.overview.showTopTooltip', { + values: { fieldName }, + defaultMessage: `Show top {fieldName}`, + }); diff --git a/x-pack/legacy/plugins/siem/public/components/draggables/__snapshots__/index.test.tsx.snap b/x-pack/legacy/plugins/siem/public/components/draggables/__snapshots__/index.test.tsx.snap index 63ba13306ecd8b..93608a181adffa 100644 --- a/x-pack/legacy/plugins/siem/public/components/draggables/__snapshots__/index.test.tsx.snap +++ b/x-pack/legacy/plugins/siem/public/components/draggables/__snapshots__/index.test.tsx.snap @@ -10,6 +10,7 @@ exports[`draggables rendering it renders the default Badge 1`] = ` A child of this diff --git a/x-pack/legacy/plugins/siem/public/components/draggables/index.tsx b/x-pack/legacy/plugins/siem/public/components/draggables/index.tsx index 1fe6c936d2823b..a0b825ea244415 100644 --- a/x-pack/legacy/plugins/siem/public/components/draggables/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/draggables/index.tsx @@ -167,7 +167,7 @@ export const DraggableBadge = React.memo( tooltipContent={tooltipContent} queryValue={queryValue} > - + {children ? children : value !== '' ? value : getEmptyStringTag()} diff --git a/x-pack/legacy/plugins/siem/public/components/event_details/columns.tsx b/x-pack/legacy/plugins/siem/public/components/event_details/columns.tsx index cd94a9fdcb5ac0..131a3a63bae309 100644 --- a/x-pack/legacy/plugins/siem/public/components/event_details/columns.tsx +++ b/x-pack/legacy/plugins/siem/public/components/event_details/columns.tsx @@ -21,7 +21,6 @@ import styled from 'styled-components'; import { BrowserFields } from '../../containers/source'; import { ToStringArray } from '../../graphql/types'; -import { WithCopyToClipboard } from '../../lib/clipboard/with_copy_to_clipboard'; import { ColumnHeaderOptions } from '../../store/timeline/model'; import { DragEffects } from '../drag_and_drop/draggable_wrapper'; import { DroppableWrapper } from '../drag_and_drop/droppable_wrapper'; @@ -35,7 +34,6 @@ import { DEFAULT_COLUMN_MIN_WIDTH } from '../timeline/body/constants'; import { MESSAGE_FIELD_NAME } from '../timeline/body/renderers/constants'; import { FormattedFieldValue } from '../timeline/body/renderers/formatted_field'; import { OnUpdateColumns } from '../timeline/events'; -import { WithHoverActions } from '../with_hover_actions'; import { getIconFromType, getExampleText, getColumnsWithTimestamp } from './helpers'; import * as i18n from './translations'; import { EventFieldsData } from './types'; @@ -172,29 +170,18 @@ export const getColumns = ({ component="span" key={`event-details-value-flex-item-${contextId}-${eventId}-${data.field}-${i}-${value}`} > - - - - - - } - render={() => - data.field === MESSAGE_FIELD_NAME ? ( - - ) : ( - - ) - } - /> + {data.field === MESSAGE_FIELD_NAME ? ( + + ) : ( + + )} ))} diff --git a/x-pack/legacy/plugins/siem/public/components/events_viewer/events_viewer.tsx b/x-pack/legacy/plugins/siem/public/components/events_viewer/events_viewer.tsx index ea2cb661763fab..d210c749dae9c7 100644 --- a/x-pack/legacy/plugins/siem/public/components/events_viewer/events_viewer.tsx +++ b/x-pack/legacy/plugins/siem/public/components/events_viewer/events_viewer.tsx @@ -95,6 +95,7 @@ const EventsViewerComponent: React.FC = ({ }) => { const columnsHeader = isEmpty(columns) ? defaultHeaders : columns; const kibana = useKibana(); + const { filterManager } = useKibana().services.data.query; const combinedQueries = combineQueries({ config: esQuery.getEsQueryConfig(kibana.services.uiSettings), dataProviders, @@ -168,7 +169,11 @@ const EventsViewerComponent: React.FC = ({ {utilityBar?.(refetch, totalCountMinusDeleted)} - + { }); }); - test('it renders a hover actions panel for the category name', () => { - const wrapper = mount( - - - - ); - expect( - wrapper - .find('[data-test-subj="category-link"]') - .first() - .find('[data-test-subj="hover-actions-panel-container"]') - .first() - .exists() - ).toBe(true); - }); - test('it renders the selected category with bold text', () => { const selectedCategoryId = 'auditd'; diff --git a/x-pack/legacy/plugins/siem/public/components/fields_browser/category_columns.tsx b/x-pack/legacy/plugins/siem/public/components/fields_browser/category_columns.tsx index 0c7dd7e908ce33..7133e9b848c5ca 100644 --- a/x-pack/legacy/plugins/siem/public/components/fields_browser/category_columns.tsx +++ b/x-pack/legacy/plugins/siem/public/components/fields_browser/category_columns.tsx @@ -6,15 +6,7 @@ /* eslint-disable react/display-name */ -import { - EuiIcon, - EuiFlexGroup, - EuiFlexItem, - EuiLink, - EuiPanel, - EuiText, - EuiToolTip, -} from '@elastic/eui'; +import { EuiIcon, EuiFlexGroup, EuiFlexItem, EuiLink, EuiText, EuiToolTip } from '@elastic/eui'; import React, { useContext } from 'react'; import styled from 'styled-components'; @@ -35,22 +27,6 @@ const CategoryName = styled.span<{ bold: boolean }>` CategoryName.displayName = 'CategoryName'; -const HoverActionsContainer = styled(EuiPanel)` - cursor: default; - left: 5px; - padding: 8px; - position: absolute; - top: -8px; -`; - -HoverActionsContainer.displayName = 'HoverActionsContainer'; - -const HoverActionsFlexGroup = styled(EuiFlexGroup)` - cursor: pointer; -`; - -HoverActionsFlexGroup.displayName = 'HoverActionsFlexGroup'; - const LinkContainer = styled.div` width: 100%; .euiLink { @@ -71,7 +47,7 @@ interface ToolTipProps { } const ToolTip = React.memo(({ categoryId, browserFields, onUpdateColumns }) => { - const isLoading = useContext(TimelineContext); + const { isLoading } = useContext(TimelineContext); return ( {!isLoading ? ( @@ -127,25 +103,11 @@ export const getCategoryColumns = ({ - - - - - - + } render={() => ( { expect(wrapper.find('[data-test-subj="copy-to-clipboard"]').exists()).toBe(true); }); - test('it renders a view category action menu item a user hovers over the name', () => { - const wrapper = mount( - - - - ); - - wrapper.simulate('mouseenter'); - wrapper.update(); - expect(wrapper.find('[data-test-subj="view-category"]').exists()).toBe(true); - }); - - test('it invokes onUpdateColumns when the view category action menu item is clicked', () => { - const onUpdateColumns = jest.fn(); - - const wrapper = mount( - - - - ); - - wrapper.simulate('mouseenter'); - wrapper.update(); - wrapper - .find('[data-test-subj="view-category"]') - .first() - .simulate('click'); - - expect(onUpdateColumns).toBeCalledWith([ - { - aggregatable: true, - category: 'base', - columnHeaderType: 'not-filtered', - description: - 'Date/time when the event originated. For log events this is the date/time when the event was generated, and not when it was read. Required field for all events.', - example: '2016-05-23T08:05:34.853Z', - id: '@timestamp', - type: 'date', - width: 190, - }, - ]); - }); - test('it highlights the text specified by the `highlight` prop', () => { const highlight = 'stamp'; diff --git a/x-pack/legacy/plugins/siem/public/components/fields_browser/field_name.tsx b/x-pack/legacy/plugins/siem/public/components/fields_browser/field_name.tsx index fe434a6ad63cee..fc9633b6f87485 100644 --- a/x-pack/legacy/plugins/siem/public/components/fields_browser/field_name.tsx +++ b/x-pack/legacy/plugins/siem/public/components/fields_browser/field_name.tsx @@ -4,26 +4,17 @@ * you may not use this file except in compliance with the Elastic License. */ -import { - EuiButtonIcon, - EuiHighlight, - EuiIcon, - EuiFlexGroup, - EuiFlexItem, - EuiPanel, - EuiText, - EuiToolTip, -} from '@elastic/eui'; -import React, { useContext } from 'react'; +import { EuiButtonIcon, EuiHighlight, EuiIcon, EuiText, EuiToolTip } from '@elastic/eui'; +import React, { useCallback, useContext, useState, useMemo } from 'react'; import styled from 'styled-components'; -import { WithCopyToClipboard } from '../../lib/clipboard/with_copy_to_clipboard'; import { ColumnHeaderOptions } from '../../store/timeline/model'; import { OnUpdateColumns } from '../timeline/events'; import { TimelineContext } from '../timeline/timeline_context'; import { WithHoverActions } from '../with_hover_actions'; import { LoadingSpinner } from './helpers'; import * as i18n from './translations'; +import { DraggableWrapperHoverContent } from '../drag_and_drop/draggable_wrapper_hover_content'; /** * The name of a (draggable) field @@ -82,22 +73,6 @@ export const FieldNameContainer = styled.span` FieldNameContainer.displayName = 'FieldNameContainer'; -const HoverActionsContainer = styled(EuiPanel)` - cursor: default; - left: 5px; - padding: 4px; - position: absolute; - top: -6px; -`; - -HoverActionsContainer.displayName = 'HoverActionsContainer'; - -const HoverActionsFlexGroup = styled(EuiFlexGroup)` - cursor: pointer; -`; - -HoverActionsFlexGroup.displayName = 'HoverActionsFlexGroup'; - const ViewCategoryIcon = styled(EuiIcon)` margin-left: 5px; `; @@ -112,7 +87,7 @@ interface ToolTipProps { const ViewCategory = React.memo( ({ categoryId, onUpdateColumns, categoryColumns }) => { - const isLoading = useContext(TimelineContext); + const { isLoading } = useContext(TimelineContext); return ( {!isLoading ? ( @@ -142,48 +117,33 @@ export const FieldName = React.memo<{ fieldId: string; highlight?: string; onUpdateColumns: OnUpdateColumns; -}>(({ categoryId, categoryColumns, fieldId, highlight = '', onUpdateColumns }) => ( - - - - - - - - - {categoryColumns.length > 0 && ( - - - - )} - - - } - render={() => ( - - +}>(({ fieldId, highlight = '' }) => { + const [showTopN, setShowTopN] = useState(false); + const toggleTopN = useCallback(() => { + setShowTopN(!showTopN); + }, [setShowTopN, showTopN]); + + const hoverContent = useMemo( + () => ( + + ), + [fieldId, showTopN, toggleTopN] + ); + + const render = useCallback( + () => ( + + {fieldId} - - - )} - /> -)); + + + ), + [fieldId, highlight] + ); + + return ; +}); FieldName.displayName = 'FieldName'; diff --git a/x-pack/legacy/plugins/siem/public/components/header_page/title.tsx b/x-pack/legacy/plugins/siem/public/components/header_page/title.tsx index a1f3cfd8571483..59039ddd6a23ba 100644 --- a/x-pack/legacy/plugins/siem/public/components/header_page/title.tsx +++ b/x-pack/legacy/plugins/siem/public/components/header_page/title.tsx @@ -51,7 +51,9 @@ const TitleComponent: React.FC = ({ draggableArguments, title, badgeOptio tooltipPosition="bottom" /> ) : ( - {badgeOptions.text} + + {badgeOptions.text} + )} )} diff --git a/x-pack/legacy/plugins/siem/public/components/header_section/__snapshots__/index.test.tsx.snap b/x-pack/legacy/plugins/siem/public/components/header_section/__snapshots__/index.test.tsx.snap index d4c3763f514604..53b41e2240de23 100644 --- a/x-pack/legacy/plugins/siem/public/components/header_section/__snapshots__/index.test.tsx.snap +++ b/x-pack/legacy/plugins/siem/public/components/header_section/__snapshots__/index.test.tsx.snap @@ -11,13 +11,18 @@ exports[`HeaderSection it renders 1`] = ` responsive={false} > - +

    Test title

    +
    diff --git a/x-pack/legacy/plugins/siem/public/components/header_section/index.test.tsx b/x-pack/legacy/plugins/siem/public/components/header_section/index.test.tsx index bc4692b6fe0c58..e61b39691203c8 100644 --- a/x-pack/legacy/plugins/siem/public/components/header_section/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/header_section/index.test.tsx @@ -48,7 +48,7 @@ describe('HeaderSection', () => { ).toBe(true); }); - test('it DOES NOT render the subtitle when not provided', () => { + test('renders the subtitle when not provided (to prevent layout thrash)', () => { const wrapper = mount( @@ -60,7 +60,7 @@ describe('HeaderSection', () => { .find('[data-test-subj="header-section-subtitle"]') .first() .exists() - ).toBe(false); + ).toBe(true); }); test('it renders supplements when children provided', () => { diff --git a/x-pack/legacy/plugins/siem/public/components/header_section/index.tsx b/x-pack/legacy/plugins/siem/public/components/header_section/index.tsx index 3153e785a8a32e..43245121dd3936 100644 --- a/x-pack/legacy/plugins/siem/public/components/header_section/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/header_section/index.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiFlexGroup, EuiFlexItem, EuiIconTip, EuiTitle } from '@elastic/eui'; +import { EuiFlexGroup, EuiFlexItem, EuiIconTip, EuiTitle, EuiTitleSize } from '@elastic/eui'; import React from 'react'; import styled, { css } from 'styled-components'; @@ -36,6 +36,7 @@ export interface HeaderSectionProps extends HeaderProps { split?: boolean; subtitle?: string | React.ReactNode; title: string | React.ReactNode; + titleSize?: EuiTitleSize; tooltip?: string; } @@ -46,6 +47,7 @@ const HeaderSectionComponent: React.FC = ({ split, subtitle, title, + titleSize = 'm', tooltip, }) => (
    @@ -53,7 +55,7 @@ const HeaderSectionComponent: React.FC = ({ - +

    {title} {tooltip && ( @@ -65,7 +67,7 @@ const HeaderSectionComponent: React.FC = ({

    - {subtitle && } +
    {id && ( diff --git a/x-pack/legacy/plugins/siem/public/components/links/index.test.tsx b/x-pack/legacy/plugins/siem/public/components/links/index.test.tsx index d2d1d6569854d4..214c0294f2cf42 100644 --- a/x-pack/legacy/plugins/siem/public/components/links/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/links/index.test.tsx @@ -24,6 +24,8 @@ import { ExternalLink, } from '.'; +jest.mock('../../pages/overview/events_by_dataset'); + jest.mock('../../lib/kibana', () => { return { useUiSetting$: jest.fn(), diff --git a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/__snapshots__/index.test.tsx.snap b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/__snapshots__/index.test.tsx.snap index 0e518e48e2e888..5aa846d15b684b 100644 --- a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/__snapshots__/index.test.tsx.snap +++ b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/__snapshots__/index.test.tsx.snap @@ -1,5 +1,5 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`Matrix Histogram Component not initial load it renders no MatrixLoader 1`] = `"
    "`; +exports[`Matrix Histogram Component not initial load it renders no MatrixLoader 1`] = `"
    "`; -exports[`Matrix Histogram Component on initial load it renders MatrixLoader 1`] = `"
    "`; +exports[`Matrix Histogram Component on initial load it renders MatrixLoader 1`] = `"
    "`; diff --git a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.test.tsx b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.test.tsx index db5b1f7f03ee3d..3b8a43a0f395a8 100644 --- a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.test.tsx @@ -87,6 +87,17 @@ describe('Matrix Histogram Component', () => { }); }); + describe('spacer', () => { + test('it renders a spacer by default', () => { + expect(wrapper.find('[data-test-subj="spacer"]').exists()).toBe(true); + }); + + test('it does NOT render a spacer when showSpacer is false', () => { + wrapper = mount(); + expect(wrapper.find('[data-test-subj="spacer"]').exists()).toBe(false); + }); + }); + describe('not initial load', () => { beforeAll(() => { (useQuery as jest.Mock).mockReturnValue({ diff --git a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.tsx b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.tsx index 12a474009dc5b1..3d4eebd68319ca 100644 --- a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/index.tsx @@ -37,6 +37,7 @@ import { import { SetQuery } from '../../pages/hosts/navigation/types'; import { QueryTemplateProps } from '../../containers/query_template'; import { setAbsoluteRangeDatePicker } from '../../store/inputs/actions'; +import { InputsModelId } from '../../store/inputs/constants'; import { HistogramType } from '../../graphql/types'; export interface OwnProps extends QueryTemplateProps { @@ -46,9 +47,12 @@ export interface OwnProps extends QueryTemplateProps { hideHistogramIfEmpty?: boolean; histogramType: HistogramType; id: string; + indexToAdd?: string[] | null; legendPosition?: Position; mapping?: MatrixHistogramMappingTypes; + showSpacer?: boolean; setQuery: SetQuery; + setAbsoluteRangeDatePickerTarget?: InputsModelId; showLegend?: boolean; stackByOptions: MatrixHistogramOption[]; subtitle?: string | GetSubTitle; @@ -62,6 +66,7 @@ const HeaderChildrenFlexItem = styled(EuiFlexItem)` margin-left: 24px; `; +// @ts-ignore - the EUI type definitions for Panel do no play nice with styled-components const HistogramPanel = styled(Panel)<{ height?: number }>` display: flex; flex-direction: column; @@ -79,16 +84,20 @@ export const MatrixHistogramComponent: React.FC { @@ -100,7 +109,11 @@ export const MatrixHistogramComponent: React.FC { - dispatchSetAbsoluteRangeDatePicker({ id: 'global', from: min, to: max }); + dispatchSetAbsoluteRangeDatePicker({ + id: setAbsoluteRangeDatePickerTarget, + from: min, + to: max, + }); }, yTickFormatter, showLegend, @@ -122,7 +135,7 @@ export const MatrixHistogramComponent: React.FC) => { setSelectedStackByOption( - stackByOptions?.find(co => co.value === event.target.value) ?? defaultStackByOption + stackByOptions.find(co => co.value === event.target.value) ?? defaultStackByOption ); }, [] @@ -134,6 +147,7 @@ export const MatrixHistogramComponent: React.FC (title != null && typeof title === 'function' ? title(selectedStackByOption) : title), [title, selectedStackByOption] ); - const subtitleWithCounts = useMemo( - () => (subtitle != null && typeof subtitle === 'function' ? subtitle(totalCount) : subtitle), - [subtitle, totalCount] - ); + const subtitleWithCounts = useMemo(() => { + if (isInitialLoading) { + return null; + } + + if (typeof subtitle === 'function') { + return totalCount >= 0 ? subtitle(totalCount) : null; + } + + return subtitle; + }, [isInitialLoading, subtitle, totalCount]); const hideHistogram = useMemo(() => (totalCount <= 0 && hideHistogramIfEmpty ? true : false), [ totalCount, hideHistogramIfEmpty, @@ -155,7 +176,9 @@ export const MatrixHistogramComponent: React.FC getCustomChartData(data, mapping), [data, mapping]); useEffect(() => { - setQuery({ id, inspect, loading, refetch }); + if (!loading && !isInitialLoading) { + setQuery({ id, inspect, loading, refetch }); + } if (isInitialLoading && !!barChartData && data) { setIsInitialLoading(false); @@ -189,59 +212,39 @@ export const MatrixHistogramComponent: React.FC )} + + + + {stackByOptions.length > 1 && ( + + )} + + {headerChildren} + + + {isInitialLoading ? ( - <> - = 0 ? subtitleWithCounts : null)} - > - - - {stackByOptions?.length > 1 && ( - - )} - - {headerChildren} - - - - + ) : ( - <> - = 0 ? subtitleWithCounts : null) - } - > - - - {stackByOptions?.length > 1 && ( - - )} - - {headerChildren} - - - - + )} - + {showSpacer && } ); }; diff --git a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/types.ts b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/types.ts index a435c7be6c8905..c59775ad325d07 100644 --- a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/types.ts +++ b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/types.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ +import { EuiTitleSize } from '@elastic/eui'; import { ScaleType, Position, TickFormatter } from '@elastic/charts'; import { ActionCreator } from 'redux'; import { ESQuery } from '../../../common/typed_json'; @@ -34,6 +35,7 @@ export interface MatrixHisrogramConfigs { stackByOptions: MatrixHistogramOption[]; subtitle?: string | GetSubTitle; title: string | GetTitle; + titleSize?: EuiTitleSize; } interface MatrixHistogramBasicProps { @@ -57,14 +59,22 @@ interface MatrixHistogramBasicProps { stackByOptions: MatrixHistogramOption[]; subtitle?: string | GetSubTitle; title?: string | GetTitle; + titleSize?: EuiTitleSize; } export interface MatrixHistogramQueryProps { endDate: number; errorMessage: string; filterQuery?: ESQuery | string | undefined; + setAbsoluteRangeDatePicker?: ActionCreator<{ + id: InputsModelId; + from: number; + to: number; + }>; + setAbsoluteRangeDatePickerTarget?: InputsModelId; stackByField: string; startDate: number; + indexToAdd?: string[] | null; isInspected: boolean; histogramType: HistogramType; } @@ -73,6 +83,7 @@ export interface MatrixHistogramProps extends MatrixHistogramBasicProps { scaleType?: ScaleType; yTickFormatter?: (value: number) => string; showLegend?: boolean; + showSpacer?: boolean; legendPosition?: Position; } diff --git a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/utils.ts b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/utils.ts index ddac615cef50a4..d31eb1da15ea1f 100644 --- a/x-pack/legacy/plugins/siem/public/components/matrix_histogram/utils.ts +++ b/x-pack/legacy/plugins/siem/public/components/matrix_histogram/utils.ts @@ -69,6 +69,19 @@ export const getBarchartConfigs = ({ customHeight: chartHeight ?? DEFAULT_CHART_HEIGHT, }); +export const defaultLegendColors = [ + '#1EA593', + '#2B70F7', + '#CE0060', + '#38007E', + '#FCA5D3', + '#F37020', + '#E49E29', + '#B0916F', + '#7B000B', + '#34130C', +]; + export const formatToChartDataItem = ([key, value]: [ string, MatrixOverTimeHistogramData[] diff --git a/x-pack/legacy/plugins/siem/public/components/notes/note_card/note_card_body.tsx b/x-pack/legacy/plugins/siem/public/components/notes/note_card/note_card_body.tsx index 11761c8fd39b04..4463f8d4ff6024 100644 --- a/x-pack/legacy/plugins/siem/public/components/notes/note_card/note_card_body.tsx +++ b/x-pack/legacy/plugins/siem/public/components/notes/note_card/note_card_body.tsx @@ -5,7 +5,7 @@ */ import { EuiPanel, EuiToolTip } from '@elastic/eui'; -import React from 'react'; +import React, { useCallback, useMemo } from 'react'; import styled from 'styled-components'; import { WithCopyToClipboard } from '../../../lib/clipboard/with_copy_to_clipboard'; @@ -19,33 +19,23 @@ const BodyContainer = styled(EuiPanel)` BodyContainer.displayName = 'BodyContainer'; -const HoverActionsContainer = styled(EuiPanel)` - align-items: center; - display: flex; - flex-direction: row; - height: 25px; - justify-content: center; - left: 5px; - position: absolute; - top: -5px; - width: 30px; -`; - -HoverActionsContainer.displayName = 'HoverActionsContainer'; - -export const NoteCardBody = React.memo<{ rawNote: string }>(({ rawNote }) => ( - - - - - - - } - render={() => } - /> - -)); +export const NoteCardBody = React.memo<{ rawNote: string }>(({ rawNote }) => { + const hoverContent = useMemo( + () => ( + + + + ), + [rawNote] + ); + + const render = useCallback(() => , [rawNote]); + + return ( + + + + ); +}); NoteCardBody.displayName = 'NoteCardBody'; diff --git a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/__snapshots__/index.test.tsx.snap b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/__snapshots__/index.test.tsx.snap index 42ef4e5404faa8..ef02311c0629e9 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/__snapshots__/index.test.tsx.snap +++ b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/__snapshots__/index.test.tsx.snap @@ -3,22 +3,36 @@ exports[`AddFilterToGlobalSearchBar Component Rendering 1`] = ` - - + + + + } render={[Function]} /> diff --git a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.test.tsx b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.test.tsx index 7e5e53f575be89..5c920d923d9a41 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.test.tsx @@ -24,6 +24,22 @@ describe('helpers', () => { }); }); + test('returns a negated filter when `negate` is true', () => { + const filter = createFilter('host.name', 'siem-xavier', true); + expect(filter).toEqual({ + meta: { + alias: null, + disabled: false, + key: 'host.name', + negate: true, // <-- filter is negated + params: { query: 'siem-xavier' }, + type: 'phrase', + value: 'siem-xavier', + }, + query: { match: { 'host.name': { query: 'siem-xavier', type: 'phrase' } } }, + }); + }); + test('return valid exists filter when valid key and null value are provided', () => { const filter = createFilter('host.name', null); expect(filter).toEqual({ diff --git a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.ts b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.ts index bafe033368c835..d88bc2bf3b7e6d 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.ts +++ b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/helpers.ts @@ -6,13 +6,17 @@ import { Filter } from '../../../../../../../../src/plugins/data/public'; -export const createFilter = (key: string, value: string[] | string | null | undefined): Filter => { +export const createFilter = ( + key: string, + value: string[] | string | null | undefined, + negate: boolean = false +): Filter => { const queryValue = value != null ? (Array.isArray(value) ? value[0] : value) : null; return queryValue != null ? { meta: { alias: null, - negate: false, + negate, disabled: false, type: 'phrase', key, diff --git a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/index.tsx b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/index.tsx index 160cd020796db4..127eb3bae0284a 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/index.tsx @@ -4,9 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiIcon, EuiPanel, EuiToolTip } from '@elastic/eui'; +import { EuiButtonIcon, EuiToolTip } from '@elastic/eui'; import React, { useCallback } from 'react'; -import styled from 'styled-components'; import { Filter } from '../../../../../../../../src/plugins/data/public'; import { WithHoverActions } from '../../with_hover_actions'; @@ -26,21 +25,52 @@ export const AddFilterToGlobalSearchBar = React.memo( ({ children, filter, onFilterAdded }) => { const { filterManager } = useKibana().services.data.query; - const addToKql = useCallback(() => { + const filterForValue = useCallback(() => { filterManager.addFilters(filter); + if (onFilterAdded != null) { onFilterAdded(); } - }, [filter, filterManager, onFilterAdded]); + }, [filterManager, filter, onFilterAdded]); + + const filterOutValue = useCallback(() => { + filterManager.addFilters({ + ...filter, + meta: { + ...filter.meta, + negate: true, + }, + }); + + if (onFilterAdded != null) { + onFilterAdded(); + } + }, [filterManager, filter, onFilterAdded]); return ( +
    - + + + + + - +
    } render={() => children} /> @@ -49,16 +79,3 @@ export const AddFilterToGlobalSearchBar = React.memo( ); AddFilterToGlobalSearchBar.displayName = 'AddFilterToGlobalSearchBar'; - -export const HoverActionsContainer = styled(EuiPanel)` - align-items: center; - display: flex; - flex-direction: row; - height: 34px; - justify-content: center; - left: 5px; - position: absolute; - top: -10px; - width: 34px; - cursor: pointer; -`; diff --git a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/translations.ts b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/translations.ts index 81772527e59db9..f192c5c26fa49c 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/translations.ts +++ b/x-pack/legacy/plugins/siem/public/components/page/add_filter_to_global_search_bar/translations.ts @@ -12,3 +12,10 @@ export const FILTER_FOR_VALUE = i18n.translate( defaultMessage: 'Filter for value', } ); + +export const FILTER_OUT_VALUE = i18n.translate( + 'xpack.siem.add_filter_to_global_search_bar.filterOutValueHoverAction', + { + defaultMessage: 'Filter out value', + } +); diff --git a/x-pack/legacy/plugins/siem/public/components/page/hosts/hosts_table/columns.tsx b/x-pack/legacy/plugins/siem/public/components/page/hosts/hosts_table/columns.tsx index 8d490d2c152d96..6bd82f3192f9be 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/hosts/hosts_table/columns.tsx +++ b/x-pack/legacy/plugins/siem/public/components/page/hosts/hosts_table/columns.tsx @@ -46,9 +46,7 @@ export const getHostsColumns = (): HostsTableColumns => [ ) : ( - - - + ) } /> diff --git a/x-pack/legacy/plugins/siem/public/components/page/index.tsx b/x-pack/legacy/plugins/siem/public/components/page/index.tsx index ef6a19f4b74481..3a36a2dce476b9 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/page/index.tsx @@ -17,7 +17,7 @@ export const AppGlobalStyle = createGlobalStyle` position: static; } /* end of dirty hack to fix draggables with tooltip on FF */ - + div.app-wrapper { background-color: rgba(0,0,0,0); } @@ -28,12 +28,13 @@ export const AppGlobalStyle = createGlobalStyle` .euiPopover__panel.euiPopover__panel-isOpen { z-index: 9900 !important; + min-width: 24px; } .euiToolTip { z-index: 9950 !important; } - /* + /* overrides the default styling of euiComboBoxOptionsList because it's implemented as a popover, so it's not selectable as a child of the styled component */ @@ -45,6 +46,17 @@ export const AppGlobalStyle = createGlobalStyle` .euiPanel-loading-hide-border { border: none; } + + /* hide open popovers when a modal is being displayed to prevent them from covering the modal */ + body.euiBody-hasOverlayMask .euiPopover__panel-isOpen { + visibility: hidden !important; + } + + /* ensure elastic charts tooltips appear above open euiPopovers */ + .echTooltip { + z-index: 9950; + } + `; export const DescriptionListStyled = styled(EuiDescriptionList)` diff --git a/x-pack/legacy/plugins/siem/public/components/page/manage_query.tsx b/x-pack/legacy/plugins/siem/public/components/page/manage_query.tsx index 138c38c02065bd..3b723c66f5af57 100644 --- a/x-pack/legacy/plugins/siem/public/components/page/manage_query.tsx +++ b/x-pack/legacy/plugins/siem/public/components/page/manage_query.tsx @@ -42,6 +42,6 @@ export function manageQuery(WrappedComponent: React.ComponentClass | React return ; } } - ManageQuery.displayName = `ManageQuery (${WrappedComponent.displayName || 'Unknown'})`; + ManageQuery.displayName = `ManageQuery (${WrappedComponent?.displayName ?? 'Unknown'})`; return ManageQuery; } diff --git a/x-pack/legacy/plugins/siem/public/components/paginated_table/index.tsx b/x-pack/legacy/plugins/siem/public/components/paginated_table/index.tsx index 5cd200cbb41b77..73c3d2da184e75 100644 --- a/x-pack/legacy/plugins/siem/public/components/paginated_table/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/paginated_table/index.tsx @@ -3,6 +3,7 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ + import { EuiBasicTable, EuiBasicTableProps, @@ -246,21 +247,16 @@ const PaginatedTableComponent: FC = ({ ) : ( <> - { - // @ts-ignore avoid some type mismatches - } = ({ export const PaginatedTable = memo(PaginatedTableComponent); type BasicTableType = ComponentType>; // eslint-disable-line @typescript-eslint/no-explicit-any -const BasicTable: typeof EuiBasicTable & { displayName: string } = styled( - EuiBasicTable as BasicTableType -)` +const BasicTable = styled(EuiBasicTable as BasicTableType)` tbody { th, td { diff --git a/x-pack/legacy/plugins/siem/public/components/source_destination/source_destination_ip.tsx b/x-pack/legacy/plugins/siem/public/components/source_destination/source_destination_ip.tsx index b8192cce11e5aa..62f01dfc020f5a 100644 --- a/x-pack/legacy/plugins/siem/public/components/source_destination/source_destination_ip.tsx +++ b/x-pack/legacy/plugins/siem/public/components/source_destination/source_destination_ip.tsx @@ -171,7 +171,7 @@ export const SourceDestinationIp = React.memo( return isIpFieldPopulated({ destinationIp, sourceIp, type }) || hasPorts({ destinationPort, sourcePort, type }) ? ( - + (({ header, onColumnRemoved, sort }) => { - const isLoading = useTimelineContext(); + const { isLoading } = useTimelineContext(); return ( <> {sort.columnId === header.id && isLoading ? ( diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/column_headers/header/header_content.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/column_headers/header/header_content.tsx index 84781e6a243003..0a69cef6185706 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/column_headers/header/header_content.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/column_headers/header/header_content.tsx @@ -32,7 +32,7 @@ const HeaderContentComponent: React.FC = ({ onClick, sort, }) => { - const isLoading = useTimelineContext(); + const { isLoading } = useTimelineContext(); return ( diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/auditd/generic_row_renderer.test.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/auditd/generic_row_renderer.test.tsx index 5f59915eac418b..417a078a081509 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/auditd/generic_row_renderer.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/auditd/generic_row_renderer.test.tsx @@ -19,6 +19,8 @@ import { createGenericFileRowRenderer, } from './generic_row_renderer'; +jest.mock('../../../../../pages/overview/events_by_dataset'); + describe('GenericRowRenderer', () => { const mount = useMountAppended(); diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/suricata/suricata_signature.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/suricata/suricata_signature.tsx index 9ccd1fb7a0519e..24c52f3372d62f 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/suricata/suricata_signature.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/suricata/suricata_signature.tsx @@ -44,7 +44,7 @@ export const Tokens = React.memo<{ tokens: string[] }>(({ tokens }) => ( <> {tokens.map(token => ( - + {token} @@ -81,7 +81,7 @@ export const DraggableSignatureId = React.memo<{ id: string; signatureId: number data-test-subj="signature-id-tooltip" content={SURICATA_SIGNATURE_ID_FIELD_NAME} > - + {signatureId} diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_details.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_details.tsx index e1524c8e5aecbb..2ad3eb46814542 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_details.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_details.tsx @@ -119,7 +119,7 @@ export const SystemGenericLine = React.memo( - + diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_file_details.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_file_details.tsx index c47d9603cbea26..ef7c3b3ccf8591 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_file_details.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_file_details.tsx @@ -193,7 +193,7 @@ export const SystemGenericFileLine = React.memo( - + diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_row_renderer.test.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_row_renderer.test.tsx index abe77a63f4a27e..2f5fa76855f2be 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_row_renderer.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/system/generic_row_renderer.test.tsx @@ -48,6 +48,8 @@ import { } from './generic_row_renderer'; import * as i18n from './translations'; +jest.mock('../../../../../pages/overview/events_by_dataset'); + describe('GenericRowRenderer', () => { const mount = useMountAppended(); diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/zeek/zeek_signature.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/zeek/zeek_signature.tsx index f13a236e8ec363..39c21c4ffa33b5 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/zeek/zeek_signature.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/body/renderers/zeek/zeek_signature.tsx @@ -92,7 +92,7 @@ export const DraggableZeekElement = React.memo<{ ) : ( - + {stringRenderer(value)} diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/index.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/index.tsx index 525cc8e301d11c..f369b961807af4 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/index.tsx @@ -109,7 +109,7 @@ export const DataProviders = React.memo( data-test-subj="dataProviders" > - {isLoading => ( + {({ isLoading }) => ( {dataProviders != null && dataProviders.length ? ( ( ({ deleteProvider, field, isEnabled, isExcluded, operator, providerId, togglePopover, val }) => { - const deleteFilter: React.MouseEventHandler = ( - event: React.MouseEvent - ) => { - // Make sure it doesn't also trigger the onclick for the whole badge - if (event.stopPropagation) { - event.stopPropagation(); - } - deleteProvider(); - }; - const classes = classNames('globalFilterItem', { - 'globalFilterItem-isDisabled': !isEnabled, - 'globalFilterItem-isExcluded': isExcluded, - }); - const formattedValue = isString(val) && val === '' ? getEmptyString() : val; - const prefix = isExcluded ? {i18n.NOT} : null; - const title = `${field}: "${formattedValue}"`; - - return ( - - {prefix} - {operator !== EXISTS_OPERATOR ? ( - <> - {`${field}: `} - {`"${formattedValue}"`} - - ) : ( - - {field} {i18n.EXISTS_LABEL} - - )} - + const deleteFilter: React.MouseEventHandler = useCallback( + (event: React.MouseEvent) => { + // Make sure it doesn't also trigger the onclick for the whole badge + if (event.stopPropagation) { + event.stopPropagation(); + } + deleteProvider(); + }, + [deleteProvider] + ); + + const classes = useMemo( + () => + classNames('globalFilterItem', { + 'globalFilterItem-isDisabled': !isEnabled, + 'globalFilterItem-isExcluded': isExcluded, + }), + [isEnabled, isExcluded] + ); + + const formattedValue = useMemo(() => (isString(val) && val === '' ? getEmptyString() : val), [ + val, + ]); + + const prefix = useMemo(() => (isExcluded ? {i18n.NOT} : null), [isExcluded]); + + const title = useMemo(() => `${field}: "${formattedValue}"`, [field, formattedValue]); + + const hoverContent = useMemo( + () => ( + + ), + [field, val] ); + + const badge = useCallback( + () => ( + + {prefix} + {operator !== EXISTS_OPERATOR ? ( + <> + {`${field}: `} + {`"${formattedValue}"`} + + ) : ( + + {field} {i18n.EXISTS_LABEL} + + )} + + ), + [ + providerId, + field, + val, + classes, + title, + deleteFilter, + togglePopover, + formattedValue, + closeButtonProps, + prefix, + operator, + ] + ); + + return ; } ); diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/provider_item_badge.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/provider_item_badge.tsx index 79f9c32a176f5d..2cc19537d6a63b 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/provider_item_badge.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/data_providers/provider_item_badge.tsx @@ -71,7 +71,7 @@ export const ProviderItemBadge = React.memo( return ( - {isLoading => ( + {({ isLoading }) => ( { - const mockTimelineContext: boolean = true; + const isLoading: boolean = true; const mount = useMountAppended(); + const filterManager = new FilterManager(mockUiSettingsForFilterManager); describe('rendering', () => { test('renders correctly against snapshot', () => { @@ -96,7 +101,7 @@ describe('Providers', () => { const mockOnDataProviderRemoved = jest.fn(); const wrapper = mount( - + { const mockOnDataProviderRemoved = jest.fn(); const wrapper = mount( - + { const mockOnToggleDataProviderEnabled = jest.fn(); const wrapper = mount( - + { const wrapper = mount( - + { const wrapper = mount( - + { const wrapper = mount( - + { const wrapper = mount( - + { @@ -26,6 +30,7 @@ describe('Header', () => { { { = ({ id, indexPattern, dataProviders, + filterManager, onChangeDataProviderKqlQuery, onChangeDroppableAndProvider, onDataProviderEdited, @@ -77,6 +79,7 @@ const TimelineHeaderComponent: React.FC = ({ /> @@ -90,6 +93,7 @@ export const TimelineHeader = React.memo( prevProps.id === nextProps.id && deepEqual(prevProps.indexPattern, nextProps.indexPattern) && deepEqual(prevProps.dataProviders, nextProps.dataProviders) && + prevProps.filterManager === nextProps.filterManager && prevProps.onChangeDataProviderKqlQuery === nextProps.onChangeDataProviderKqlQuery && prevProps.onChangeDroppableAndProvider === nextProps.onChangeDroppableAndProvider && prevProps.onDataProviderEdited === nextProps.onDataProviderEdited && diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.test.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.test.tsx index b978ef3d478d80..943133dc2063cf 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.test.tsx @@ -11,12 +11,16 @@ import { DEFAULT_FROM, DEFAULT_TO } from '../../../../common/constants'; import { mockBrowserFields } from '../../../containers/source/mock'; import { convertKueryToElasticSearchQuery } from '../../../lib/keury'; import { mockIndexPattern, TestProviders } from '../../../mock'; +import { createKibanaCoreStartMock } from '../../../mock/kibana_core'; import { QueryBar } from '../../query_bar'; +import { FilterManager } from '../../../../../../../../src/plugins/data/public'; import { mockDataProviders } from '../data_providers/mock/mock_data_providers'; import { buildGlobalQuery } from '../helpers'; import { QueryBarTimeline, QueryBarTimelineComponentProps, getDataProviderFilter } from './index'; +const mockUiSettingsForFilterManager = createKibanaCoreStartMock().uiSettings; + jest.mock('../../../lib/kibana'); describe('Timeline QueryBar ', () => { @@ -58,6 +62,7 @@ describe('Timeline QueryBar ', () => { browserFields={mockBrowserFields} dataProviders={mockDataProviders} filters={[]} + filterManager={new FilterManager(mockUiSettingsForFilterManager)} filterQuery={{ expression: 'here: query', kind: 'kuery' }} filterQueryDraft={{ expression: 'here: query', kind: 'kuery' }} from={0} @@ -99,6 +104,7 @@ describe('Timeline QueryBar ', () => { browserFields={mockBrowserFields} dataProviders={mockDataProviders} filters={[]} + filterManager={new FilterManager(mockUiSettingsForFilterManager)} filterQuery={{ expression: 'here: query', kind: 'kuery' }} filterQueryDraft={{ expression: 'here: query', kind: 'kuery' }} from={0} @@ -145,6 +151,7 @@ describe('Timeline QueryBar ', () => { browserFields={mockBrowserFields} dataProviders={mockDataProviders} filters={[]} + filterManager={new FilterManager(mockUiSettingsForFilterManager)} filterQuery={{ expression: 'here: query', kind: 'kuery' }} filterQueryDraft={{ expression: 'here: query', kind: 'kuery' }} from={0} @@ -189,6 +196,7 @@ describe('Timeline QueryBar ', () => { browserFields={mockBrowserFields} dataProviders={mockDataProviders} filters={[]} + filterManager={new FilterManager(mockUiSettingsForFilterManager)} filterQuery={{ expression: 'here: query', kind: 'kuery' }} filterQueryDraft={{ expression: 'here: query', kind: 'kuery' }} from={0} @@ -235,6 +243,7 @@ describe('Timeline QueryBar ', () => { browserFields={mockBrowserFields} dataProviders={mockDataProviders} filters={[]} + filterManager={new FilterManager(mockUiSettingsForFilterManager)} filterQuery={{ expression: 'here: query', kind: 'kuery' }} filterQueryDraft={{ expression: 'here: query', kind: 'kuery' }} from={0} @@ -279,6 +288,7 @@ describe('Timeline QueryBar ', () => { browserFields={mockBrowserFields} dataProviders={mockDataProviders} filters={[]} + filterManager={new FilterManager(mockUiSettingsForFilterManager)} filterQuery={{ expression: 'here: query', kind: 'kuery' }} filterQueryDraft={{ expression: 'here: query', kind: 'kuery' }} from={0} diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.tsx index 7f662cdb2f1b44..f53f7bb56e2f40 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/query_bar/index.tsx @@ -21,7 +21,6 @@ import { import { BrowserFields } from '../../../containers/source'; import { convertKueryToElasticSearchQuery } from '../../../lib/keury'; -import { useKibana } from '../../../lib/kibana'; import { KueryFilterQuery, KueryFilterQueryKind } from '../../../store'; import { KqlMode } from '../../../store/timeline/model'; import { useSavedQueryServices } from '../../../utils/saved_query_services'; @@ -35,6 +34,7 @@ export interface QueryBarTimelineComponentProps { browserFields: BrowserFields; dataProviders: DataProvider[]; filters: Filter[]; + filterManager: FilterManager; filterQuery: KueryFilterQuery; filterQueryDraft: KueryFilterQuery; from: number; @@ -61,6 +61,7 @@ export const QueryBarTimeline = memo( browserFields, dataProviders, filters, + filterManager, filterQuery, filterQueryDraft, from, @@ -94,9 +95,6 @@ export const QueryBarTimeline = memo( const [dataProvidersDsl, setDataProvidersDsl] = useState( convertKueryToElasticSearchQuery(buildGlobalQuery(dataProviders, browserFields), indexPattern) ); - const kibana = useKibana(); - const [filterManager] = useState(new FilterManager(kibana.services.uiSettings)); - const savedQueryServices = useSavedQueryServices(); useEffect(() => { diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/index.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/index.tsx index 87061bdbb5d02a..a0a0ac4c2b85c0 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/index.tsx @@ -10,7 +10,11 @@ import { connect, ConnectedProps } from 'react-redux'; import { Dispatch } from 'redux'; import deepEqual from 'fast-deep-equal'; -import { Filter, IIndexPattern } from '../../../../../../../../src/plugins/data/public'; +import { + Filter, + FilterManager, + IIndexPattern, +} from '../../../../../../../../src/plugins/data/public'; import { BrowserFields } from '../../../containers/source'; import { convertKueryToElasticSearchQuery } from '../../../lib/keury'; import { @@ -29,6 +33,7 @@ import { SearchOrFilter } from './search_or_filter'; interface OwnProps { browserFields: BrowserFields; + filterManager: FilterManager; indexPattern: IIndexPattern; timelineId: string; } @@ -42,6 +47,7 @@ const StatefulSearchOrFilterComponent = React.memo( dataProviders, eventType, filters, + filterManager, filterQuery, filterQueryDraft, from, @@ -122,6 +128,7 @@ const StatefulSearchOrFilterComponent = React.memo( dataProviders={dataProviders} eventType={eventType} filters={filters} + filterManager={filterManager} filterQuery={filterQuery} filterQueryDraft={filterQueryDraft} from={from} @@ -146,6 +153,7 @@ const StatefulSearchOrFilterComponent = React.memo( (prevProps, nextProps) => { return ( prevProps.eventType === nextProps.eventType && + prevProps.filterManager === nextProps.filterManager && prevProps.from === nextProps.from && prevProps.fromStr === nextProps.fromStr && prevProps.to === nextProps.to && diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/search_or_filter.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/search_or_filter.tsx index 7bdd92e745f216..02a575db259bbe 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/search_or_filter.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/search_or_filter.tsx @@ -8,7 +8,11 @@ import { EuiFlexGroup, EuiFlexItem, EuiSuperSelect, EuiToolTip } from '@elastic/ import React from 'react'; import styled, { createGlobalStyle } from 'styled-components'; -import { Filter, IIndexPattern } from '../../../../../../../../src/plugins/data/public'; +import { + Filter, + FilterManager, + IIndexPattern, +} from '../../../../../../../../src/plugins/data/public'; import { BrowserFields } from '../../../containers/source'; import { KueryFilterQuery, KueryFilterQueryKind } from '../../../store'; import { KqlMode, EventType } from '../../../store/timeline/model'; @@ -44,6 +48,7 @@ interface Props { browserFields: BrowserFields; dataProviders: DataProvider[]; eventType: EventType; + filterManager: FilterManager; filterQuery: KueryFilterQuery; filterQueryDraft: KueryFilterQuery; from: number; @@ -95,6 +100,7 @@ export const SearchOrFilter = React.memo( indexPattern, isRefreshPaused, filters, + filterManager, filterQuery, filterQueryDraft, from, @@ -135,6 +141,7 @@ export const SearchOrFilter = React.memo( browserFields={browserFields} dataProviders={dataProviders} filters={filters} + filterManager={filterManager} filterQuery={filterQuery} filterQueryDraft={filterQueryDraft} from={from} diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/timeline.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/timeline.tsx index 098dd82791610e..222cc0530bddbd 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/timeline.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/timeline.tsx @@ -6,7 +6,7 @@ import { EuiFlyoutHeader, EuiFlyoutBody, EuiFlyoutFooter } from '@elastic/eui'; import { getOr, isEmpty } from 'lodash/fp'; -import React, { useMemo } from 'react'; +import React, { useState, useMemo } from 'react'; import styled from 'styled-components'; import { FlyoutHeaderWithCloseButton } from '../flyout/header_with_close_button'; @@ -34,7 +34,12 @@ import { TimelineHeader } from './header'; import { combineQueries } from './helpers'; import { TimelineRefetch } from './refetch_timeline'; import { ManageTimelineContext } from './timeline_context'; -import { esQuery, Filter, IIndexPattern } from '../../../../../../../src/plugins/data/public'; +import { + esQuery, + Filter, + FilterManager, + IIndexPattern, +} from '../../../../../../../src/plugins/data/public'; const TimelineContainer = styled.div` height: 100%; @@ -143,6 +148,7 @@ export const TimelineComponent: React.FC = ({ usersViewing, }) => { const kibana = useKibana(); + const [filterManager] = useState(new FilterManager(kibana.services.uiSettings)); const combinedQueries = combineQueries({ config: esQuery.getEsQueryConfig(kibana.services.uiSettings), dataProviders, @@ -178,6 +184,7 @@ export const TimelineComponent: React.FC = ({ id={id} indexPattern={indexPattern} dataProviders={dataProviders} + filterManager={filterManager} onChangeDataProviderKqlQuery={onChangeDataProviderKqlQuery} onChangeDroppableAndProvider={onChangeDroppableAndProvider} onDataProviderEdited={onDataProviderEdited} @@ -211,7 +218,12 @@ export const TimelineComponent: React.FC = ({ getUpdatedAt, refetch, }) => ( - + (initTimelineContext); +interface TimelineContextState { + filterManager: FilterManager | undefined; + isLoading: boolean; +} + +const initTimelineContext: TimelineContextState = { filterManager: undefined, isLoading: false }; +export const TimelineContext = createContext(initTimelineContext); export const useTimelineContext = () => useContext(TimelineContext); export interface TimelineTypeContextProps { documentType?: string; footerText?: string; + id?: string; + indexToAdd?: string[] | null; loadingText?: string; queryFields?: string[]; selectAll?: boolean; @@ -24,6 +34,8 @@ export interface TimelineTypeContextProps { const initTimelineType: TimelineTypeContextProps = { documentType: undefined, footerText: undefined, + id: undefined, + indexToAdd: undefined, loadingText: undefined, queryFields: [], selectAll: false, @@ -36,6 +48,8 @@ export const useTimelineTypeContext = () => useContext(TimelineTypeContext); interface ManageTimelineContextProps { children: React.ReactNode; + filterManager: FilterManager; + indexToAdd?: string[] | null; loading: boolean; type?: TimelineTypeContextProps; } @@ -44,22 +58,27 @@ interface ManageTimelineContextProps { // to avoid so many Context, at least the separation of code is there now const ManageTimelineContextComponent: React.FC = ({ children, + filterManager, + indexToAdd, loading, - type = initTimelineType, + type = { ...initTimelineType, indexToAdd }, }) => { - const [myLoading, setLoading] = useState(initTimelineContext); - const [myType, setType] = useState(initTimelineType); + const [myContextState, setMyContextState] = useState({ + filterManager, + isLoading: false, + }); + const [myType, setType] = useState(type); useEffect(() => { - setLoading(loading); - }, [loading]); + setMyContextState({ filterManager, isLoading: loading }); + }, [setMyContextState, filterManager, loading]); useEffect(() => { - setType(type); - }, [type]); + setType({ ...type, indexToAdd }); + }, [type, indexToAdd]); return ( - + {children} ); diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/helpers.test.tsx b/x-pack/legacy/plugins/siem/public/components/top_n/helpers.test.tsx new file mode 100644 index 00000000000000..da0f6f59b533f1 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/helpers.test.tsx @@ -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. + */ + +import { allEvents, defaultOptions, getOptions, rawEvents, signalEvents } from './helpers'; + +describe('getOptions', () => { + test(`it returns the default options when 'activeTimelineEventType' is undefined`, () => { + expect(getOptions()).toEqual(defaultOptions); + }); + + test(`it returns 'allEvents' when 'activeTimelineEventType' is 'all'`, () => { + expect(getOptions('all')).toEqual(allEvents); + }); + + test(`it returns 'rawEvents' when 'activeTimelineEventType' is 'raw'`, () => { + expect(getOptions('raw')).toEqual(rawEvents); + }); + + test(`it returns 'signalEvents' when 'activeTimelineEventType' is 'signal'`, () => { + expect(getOptions('signal')).toEqual(signalEvents); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/helpers.ts b/x-pack/legacy/plugins/siem/public/components/top_n/helpers.ts new file mode 100644 index 00000000000000..8d9ae48d29b691 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/helpers.ts @@ -0,0 +1,66 @@ +/* + * 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 { EventType } from '../../store/timeline/model'; + +import * as i18n from './translations'; + +export interface TopNOption { + inputDisplay: string; + value: EventType; + 'data-test-subj': string; +} + +/** A (stable) array containing only the 'All events' option */ +export const allEvents: TopNOption[] = [ + { + value: 'all', + inputDisplay: i18n.ALL_EVENTS, + 'data-test-subj': 'option-all', + }, +]; + +/** A (stable) array containing only the 'Raw events' option */ +export const rawEvents: TopNOption[] = [ + { + value: 'raw', + inputDisplay: i18n.RAW_EVENTS, + 'data-test-subj': 'option-raw', + }, +]; + +/** A (stable) array containing only the 'Signal events' option */ +export const signalEvents: TopNOption[] = [ + { + value: 'signal', + inputDisplay: i18n.SIGNAL_EVENTS, + 'data-test-subj': 'option-signal', + }, +]; + +/** A (stable) array containing the default Top N options */ +export const defaultOptions = [...rawEvents, ...signalEvents]; + +/** + * Returns the options to be displayed in a Top N view select. When + * an `activeTimelineEventType` is provided, an array containing + * just one option (corresponding to `activeTimelineEventType`) + * will be returned, to ensure the data displayed in the Top N + * is always in sync with the `EventType` chosen by the user in + * the active timeline. + */ +export const getOptions = (activeTimelineEventType?: EventType): TopNOption[] => { + switch (activeTimelineEventType) { + case 'all': + return allEvents; + case 'raw': + return rawEvents; + case 'signal': + return signalEvents; + default: + return defaultOptions; + } +}; diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/index.test.tsx b/x-pack/legacy/plugins/siem/public/components/top_n/index.test.tsx new file mode 100644 index 00000000000000..61772f1dc7a7ab --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/index.test.tsx @@ -0,0 +1,379 @@ +/* + * 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 { mount, ReactWrapper } from 'enzyme'; +import React from 'react'; + +import { mockBrowserFields } from '../../containers/source/mock'; +import { apolloClientObservable, mockGlobalState, TestProviders } from '../../mock'; +import { createKibanaCoreStartMock } from '../../mock/kibana_core'; +import { FilterManager } from '../../../../../../../src/plugins/data/public'; +import { createStore, State } from '../../store'; +import { TimelineContext, TimelineTypeContext } from '../timeline/timeline_context'; + +import { Props } from './top_n'; +import { ACTIVE_TIMELINE_REDUX_ID, StatefulTopN } from '.'; + +jest.mock('../../lib/kibana'); + +const mockUiSettingsForFilterManager = createKibanaCoreStartMock().uiSettings; + +const field = 'process.name'; +const value = 'nice'; + +const state: State = { + ...mockGlobalState, + inputs: { + ...mockGlobalState.inputs, + global: { + ...mockGlobalState.inputs.global, + query: { + query: 'host.name : end*', + language: 'kuery', + }, + filters: [ + { + meta: { + alias: null, + negate: false, + disabled: false, + type: 'phrase', + key: 'host.os.name', + params: { + query: 'Linux', + }, + }, + query: { + match: { + 'host.os.name': { + query: 'Linux', + type: 'phrase', + }, + }, + }, + }, + ], + }, + timeline: { + ...mockGlobalState.inputs.timeline, + timerange: { + kind: 'relative', + fromStr: 'now-24h', + toStr: 'now', + from: 1586835969047, + to: 1586922369047, + }, + }, + }, + timeline: { + ...mockGlobalState.timeline, + timelineById: { + [ACTIVE_TIMELINE_REDUX_ID]: { + ...mockGlobalState.timeline.timelineById.test, + id: ACTIVE_TIMELINE_REDUX_ID, + dataProviders: [ + { + id: + 'draggable-badge-default-draggable-netflow-renderer-timeline-1-_qpBe3EBD7k-aQQL7v7--_qpBe3EBD7k-aQQL7v7--network_transport-tcp', + name: 'tcp', + enabled: true, + excluded: false, + kqlQuery: '', + queryMatch: { + field: 'network.transport', + value: 'tcp', + operator: ':', + }, + and: [], + }, + ], + eventType: 'all', + filters: [ + { + meta: { + alias: null, + disabled: false, + key: 'source.port', + negate: false, + params: { + query: '30045', + }, + type: 'phrase', + }, + query: { + match: { + 'source.port': { + query: '30045', + type: 'phrase', + }, + }, + }, + }, + ], + kqlMode: 'filter', + kqlQuery: { + filterQuery: { + kuery: { + kind: 'kuery', + expression: 'host.name : *', + }, + serializedQuery: + '{"bool":{"should":[{"exists":{"field":"host.name"}}],"minimum_should_match":1}}', + }, + filterQueryDraft: { + kind: 'kuery', + expression: 'host.name : *', + }, + }, + }, + }, + }, +}; +const store = createStore(state, apolloClientObservable); + +describe('StatefulTopN', () => { + // Suppress warnings about "react-beautiful-dnd" + /* eslint-disable no-console */ + const originalError = console.error; + const originalWarn = console.warn; + beforeAll(() => { + console.warn = jest.fn(); + console.error = jest.fn(); + }); + afterAll(() => { + console.error = originalError; + console.warn = originalWarn; + }); + + describe('rendering in a global NON-timeline context', () => { + let wrapper: ReactWrapper; + + beforeEach(() => { + wrapper = mount( + + + + ); + }); + + test('it has undefined combinedQueries when rendering in a global context', () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.combinedQueries).toBeUndefined(); + }); + + test(`defaults to the 'Raw events' view when rendering in a global context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.defaultView).toEqual('raw'); + }); + + test(`provides a 'deleteQuery' when rendering in a global context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.deleteQuery).toBeDefined(); + }); + + test(`provides filters from Redux state (inputs > global > filters) when rendering in a global context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.filters).toEqual([ + { + meta: { + alias: null, + negate: false, + disabled: false, + type: 'phrase', + key: 'host.os.name', + params: { query: 'Linux' }, + }, + query: { match: { 'host.os.name': { query: 'Linux', type: 'phrase' } } }, + }, + ]); + }); + + test(`provides 'from' via GlobalTime when rendering in a global context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.from).toEqual(0); + }); + + test('provides the global query from Redux state (inputs > global > query) when rendering in a global context', () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.query).toEqual({ query: 'host.name : end*', language: 'kuery' }); + }); + + test(`provides a 'global' 'setAbsoluteRangeDatePickerTarget' when rendering in a global context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.setAbsoluteRangeDatePickerTarget).toEqual('global'); + }); + + test(`provides 'to' via GlobalTime when rendering in a global context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.to).toEqual(1); + }); + }); + + describe('rendering in a timeline context', () => { + let filterManager: FilterManager; + let wrapper: ReactWrapper; + + beforeEach(() => { + filterManager = new FilterManager(mockUiSettingsForFilterManager); + + wrapper = mount( + + + + + + + + ); + }); + + test('it has a combinedQueries value from Redux state composed of the timeline [data providers + kql + filter-bar-filters] when rendering in a timeline context', () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.combinedQueries).toEqual( + '{"bool":{"must":[],"filter":[{"bool":{"filter":[{"bool":{"filter":[{"bool":{"should":[{"match_phrase":{"network.transport":"tcp"}}],"minimum_should_match":1}},{"bool":{"should":[{"exists":{"field":"host.name"}}],"minimum_should_match":1}}]}},{"bool":{"filter":[{"bool":{"should":[{"range":{"@timestamp":{"gte":1586835969047}}}],"minimum_should_match":1}},{"bool":{"should":[{"range":{"@timestamp":{"lte":1586922369047}}}],"minimum_should_match":1}}]}}]}},{"match_phrase":{"source.port":{"query":"30045"}}}],"should":[],"must_not":[]}}' + ); + }); + + test('it provides only one view option that matches the `eventType` from redux when rendering in the context of the active timeline', () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.defaultView).toEqual('all'); + }); + + test(`provides an undefined 'deleteQuery' when rendering in a timeline context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.deleteQuery).toBeUndefined(); + }); + + test(`provides empty filters when rendering in a timeline context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.filters).toEqual([]); + }); + + test(`provides 'from' via redux state (inputs > timeline > timerange) when rendering in a timeline context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.from).toEqual(1586835969047); + }); + + test('provides an empty query when rendering in a timeline context', () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.query).toEqual({ query: '', language: 'kuery' }); + }); + + test(`provides a 'timeline' 'setAbsoluteRangeDatePickerTarget' when rendering in a timeline context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.setAbsoluteRangeDatePickerTarget).toEqual('timeline'); + }); + + test(`provides 'to' via redux state (inputs > timeline > timerange) when rendering in a timeline context`, () => { + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.to).toEqual(1586922369047); + }); + }); + + test(`defaults to the 'Signals events' option when rendering in a NON-active timeline context (e.g. the Signals table on the Detections page) when 'documentType' from 'useTimelineTypeContext()' is 'signals'`, () => { + const filterManager = new FilterManager(mockUiSettingsForFilterManager); + const wrapper = mount( + + + + + + + + ); + + const props = wrapper + .find('[data-test-subj="top-n"]') + .first() + .props() as Props; + + expect(props.defaultView).toEqual('signal'); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/index.tsx b/x-pack/legacy/plugins/siem/public/components/top_n/index.tsx new file mode 100644 index 00000000000000..983b234a04eaad --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/index.tsx @@ -0,0 +1,166 @@ +/* + * 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 { connect, ConnectedProps } from 'react-redux'; + +import { GlobalTime } from '../../containers/global_time'; +import { BrowserFields, WithSource } from '../../containers/source'; +import { useKibana } from '../../lib/kibana'; +import { esQuery, Filter, Query } from '../../../../../../../src/plugins/data/public'; +import { inputsModel, inputsSelectors, State, timelineSelectors } from '../../store'; +import { setAbsoluteRangeDatePicker as dispatchSetAbsoluteRangeDatePicker } from '../../store/inputs/actions'; +import { timelineDefaults } from '../../store/timeline/defaults'; +import { TimelineModel } from '../../store/timeline/model'; +import { combineQueries } from '../timeline/helpers'; +import { useTimelineTypeContext } from '../timeline/timeline_context'; + +import { getOptions } from './helpers'; +import { TopN } from './top_n'; + +/** The currently active timeline always has this Redux ID */ +export const ACTIVE_TIMELINE_REDUX_ID = 'timeline-1'; + +const EMPTY_FILTERS: Filter[] = []; +const EMPTY_QUERY: Query = { query: '', language: 'kuery' }; + +const makeMapStateToProps = () => { + const getGlobalQuerySelector = inputsSelectors.globalQuerySelector(); + const getGlobalFiltersQuerySelector = inputsSelectors.globalFiltersQuerySelector(); + const getTimeline = timelineSelectors.getTimelineByIdSelector(); + const getInputsTimeline = inputsSelectors.getTimelineSelector(); + const getKqlQueryTimeline = timelineSelectors.getKqlFilterQuerySelector(); + + // The mapped Redux state provided to this component includes the global + // filters that appear at the top of most views in the app, and all the + // filters in the active timeline: + const mapStateToProps = (state: State) => { + const activeTimeline: TimelineModel = + getTimeline(state, ACTIVE_TIMELINE_REDUX_ID) ?? timelineDefaults; + const activeTimelineFilters = activeTimeline.filters ?? EMPTY_FILTERS; + const activeTimelineInput: inputsModel.InputsRange = getInputsTimeline(state); + + return { + activeTimelineEventType: activeTimeline.eventType, + activeTimelineFilters, + activeTimelineFrom: activeTimelineInput.timerange.from, + activeTimelineKqlQueryExpression: getKqlQueryTimeline(state, ACTIVE_TIMELINE_REDUX_ID), + activeTimelineTo: activeTimelineInput.timerange.to, + dataProviders: activeTimeline.dataProviders, + globalQuery: getGlobalQuerySelector(state), + globalFilters: getGlobalFiltersQuerySelector(state), + kqlMode: activeTimeline.kqlMode, + }; + }; + + return mapStateToProps; +}; + +const mapDispatchToProps = { setAbsoluteRangeDatePicker: dispatchSetAbsoluteRangeDatePicker }; + +const connector = connect(makeMapStateToProps, mapDispatchToProps); + +interface OwnProps { + browserFields: BrowserFields; + field: string; + toggleTopN: () => void; + onFilterAdded?: () => void; + value?: string[] | string | null; +} +type PropsFromRedux = ConnectedProps; +type Props = OwnProps & PropsFromRedux; + +const StatefulTopNComponent: React.FC = ({ + activeTimelineEventType, + activeTimelineFilters, + activeTimelineFrom, + activeTimelineKqlQueryExpression, + activeTimelineTo, + browserFields, + dataProviders, + field, + globalFilters = EMPTY_FILTERS, + globalQuery = EMPTY_QUERY, + kqlMode, + onFilterAdded, + setAbsoluteRangeDatePicker, + toggleTopN, + value, +}) => { + const kibana = useKibana(); + + // Regarding data from useTimelineTypeContext: + // * `documentType` (e.g. 'signals') may only be populated in some views, + // e.g. the `Signals` view on the `Detections` page. + // * `id` (`timelineId`) may only be populated when we are rendered in the + // context of the active timeline. + // * `indexToAdd`, which enables the signals index to be appended to + // the `indexPattern` returned by `WithSource`, may only be populated when + // this component is rendered in the context of the active timeline. This + // behavior enables the 'All events' view by appending the signals index + // to the index pattern. + const { documentType, id: timelineId, indexToAdd } = useTimelineTypeContext(); + + const options = getOptions( + timelineId === ACTIVE_TIMELINE_REDUX_ID ? activeTimelineEventType : undefined + ); + + return ( + + {({ from, deleteQuery, setQuery, to }) => ( + + {({ indexPattern }) => ( + + )} + + )} + + ); +}; + +StatefulTopNComponent.displayName = 'StatefulTopNComponent'; + +export const StatefulTopN = connector(React.memo(StatefulTopNComponent)); diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/top_n.test.tsx b/x-pack/legacy/plugins/siem/public/components/top_n/top_n.test.tsx new file mode 100644 index 00000000000000..13b77ea0ccd4c3 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/top_n.test.tsx @@ -0,0 +1,261 @@ +/* + * 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 { mount, ReactWrapper } from 'enzyme'; +import React from 'react'; + +import { TestProviders, mockIndexPattern } from '../../mock'; +import { setAbsoluteRangeDatePicker } from '../../store/inputs/actions'; + +import { allEvents, defaultOptions } from './helpers'; +import { TopN } from './top_n'; + +jest.mock('../../lib/kibana'); + +jest.mock('uuid', () => { + return { + v1: jest.fn(() => 'uuid.v1()'), + v4: jest.fn(() => 'uuid.v4()'), + }; +}); + +const field = 'process.name'; +const value = 'nice'; +const combinedQueries = { + bool: { + must: [], + filter: [ + { + bool: { + filter: [ + { + bool: { + filter: [ + { + bool: { + should: [{ match_phrase: { 'network.transport': 'tcp' } }], + minimum_should_match: 1, + }, + }, + { + bool: { should: [{ exists: { field: 'host.name' } }], minimum_should_match: 1 }, + }, + ], + }, + }, + { + bool: { + filter: [ + { + bool: { + should: [{ range: { '@timestamp': { gte: 1586824450493 } } }], + minimum_should_match: 1, + }, + }, + { + bool: { + should: [{ range: { '@timestamp': { lte: 1586910850493 } } }], + minimum_should_match: 1, + }, + }, + ], + }, + }, + ], + }, + }, + { match_phrase: { 'source.port': { query: '30045' } } }, + ], + should: [], + must_not: [], + }, +}; + +describe('TopN', () => { + // Suppress warnings about "react-beautiful-dnd" + /* eslint-disable no-console */ + const originalError = console.error; + const originalWarn = console.warn; + beforeAll(() => { + console.warn = jest.fn(); + console.error = jest.fn(); + }); + afterAll(() => { + console.error = originalError; + console.warn = originalWarn; + }); + + const query = { query: '', language: 'kuery' }; + + describe('common functionality', () => { + let toggleTopN: () => void; + let wrapper: ReactWrapper; + + beforeEach(() => { + toggleTopN = jest.fn(); + wrapper = mount( + + + + ); + }); + + test('it invokes the toggleTopN function when the close button is clicked', () => { + wrapper + .find('[data-test-subj="close"]') + .first() + .simulate('click'); + wrapper.update(); + + expect(toggleTopN).toHaveBeenCalled(); + }); + + test('it enables the view select by default', () => { + expect( + wrapper + .find('[data-test-subj="view-select"]') + .first() + .props().disabled + ).toBe(false); + }); + }); + + describe('events view', () => { + let toggleTopN: () => void; + let wrapper: ReactWrapper; + + beforeEach(() => { + toggleTopN = jest.fn(); + wrapper = mount( + + + + ); + }); + + test(`it renders EventsByDataset when defaultView is 'raw'`, () => { + expect( + wrapper.find('[data-test-subj="eventsByDatasetOverview-uuid.v4()Panel"]').exists() + ).toBe(true); + }); + + test(`it does NOT render SignalsByCategory when defaultView is 'raw'`, () => { + expect(wrapper.find('[data-test-subj="signals-histogram-panel"]').exists()).toBe(false); + }); + }); + + describe('signals view', () => { + let toggleTopN: () => void; + let wrapper: ReactWrapper; + + beforeEach(() => { + toggleTopN = jest.fn(); + wrapper = mount( + + + + ); + }); + + test(`it renders SignalsByCategory when defaultView is 'signal'`, () => { + expect(wrapper.find('[data-test-subj="signals-histogram-panel"]').exists()).toBe(true); + }); + + test(`it does NOT render EventsByDataset when defaultView is 'signal'`, () => { + expect( + wrapper.find('[data-test-subj="eventsByDatasetOverview-uuid.v4()Panel"]').exists() + ).toBe(false); + }); + }); + + describe('All events, a view shown only when rendered in the context of the active timeline', () => { + let wrapper: ReactWrapper; + + beforeEach(() => { + wrapper = mount( + + + + ); + }); + + test(`it disables the view select when 'options' contains only one entry`, () => { + expect( + wrapper + .find('[data-test-subj="view-select"]') + .first() + .props().disabled + ).toBe(true); + }); + + test(`it renders EventsByDataset when defaultView is 'all'`, () => { + expect( + wrapper.find('[data-test-subj="eventsByDatasetOverview-uuid.v4()Panel"]').exists() + ).toBe(true); + }); + + test(`it does NOT render SignalsByCategory when defaultView is 'all'`, () => { + expect(wrapper.find('[data-test-subj="signals-histogram-panel"]').exists()).toBe(false); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/top_n.tsx b/x-pack/legacy/plugins/siem/public/components/top_n/top_n.tsx new file mode 100644 index 00000000000000..136252617e2a26 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/top_n.tsx @@ -0,0 +1,158 @@ +/* + * 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 { EuiButtonIcon, EuiSuperSelect } from '@elastic/eui'; +import React, { useCallback, useMemo, useState } from 'react'; +import styled from 'styled-components'; +import { ActionCreator } from 'typescript-fsa'; + +import { EventsByDataset } from '../../pages/overview/events_by_dataset'; +import { SignalsByCategory } from '../../pages/overview/signals_by_category'; +import { Filter, IIndexPattern, Query } from '../../../../../../../src/plugins/data/public'; +import { inputsModel } from '../../store'; +import { InputsModelId } from '../../store/inputs/constants'; +import { EventType } from '../../store/timeline/model'; + +import { TopNOption } from './helpers'; +import * as i18n from './translations'; + +const TopNContainer = styled.div` + width: 600px; +`; + +const CloseButton = styled(EuiButtonIcon)` + z-index: 999999; + position: absolute; + right: 4px; + top: 4px; +`; + +const ViewSelect = styled(EuiSuperSelect)` + z-index: 999999; + width: 155px; +`; + +const TopNContent = styled.div` + margin-top: 4px; + + .euiPanel { + border: none; + } +`; + +export interface Props { + combinedQueries?: string; + defaultView: EventType; + deleteQuery?: ({ id }: { id: string }) => void; + field: string; + filters: Filter[]; + from: number; + indexPattern: IIndexPattern; + indexToAdd?: string[] | null; + options: TopNOption[]; + query: Query; + setAbsoluteRangeDatePicker: ActionCreator<{ + id: InputsModelId; + from: number; + to: number; + }>; + setAbsoluteRangeDatePickerTarget: InputsModelId; + setQuery: (params: { + id: string; + inspect: inputsModel.InspectQuery | null; + loading: boolean; + refetch: inputsModel.Refetch; + }) => void; + to: number; + toggleTopN: () => void; + onFilterAdded?: () => void; + value?: string[] | string | null; +} + +const NO_FILTERS: Filter[] = []; +const DEFAULT_QUERY: Query = { query: '', language: 'kuery' }; + +const TopNComponent: React.FC = ({ + combinedQueries, + defaultView, + deleteQuery, + filters = NO_FILTERS, + field, + from, + indexPattern, + indexToAdd, + options, + query = DEFAULT_QUERY, + setAbsoluteRangeDatePicker, + setAbsoluteRangeDatePickerTarget, + setQuery, + to, + toggleTopN, +}) => { + const [view, setView] = useState(defaultView); + const onViewSelected = useCallback((value: string) => setView(value as EventType), [setView]); + + const headerChildren = useMemo( + () => ( + + ), + [onViewSelected, options, view] + ); + + return ( + + + + + {view === 'raw' || view === 'all' ? ( + + ) : ( + + )} + + + ); +}; + +TopNComponent.displayName = 'TopNComponent'; + +export const TopN = React.memo(TopNComponent); diff --git a/x-pack/legacy/plugins/siem/public/components/top_n/translations.ts b/x-pack/legacy/plugins/siem/public/components/top_n/translations.ts new file mode 100644 index 00000000000000..7db55fa94d42e2 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/top_n/translations.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 { i18n } from '@kbn/i18n'; + +export const CLOSE = i18n.translate('xpack.siem.topN.closeButtonLabel', { + defaultMessage: 'Close', +}); + +export const ALL_EVENTS = i18n.translate('xpack.siem.topN.allEventsSelectLabel', { + defaultMessage: 'All events', +}); + +export const RAW_EVENTS = i18n.translate('xpack.siem.topN.rawEventsSelectLabel', { + defaultMessage: 'Raw events', +}); + +export const SIGNAL_EVENTS = i18n.translate('xpack.siem.topN.signalEventsSelectLabel', { + defaultMessage: 'Signal events', +}); diff --git a/x-pack/legacy/plugins/siem/public/components/with_hover_actions/index.tsx b/x-pack/legacy/plugins/siem/public/components/with_hover_actions/index.tsx index 07ea165fcbb5cb..86a9acc486b6de 100644 --- a/x-pack/legacy/plugins/siem/public/components/with_hover_actions/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/with_hover_actions/index.tsx @@ -4,8 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useState, useCallback } from 'react'; -import styled from 'styled-components'; +import { EuiPopover } from '@elastic/eui'; +import React, { useCallback, useMemo, useState } from 'react'; +import { IS_DRAGGING_CLASS_NAME } from '../drag_and_drop/helpers'; interface Props { /** @@ -26,34 +27,6 @@ interface Props { */ render: (showHoverContent: boolean) => JSX.Element; } - -const HoverActionsPanelContainer = styled.div` - color: ${({ theme }) => theme.eui.textColors.default}; - height: 100%; - position: relative; -`; - -HoverActionsPanelContainer.displayName = 'HoverActionsPanelContainer'; - -const HoverActionsPanel = React.memo<{ children: JSX.Element; show: boolean }>( - ({ children, show }) => ( - - {show ? children : null} - - ) -); - -HoverActionsPanel.displayName = 'HoverActionsPanel'; - -const WithHoverActionsContainer = styled.div` - display: flex; - flex-direction: row; - height: 100%; - padding-right: 5px; -`; - -WithHoverActionsContainer.displayName = 'WithHoverActionsContainer'; - /** * Decorates it's children with actions that are visible on hover. * This component does not enforce an opinion on the styling and @@ -68,20 +41,41 @@ export const WithHoverActions = React.memo( ({ alwaysShow = false, hoverContent, render }) => { const [showHoverContent, setShowHoverContent] = useState(false); const onMouseEnter = useCallback(() => { - setShowHoverContent(true); + // NOTE: the following read from the DOM is expensive, but not as + // expensive as the default behavior, which adds a div to the body, + // which-in turn performs a more expensive change to the layout + if (!document.body.classList.contains(IS_DRAGGING_CLASS_NAME)) { + setShowHoverContent(true); + } }, []); const onMouseLeave = useCallback(() => { setShowHoverContent(false); }, []); + const content = useMemo(() => <>{render(showHoverContent)}, [render, showHoverContent]); + + const isOpen = hoverContent != null && (showHoverContent || alwaysShow); + + const popover = useMemo(() => { + return ( + + {isOpen ? hoverContent : null} + + ); + }, [content, onMouseLeave, isOpen, alwaysShow, hoverContent]); + return ( - - <>{render(showHoverContent)} - - {hoverContent != null ? hoverContent : <>} - - +
    + {popover} +
    ); } ); diff --git a/x-pack/legacy/plugins/siem/public/containers/matrix_histogram/index.ts b/x-pack/legacy/plugins/siem/public/containers/matrix_histogram/index.ts index 0b369b4180fb81..83b3a8fdbb68cb 100644 --- a/x-pack/legacy/plugins/siem/public/containers/matrix_histogram/index.ts +++ b/x-pack/legacy/plugins/siem/public/containers/matrix_histogram/index.ts @@ -3,7 +3,9 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { useEffect, useState, useRef } from 'react'; +import { isEmpty } from 'lodash/fp'; +import { useEffect, useMemo, useState, useRef } from 'react'; + import { MatrixHistogramQueryProps } from '../../components/matrix_histogram/types'; import { DEFAULT_INDEX_KEY } from '../../../common/constants'; import { errorToToaster, useStateToaster } from '../../components/toasters'; @@ -19,11 +21,19 @@ export const useQuery = ({ errorMessage, filterQuery, histogramType, + indexToAdd, isInspected, stackByField, startDate, }: MatrixHistogramQueryProps) => { - const [defaultIndex] = useUiSetting$(DEFAULT_INDEX_KEY); + const [configIndex] = useUiSetting$(DEFAULT_INDEX_KEY); + const defaultIndex = useMemo(() => { + if (indexToAdd != null && !isEmpty(indexToAdd)) { + return [...configIndex, ...indexToAdd]; + } + return configIndex; + }, [configIndex, indexToAdd]); + const [, dispatchToaster] = useStateToaster(); const refetch = useRef(); const [loading, setLoading] = useState(false); @@ -96,6 +106,7 @@ export const useQuery = ({ errorMessage, filterQuery, histogramType, + indexToAdd, isInspected, stackByField, startDate, diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/helpers.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/helpers.tsx index 27ee5521460928..5c89a7e25b7a41 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/helpers.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/helpers.tsx @@ -5,6 +5,7 @@ */ import { HistogramData, SignalsAggregation, SignalsBucket, SignalsGroupBucket } from './types'; +import { showAllOthersBucket } from '../../../../../common/constants'; import { SignalSearchResponse } from '../../../../containers/detection_engine/signals/types'; import * as i18n from './translations'; @@ -34,48 +35,56 @@ export const getSignalsHistogramQuery = ( additionalFilters: Array<{ bool: { filter: unknown[]; should: unknown[]; must_not: unknown[]; must: unknown[] }; }> -) => ({ - aggs: { - signalsByGrouping: { - terms: { - field: stackByField, +) => { + const missing = showAllOthersBucket.includes(stackByField) + ? { missing: stackByField.endsWith('.ip') ? '0.0.0.0' : i18n.ALL_OTHERS, - order: { - _count: 'desc', + } + : {}; + + return { + aggs: { + signalsByGrouping: { + terms: { + field: stackByField, + ...missing, + order: { + _count: 'desc', + }, + size: 10, }, - size: 10, - }, - aggs: { - signals: { - date_histogram: { - field: '@timestamp', - fixed_interval: `${Math.floor((to - from) / 32)}ms`, - min_doc_count: 0, - extended_bounds: { - min: from, - max: to, + aggs: { + signals: { + date_histogram: { + field: '@timestamp', + fixed_interval: `${Math.floor((to - from) / 32)}ms`, + min_doc_count: 0, + extended_bounds: { + min: from, + max: to, + }, }, }, }, }, }, - }, - query: { - bool: { - filter: [ - ...additionalFilters, - { - range: { - '@timestamp': { - gte: from, - lte: to, + query: { + bool: { + filter: [ + ...additionalFilters, + { + range: { + '@timestamp': { + gte: from, + lte: to, + }, }, }, - }, - ], + ], + }, }, - }, -}); + }; +}; /** * Returns `true` when the signals histogram initial loading spinner should be shown diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/index.tsx index e25442b31da4e3..f2d722e5a66d74 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/index.tsx @@ -9,16 +9,20 @@ import numeral from '@elastic/numeral'; import React, { memo, useCallback, useMemo, useState, useEffect } from 'react'; import styled from 'styled-components'; import { isEmpty } from 'lodash/fp'; +import uuid from 'uuid'; +import { LegendItem } from '../../../../components/charts/draggable_legend_item'; +import { escapeDataProviderId } from '../../../../components/drag_and_drop/helpers'; import { HeaderSection } from '../../../../components/header_section'; - import { Filter, esQuery, Query } from '../../../../../../../../../src/plugins/data/public'; import { DEFAULT_NUMBER_FORMAT } from '../../../../../common/constants'; import { useQuerySignals } from '../../../../containers/detection_engine/signals/use_query'; import { getDetectionEngineUrl } from '../../../../components/link_to'; +import { defaultLegendColors } from '../../../../components/matrix_histogram/utils'; import { InspectButtonContainer } from '../../../../components/inspect'; import { useGetUrlSearch } from '../../../../components/navigation/use_get_url_search'; import { MatrixLoader } from '../../../../components/matrix_histogram/matrix_loader'; +import { MatrixHistogramOption } from '../../../../components/matrix_histogram/types'; import { useKibana, useUiSetting$ } from '../../../../lib/kibana'; import { navTabs } from '../../../home/home_navigations'; import { signalsHistogramOptions } from './config'; @@ -53,6 +57,9 @@ interface SignalsHistogramPanelProps { deleteQuery?: ({ id }: { id: string }) => void; filters?: Filter[]; from: number; + headerChildren?: React.ReactNode; + /** Override all defaults, and only display this field */ + onlyField?: string; query?: Query; legendPosition?: Position; panelHeight?: number; @@ -66,12 +73,21 @@ interface SignalsHistogramPanelProps { updateDateRange: (min: number, max: number) => void; } +const getHistogramOption = (fieldName: string): MatrixHistogramOption => ({ + text: fieldName, + value: fieldName, +}); + +const NO_LEGEND_DATA: LegendItem[] = []; + export const SignalsHistogramPanel = memo( ({ chartHeight, defaultStackByOption = signalsHistogramOptions[0], deleteQuery, filters, + headerChildren, + onlyField, query, from, legendPosition = 'right', @@ -85,11 +101,13 @@ export const SignalsHistogramPanel = memo( title = i18n.HISTOGRAM_HEADER, updateDateRange, }) => { + // create a unique, but stable (across re-renders) query id + const uniqueQueryId = useMemo(() => `${DETECTIONS_HISTOGRAM_ID}-${uuid.v4()}`, []); const [isInitialLoading, setIsInitialLoading] = useState(true); const [defaultNumberFormat] = useUiSetting$(DEFAULT_NUMBER_FORMAT); const [totalSignalsObj, setTotalSignalsObj] = useState(defaultTotalSignalsObj); const [selectedStackByOption, setSelectedStackByOption] = useState( - defaultStackByOption + onlyField == null ? defaultStackByOption : getHistogramOption(onlyField) ); const { loading: isLoadingSignals, @@ -123,6 +141,21 @@ export const SignalsHistogramPanel = memo( const formattedSignalsData = useMemo(() => formatSignalsData(signalsData), [signalsData]); + const legendItems: LegendItem[] = useMemo( + () => + signalsData?.aggregations?.signalsByGrouping?.buckets != null + ? signalsData.aggregations.signalsByGrouping.buckets.map((bucket, i) => ({ + color: i < defaultLegendColors.length ? defaultLegendColors[i] : undefined, + dataProviderId: escapeDataProviderId( + `draggable-legend-item-${uuid.v4()}-${selectedStackByOption.value}-${bucket.key}` + ), + field: selectedStackByOption.value, + value: bucket.key, + })) + : NO_LEGEND_DATA, + [signalsData, selectedStackByOption.value] + ); + useEffect(() => { let canceled = false; @@ -138,7 +171,7 @@ export const SignalsHistogramPanel = memo( useEffect(() => { return () => { if (deleteQuery) { - deleteQuery({ id: DETECTIONS_HISTOGRAM_ID }); + deleteQuery({ id: uniqueQueryId }); } }; }, []); @@ -146,7 +179,7 @@ export const SignalsHistogramPanel = memo( useEffect(() => { if (refetch != null && setQuery != null) { setQuery({ - id: DETECTIONS_HISTOGRAM_ID, + id: uniqueQueryId, inspect: { dsl: [request], response: [response], @@ -197,46 +230,49 @@ export const SignalsHistogramPanel = memo( } }, [showLinkToSignals, urlSearch]); + const titleText = useMemo(() => (onlyField == null ? title : i18n.TOP(onlyField)), [ + onlyField, + title, + ]); + return ( - + + + + + {stackByOptions && ( + + )} + {headerChildren != null && headerChildren} + + {linkButton} + + + {isInitialLoading ? ( - <> - - - + ) : ( - <> - - - - {stackByOptions && ( - - )} - - {linkButton} - - - - - + )} diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.test.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.test.tsx index 5eb9beaaaf76a8..6a116efb8f2f8b 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.test.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.test.tsx @@ -14,7 +14,14 @@ jest.mock('../../../../lib/kibana'); describe('SignalsHistogram', () => { it('renders correctly', () => { const wrapper = shallow( - + ); expect(wrapper.find('Chart')).toBeTruthy(); diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.tsx index 40e5b8abde072a..4bb7e9f6e122fd 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/signals_histogram.tsx @@ -12,11 +12,14 @@ import { Settings, ChartSizeArray, } from '@elastic/charts'; +import { EuiFlexGroup, EuiFlexItem, EuiProgress } from '@elastic/eui'; import React, { useMemo } from 'react'; -import { EuiProgress } from '@elastic/eui'; import { useTheme } from '../../../../components/charts/common'; import { histogramDateTimeFormatter } from '../../../../components/utils'; +import { DraggableLegend } from '../../../../components/charts/draggable_legend'; +import { LegendItem } from '../../../../components/charts/draggable_legend_item'; + import { HistogramData } from './types'; const DEFAULT_CHART_HEIGHT = 174; @@ -24,18 +27,19 @@ const DEFAULT_CHART_HEIGHT = 174; interface HistogramSignalsProps { chartHeight?: number; from: number; + legendItems: LegendItem[]; legendPosition?: Position; loading: boolean; to: number; data: HistogramData[]; updateDateRange: (min: number, max: number) => void; } - export const SignalsHistogram = React.memo( ({ chartHeight = DEFAULT_CHART_HEIGHT, data, from, + legendItems, legendPosition = 'right', loading, to, @@ -62,29 +66,38 @@ export const SignalsHistogram = React.memo( /> )} - - + + + + - + - + - - + + +
    + + {legendItems.length > 0 && ( + + )} + + ); } diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/translations.ts b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/translations.ts index 8c88fa4a5dae60..e7b76a48c75920 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/components/signals_histogram_panel/translations.ts @@ -83,6 +83,12 @@ export const STACK_BY_USERS = i18n.translate( } ); +export const TOP = (fieldName: string) => + i18n.translate('xpack.siem.detectionEngine.signals.histogram.topNLabel', { + values: { fieldName }, + defaultMessage: `Top {fieldName}`, + }); + export const HISTOGRAM_HEADER = i18n.translate( 'xpack.siem.detectionEngine.signals.histogram.headerTitle', { diff --git a/x-pack/legacy/plugins/siem/public/pages/overview/alerts_by_category/index.test.tsx b/x-pack/legacy/plugins/siem/public/pages/overview/alerts_by_category/index.test.tsx index d838b936a2d65c..bd9743bdccb4b6 100644 --- a/x-pack/legacy/plugins/siem/public/pages/overview/alerts_by_category/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/overview/alerts_by_category/index.test.tsx @@ -66,8 +66,8 @@ describe('Alerts by category', () => { ); }); - test('it does NOT render the subtitle', () => { - expect(wrapper.find('[data-test-subj="header-panel-subtitle"]').exists()).toBe(false); + test('it renders the subtitle (to prevent layout thrashing)', () => { + expect(wrapper.find('[data-test-subj="header-panel-subtitle"]').exists()).toBe(true); }); test('it renders the expected filter fields', () => { diff --git a/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/__mocks__/index.tsx b/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/__mocks__/index.tsx new file mode 100644 index 00000000000000..dad1e0034b4e2b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/__mocks__/index.tsx @@ -0,0 +1,7 @@ +/* + * 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 const EventsByDataset = () => 'mock EventsByDataset'; diff --git a/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/index.tsx b/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/index.tsx index cc1f9b1cc5681d..485fec31db240b 100644 --- a/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/index.tsx @@ -4,18 +4,26 @@ * you may not use this file except in compliance with the Elastic License. */ +import { Position } from '@elastic/charts'; import { EuiButton } from '@elastic/eui'; import numeral from '@elastic/numeral'; import React, { useEffect, useMemo } from 'react'; +import uuid from 'uuid'; -import { Position } from '@elastic/charts'; +import { DEFAULT_NUMBER_FORMAT } from '../../../../common/constants'; import { SHOWING, UNIT } from '../../../components/events_viewer/translations'; -import { convertToBuildEsQuery } from '../../../lib/keury'; import { getTabsOnHostsUrl } from '../../../components/link_to/redirect_to_hosts'; -import { histogramConfigs } from '../../../pages/hosts/navigation/events_query_tab_body'; import { MatrixHistogramContainer } from '../../../components/matrix_histogram'; +import { + MatrixHisrogramConfigs, + MatrixHistogramOption, +} from '../../../components/matrix_histogram/types'; +import { useGetUrlSearch } from '../../../components/navigation/use_get_url_search'; +import { navTabs } from '../../home/home_navigations'; import { eventsStackByOptions } from '../../hosts/navigation'; +import { convertToBuildEsQuery } from '../../../lib/keury'; import { useKibana, useUiSetting$ } from '../../../lib/kibana'; +import { histogramConfigs } from '../../../pages/hosts/navigation/events_query_tab_body'; import { Filter, esQuery, @@ -24,12 +32,9 @@ import { } from '../../../../../../../../src/plugins/data/public'; import { inputsModel } from '../../../store'; import { HostsTableType, HostsType } from '../../../store/hosts/model'; -import { DEFAULT_NUMBER_FORMAT } from '../../../../common/constants'; +import { InputsModelId } from '../../../store/inputs/constants'; import * as i18n from '../translations'; -import { MatrixHisrogramConfigs } from '../../../components/matrix_histogram/types'; -import { useGetUrlSearch } from '../../../components/navigation/use_get_url_search'; -import { navTabs } from '../../home/home_navigations'; const NO_FILTERS: Filter[] = []; const DEFAULT_QUERY: Query = { query: '', language: 'kuery' }; @@ -38,36 +43,56 @@ const DEFAULT_STACK_BY = 'event.dataset'; const ID = 'eventsByDatasetOverview'; interface Props { + combinedQueries?: string; deleteQuery?: ({ id }: { id: string }) => void; filters?: Filter[]; from: number; + headerChildren?: React.ReactNode; indexPattern: IIndexPattern; + indexToAdd?: string[] | null; + onlyField?: string; query?: Query; + setAbsoluteRangeDatePickerTarget?: InputsModelId; setQuery: (params: { id: string; inspect: inputsModel.InspectQuery | null; loading: boolean; refetch: inputsModel.Refetch; }) => void; + showSpacer?: boolean; to: number; } +const getHistogramOption = (fieldName: string): MatrixHistogramOption => ({ + text: fieldName, + value: fieldName, +}); + const EventsByDatasetComponent: React.FC = ({ + combinedQueries, deleteQuery, filters = NO_FILTERS, from, + headerChildren, indexPattern, + indexToAdd, + onlyField, query = DEFAULT_QUERY, + setAbsoluteRangeDatePickerTarget, setQuery, + showSpacer = true, to, }) => { + // create a unique, but stable (across re-renders) query id + const uniqueQueryId = useMemo(() => `${ID}-${uuid.v4()}`, []); + useEffect(() => { return () => { if (deleteQuery) { - deleteQuery({ id: ID }); + deleteQuery({ id: uniqueQueryId }); } }; - }, [deleteQuery]); + }, [deleteQuery, uniqueQueryId]); const kibana = useKibana(); const [defaultNumberFormat] = useUiSetting$(DEFAULT_NUMBER_FORMAT); @@ -84,38 +109,62 @@ const EventsByDatasetComponent: React.FC = ({ const filterQuery = useMemo( () => - convertToBuildEsQuery({ - config: esQuery.getEsQueryConfig(kibana.services.uiSettings), - indexPattern, - queries: [query], - filters, - }), - [kibana, indexPattern, query, filters] + combinedQueries == null + ? convertToBuildEsQuery({ + config: esQuery.getEsQueryConfig(kibana.services.uiSettings), + indexPattern, + queries: [query], + filters, + }) + : combinedQueries, + [combinedQueries, kibana, indexPattern, query, filters] ); const eventsByDatasetHistogramConfigs: MatrixHisrogramConfigs = useMemo( () => ({ ...histogramConfigs, + stackByOptions: + onlyField != null ? [getHistogramOption(onlyField)] : histogramConfigs.stackByOptions, defaultStackByOption: - eventsStackByOptions.find(o => o.text === DEFAULT_STACK_BY) ?? eventsStackByOptions[0], + onlyField != null + ? getHistogramOption(onlyField) + : eventsStackByOptions.find(o => o.text === DEFAULT_STACK_BY) ?? eventsStackByOptions[0], legendPosition: Position.Right, subtitle: (totalCount: number) => `${SHOWING}: ${numeral(totalCount).format(defaultNumberFormat)} ${UNIT(totalCount)}`, + titleSize: onlyField == null ? 'm' : 's', }), - [] + [onlyField, defaultNumberFormat] ); + const headerContent = useMemo(() => { + if (onlyField == null || headerChildren != null) { + return ( + <> + {headerChildren} + {onlyField == null && eventsCountViewEventsButton} + + ); + } else { + return null; + } + }, [onlyField, headerChildren, eventsCountViewEventsButton]); + return ( ); }; diff --git a/x-pack/legacy/plugins/siem/public/pages/overview/overview.tsx b/x-pack/legacy/plugins/siem/public/pages/overview/overview.tsx index 2db49e60193fcc..82f44447289022 100644 --- a/x-pack/legacy/plugins/siem/public/pages/overview/overview.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/overview/overview.tsx @@ -63,7 +63,7 @@ const OverviewComponent: React.FC = ({ from={from} indexPattern={indexPattern} query={query} - setAbsoluteRangeDatePicker={setAbsoluteRangeDatePicker!} + setAbsoluteRangeDatePicker={setAbsoluteRangeDatePicker} setQuery={setQuery} to={to} /> diff --git a/x-pack/legacy/plugins/siem/public/pages/overview/signals_by_category/index.tsx b/x-pack/legacy/plugins/siem/public/pages/overview/signals_by_category/index.tsx index 5f78c4c10eb372..feba80539a11b9 100644 --- a/x-pack/legacy/plugins/siem/public/pages/overview/signals_by_category/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/overview/signals_by_category/index.tsx @@ -12,6 +12,7 @@ import { useSignalIndex } from '../../../containers/detection_engine/signals/use import { SetAbsoluteRangeDatePicker } from '../../network/types'; import { Filter, IIndexPattern, Query } from '../../../../../../../../src/plugins/data/public'; import { inputsModel } from '../../../store'; +import { InputsModelId } from '../../../store/inputs/constants'; import * as i18n from '../translations'; const DEFAULT_QUERY: Query = { query: '', language: 'kuery' }; @@ -22,9 +23,13 @@ interface Props { deleteQuery?: ({ id }: { id: string }) => void; filters?: Filter[]; from: number; + headerChildren?: React.ReactNode; indexPattern: IIndexPattern; + /** Override all defaults, and only display this field */ + onlyField?: string; query?: Query; setAbsoluteRangeDatePicker: SetAbsoluteRangeDatePicker; + setAbsoluteRangeDatePickerTarget?: InputsModelId; setQuery: (params: { id: string; inspect: inputsModel.InspectQuery | null; @@ -38,15 +43,18 @@ const SignalsByCategoryComponent: React.FC = ({ deleteQuery, filters = NO_FILTERS, from, + headerChildren, + onlyField, query = DEFAULT_QUERY, setAbsoluteRangeDatePicker, + setAbsoluteRangeDatePickerTarget = 'global', setQuery, to, }) => { const { signalIndexName } = useSignalIndex(); const updateDateRangeCallback = useCallback( (min: number, max: number) => { - setAbsoluteRangeDatePicker!({ id: 'global', from: min, to: max }); + setAbsoluteRangeDatePicker({ id: setAbsoluteRangeDatePickerTarget, from: min, to: max }); }, [setAbsoluteRangeDatePicker] ); @@ -60,12 +68,14 @@ const SignalsByCategoryComponent: React.FC = ({ defaultStackByOption={defaultStackByOption} filters={filters} from={from} + headerChildren={headerChildren} + onlyField={onlyField} query={query} signalIndexName={signalIndexName} setQuery={setQuery} showTotalSignalsCount={true} - showLinkToSignals={true} - stackByOptions={signalsHistogramOptions} + showLinkToSignals={onlyField == null ? true : false} + stackByOptions={onlyField == null ? signalsHistogramOptions : undefined} legendPosition={'right'} to={to} title={i18n.SIGNAL_COUNT} diff --git a/x-pack/legacy/plugins/siem/public/pages/overview/translations.ts b/x-pack/legacy/plugins/siem/public/pages/overview/translations.ts index 601a629d86e57e..b7bee15e4c5bf5 100644 --- a/x-pack/legacy/plugins/siem/public/pages/overview/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/overview/translations.ts @@ -38,6 +38,12 @@ export const SIGNAL_COUNT = i18n.translate('xpack.siem.overview.signalCountTitle defaultMessage: 'Signal count', }); +export const TOP = (fieldName: string) => + i18n.translate('xpack.siem.overview.topNLabel', { + values: { fieldName }, + defaultMessage: `Top {fieldName}`, + }); + export const VIEW_ALERTS = i18n.translate('xpack.siem.overview.viewAlertsButtonLabel', { defaultMessage: 'View alerts', }); diff --git a/x-pack/legacy/plugins/siem/public/pages/timelines/timelines_page.test.tsx b/x-pack/legacy/plugins/siem/public/pages/timelines/timelines_page.test.tsx index 62399891c96066..ae95a1316a6002 100644 --- a/x-pack/legacy/plugins/siem/public/pages/timelines/timelines_page.test.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/timelines/timelines_page.test.tsx @@ -10,6 +10,8 @@ import { shallow, ShallowWrapper } from 'enzyme'; import React from 'react'; import ApolloClient from 'apollo-client'; +jest.mock('../../pages/overview/events_by_dataset'); + jest.mock('../../lib/kibana', () => { return { useKibana: jest.fn(), diff --git a/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/query.events_over_time.dsl.ts b/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/query.events_over_time.dsl.ts index 3a4281b980cc45..63649a1064b025 100644 --- a/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/query.events_over_time.dsl.ts +++ b/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/query.events_over_time.dsl.ts @@ -3,9 +3,13 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ + +import { showAllOthersBucket } from '../../../common/constants'; import { createQueryFilterClauses, calculateTimeSeriesInterval } from '../../utils/build_query'; import { MatrixHistogramRequestOptions } from '../framework'; +import * as i18n from './translations'; + export const buildEventsOverTimeQuery = ({ filterQuery, timerange: { from, to }, @@ -41,11 +45,19 @@ export const buildEventsOverTimeQuery = ({ }, }, }; + + const missing = + stackByField != null && showAllOthersBucket.includes(stackByField) + ? { + missing: stackByField?.endsWith('.ip') ? '0.0.0.0' : i18n.ALL_OTHERS, + } + : {}; + return { eventActionGroup: { terms: { field: stackByField, - missing: 'All others', + ...missing, order: { _count: 'desc', }, diff --git a/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/translations.ts b/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/translations.ts new file mode 100644 index 00000000000000..413acaa2d4b0a6 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/matrix_histogram/translations.ts @@ -0,0 +1,14 @@ +/* + * 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'; + +export const ALL_OTHERS = i18n.translate( + 'xpack.siem.detectionEngine.signals.histogram.allOthersGroupingLabel', + { + defaultMessage: 'All others', + } +); From b81f9269e5a29db75e56aaafa01d02ed860003fe Mon Sep 17 00:00:00 2001 From: Uladzislau Lasitsa Date: Fri, 17 Apr 2020 10:04:38 +0300 Subject: [PATCH 13/59] Index pattern management UI -> TypeScript and New Platform Ready (create_index_pattern_wizard) (#63111) * Migrated create_index_pattern_wizard and its tests to typescript * Fixed types * Fixed some comments * Fixed comments * Fixed types * Fixed types * Fixed snapshot * Removed indexPatternCreationType from state. * Fixed comments Co-authored-by: Elastic Machine --- .../create_index_pattern_wizard.test.js.snap | 205 ------------ .../create_index_pattern_wizard.test.tsx.snap | 312 ++++++++++++++++++ .../step_index_pattern/step_index_pattern.tsx | 2 +- ...s => create_index_pattern_wizard.test.tsx} | 129 +++----- ...ard.js => create_index_pattern_wizard.tsx} | 133 +++++--- .../create_index_pattern_wizard/index.js | 4 +- 6 files changed, 443 insertions(+), 342 deletions(-) delete mode 100644 src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.js.snap create mode 100644 src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.tsx.snap rename src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/{create_index_pattern_wizard.test.js => create_index_pattern_wizard.test.tsx} (55%) rename src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/{create_index_pattern_wizard.js => create_index_pattern_wizard.tsx} (63%) diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.js.snap b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.js.snap deleted file mode 100644 index 59b275c7708a40..00000000000000 --- a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.js.snap +++ /dev/null @@ -1,205 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`CreateIndexPatternWizard defaults to the loading state 1`] = ` - -
    -
    - -
    - -
    -`; - -exports[`CreateIndexPatternWizard renders index pattern step when there are indices 1`] = ` - -
    -
    - -
    - -
    -`; - -exports[`CreateIndexPatternWizard renders the empty state when there are no indices 1`] = ` - -
    -
    - -
    - -
    -`; - -exports[`CreateIndexPatternWizard renders time field step when step is set to 2 1`] = ` - -
    -
    - -
    - -
    -`; - -exports[`CreateIndexPatternWizard renders when there are no indices but there are remote clusters 1`] = ` - -
    -
    - -
    - -
    -`; - -exports[`CreateIndexPatternWizard shows system indices even if there are no other indices if the include system indices is toggled 1`] = ` - -
    -
    - -
    - -
    -`; diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.tsx.snap b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.tsx.snap new file mode 100644 index 00000000000000..09a06bd8827ce4 --- /dev/null +++ b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/__snapshots__/create_index_pattern_wizard.test.tsx.snap @@ -0,0 +1,312 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`CreateIndexPatternWizard defaults to the loading state 1`] = ` + +
    +
    + +
    + +
    +`; + +exports[`CreateIndexPatternWizard renders index pattern step when there are indices 1`] = ` + +
    +
    + +
    + +
    +`; + +exports[`CreateIndexPatternWizard renders the empty state when there are no indices 1`] = ` + +
    +
    + +
    + +
    +`; + +exports[`CreateIndexPatternWizard renders time field step when step is set to 2 1`] = ` + +
    +
    + +
    + +
    +`; + +exports[`CreateIndexPatternWizard renders when there are no indices but there are remote clusters 1`] = ` + +
    +
    + +
    + +
    +`; + +exports[`CreateIndexPatternWizard shows system indices even if there are no other indices if the include system indices is toggled 1`] = ` + +
    +
    + +
    + +
    +`; diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/components/step_index_pattern/step_index_pattern.tsx b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/components/step_index_pattern/step_index_pattern.tsx index 648bf7f8f97388..d8f677b7f60897 100644 --- a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/components/step_index_pattern/step_index_pattern.tsx +++ b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/components/step_index_pattern/step_index_pattern.tsx @@ -48,7 +48,7 @@ interface StepIndexPatternProps { esService: DataPublicPluginStart['search']['__LEGACY']['esClient']; savedObjectsClient: SavedObjectsClient; indexPatternCreationType: IndexPatternCreationConfig; - goToNextStep: () => void; + goToNextStep: (query: string) => void; initialQuery?: string; uiSettings: IUiSettingsClient; } diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.test.js b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.test.tsx similarity index 55% rename from src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.test.js rename to src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.test.tsx index 941f87d4d9fd26..45af98661eda36 100644 --- a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.test.js +++ b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.test.tsx @@ -21,17 +21,12 @@ import React from 'react'; import { shallow } from 'enzyme'; import { CreateIndexPatternWizard } from './create_index_pattern_wizard'; -const mockIndexPatternCreationType = { - getIndexPatternType: () => 'default', - getIndexPatternName: () => 'name', - getIsBeta: () => false, - checkIndicesForErrors: () => false, - getShowSystemIndices: () => false, - renderPrompt: () => {}, - getIndexPatternMappings: () => { - return {}; - }, -}; +import { coreMock } from '../../../../../../../../core/public/mocks'; +import { dataPluginMock } from '../../../../../../../../plugins/data/public/mocks'; +import { IndexPatternCreationConfig } from '../../../../../../../../plugins/index_pattern_management/public'; +import { IndexPattern } from '../../../../../../../../plugins/data/public'; +import { SavedObjectsClient } from '../../../../../../../../core/public'; + jest.mock('./components/step_index_pattern', () => ({ StepIndexPattern: 'StepIndexPattern' })); jest.mock('./components/step_time_field', () => ({ StepTimeField: 'StepTimeField' })); jest.mock('./components/header', () => ({ Header: 'Header' })); @@ -46,39 +41,36 @@ jest.mock('ui/chrome', () => ({ addBasePath: () => {}, })); -const loadingDataDocUrl = ''; +const { savedObjects, overlays, uiSettings } = coreMock.createStart(); +const { indexPatterns, search } = dataPluginMock.createStartContract(); +const mockIndexPatternCreationType = new IndexPatternCreationConfig({ + type: 'default', + name: 'name', +}); + const initialQuery = ''; const services = { - es: {}, - indexPatterns: {}, - savedObjectsClient: {}, - config: {}, - changeUrl: () => {}, - scopeApply: () => {}, - + es: search.__LEGACY.esClient, + indexPatterns, + savedObjectsClient: savedObjects.client as SavedObjectsClient, + uiSettings, + changeUrl: jest.fn(), + openConfirm: overlays.openConfirm, indexPatternCreationType: mockIndexPatternCreationType, }; describe('CreateIndexPatternWizard', () => { - it(`defaults to the loading state`, async () => { + test(`defaults to the loading state`, () => { const component = shallow( - + ); expect(component).toMatchSnapshot(); }); - it('renders the empty state when there are no indices', async () => { + test('renders the empty state when there are no indices', async () => { const component = shallow( - + ); component.setState({ @@ -91,13 +83,9 @@ describe('CreateIndexPatternWizard', () => { expect(component).toMatchSnapshot(); }); - it('renders when there are no indices but there are remote clusters', async () => { + test('renders when there are no indices but there are remote clusters', async () => { const component = shallow( - + ); component.setState({ @@ -110,13 +98,9 @@ describe('CreateIndexPatternWizard', () => { expect(component).toMatchSnapshot(); }); - it('shows system indices even if there are no other indices if the include system indices is toggled', async () => { + test('shows system indices even if there are no other indices if the include system indices is toggled', async () => { const component = shallow( - + ); component.setState({ @@ -129,13 +113,9 @@ describe('CreateIndexPatternWizard', () => { expect(component).toMatchSnapshot(); }); - it('renders index pattern step when there are indices', async () => { + test('renders index pattern step when there are indices', async () => { const component = shallow( - + ); component.setState({ @@ -147,13 +127,9 @@ describe('CreateIndexPatternWizard', () => { expect(component).toMatchSnapshot(); }); - it('renders time field step when step is set to 2', async () => { + test('renders time field step when step is set to 2', async () => { const component = shallow( - + ); component.setState({ @@ -166,37 +142,30 @@ describe('CreateIndexPatternWizard', () => { expect(component).toMatchSnapshot(); }); - it('invokes the provided services when creating an index pattern', async () => { - const get = jest.fn(); - const set = jest.fn(); + test('invokes the provided services when creating an index pattern', async () => { const create = jest.fn().mockImplementation(() => 'id'); const clear = jest.fn(); - const changeUrl = jest.fn(); - - const component = shallow( - ({ - create, - }), - clearCache: clear, - }, - changeUrl, - indexPatternCreationType: mockIndexPatternCreationType, - }} - /> + services.indexPatterns.clearCache = clear; + const indexPattern = ({ + id: '1', + title: 'my-fake-index-pattern', + timeFieldName: 'timestamp', + fields: [], + create, + } as unknown) as IndexPattern; + services.indexPatterns.make = async () => { + return indexPattern; + }; + + const component = shallow( + ); component.setState({ indexPattern: 'foo' }); - await component.instance().createIndexPattern(null, 'id'); - expect(get).toBeCalled(); + await component.instance().createIndexPattern(undefined, 'id'); + expect(services.uiSettings.get).toBeCalled(); expect(create).toBeCalled(); expect(clear).toBeCalledWith('id'); - expect(changeUrl).toBeCalledWith(`/management/kibana/index_patterns/id`); + expect(services.changeUrl).toBeCalledWith(`/management/kibana/index_patterns/id`); }); }); diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.js b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.tsx similarity index 63% rename from src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.js rename to src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.tsx index 1a93188edd6cc1..4166d48349d351 100644 --- a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.js +++ b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/create_index_pattern_wizard.tsx @@ -17,11 +17,11 @@ * under the License. */ -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; +import React, { ReactElement, Component } from 'react'; -import { EuiGlobalToastList } from '@elastic/eui'; +import { EuiGlobalToastList, EuiGlobalToastListToast } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; +import { i18n } from '@kbn/i18n'; import { StepIndexPattern } from './components/step_index_pattern'; import { StepTimeField } from './components/step_time_field'; @@ -31,41 +31,61 @@ import { EmptyState } from './components/empty_state'; import { MAX_SEARCH_SIZE } from './constants'; import { ensureMinimumTime, getIndices } from './lib'; -import { i18n } from '@kbn/i18n'; - -export class CreateIndexPatternWizard extends Component { - static propTypes = { - initialQuery: PropTypes.string, - services: PropTypes.shape({ - es: PropTypes.object.isRequired, - indexPatterns: PropTypes.object.isRequired, - savedObjectsClient: PropTypes.object.isRequired, - indexPatternCreationType: PropTypes.object.isRequired, - config: PropTypes.object.isRequired, - changeUrl: PropTypes.func.isRequired, - openConfirm: PropTypes.func.isRequired, - }).isRequired, +import { + SavedObjectsClient, + IUiSettingsClient, + OverlayStart, +} from '../../../../../../../../core/public'; +import { DataPublicPluginStart } from '../../../../../../../../plugins/data/public'; +import { IndexPatternCreationConfig } from '../../../../../../../../plugins/index_pattern_management/public'; +import { MatchedIndex } from './types'; + +interface CreateIndexPatternWizardProps { + initialQuery: string; + services: { + indexPatternCreationType: IndexPatternCreationConfig; + es: DataPublicPluginStart['search']['__LEGACY']['esClient']; + indexPatterns: DataPublicPluginStart['indexPatterns']; + savedObjectsClient: SavedObjectsClient; + uiSettings: IUiSettingsClient; + changeUrl: (url: string) => void; + openConfirm: OverlayStart['openConfirm']; }; +} - constructor(props) { - super(props); - this.indexPatternCreationType = this.props.services.indexPatternCreationType; - this.state = { - step: 1, - indexPattern: '', - allIndices: [], - remoteClustersExist: false, - isInitiallyLoadingIndices: true, - isIncludingSystemIndices: false, - toasts: [], - }; - } +interface CreateIndexPatternWizardState { + step: number; + indexPattern: string; + allIndices: MatchedIndex[]; + remoteClustersExist: boolean; + isInitiallyLoadingIndices: boolean; + isIncludingSystemIndices: boolean; + toasts: EuiGlobalToastListToast[]; +} + +export class CreateIndexPatternWizard extends Component< + CreateIndexPatternWizardProps, + CreateIndexPatternWizardState +> { + state = { + step: 1, + indexPattern: '', + allIndices: [], + remoteClustersExist: false, + isInitiallyLoadingIndices: true, + isIncludingSystemIndices: false, + toasts: [], + }; async UNSAFE_componentWillMount() { this.fetchData(); } - catchAndWarn = async (asyncFn, errorValue, errorMsg) => { + catchAndWarn = async ( + asyncFn: Promise, + errorValue: [] | string[], + errorMsg: ReactElement + ) => { try { return await asyncFn; } catch (errors) { @@ -109,22 +129,26 @@ export class CreateIndexPatternWizard extends Component { // query local and remote indices, updating state independently ensureMinimumTime( this.catchAndWarn( - getIndices(services.es, this.indexPatternCreationType, `*`, MAX_SEARCH_SIZE), + getIndices(services.es, services.indexPatternCreationType, `*`, MAX_SEARCH_SIZE), [], indicesFailMsg ) - ).then(allIndices => this.setState({ allIndices, isInitiallyLoadingIndices: false })); + ).then((allIndices: MatchedIndex[]) => + this.setState({ allIndices, isInitiallyLoadingIndices: false }) + ); this.catchAndWarn( // if we get an error from remote cluster query, supply fallback value that allows user entry. // ['a'] is fallback value - getIndices(services.es, this.indexPatternCreationType, `*:*`, 1), + getIndices(services.es, services.indexPatternCreationType, `*:*`, 1), ['a'], clustersFailMsg - ).then(remoteIndices => this.setState({ remoteClustersExist: !!remoteIndices.length })); + ).then((remoteIndices: string[] | MatchedIndex[]) => + this.setState({ remoteClustersExist: !!remoteIndices.length }) + ); }; - createIndexPattern = async (timeFieldName, indexPatternId) => { + createIndexPattern = async (timeFieldName: string | undefined, indexPatternId: string) => { const { services } = this.props; const { indexPattern } = this.state; @@ -134,13 +158,13 @@ export class CreateIndexPatternWizard extends Component { id: indexPatternId, title: indexPattern, timeFieldName, - ...this.indexPatternCreationType.getIndexPatternMappings(), + ...services.indexPatternCreationType.getIndexPatternMappings(), }); const createdId = await emptyPattern.create(); if (!createdId) { const confirmMessage = i18n.translate('kbn.management.indexPattern.titleExistsLabel', { - values: { title: this.title }, + values: { title: emptyPattern.title }, defaultMessage: "An index pattern with the title '{title}' already exists.", }); @@ -157,15 +181,15 @@ export class CreateIndexPatternWizard extends Component { } } - if (!services.config.get('defaultIndex')) { - await services.config.set('defaultIndex', createdId); + if (!services.uiSettings.get('defaultIndex')) { + await services.uiSettings.set('defaultIndex', createdId); } services.indexPatterns.clearCache(createdId); services.changeUrl(`/management/kibana/index_patterns/${createdId}`); }; - goToTimeFieldStep = indexPattern => { + goToTimeFieldStep = (indexPattern: string) => { this.setState({ step: 2, indexPattern }); }; @@ -174,22 +198,23 @@ export class CreateIndexPatternWizard extends Component { }; onChangeIncludingSystemIndices = () => { - this.setState(state => ({ - isIncludingSystemIndices: !state.isIncludingSystemIndices, + this.setState(prevState => ({ + isIncludingSystemIndices: !prevState.isIncludingSystemIndices, })); }; renderHeader() { const { isIncludingSystemIndices } = this.state; + const { services } = this.props; return (
    ); } @@ -208,7 +233,7 @@ export class CreateIndexPatternWizard extends Component { return ; } - const hasDataIndices = allIndices.some(({ name }) => !name.startsWith('.')); + const hasDataIndices = allIndices.some(({ name }: MatchedIndex) => !name.startsWith('.')); if (!hasDataIndices && !isIncludingSystemIndices && !remoteClustersExist) { return ; } @@ -222,7 +247,7 @@ export class CreateIndexPatternWizard extends Component { isIncludingSystemIndices={isIncludingSystemIndices} esService={services.es} savedObjectsClient={services.savedObjectsClient} - indexPatternCreationType={this.indexPatternCreationType} + indexPatternCreationType={services.indexPatternCreationType} goToNextStep={this.goToTimeFieldStep} uiSettings={services.uiSettings} /> @@ -237,7 +262,7 @@ export class CreateIndexPatternWizard extends Component { indexPatternsService={services.indexPatterns} goToPreviousStep={this.goToIndexPatternStep} createIndexPattern={this.createIndexPattern} - indexPatternCreationType={this.indexPatternCreationType} + indexPatternCreationType={services.indexPatternCreationType} /> ); } @@ -245,9 +270,9 @@ export class CreateIndexPatternWizard extends Component { return null; } - removeToast = removedToast => { + removeToast = (id: string) => { this.setState(prevState => ({ - toasts: prevState.toasts.filter(toast => toast.id !== removedToast.id), + toasts: prevState.toasts.filter(toast => toast.id !== id), })); }; @@ -263,7 +288,9 @@ export class CreateIndexPatternWizard extends Component { { + this.removeToast(id); + }} toastLifeTimeMs={6000} /> diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/index.js b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/index.js index 47cb773258cb46..ed1fc026c560cb 100644 --- a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/index.js +++ b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/create_index_pattern_wizard/index.js @@ -36,17 +36,15 @@ uiRoutes.when('/management/kibana/index_pattern', { $routeParams.type ); const services = { - config: npStart.core.uiSettings, + uiSettings: npStart.core.uiSettings, es: npStart.plugins.data.search.__LEGACY.esClient, indexPatterns: npStart.plugins.data.indexPatterns, - $http: npStart.core.http, savedObjectsClient: npStart.core.savedObjects.client, indexPatternCreationType, changeUrl: url => { $scope.$evalAsync(() => kbnUrl.changePath(url)); }, openConfirm: npStart.core.overlays.openConfirm, - uiSettings: npStart.core.uiSettings, }; const initialQuery = $routeParams.id ? decodeURIComponent($routeParams.id) : undefined; From eefafa291920a04eda86ecb6d834b8ceca95990b Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens Date: Fri, 17 Apr 2020 10:18:01 +0200 Subject: [PATCH 14/59] Replacebad scope link with actual values (#63444) Co-authored-by: Elastic Machine --- .../json/overrides/cluster.put_settings.json | 56 ++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/src/plugins/console/server/lib/spec_definitions/json/overrides/cluster.put_settings.json b/src/plugins/console/server/lib/spec_definitions/json/overrides/cluster.put_settings.json index 408b01c4cb8f5b..0da2c130b47cf3 100644 --- a/src/plugins/console/server/lib/spec_definitions/json/overrides/cluster.put_settings.json +++ b/src/plugins/console/server/lib/spec_definitions/json/overrides/cluster.put_settings.json @@ -59,7 +59,61 @@ } }, "transient": { - "__scope_link": ".persistent" + "cluster": { + "routing": { + "allocation.enable": { + "__one_of": ["all", "primaries", "new_primaries", "none"] + }, + "allocation.disk.threshold_enabled": { "__one_of": [false, true] }, + "allocation.disk.watermark.low": "85%", + "allocation.disk.watermark.high": "90%", + "allocation.disk.reroute_interval": "60s", + "allocation.exclude": { + "_ip": "", + "_name": "", + "_host": "", + "_id": "" + }, + "allocation.include": { + "_ip": "", + "_name": "", + "_host": "", + "_id": "" + }, + "allocation.require": { + "_ip": "", + "_name": "", + "_host": "", + "_id": "" + }, + "allocation.awareness.attributes": [], + "allocation.awareness.force": { + "*": { + "values": [] + } + }, + "allocation.allow_rebalance": { + "__one_of": [ + "always", + "indices_primaries_active", + "indices_all_active" + ] + }, + "allocation.cluster_concurrent_rebalance": 2, + "allocation.node_initial_primaries_recoveries": 4, + "allocation.node_concurrent_recoveries": 2, + "allocation.same_shard.host": { "__one_of": [false, true] } + } + }, + "indices": { + "breaker": { + "total.limit": "70%", + "fielddata.limit": "60%", + "fielddata.overhead": 1.03, + "request.limit": "40%", + "request.overhead": 1.0 + } + } } } } From 4e56419ca4a45aca776ecea3562825d85fb6afbb Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Fri, 17 Apr 2020 10:42:27 +0200 Subject: [PATCH 15/59] Migrate timelion vis (#62819) --- .eslintignore | 4 +- .github/CODEOWNERS | 2 +- .i18nrc.json | 2 +- .../core_plugins/timelion/public/app.js | 5 +- .../directives/timelion_expression_input.js | 6 +-- .../public/panels/timechart/schema.ts | 14 ++++-- .../core_plugins/vis_type_timelion/index.ts | 44 ----------------- .../vis_type_timelion/package.json | 4 -- .../public/components/_index.scss | 2 - .../vis_type_timelion/public/legacy.ts | 35 -------------- .../public/legacy_imports.ts | 21 --------- .../ui/public/new_platform/new_platform.ts | 2 + src/plugins/timelion/kibana.json | 8 ---- src/plugins/timelion/public/index.ts | 30 ------------ .../vis_type_timelion/README.md | 0 .../common/chain.peg | 0 .../common/lib/calculate_interval.test.ts | 0 .../common/lib/calculate_interval.ts | 0 .../common/lib/index.ts | 0 .../common/lib/to_milliseconds.ts | 0 .../common/types.ts | 0 .../{timelion => vis_type_timelion}/config.ts | 0 src/plugins/vis_type_timelion/kibana.json | 8 ++++ .../public/_generated_/chain.js | 0 .../public/_timelion_editor.scss | 0 .../public/_timelion_vis.scss | 0 .../public/components/_index.scss | 2 + .../public/components/_panel.scss | 0 .../_timelion_expression_input.scss | 0 .../public/components/chart.tsx | 0 .../public/components/index.ts | 0 .../public/components/panel.tsx | 4 +- .../components/timelion_expression_input.tsx | 7 +-- .../timelion_expression_input_helpers.test.ts | 2 +- .../timelion_expression_input_helpers.ts | 5 +- .../public/components/timelion_interval.tsx | 4 +- .../public/components/timelion_vis.tsx | 2 +- .../vis_type_timelion/public/flot.js | 14 +++--- .../public/helpers/arg_value_suggestions.ts | 7 +-- .../public/helpers/get_timezone.ts | 0 .../public/helpers/panel_utils.ts | 2 +- .../public/helpers/plugin_services.ts | 2 +- .../public/helpers/tick_formatters.test.ts | 0 .../public/helpers/tick_formatters.ts | 0 .../public/helpers/tick_generator.test.ts | 0 .../public/helpers/tick_generator.ts | 0 .../helpers/timelion_request_handler.ts | 4 +- .../public/helpers/xaxis_formatter.ts | 0 .../vis_type_timelion/public/index.scss | 2 - .../vis_type_timelion/public/index.ts | 4 +- .../vis_type_timelion/public/plugin.ts | 47 +++++++++++++++---- .../public/timelion_options.tsx | 0 .../public/timelion_vis_fn.ts | 0 .../public/timelion_vis_type.tsx | 4 +- .../webpackShims/jquery.flot.axislabels.js | 0 .../webpackShims/jquery.flot.crosshair.js | 0 .../public/webpackShims/jquery.flot.js | 0 .../webpackShims/jquery.flot.selection.js | 0 .../public/webpackShims/jquery.flot.stack.js | 0 .../public/webpackShims/jquery.flot.symbol.js | 0 .../public/webpackShims/jquery.flot.time.js | 0 .../server/fit_functions/average.js | 0 .../server/fit_functions/average.test.js | 0 .../server/fit_functions/carry.js | 0 .../server/fit_functions/carry.test.js | 0 .../server/fit_functions/nearest.js | 0 .../server/fit_functions/none.js | 0 .../server/fit_functions/scale.js | 0 .../server/handlers/chain_runner.js | 0 .../server/handlers/lib/arg_type.js | 0 .../server/handlers/lib/index_arguments.js | 0 .../server/handlers/lib/parse_sheet.js | 0 .../server/handlers/lib/parse_sheet.test.js | 0 .../server/handlers/lib/preprocess_chain.js | 0 .../handlers/lib/reposition_arguments.js | 0 .../server/handlers/lib/tl_config.js | 0 .../server/handlers/lib/validate_arg.js | 0 .../server/handlers/lib/validate_time.js | 0 .../server/index.ts | 16 ++++--- .../server/lib/alter.js | 0 .../server/lib/as_sorted.js | 0 .../server/lib/build_target.js | 0 .../server/lib/classes/chainable.js | 0 .../server/lib/classes/datasource.js | 0 .../server/lib/classes/timelion_function.d.ts | 0 .../server/lib/classes/timelion_function.js | 0 .../server/lib/config_manager.ts | 0 .../server/lib/functions_md.js | 0 .../server/lib/get_namespaced_settings.js | 0 .../server/lib/load_functions.d.ts | 0 .../server/lib/load_functions.js | 0 .../server/lib/load_functions.test.js | 2 +- .../server/lib/offset_time.js | 0 .../server/lib/offset_time.test.js | 0 .../server/lib/process_function_definition.js | 0 .../server/lib/reduce.js | 0 .../server/lib/split_interval.js | 0 .../server/lib/unzip_pairs.js | 0 .../server/plugin.ts | 0 .../server/routes/functions.ts | 0 .../server/routes/run.ts | 0 .../server/routes/validate_es.ts | 0 .../server/series_functions/abs.js | 0 .../server/series_functions/abs.test.js | 0 .../aggregate/aggregate.test.js | 0 .../server/series_functions/aggregate/avg.js | 0 .../series_functions/aggregate/cardinality.js | 0 .../series_functions/aggregate/first.js | 0 .../series_functions/aggregate/index.js | 0 .../server/series_functions/aggregate/last.js | 0 .../server/series_functions/aggregate/max.js | 0 .../server/series_functions/aggregate/min.js | 0 .../server/series_functions/aggregate/sum.js | 0 .../server/series_functions/bars.js | 0 .../server/series_functions/bars.test.js | 0 .../server/series_functions/color.js | 0 .../server/series_functions/color.test.js | 0 .../server/series_functions/condition.js | 0 .../server/series_functions/condition.test.js | 0 .../server/series_functions/cusum.js | 0 .../server/series_functions/cusum.test.js | 0 .../server/series_functions/derivative.js | 0 .../series_functions/derivative.test.js | 0 .../server/series_functions/divide.js | 0 .../server/series_functions/divide.test.js | 0 .../server/series_functions/es/es.test.js | 0 .../server/series_functions/es/index.js | 0 .../series_functions/es/lib/agg_body.js | 0 .../es/lib/agg_response_to_series_list.js | 0 .../series_functions/es/lib/build_request.js | 0 .../es/lib/create_date_agg.js | 0 .../server/series_functions/first.js | 0 .../server/series_functions/first.test.js | 0 .../server/series_functions/fit.js | 0 .../server/series_functions/fit.test.js | 2 +- .../series_functions/fixtures/bucket_list.js | 0 .../series_functions/fixtures/es_response.js | 0 .../series_functions/fixtures/series_list.js | 0 .../series_functions/fixtures/tl_config.js | 0 .../server/series_functions/graphite.js | 0 .../server/series_functions/graphite.test.js | 0 .../series_functions/helpers/get_series.js | 0 .../helpers/get_series_list.js | 0 .../helpers/get_single_series_list.js | 0 .../helpers/invoke_series_fn.js | 0 .../server/series_functions/hide.js | 0 .../server/series_functions/hide.test.js | 0 .../server/series_functions/holt/index.js | 0 .../server/series_functions/holt/lib/des.js | 0 .../server/series_functions/holt/lib/ses.js | 0 .../server/series_functions/holt/lib/tes.js | 0 .../server/series_functions/label.js | 0 .../server/series_functions/label.test.js | 0 .../server/series_functions/legend.js | 0 .../server/series_functions/legend.test.js | 0 .../server/series_functions/lines.js | 0 .../server/series_functions/lines.test.js | 0 .../server/series_functions/log.js | 0 .../server/series_functions/log.test.js | 0 .../server/series_functions/max.js | 0 .../server/series_functions/max.test.js | 0 .../server/series_functions/min.js | 0 .../server/series_functions/min.test.js | 0 .../server/series_functions/movingaverage.js | 0 .../series_functions/movingaverage.test.js | 0 .../server/series_functions/movingstd.js | 0 .../server/series_functions/movingstd.test.js | 0 .../server/series_functions/multiply.js | 0 .../server/series_functions/multiply.test.js | 0 .../server/series_functions/points.js | 0 .../server/series_functions/points.test.js | 0 .../server/series_functions/precision.js | 0 .../server/series_functions/precision.test.js | 0 .../server/series_functions/props.js | 0 .../server/series_functions/quandl.js | 0 .../server/series_functions/quandl.test.js | 0 .../server/series_functions/range.js | 0 .../server/series_functions/range.test.js | 0 .../server/series_functions/scale_interval.js | 0 .../series_functions/scale_interval.test.js | 0 .../server/series_functions/static.js | 0 .../server/series_functions/static.test.js | 0 .../server/series_functions/subtract.js | 0 .../server/series_functions/subtract.test.js | 0 .../server/series_functions/sum.js | 0 .../server/series_functions/sum.test.js | 0 .../server/series_functions/title.js | 0 .../server/series_functions/title.test.js | 0 .../server/series_functions/trend/index.js | 0 .../series_functions/trend/lib/regress.js | 0 .../server/series_functions/trim.js | 0 .../server/series_functions/trim.test.js | 0 .../server/series_functions/worldbank.js | 0 .../series_functions/worldbank_indicators.js | 0 .../server/series_functions/yaxis.js | 0 .../server/series_functions/yaxis.test.js | 0 .../server/timelion.json | 0 .../server/types.ts | 0 tasks/config/peg.js | 4 +- .../kbn_tp_embeddable_explorer/tsconfig.json | 5 +- test/tsconfig.json | 3 +- x-pack/plugins/features/kibana.json | 2 +- x-pack/plugins/features/server/plugin.ts | 6 +-- x-pack/test/tsconfig.json | 3 +- x-pack/tsconfig.json | 3 +- 205 files changed, 123 insertions(+), 222 deletions(-) delete mode 100644 src/legacy/core_plugins/vis_type_timelion/index.ts delete mode 100644 src/legacy/core_plugins/vis_type_timelion/package.json delete mode 100644 src/legacy/core_plugins/vis_type_timelion/public/components/_index.scss delete mode 100644 src/legacy/core_plugins/vis_type_timelion/public/legacy.ts delete mode 100644 src/legacy/core_plugins/vis_type_timelion/public/legacy_imports.ts delete mode 100644 src/plugins/timelion/kibana.json delete mode 100644 src/plugins/timelion/public/index.ts rename src/{legacy/core_plugins => plugins}/vis_type_timelion/README.md (100%) rename src/plugins/{timelion => vis_type_timelion}/common/chain.peg (100%) rename src/plugins/{timelion => vis_type_timelion}/common/lib/calculate_interval.test.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/common/lib/calculate_interval.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/common/lib/index.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/common/lib/to_milliseconds.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/common/types.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/config.ts (100%) create mode 100644 src/plugins/vis_type_timelion/kibana.json rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/_generated_/chain.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/_timelion_editor.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/_timelion_vis.scss (100%) create mode 100644 src/plugins/vis_type_timelion/public/components/_index.scss rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/_panel.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/_timelion_expression_input.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/chart.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/panel.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/timelion_expression_input.tsx (96%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts (99%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/timelion_expression_input_helpers.ts (98%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/timelion_interval.tsx (96%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/components/timelion_vis.tsx (95%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/flot.js (72%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/arg_value_suggestions.ts (97%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/get_timezone.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/panel_utils.ts (98%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/plugin_services.ts (93%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/tick_formatters.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/tick_formatters.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/tick_generator.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/tick_generator.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/timelion_request_handler.ts (95%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/helpers/xaxis_formatter.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/index.scss (59%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/index.ts (90%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/plugin.ts (67%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/timelion_options.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/timelion_vis_fn.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/timelion_vis_type.tsx (93%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.axislabels.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.crosshair.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.selection.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.stack.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.symbol.js (100%) rename src/{legacy/core_plugins => plugins}/vis_type_timelion/public/webpackShims/jquery.flot.time.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/average.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/average.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/carry.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/carry.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/nearest.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/none.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/fit_functions/scale.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/chain_runner.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/arg_type.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/index_arguments.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/parse_sheet.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/parse_sheet.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/preprocess_chain.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/reposition_arguments.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/tl_config.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/validate_arg.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/handlers/lib/validate_time.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/index.ts (64%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/alter.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/as_sorted.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/build_target.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/classes/chainable.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/classes/datasource.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/classes/timelion_function.d.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/classes/timelion_function.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/config_manager.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/functions_md.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/get_namespaced_settings.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/load_functions.d.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/load_functions.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/load_functions.test.js (94%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/offset_time.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/offset_time.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/process_function_definition.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/reduce.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/split_interval.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/lib/unzip_pairs.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/plugin.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/routes/functions.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/routes/run.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/routes/validate_es.ts (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/abs.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/abs.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/aggregate.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/avg.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/cardinality.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/first.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/index.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/last.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/max.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/min.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/aggregate/sum.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/bars.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/bars.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/color.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/color.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/condition.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/condition.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/cusum.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/cusum.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/derivative.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/derivative.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/divide.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/divide.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/es/es.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/es/index.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/es/lib/agg_body.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/es/lib/agg_response_to_series_list.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/es/lib/build_request.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/es/lib/create_date_agg.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/first.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/first.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/fit.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/fit.test.js (98%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/fixtures/bucket_list.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/fixtures/es_response.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/fixtures/series_list.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/fixtures/tl_config.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/graphite.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/graphite.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/helpers/get_series.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/helpers/get_series_list.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/helpers/get_single_series_list.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/helpers/invoke_series_fn.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/hide.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/hide.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/holt/index.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/holt/lib/des.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/holt/lib/ses.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/holt/lib/tes.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/label.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/label.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/legend.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/legend.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/lines.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/lines.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/log.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/log.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/max.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/max.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/min.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/min.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/movingaverage.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/movingaverage.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/movingstd.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/movingstd.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/multiply.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/multiply.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/points.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/points.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/precision.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/precision.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/props.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/quandl.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/quandl.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/range.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/range.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/scale_interval.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/scale_interval.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/static.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/static.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/subtract.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/subtract.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/sum.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/sum.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/title.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/title.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/trend/index.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/trend/lib/regress.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/trim.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/trim.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/worldbank.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/worldbank_indicators.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/yaxis.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/series_functions/yaxis.test.js (100%) rename src/plugins/{timelion => vis_type_timelion}/server/timelion.json (100%) rename src/plugins/{timelion => vis_type_timelion}/server/types.ts (100%) diff --git a/.eslintignore b/.eslintignore index 357d735e8044bd..1f22b6074e76e0 100644 --- a/.eslintignore +++ b/.eslintignore @@ -9,14 +9,14 @@ bower_components /built_assets /html_docs /src/plugins/data/common/es_query/kuery/ast/_generated_/** -/src/legacy/core_plugins/vis_type_timelion/public/_generated_/** +/src/plugins/vis_type_timelion/public/_generated_/** src/legacy/core_plugins/vis_type_vislib/public/vislib/__tests__/lib/fixtures/mock_data /src/legacy/ui/public/flot-charts /test/fixtures/scenarios /src/legacy/core_plugins/console/public/webpackShims /src/legacy/core_plugins/console/public/tests/webpackShims /src/legacy/ui/public/utils/decode_geo_hash.js -/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.* +/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.* /src/core/lib/kbn_internal_native_observable /packages/*/target /packages/eslint-config-kibana diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 985eb5c1342a06..ab05b32ab063e2 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -14,7 +14,7 @@ /src/legacy/core_plugins/vis_type_vislib/ @elastic/kibana-app /src/plugins/vis_type_xy/ @elastic/kibana-app /src/plugins/kibana_legacy/ @elastic/kibana-app -/src/plugins/timelion/ @elastic/kibana-app +/src/plugins/vis_type_timelion/ @elastic/kibana-app /src/plugins/dashboard/ @elastic/kibana-app /src/plugins/discover/ @elastic/kibana-app /src/plugins/visualize/ @elastic/kibana-app diff --git a/.i18nrc.json b/.i18nrc.json index 70277112136a96..4a516f23ebf05d 100644 --- a/.i18nrc.json +++ b/.i18nrc.json @@ -43,7 +43,7 @@ "src/plugins/telemetry_management_section" ], "tileMap": "src/legacy/core_plugins/tile_map", - "timelion": ["src/legacy/core_plugins/timelion", "src/legacy/core_plugins/vis_type_timelion", "src/plugins/timelion"], + "timelion": ["src/legacy/core_plugins/timelion", "src/plugins/vis_type_timelion"], "uiActions": "src/plugins/ui_actions", "visDefaultEditor": "src/plugins/vis_default_editor", "visTypeMarkdown": "src/plugins/vis_type_markdown", diff --git a/src/legacy/core_plugins/timelion/public/app.js b/src/legacy/core_plugins/timelion/public/app.js index c15318d29e7610..7f5c7d4664af86 100644 --- a/src/legacy/core_plugins/timelion/public/app.js +++ b/src/legacy/core_plugins/timelion/public/app.js @@ -27,10 +27,11 @@ import { fatalError, toastNotifications } from 'ui/notify'; import { timefilter } from 'ui/timefilter'; import { npStart } from 'ui/new_platform'; import { getSavedSheetBreadcrumbs, getCreateBreadcrumbs } from './breadcrumbs'; -import { getTimezone } from '../../vis_type_timelion/public'; +import { getTimezone } from '../../../../plugins/vis_type_timelion/public'; import 'uiExports/savedObjectTypes'; +require('ui/i18n'); require('ui/autoload/all'); // TODO: remove ui imports completely (move to plugins) @@ -57,7 +58,7 @@ require('plugins/timelion/directives/timelion_options_sheet'); document.title = 'Timelion - Kibana'; -const app = require('ui/modules').get('apps/timelion', []); +const app = require('ui/modules').get('apps/timelion', ['i18n', 'ngSanitize']); require('ui/routes').enable(); diff --git a/src/legacy/core_plugins/timelion/public/directives/timelion_expression_input.js b/src/legacy/core_plugins/timelion/public/directives/timelion_expression_input.js index 57262fda55e48a..35ac883e5d99cf 100644 --- a/src/legacy/core_plugins/timelion/public/directives/timelion_expression_input.js +++ b/src/legacy/core_plugins/timelion/public/directives/timelion_expression_input.js @@ -43,7 +43,7 @@ import _ from 'lodash'; import $ from 'jquery'; import PEG from 'pegjs'; -import grammar from 'raw-loader!../../../../../plugins/timelion/common/chain.peg'; +import grammar from 'raw-loader!../../../../../plugins/vis_type_timelion/common/chain.peg'; import timelionExpressionInputTemplate from './timelion_expression_input.html'; import { SUGGESTION_TYPE, @@ -52,7 +52,7 @@ import { insertAtLocation, } from './timelion_expression_input_helpers'; import { comboBoxKeyCodes } from '@elastic/eui'; -import { getArgValueSuggestions } from '../../../vis_type_timelion/public/helpers/arg_value_suggestions'; +import { npStart } from 'ui/new_platform'; const Parser = PEG.generate(grammar); @@ -68,7 +68,7 @@ export function TimelionExpInput($http, $timeout) { replace: true, template: timelionExpressionInputTemplate, link: function(scope, elem) { - const argValueSuggestions = getArgValueSuggestions(); + const argValueSuggestions = npStart.plugins.visTypeTimelion.getArgValueSuggestions(); const expressionInput = elem.find('[data-expression-input]'); const functionReference = {}; let suggestibleFunctionLocation = {}; diff --git a/src/legacy/core_plugins/timelion/public/panels/timechart/schema.ts b/src/legacy/core_plugins/timelion/public/panels/timechart/schema.ts index cd40cbfa89ffed..34b389f5ff4ce5 100644 --- a/src/legacy/core_plugins/timelion/public/panels/timechart/schema.ts +++ b/src/legacy/core_plugins/timelion/public/panels/timechart/schema.ts @@ -17,7 +17,8 @@ * under the License. */ -import '../../../../vis_type_timelion/public/flot'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import '../../../../../../plugins/vis_type_timelion/public/flot'; import _ from 'lodash'; import $ from 'jquery'; import moment from 'moment-timezone'; @@ -28,11 +29,14 @@ import { calculateInterval, DEFAULT_TIME_FORMAT, // @ts-ignore -} from '../../../../../../plugins/timelion/common/lib'; -import { tickFormatters } from '../../../../vis_type_timelion/public/helpers/tick_formatters'; +} from '../../../../../../plugins/vis_type_timelion/common/lib'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { tickFormatters } from '../../../../../../plugins/vis_type_timelion/public/helpers/tick_formatters'; import { TimelionVisualizationDependencies } from '../../plugin'; -import { xaxisFormatterProvider } from '../../../../vis_type_timelion/public/helpers/xaxis_formatter'; -import { generateTicksProvider } from '../../../../vis_type_timelion/public/helpers/tick_generator'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { xaxisFormatterProvider } from '../../../../../../plugins/vis_type_timelion/public/helpers/xaxis_formatter'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { generateTicksProvider } from '../../../../../../plugins/vis_type_timelion/public/helpers/tick_generator'; const DEBOUNCE_DELAY = 50; diff --git a/src/legacy/core_plugins/vis_type_timelion/index.ts b/src/legacy/core_plugins/vis_type_timelion/index.ts deleted file mode 100644 index 7bca5154c84fd4..00000000000000 --- a/src/legacy/core_plugins/vis_type_timelion/index.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * 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 { resolve } from 'path'; -import { Legacy } from 'kibana'; - -import { LegacyPluginApi, LegacyPluginInitializer } from '../../../../src/legacy/types'; - -const timelionVisPluginInitializer: LegacyPluginInitializer = ({ Plugin }: LegacyPluginApi) => - new Plugin({ - id: 'timelion_vis', - require: ['kibana', 'elasticsearch'], - publicDir: resolve(__dirname, 'public'), - uiExports: { - styleSheetPaths: resolve(__dirname, 'public/index.scss'), - hacks: [resolve(__dirname, 'public/legacy')], - injectDefaultVars: server => ({}), - }, - init: (server: Legacy.Server) => ({}), - config(Joi: any) { - return Joi.object({ - enabled: Joi.boolean().default(true), - }).default(); - }, - }); - -// eslint-disable-next-line import/no-default-export -export default timelionVisPluginInitializer; diff --git a/src/legacy/core_plugins/vis_type_timelion/package.json b/src/legacy/core_plugins/vis_type_timelion/package.json deleted file mode 100644 index 9b09f98ce6cafa..00000000000000 --- a/src/legacy/core_plugins/vis_type_timelion/package.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "timelion_vis", - "version": "kibana" -} diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/_index.scss b/src/legacy/core_plugins/vis_type_timelion/public/components/_index.scss deleted file mode 100644 index 1d887f43ff9a1c..00000000000000 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/_index.scss +++ /dev/null @@ -1,2 +0,0 @@ -@import './panel'; -@import './timelion_expression_input'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/legacy.ts b/src/legacy/core_plugins/vis_type_timelion/public/legacy.ts deleted file mode 100644 index f8de9f94dcedf8..00000000000000 --- a/src/legacy/core_plugins/vis_type_timelion/public/legacy.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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 { PluginInitializerContext } from 'kibana/public'; - -import { npSetup, npStart } from './legacy_imports'; -import { TimelionVisSetupDependencies } from './plugin'; -import { plugin } from '.'; - -const setupPlugins: Readonly = { - expressions: npSetup.plugins.expressions, - data: npSetup.plugins.data, - visualizations: npSetup.plugins.visualizations, -}; - -const pluginInstance = plugin({} as PluginInitializerContext); - -export const setup = pluginInstance.setup(npSetup.core, setupPlugins); -export const start = pluginInstance.start(npStart.core, npStart.plugins); diff --git a/src/legacy/core_plugins/vis_type_timelion/public/legacy_imports.ts b/src/legacy/core_plugins/vis_type_timelion/public/legacy_imports.ts deleted file mode 100644 index e7612b288fb246..00000000000000 --- a/src/legacy/core_plugins/vis_type_timelion/public/legacy_imports.ts +++ /dev/null @@ -1,21 +0,0 @@ -/* - * 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 { npSetup, npStart } from 'ui/new_platform'; -export { PluginsStart } from 'ui/new_platform/new_platform'; diff --git a/src/legacy/ui/public/new_platform/new_platform.ts b/src/legacy/ui/public/new_platform/new_platform.ts index 80fb837258d4c2..5ae2e2348aaa15 100644 --- a/src/legacy/ui/public/new_platform/new_platform.ts +++ b/src/legacy/ui/public/new_platform/new_platform.ts @@ -69,6 +69,7 @@ import { VisualizationsSetup, VisualizationsStart, } from '../../../../plugins/visualizations/public'; +import { VisTypeTimelionPluginStart } from '../../../../plugins/vis_type_timelion/public'; import { MapsLegacyPluginSetup } from '../../../../plugins/maps_legacy/public'; export interface PluginsSetup { @@ -116,6 +117,7 @@ export interface PluginsStart { telemetry?: TelemetryPluginStart; dashboard: DashboardStart; savedObjectsManagement: SavedObjectsManagementPluginStart; + visTypeTimelion: VisTypeTimelionPluginStart; indexPatternManagement: IndexPatternManagementStart; } diff --git a/src/plugins/timelion/kibana.json b/src/plugins/timelion/kibana.json deleted file mode 100644 index dddfd6c67e6550..00000000000000 --- a/src/plugins/timelion/kibana.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "id": "timelion", - "version": "8.0.0", - "kibanaVersion": "kibana", - "configPath": ["timelion"], - "server": true, - "ui": true -} diff --git a/src/plugins/timelion/public/index.ts b/src/plugins/timelion/public/index.ts deleted file mode 100644 index b05c4f8a30b226..00000000000000 --- a/src/plugins/timelion/public/index.ts +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 { CoreStart, PluginInitializerContext } from 'kibana/public'; -import { ConfigSchema } from '../config'; - -export const plugin = (initializerContext: PluginInitializerContext) => ({ - setup() {}, - start(core: CoreStart) { - if (initializerContext.config.get().ui.enabled === false) { - core.chrome.navLinks.update('timelion', { hidden: true }); - } - }, -}); diff --git a/src/legacy/core_plugins/vis_type_timelion/README.md b/src/plugins/vis_type_timelion/README.md similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/README.md rename to src/plugins/vis_type_timelion/README.md diff --git a/src/plugins/timelion/common/chain.peg b/src/plugins/vis_type_timelion/common/chain.peg similarity index 100% rename from src/plugins/timelion/common/chain.peg rename to src/plugins/vis_type_timelion/common/chain.peg diff --git a/src/plugins/timelion/common/lib/calculate_interval.test.ts b/src/plugins/vis_type_timelion/common/lib/calculate_interval.test.ts similarity index 100% rename from src/plugins/timelion/common/lib/calculate_interval.test.ts rename to src/plugins/vis_type_timelion/common/lib/calculate_interval.test.ts diff --git a/src/plugins/timelion/common/lib/calculate_interval.ts b/src/plugins/vis_type_timelion/common/lib/calculate_interval.ts similarity index 100% rename from src/plugins/timelion/common/lib/calculate_interval.ts rename to src/plugins/vis_type_timelion/common/lib/calculate_interval.ts diff --git a/src/plugins/timelion/common/lib/index.ts b/src/plugins/vis_type_timelion/common/lib/index.ts similarity index 100% rename from src/plugins/timelion/common/lib/index.ts rename to src/plugins/vis_type_timelion/common/lib/index.ts diff --git a/src/plugins/timelion/common/lib/to_milliseconds.ts b/src/plugins/vis_type_timelion/common/lib/to_milliseconds.ts similarity index 100% rename from src/plugins/timelion/common/lib/to_milliseconds.ts rename to src/plugins/vis_type_timelion/common/lib/to_milliseconds.ts diff --git a/src/plugins/timelion/common/types.ts b/src/plugins/vis_type_timelion/common/types.ts similarity index 100% rename from src/plugins/timelion/common/types.ts rename to src/plugins/vis_type_timelion/common/types.ts diff --git a/src/plugins/timelion/config.ts b/src/plugins/vis_type_timelion/config.ts similarity index 100% rename from src/plugins/timelion/config.ts rename to src/plugins/vis_type_timelion/config.ts diff --git a/src/plugins/vis_type_timelion/kibana.json b/src/plugins/vis_type_timelion/kibana.json new file mode 100644 index 00000000000000..85c282c51a2e7a --- /dev/null +++ b/src/plugins/vis_type_timelion/kibana.json @@ -0,0 +1,8 @@ +{ + "id": "visTypeTimelion", + "version": "8.0.0", + "kibanaVersion": "kibana", + "server": true, + "ui": true, + "requiredPlugins": ["visualizations", "data", "expressions"] +} diff --git a/src/legacy/core_plugins/vis_type_timelion/public/_generated_/chain.js b/src/plugins/vis_type_timelion/public/_generated_/chain.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/_generated_/chain.js rename to src/plugins/vis_type_timelion/public/_generated_/chain.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/_timelion_editor.scss b/src/plugins/vis_type_timelion/public/_timelion_editor.scss similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/_timelion_editor.scss rename to src/plugins/vis_type_timelion/public/_timelion_editor.scss diff --git a/src/legacy/core_plugins/vis_type_timelion/public/_timelion_vis.scss b/src/plugins/vis_type_timelion/public/_timelion_vis.scss similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/_timelion_vis.scss rename to src/plugins/vis_type_timelion/public/_timelion_vis.scss diff --git a/src/plugins/vis_type_timelion/public/components/_index.scss b/src/plugins/vis_type_timelion/public/components/_index.scss new file mode 100644 index 00000000000000..707c9dafebe2b7 --- /dev/null +++ b/src/plugins/vis_type_timelion/public/components/_index.scss @@ -0,0 +1,2 @@ +@import 'panel'; +@import 'timelion_expression_input'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/_panel.scss b/src/plugins/vis_type_timelion/public/components/_panel.scss similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/components/_panel.scss rename to src/plugins/vis_type_timelion/public/components/_panel.scss diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/_timelion_expression_input.scss b/src/plugins/vis_type_timelion/public/components/_timelion_expression_input.scss similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/components/_timelion_expression_input.scss rename to src/plugins/vis_type_timelion/public/components/_timelion_expression_input.scss diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/chart.tsx b/src/plugins/vis_type_timelion/public/components/chart.tsx similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/components/chart.tsx rename to src/plugins/vis_type_timelion/public/components/chart.tsx diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/index.ts b/src/plugins/vis_type_timelion/public/components/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/components/index.ts rename to src/plugins/vis_type_timelion/public/components/index.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/panel.tsx b/src/plugins/vis_type_timelion/public/components/panel.tsx similarity index 98% rename from src/legacy/core_plugins/vis_type_timelion/public/components/panel.tsx rename to src/plugins/vis_type_timelion/public/components/panel.tsx index 3b42fa7dfcbb88..8f796526e8520d 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/panel.tsx +++ b/src/plugins/vis_type_timelion/public/components/panel.tsx @@ -22,9 +22,9 @@ import $ from 'jquery'; import moment from 'moment-timezone'; import { debounce, compact, get, each, cloneDeep, last, map } from 'lodash'; -import { useKibana } from '../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../kibana_react/public'; import '../flot'; -import { DEFAULT_TIME_FORMAT } from '../../../../../plugins/timelion/common/lib'; +import { DEFAULT_TIME_FORMAT } from '../../common/lib'; import { buildSeriesData, diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input.tsx b/src/plugins/vis_type_timelion/public/components/timelion_expression_input.tsx similarity index 96% rename from src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input.tsx rename to src/plugins/vis_type_timelion/public/components/timelion_expression_input.tsx index c317451b8201e4..999409ef35063c 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input.tsx +++ b/src/plugins/vis_type_timelion/public/components/timelion_expression_input.tsx @@ -22,13 +22,10 @@ import { EuiFormLabel } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; import { monaco } from '@kbn/ui-shared-deps/monaco'; -import { CodeEditor, useKibana } from '../../../../../plugins/kibana_react/public'; +import { CodeEditor, useKibana } from '../../../kibana_react/public'; import { suggest, getSuggestion } from './timelion_expression_input_helpers'; import { getArgValueSuggestions } from '../helpers/arg_value_suggestions'; -import { - ITimelionFunction, - TimelionFunctionArgs, -} from '../../../../../plugins/timelion/common/types'; +import { ITimelionFunction, TimelionFunctionArgs } from '../../common/types'; const LANGUAGE_ID = 'timelion_expression'; monaco.languages.register({ id: LANGUAGE_ID }); diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts b/src/plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts similarity index 99% rename from src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts rename to src/plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts index 2f99256e2a1920..2ff6809d1c83d6 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts +++ b/src/plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.test.ts @@ -22,7 +22,7 @@ import { getArgValueSuggestions } from '../helpers/arg_value_suggestions'; import { setIndexPatterns, setSavedObjectsClient } from '../helpers/plugin_services'; import { IndexPatternsContract } from 'src/plugins/data/public'; import { SavedObjectsClient } from 'kibana/public'; -import { ITimelionFunction } from '../../../../../plugins/timelion/common/types'; +import { ITimelionFunction } from '../../common/types'; describe('Timelion expression suggestions', () => { setIndexPatterns({} as IndexPatternsContract); diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.ts b/src/plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.ts similarity index 98% rename from src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.ts rename to src/plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.ts index 6f23c864419eb5..04cb54306c90e4 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.ts +++ b/src/plugins/vis_type_timelion/public/components/timelion_expression_input_helpers.ts @@ -27,10 +27,7 @@ import { Parser } from 'pegjs'; import { parse } from '../_generated_/chain'; import { ArgValueSuggestions, FunctionArg, Location } from '../helpers/arg_value_suggestions'; -import { - ITimelionFunction, - TimelionFunctionArgs, -} from '../../../../../plugins/timelion/common/types'; +import { ITimelionFunction, TimelionFunctionArgs } from '../../common/types'; export enum SUGGESTION_TYPE { ARGUMENTS = 'arguments', diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx b/src/plugins/vis_type_timelion/public/components/timelion_interval.tsx similarity index 96% rename from src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx rename to src/plugins/vis_type_timelion/public/components/timelion_interval.tsx index 8a8e1b22fb78db..985ecaeaf3e5af 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx +++ b/src/plugins/vis_type_timelion/public/components/timelion_interval.tsx @@ -21,9 +21,9 @@ import React, { useMemo, useCallback } from 'react'; import { EuiFormRow, EuiComboBox, EuiComboBoxOptionOption } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { search } from '../../../../../plugins/data/public'; +import { search } from '../../../data/public'; const { isValidEsInterval } = search.aggs; -import { useValidation } from '../../../../../plugins/vis_default_editor/public'; +import { useValidation } from '../../../vis_default_editor/public'; const intervalOptions = [ { diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_vis.tsx b/src/plugins/vis_type_timelion/public/components/timelion_vis.tsx similarity index 95% rename from src/legacy/core_plugins/vis_type_timelion/public/components/timelion_vis.tsx rename to src/plugins/vis_type_timelion/public/components/timelion_vis.tsx index 0fad0a164bf0bf..4bb07fe74ee821 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_vis.tsx +++ b/src/plugins/vis_type_timelion/public/components/timelion_vis.tsx @@ -23,7 +23,7 @@ import { IUiSettingsClient } from 'kibana/public'; import { ChartComponent } from './chart'; import { VisParams } from '../timelion_vis_fn'; import { TimelionSuccessResponse } from '../helpers/timelion_request_handler'; -import { ExprVis } from '../../../../../plugins/visualizations/public'; +import { ExprVis } from '../../../visualizations/public'; export interface TimelionVisComponentProp { config: IUiSettingsClient; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/flot.js b/src/plugins/vis_type_timelion/public/flot.js similarity index 72% rename from src/legacy/core_plugins/vis_type_timelion/public/flot.js rename to src/plugins/vis_type_timelion/public/flot.js index d6ca6d96c34ef1..1ccb40c93a3d60 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/flot.js +++ b/src/plugins/vis_type_timelion/public/flot.js @@ -17,10 +17,10 @@ * under the License. */ -require('jquery.flot'); -require('jquery.flot.time'); -require('jquery.flot.symbol'); -require('jquery.flot.crosshair'); -require('jquery.flot.selection'); -require('jquery.flot.stack'); -require('jquery.flot.axislabels'); +import './webpackShims/jquery.flot'; +import './webpackShims/jquery.flot.time'; +import './webpackShims/jquery.flot.symbol'; +import './webpackShims/jquery.flot.crosshair'; +import './webpackShims/jquery.flot.selection'; +import './webpackShims/jquery.flot.stack'; +import './webpackShims/jquery.flot.axislabels'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/arg_value_suggestions.ts b/src/plugins/vis_type_timelion/public/helpers/arg_value_suggestions.ts similarity index 97% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/arg_value_suggestions.ts rename to src/plugins/vis_type_timelion/public/helpers/arg_value_suggestions.ts index ea9532964d6fe4..76c25b9b9e8de5 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/helpers/arg_value_suggestions.ts +++ b/src/plugins/vis_type_timelion/public/helpers/arg_value_suggestions.ts @@ -19,11 +19,8 @@ import { get } from 'lodash'; import { getIndexPatterns, getSavedObjectsClient } from './plugin_services'; -import { TimelionFunctionArgs } from '../../../../../plugins/timelion/common/types'; -import { - indexPatterns as indexPatternsUtils, - IndexPatternAttributes, -} from '../../../../../plugins/data/public'; +import { TimelionFunctionArgs } from '../../common/types'; +import { indexPatterns as indexPatternsUtils, IndexPatternAttributes } from '../../../data/public'; export interface Location { min: number; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/get_timezone.ts b/src/plugins/vis_type_timelion/public/helpers/get_timezone.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/get_timezone.ts rename to src/plugins/vis_type_timelion/public/helpers/get_timezone.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/panel_utils.ts b/src/plugins/vis_type_timelion/public/helpers/panel_utils.ts similarity index 98% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/panel_utils.ts rename to src/plugins/vis_type_timelion/public/helpers/panel_utils.ts index f932e5ee4b2f46..db29d9112be8e8 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/helpers/panel_utils.ts +++ b/src/plugins/vis_type_timelion/public/helpers/panel_utils.ts @@ -23,7 +23,7 @@ import moment, { Moment } from 'moment-timezone'; import { TimefilterContract } from 'src/plugins/data/public'; import { IUiSettingsClient } from 'kibana/public'; -import { calculateInterval } from '../../../../../plugins/timelion/common/lib'; +import { calculateInterval } from '../../common/lib'; import { xaxisFormatterProvider } from './xaxis_formatter'; import { Series } from './timelion_request_handler'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/plugin_services.ts b/src/plugins/vis_type_timelion/public/helpers/plugin_services.ts similarity index 93% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/plugin_services.ts rename to src/plugins/vis_type_timelion/public/helpers/plugin_services.ts index 5ba4ee5e479832..b055626934eea8 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/helpers/plugin_services.ts +++ b/src/plugins/vis_type_timelion/public/helpers/plugin_services.ts @@ -19,7 +19,7 @@ import { IndexPatternsContract } from 'src/plugins/data/public'; import { SavedObjectsClientContract } from 'kibana/public'; -import { createGetterSetter } from '../../../../../plugins/kibana_utils/public'; +import { createGetterSetter } from '../../../kibana_utils/public'; export const [getIndexPatterns, setIndexPatterns] = createGetterSetter( 'IndexPatterns' diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_formatters.test.ts b/src/plugins/vis_type_timelion/public/helpers/tick_formatters.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_formatters.test.ts rename to src/plugins/vis_type_timelion/public/helpers/tick_formatters.test.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_formatters.ts b/src/plugins/vis_type_timelion/public/helpers/tick_formatters.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_formatters.ts rename to src/plugins/vis_type_timelion/public/helpers/tick_formatters.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_generator.test.ts b/src/plugins/vis_type_timelion/public/helpers/tick_generator.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_generator.test.ts rename to src/plugins/vis_type_timelion/public/helpers/tick_generator.test.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_generator.ts b/src/plugins/vis_type_timelion/public/helpers/tick_generator.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/tick_generator.ts rename to src/plugins/vis_type_timelion/public/helpers/tick_generator.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts b/src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts similarity index 95% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts rename to src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts index 61e31420f73baf..a654f7935af5f0 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts +++ b/src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts @@ -19,8 +19,8 @@ import { i18n } from '@kbn/i18n'; import { KIBANA_CONTEXT_NAME } from 'src/plugins/expressions/public'; -import { VisParams } from '../../../../../plugins/visualizations/public'; -import { TimeRange, Filter, esQuery, Query } from '../../../../../plugins/data/public'; +import { VisParams } from '../../../visualizations/public'; +import { TimeRange, Filter, esQuery, Query } from '../../../data/public'; import { TimelionVisDependencies } from '../plugin'; import { getTimezone } from './get_timezone'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/helpers/xaxis_formatter.ts b/src/plugins/vis_type_timelion/public/helpers/xaxis_formatter.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/helpers/xaxis_formatter.ts rename to src/plugins/vis_type_timelion/public/helpers/xaxis_formatter.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/index.scss b/src/plugins/vis_type_timelion/public/index.scss similarity index 59% rename from src/legacy/core_plugins/vis_type_timelion/public/index.scss rename to src/plugins/vis_type_timelion/public/index.scss index 313f14a8acf69b..00e9a885209610 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/index.scss +++ b/src/plugins/vis_type_timelion/public/index.scss @@ -1,5 +1,3 @@ -@import 'src/legacy/ui/public/styles/styling_constants'; - @import './timelion_vis'; @import './timelion_editor'; @import './components/index'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/index.ts b/src/plugins/vis_type_timelion/public/index.ts similarity index 90% rename from src/legacy/core_plugins/vis_type_timelion/public/index.ts rename to src/plugins/vis_type_timelion/public/index.ts index 6292e2ad3eb084..0aa5f3a8100337 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/index.ts +++ b/src/plugins/vis_type_timelion/public/index.ts @@ -17,7 +17,7 @@ * under the License. */ -import { PluginInitializerContext } from '../../../../core/public'; +import { PluginInitializerContext } from 'kibana/public'; import { TimelionVisPlugin as Plugin } from './plugin'; export function plugin(initializerContext: PluginInitializerContext) { @@ -25,3 +25,5 @@ export function plugin(initializerContext: PluginInitializerContext) { } export { getTimezone } from './helpers/get_timezone'; + +export { VisTypeTimelionPluginStart } from './plugin'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/plugin.ts b/src/plugins/vis_type_timelion/public/plugin.ts similarity index 67% rename from src/legacy/core_plugins/vis_type_timelion/public/plugin.ts rename to src/plugins/vis_type_timelion/public/plugin.ts index b5aa64db19aa41..060fec04deb3f9 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/plugin.ts +++ b/src/plugins/vis_type_timelion/public/plugin.ts @@ -26,16 +26,21 @@ import { HttpSetup, } from 'kibana/public'; import { Plugin as ExpressionsPlugin } from 'src/plugins/expressions/public'; -import { DataPublicPluginSetup, TimefilterContract } from 'src/plugins/data/public'; +import { + DataPublicPluginSetup, + DataPublicPluginStart, + TimefilterContract, +} from 'src/plugins/data/public'; -import { PluginsStart } from './legacy_imports'; -import { VisualizationsSetup } from '../../../../plugins/visualizations/public'; +import { VisualizationsSetup } from '../../visualizations/public'; import { getTimelionVisualizationConfig } from './timelion_vis_fn'; import { getTimelionVisDefinition } from './timelion_vis_type'; import { setIndexPatterns, setSavedObjectsClient } from './helpers/plugin_services'; +import { ConfigSchema } from '../config'; -type TimelionVisCoreSetup = CoreSetup; +import './index.scss'; +import { getArgValueSuggestions } from './helpers/arg_value_suggestions'; /** @internal */ export interface TimelionVisDependencies extends Partial { @@ -52,11 +57,28 @@ export interface TimelionVisSetupDependencies { } /** @internal */ -export class TimelionVisPlugin implements Plugin { - constructor(public initializerContext: PluginInitializerContext) {} +export interface TimelionVisStartDependencies { + data: DataPublicPluginStart; +} + +/** @public */ +export interface VisTypeTimelionPluginStart { + getArgValueSuggestions: typeof getArgValueSuggestions; +} + +/** @internal */ +export class TimelionVisPlugin + implements + Plugin< + void, + VisTypeTimelionPluginStart, + TimelionVisSetupDependencies, + TimelionVisStartDependencies + > { + constructor(public initializerContext: PluginInitializerContext) {} - public async setup( - core: TimelionVisCoreSetup, + public setup( + core: CoreSetup, { expressions, visualizations, data }: TimelionVisSetupDependencies ) { const dependencies: TimelionVisDependencies = { @@ -69,8 +91,15 @@ export class TimelionVisPlugin implements Plugin { visualizations.createReactVisualization(getTimelionVisDefinition(dependencies)); } - public start(core: CoreStart, plugins: PluginsStart) { + public start(core: CoreStart, plugins: TimelionVisStartDependencies) { setIndexPatterns(plugins.data.indexPatterns); setSavedObjectsClient(core.savedObjects.client); + if (this.initializerContext.config.get().ui.enabled === false) { + core.chrome.navLinks.update('timelion', { hidden: true }); + } + + return { + getArgValueSuggestions, + }; } } diff --git a/src/legacy/core_plugins/vis_type_timelion/public/timelion_options.tsx b/src/plugins/vis_type_timelion/public/timelion_options.tsx similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/timelion_options.tsx rename to src/plugins/vis_type_timelion/public/timelion_options.tsx diff --git a/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_fn.ts b/src/plugins/vis_type_timelion/public/timelion_vis_fn.ts similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_fn.ts rename to src/plugins/vis_type_timelion/public/timelion_vis_fn.ts diff --git a/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx b/src/plugins/vis_type_timelion/public/timelion_vis_type.tsx similarity index 93% rename from src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx rename to src/plugins/vis_type_timelion/public/timelion_vis_type.tsx index 0900b7d898ede8..52addb3c2d9d29 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx +++ b/src/plugins/vis_type_timelion/public/timelion_vis_type.tsx @@ -20,8 +20,8 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; -import { KibanaContextProvider } from '../../../../plugins/kibana_react/public'; -import { DefaultEditorSize } from '../../../../plugins/vis_default_editor/public'; +import { KibanaContextProvider } from '../../kibana_react/public'; +import { DefaultEditorSize } from '../../vis_default_editor/public'; import { getTimelionRequestHandler } from './helpers/timelion_request_handler'; import { TimelionVisComponent, TimelionVisComponentProp } from './components'; import { TimelionOptions, TimelionOptionsProps } from './timelion_options'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.axislabels.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.axislabels.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.axislabels.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.axislabels.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.crosshair.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.crosshair.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.crosshair.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.crosshair.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.selection.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.selection.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.selection.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.selection.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.stack.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.stack.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.stack.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.stack.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.symbol.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.symbol.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.symbol.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.symbol.js diff --git a/src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.time.js b/src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.time.js similarity index 100% rename from src/legacy/core_plugins/vis_type_timelion/public/webpackShims/jquery.flot.time.js rename to src/plugins/vis_type_timelion/public/webpackShims/jquery.flot.time.js diff --git a/src/plugins/timelion/server/fit_functions/average.js b/src/plugins/vis_type_timelion/server/fit_functions/average.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/average.js rename to src/plugins/vis_type_timelion/server/fit_functions/average.js diff --git a/src/plugins/timelion/server/fit_functions/average.test.js b/src/plugins/vis_type_timelion/server/fit_functions/average.test.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/average.test.js rename to src/plugins/vis_type_timelion/server/fit_functions/average.test.js diff --git a/src/plugins/timelion/server/fit_functions/carry.js b/src/plugins/vis_type_timelion/server/fit_functions/carry.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/carry.js rename to src/plugins/vis_type_timelion/server/fit_functions/carry.js diff --git a/src/plugins/timelion/server/fit_functions/carry.test.js b/src/plugins/vis_type_timelion/server/fit_functions/carry.test.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/carry.test.js rename to src/plugins/vis_type_timelion/server/fit_functions/carry.test.js diff --git a/src/plugins/timelion/server/fit_functions/nearest.js b/src/plugins/vis_type_timelion/server/fit_functions/nearest.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/nearest.js rename to src/plugins/vis_type_timelion/server/fit_functions/nearest.js diff --git a/src/plugins/timelion/server/fit_functions/none.js b/src/plugins/vis_type_timelion/server/fit_functions/none.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/none.js rename to src/plugins/vis_type_timelion/server/fit_functions/none.js diff --git a/src/plugins/timelion/server/fit_functions/scale.js b/src/plugins/vis_type_timelion/server/fit_functions/scale.js similarity index 100% rename from src/plugins/timelion/server/fit_functions/scale.js rename to src/plugins/vis_type_timelion/server/fit_functions/scale.js diff --git a/src/plugins/timelion/server/handlers/chain_runner.js b/src/plugins/vis_type_timelion/server/handlers/chain_runner.js similarity index 100% rename from src/plugins/timelion/server/handlers/chain_runner.js rename to src/plugins/vis_type_timelion/server/handlers/chain_runner.js diff --git a/src/plugins/timelion/server/handlers/lib/arg_type.js b/src/plugins/vis_type_timelion/server/handlers/lib/arg_type.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/arg_type.js rename to src/plugins/vis_type_timelion/server/handlers/lib/arg_type.js diff --git a/src/plugins/timelion/server/handlers/lib/index_arguments.js b/src/plugins/vis_type_timelion/server/handlers/lib/index_arguments.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/index_arguments.js rename to src/plugins/vis_type_timelion/server/handlers/lib/index_arguments.js diff --git a/src/plugins/timelion/server/handlers/lib/parse_sheet.js b/src/plugins/vis_type_timelion/server/handlers/lib/parse_sheet.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/parse_sheet.js rename to src/plugins/vis_type_timelion/server/handlers/lib/parse_sheet.js diff --git a/src/plugins/timelion/server/handlers/lib/parse_sheet.test.js b/src/plugins/vis_type_timelion/server/handlers/lib/parse_sheet.test.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/parse_sheet.test.js rename to src/plugins/vis_type_timelion/server/handlers/lib/parse_sheet.test.js diff --git a/src/plugins/timelion/server/handlers/lib/preprocess_chain.js b/src/plugins/vis_type_timelion/server/handlers/lib/preprocess_chain.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/preprocess_chain.js rename to src/plugins/vis_type_timelion/server/handlers/lib/preprocess_chain.js diff --git a/src/plugins/timelion/server/handlers/lib/reposition_arguments.js b/src/plugins/vis_type_timelion/server/handlers/lib/reposition_arguments.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/reposition_arguments.js rename to src/plugins/vis_type_timelion/server/handlers/lib/reposition_arguments.js diff --git a/src/plugins/timelion/server/handlers/lib/tl_config.js b/src/plugins/vis_type_timelion/server/handlers/lib/tl_config.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/tl_config.js rename to src/plugins/vis_type_timelion/server/handlers/lib/tl_config.js diff --git a/src/plugins/timelion/server/handlers/lib/validate_arg.js b/src/plugins/vis_type_timelion/server/handlers/lib/validate_arg.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/validate_arg.js rename to src/plugins/vis_type_timelion/server/handlers/lib/validate_arg.js diff --git a/src/plugins/timelion/server/handlers/lib/validate_time.js b/src/plugins/vis_type_timelion/server/handlers/lib/validate_time.js similarity index 100% rename from src/plugins/timelion/server/handlers/lib/validate_time.js rename to src/plugins/vis_type_timelion/server/handlers/lib/validate_time.js diff --git a/src/plugins/timelion/server/index.ts b/src/plugins/vis_type_timelion/server/index.ts similarity index 64% rename from src/plugins/timelion/server/index.ts rename to src/plugins/vis_type_timelion/server/index.ts index 5d420327f961e2..b40ab2af2b0d71 100644 --- a/src/plugins/timelion/server/index.ts +++ b/src/plugins/vis_type_timelion/server/index.ts @@ -17,19 +17,23 @@ * under the License. */ -import { PluginInitializerContext } from '../../../../src/core/server'; -import { configSchema } from '../config'; +import { PluginConfigDescriptor, PluginInitializerContext } from '../../../../src/core/server'; +import { configSchema, ConfigSchema } from '../config'; import { Plugin } from './plugin'; export { PluginSetupContract } from './plugin'; -export const config = { +export const config: PluginConfigDescriptor = { schema: configSchema, exposeToBrowser: { - ui: { - enabled: true, - }, + ui: true, }, + deprecations: ({ renameFromRoot }) => [ + renameFromRoot('timelion_vis.enabled', 'vis_type_timelion.enabled'), + renameFromRoot('timelion.enabled', 'vis_type_timelion.enabled'), + renameFromRoot('timelion.graphiteUrls', 'vis_type_timelion.graphiteUrls'), + renameFromRoot('timelion.ui.enabled', 'vis_type_timelion.ui.enabled'), + ], }; export const plugin = (initializerContext: PluginInitializerContext) => new Plugin(initializerContext); diff --git a/src/plugins/timelion/server/lib/alter.js b/src/plugins/vis_type_timelion/server/lib/alter.js similarity index 100% rename from src/plugins/timelion/server/lib/alter.js rename to src/plugins/vis_type_timelion/server/lib/alter.js diff --git a/src/plugins/timelion/server/lib/as_sorted.js b/src/plugins/vis_type_timelion/server/lib/as_sorted.js similarity index 100% rename from src/plugins/timelion/server/lib/as_sorted.js rename to src/plugins/vis_type_timelion/server/lib/as_sorted.js diff --git a/src/plugins/timelion/server/lib/build_target.js b/src/plugins/vis_type_timelion/server/lib/build_target.js similarity index 100% rename from src/plugins/timelion/server/lib/build_target.js rename to src/plugins/vis_type_timelion/server/lib/build_target.js diff --git a/src/plugins/timelion/server/lib/classes/chainable.js b/src/plugins/vis_type_timelion/server/lib/classes/chainable.js similarity index 100% rename from src/plugins/timelion/server/lib/classes/chainable.js rename to src/plugins/vis_type_timelion/server/lib/classes/chainable.js diff --git a/src/plugins/timelion/server/lib/classes/datasource.js b/src/plugins/vis_type_timelion/server/lib/classes/datasource.js similarity index 100% rename from src/plugins/timelion/server/lib/classes/datasource.js rename to src/plugins/vis_type_timelion/server/lib/classes/datasource.js diff --git a/src/plugins/timelion/server/lib/classes/timelion_function.d.ts b/src/plugins/vis_type_timelion/server/lib/classes/timelion_function.d.ts similarity index 100% rename from src/plugins/timelion/server/lib/classes/timelion_function.d.ts rename to src/plugins/vis_type_timelion/server/lib/classes/timelion_function.d.ts diff --git a/src/plugins/timelion/server/lib/classes/timelion_function.js b/src/plugins/vis_type_timelion/server/lib/classes/timelion_function.js similarity index 100% rename from src/plugins/timelion/server/lib/classes/timelion_function.js rename to src/plugins/vis_type_timelion/server/lib/classes/timelion_function.js diff --git a/src/plugins/timelion/server/lib/config_manager.ts b/src/plugins/vis_type_timelion/server/lib/config_manager.ts similarity index 100% rename from src/plugins/timelion/server/lib/config_manager.ts rename to src/plugins/vis_type_timelion/server/lib/config_manager.ts diff --git a/src/plugins/timelion/server/lib/functions_md.js b/src/plugins/vis_type_timelion/server/lib/functions_md.js similarity index 100% rename from src/plugins/timelion/server/lib/functions_md.js rename to src/plugins/vis_type_timelion/server/lib/functions_md.js diff --git a/src/plugins/timelion/server/lib/get_namespaced_settings.js b/src/plugins/vis_type_timelion/server/lib/get_namespaced_settings.js similarity index 100% rename from src/plugins/timelion/server/lib/get_namespaced_settings.js rename to src/plugins/vis_type_timelion/server/lib/get_namespaced_settings.js diff --git a/src/plugins/timelion/server/lib/load_functions.d.ts b/src/plugins/vis_type_timelion/server/lib/load_functions.d.ts similarity index 100% rename from src/plugins/timelion/server/lib/load_functions.d.ts rename to src/plugins/vis_type_timelion/server/lib/load_functions.d.ts diff --git a/src/plugins/timelion/server/lib/load_functions.js b/src/plugins/vis_type_timelion/server/lib/load_functions.js similarity index 100% rename from src/plugins/timelion/server/lib/load_functions.js rename to src/plugins/vis_type_timelion/server/lib/load_functions.js diff --git a/src/plugins/timelion/server/lib/load_functions.test.js b/src/plugins/vis_type_timelion/server/lib/load_functions.test.js similarity index 94% rename from src/plugins/timelion/server/lib/load_functions.test.js rename to src/plugins/vis_type_timelion/server/lib/load_functions.test.js index ebe1a04532e050..b4f83611a77737 100644 --- a/src/plugins/timelion/server/lib/load_functions.test.js +++ b/src/plugins/vis_type_timelion/server/lib/load_functions.test.js @@ -17,7 +17,7 @@ * under the License. */ -const fn = require(`src/plugins/timelion/server/lib/load_functions`); +const fn = require(`src/plugins/vis_type_timelion/server/lib/load_functions`); const expect = require('chai').expect; diff --git a/src/plugins/timelion/server/lib/offset_time.js b/src/plugins/vis_type_timelion/server/lib/offset_time.js similarity index 100% rename from src/plugins/timelion/server/lib/offset_time.js rename to src/plugins/vis_type_timelion/server/lib/offset_time.js diff --git a/src/plugins/timelion/server/lib/offset_time.test.js b/src/plugins/vis_type_timelion/server/lib/offset_time.test.js similarity index 100% rename from src/plugins/timelion/server/lib/offset_time.test.js rename to src/plugins/vis_type_timelion/server/lib/offset_time.test.js diff --git a/src/plugins/timelion/server/lib/process_function_definition.js b/src/plugins/vis_type_timelion/server/lib/process_function_definition.js similarity index 100% rename from src/plugins/timelion/server/lib/process_function_definition.js rename to src/plugins/vis_type_timelion/server/lib/process_function_definition.js diff --git a/src/plugins/timelion/server/lib/reduce.js b/src/plugins/vis_type_timelion/server/lib/reduce.js similarity index 100% rename from src/plugins/timelion/server/lib/reduce.js rename to src/plugins/vis_type_timelion/server/lib/reduce.js diff --git a/src/plugins/timelion/server/lib/split_interval.js b/src/plugins/vis_type_timelion/server/lib/split_interval.js similarity index 100% rename from src/plugins/timelion/server/lib/split_interval.js rename to src/plugins/vis_type_timelion/server/lib/split_interval.js diff --git a/src/plugins/timelion/server/lib/unzip_pairs.js b/src/plugins/vis_type_timelion/server/lib/unzip_pairs.js similarity index 100% rename from src/plugins/timelion/server/lib/unzip_pairs.js rename to src/plugins/vis_type_timelion/server/lib/unzip_pairs.js diff --git a/src/plugins/timelion/server/plugin.ts b/src/plugins/vis_type_timelion/server/plugin.ts similarity index 100% rename from src/plugins/timelion/server/plugin.ts rename to src/plugins/vis_type_timelion/server/plugin.ts diff --git a/src/plugins/timelion/server/routes/functions.ts b/src/plugins/vis_type_timelion/server/routes/functions.ts similarity index 100% rename from src/plugins/timelion/server/routes/functions.ts rename to src/plugins/vis_type_timelion/server/routes/functions.ts diff --git a/src/plugins/timelion/server/routes/run.ts b/src/plugins/vis_type_timelion/server/routes/run.ts similarity index 100% rename from src/plugins/timelion/server/routes/run.ts rename to src/plugins/vis_type_timelion/server/routes/run.ts diff --git a/src/plugins/timelion/server/routes/validate_es.ts b/src/plugins/vis_type_timelion/server/routes/validate_es.ts similarity index 100% rename from src/plugins/timelion/server/routes/validate_es.ts rename to src/plugins/vis_type_timelion/server/routes/validate_es.ts diff --git a/src/plugins/timelion/server/series_functions/abs.js b/src/plugins/vis_type_timelion/server/series_functions/abs.js similarity index 100% rename from src/plugins/timelion/server/series_functions/abs.js rename to src/plugins/vis_type_timelion/server/series_functions/abs.js diff --git a/src/plugins/timelion/server/series_functions/abs.test.js b/src/plugins/vis_type_timelion/server/series_functions/abs.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/abs.test.js rename to src/plugins/vis_type_timelion/server/series_functions/abs.test.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/aggregate.test.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/aggregate.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/aggregate.test.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/aggregate.test.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/avg.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/avg.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/avg.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/avg.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/cardinality.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/cardinality.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/cardinality.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/cardinality.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/first.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/first.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/first.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/first.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/index.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/index.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/index.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/index.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/last.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/last.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/last.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/last.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/max.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/max.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/max.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/max.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/min.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/min.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/min.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/min.js diff --git a/src/plugins/timelion/server/series_functions/aggregate/sum.js b/src/plugins/vis_type_timelion/server/series_functions/aggregate/sum.js similarity index 100% rename from src/plugins/timelion/server/series_functions/aggregate/sum.js rename to src/plugins/vis_type_timelion/server/series_functions/aggregate/sum.js diff --git a/src/plugins/timelion/server/series_functions/bars.js b/src/plugins/vis_type_timelion/server/series_functions/bars.js similarity index 100% rename from src/plugins/timelion/server/series_functions/bars.js rename to src/plugins/vis_type_timelion/server/series_functions/bars.js diff --git a/src/plugins/timelion/server/series_functions/bars.test.js b/src/plugins/vis_type_timelion/server/series_functions/bars.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/bars.test.js rename to src/plugins/vis_type_timelion/server/series_functions/bars.test.js diff --git a/src/plugins/timelion/server/series_functions/color.js b/src/plugins/vis_type_timelion/server/series_functions/color.js similarity index 100% rename from src/plugins/timelion/server/series_functions/color.js rename to src/plugins/vis_type_timelion/server/series_functions/color.js diff --git a/src/plugins/timelion/server/series_functions/color.test.js b/src/plugins/vis_type_timelion/server/series_functions/color.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/color.test.js rename to src/plugins/vis_type_timelion/server/series_functions/color.test.js diff --git a/src/plugins/timelion/server/series_functions/condition.js b/src/plugins/vis_type_timelion/server/series_functions/condition.js similarity index 100% rename from src/plugins/timelion/server/series_functions/condition.js rename to src/plugins/vis_type_timelion/server/series_functions/condition.js diff --git a/src/plugins/timelion/server/series_functions/condition.test.js b/src/plugins/vis_type_timelion/server/series_functions/condition.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/condition.test.js rename to src/plugins/vis_type_timelion/server/series_functions/condition.test.js diff --git a/src/plugins/timelion/server/series_functions/cusum.js b/src/plugins/vis_type_timelion/server/series_functions/cusum.js similarity index 100% rename from src/plugins/timelion/server/series_functions/cusum.js rename to src/plugins/vis_type_timelion/server/series_functions/cusum.js diff --git a/src/plugins/timelion/server/series_functions/cusum.test.js b/src/plugins/vis_type_timelion/server/series_functions/cusum.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/cusum.test.js rename to src/plugins/vis_type_timelion/server/series_functions/cusum.test.js diff --git a/src/plugins/timelion/server/series_functions/derivative.js b/src/plugins/vis_type_timelion/server/series_functions/derivative.js similarity index 100% rename from src/plugins/timelion/server/series_functions/derivative.js rename to src/plugins/vis_type_timelion/server/series_functions/derivative.js diff --git a/src/plugins/timelion/server/series_functions/derivative.test.js b/src/plugins/vis_type_timelion/server/series_functions/derivative.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/derivative.test.js rename to src/plugins/vis_type_timelion/server/series_functions/derivative.test.js diff --git a/src/plugins/timelion/server/series_functions/divide.js b/src/plugins/vis_type_timelion/server/series_functions/divide.js similarity index 100% rename from src/plugins/timelion/server/series_functions/divide.js rename to src/plugins/vis_type_timelion/server/series_functions/divide.js diff --git a/src/plugins/timelion/server/series_functions/divide.test.js b/src/plugins/vis_type_timelion/server/series_functions/divide.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/divide.test.js rename to src/plugins/vis_type_timelion/server/series_functions/divide.test.js diff --git a/src/plugins/timelion/server/series_functions/es/es.test.js b/src/plugins/vis_type_timelion/server/series_functions/es/es.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/es/es.test.js rename to src/plugins/vis_type_timelion/server/series_functions/es/es.test.js diff --git a/src/plugins/timelion/server/series_functions/es/index.js b/src/plugins/vis_type_timelion/server/series_functions/es/index.js similarity index 100% rename from src/plugins/timelion/server/series_functions/es/index.js rename to src/plugins/vis_type_timelion/server/series_functions/es/index.js diff --git a/src/plugins/timelion/server/series_functions/es/lib/agg_body.js b/src/plugins/vis_type_timelion/server/series_functions/es/lib/agg_body.js similarity index 100% rename from src/plugins/timelion/server/series_functions/es/lib/agg_body.js rename to src/plugins/vis_type_timelion/server/series_functions/es/lib/agg_body.js diff --git a/src/plugins/timelion/server/series_functions/es/lib/agg_response_to_series_list.js b/src/plugins/vis_type_timelion/server/series_functions/es/lib/agg_response_to_series_list.js similarity index 100% rename from src/plugins/timelion/server/series_functions/es/lib/agg_response_to_series_list.js rename to src/plugins/vis_type_timelion/server/series_functions/es/lib/agg_response_to_series_list.js diff --git a/src/plugins/timelion/server/series_functions/es/lib/build_request.js b/src/plugins/vis_type_timelion/server/series_functions/es/lib/build_request.js similarity index 100% rename from src/plugins/timelion/server/series_functions/es/lib/build_request.js rename to src/plugins/vis_type_timelion/server/series_functions/es/lib/build_request.js diff --git a/src/plugins/timelion/server/series_functions/es/lib/create_date_agg.js b/src/plugins/vis_type_timelion/server/series_functions/es/lib/create_date_agg.js similarity index 100% rename from src/plugins/timelion/server/series_functions/es/lib/create_date_agg.js rename to src/plugins/vis_type_timelion/server/series_functions/es/lib/create_date_agg.js diff --git a/src/plugins/timelion/server/series_functions/first.js b/src/plugins/vis_type_timelion/server/series_functions/first.js similarity index 100% rename from src/plugins/timelion/server/series_functions/first.js rename to src/plugins/vis_type_timelion/server/series_functions/first.js diff --git a/src/plugins/timelion/server/series_functions/first.test.js b/src/plugins/vis_type_timelion/server/series_functions/first.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/first.test.js rename to src/plugins/vis_type_timelion/server/series_functions/first.test.js diff --git a/src/plugins/timelion/server/series_functions/fit.js b/src/plugins/vis_type_timelion/server/series_functions/fit.js similarity index 100% rename from src/plugins/timelion/server/series_functions/fit.js rename to src/plugins/vis_type_timelion/server/series_functions/fit.js diff --git a/src/plugins/timelion/server/series_functions/fit.test.js b/src/plugins/vis_type_timelion/server/series_functions/fit.test.js similarity index 98% rename from src/plugins/timelion/server/series_functions/fit.test.js rename to src/plugins/vis_type_timelion/server/series_functions/fit.test.js index 75eaa2a50ea720..6622259a1fd875 100644 --- a/src/plugins/timelion/server/series_functions/fit.test.js +++ b/src/plugins/vis_type_timelion/server/series_functions/fit.test.js @@ -17,7 +17,7 @@ * under the License. */ -const fn = require(`src/plugins/timelion/server/series_functions/fit`); +const fn = require(`src/plugins/vis_type_timelion/server/series_functions/fit`); import moment from 'moment'; const expect = require('chai').expect; import invoke from './helpers/invoke_series_fn.js'; diff --git a/src/plugins/timelion/server/series_functions/fixtures/bucket_list.js b/src/plugins/vis_type_timelion/server/series_functions/fixtures/bucket_list.js similarity index 100% rename from src/plugins/timelion/server/series_functions/fixtures/bucket_list.js rename to src/plugins/vis_type_timelion/server/series_functions/fixtures/bucket_list.js diff --git a/src/plugins/timelion/server/series_functions/fixtures/es_response.js b/src/plugins/vis_type_timelion/server/series_functions/fixtures/es_response.js similarity index 100% rename from src/plugins/timelion/server/series_functions/fixtures/es_response.js rename to src/plugins/vis_type_timelion/server/series_functions/fixtures/es_response.js diff --git a/src/plugins/timelion/server/series_functions/fixtures/series_list.js b/src/plugins/vis_type_timelion/server/series_functions/fixtures/series_list.js similarity index 100% rename from src/plugins/timelion/server/series_functions/fixtures/series_list.js rename to src/plugins/vis_type_timelion/server/series_functions/fixtures/series_list.js diff --git a/src/plugins/timelion/server/series_functions/fixtures/tl_config.js b/src/plugins/vis_type_timelion/server/series_functions/fixtures/tl_config.js similarity index 100% rename from src/plugins/timelion/server/series_functions/fixtures/tl_config.js rename to src/plugins/vis_type_timelion/server/series_functions/fixtures/tl_config.js diff --git a/src/plugins/timelion/server/series_functions/graphite.js b/src/plugins/vis_type_timelion/server/series_functions/graphite.js similarity index 100% rename from src/plugins/timelion/server/series_functions/graphite.js rename to src/plugins/vis_type_timelion/server/series_functions/graphite.js diff --git a/src/plugins/timelion/server/series_functions/graphite.test.js b/src/plugins/vis_type_timelion/server/series_functions/graphite.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/graphite.test.js rename to src/plugins/vis_type_timelion/server/series_functions/graphite.test.js diff --git a/src/plugins/timelion/server/series_functions/helpers/get_series.js b/src/plugins/vis_type_timelion/server/series_functions/helpers/get_series.js similarity index 100% rename from src/plugins/timelion/server/series_functions/helpers/get_series.js rename to src/plugins/vis_type_timelion/server/series_functions/helpers/get_series.js diff --git a/src/plugins/timelion/server/series_functions/helpers/get_series_list.js b/src/plugins/vis_type_timelion/server/series_functions/helpers/get_series_list.js similarity index 100% rename from src/plugins/timelion/server/series_functions/helpers/get_series_list.js rename to src/plugins/vis_type_timelion/server/series_functions/helpers/get_series_list.js diff --git a/src/plugins/timelion/server/series_functions/helpers/get_single_series_list.js b/src/plugins/vis_type_timelion/server/series_functions/helpers/get_single_series_list.js similarity index 100% rename from src/plugins/timelion/server/series_functions/helpers/get_single_series_list.js rename to src/plugins/vis_type_timelion/server/series_functions/helpers/get_single_series_list.js diff --git a/src/plugins/timelion/server/series_functions/helpers/invoke_series_fn.js b/src/plugins/vis_type_timelion/server/series_functions/helpers/invoke_series_fn.js similarity index 100% rename from src/plugins/timelion/server/series_functions/helpers/invoke_series_fn.js rename to src/plugins/vis_type_timelion/server/series_functions/helpers/invoke_series_fn.js diff --git a/src/plugins/timelion/server/series_functions/hide.js b/src/plugins/vis_type_timelion/server/series_functions/hide.js similarity index 100% rename from src/plugins/timelion/server/series_functions/hide.js rename to src/plugins/vis_type_timelion/server/series_functions/hide.js diff --git a/src/plugins/timelion/server/series_functions/hide.test.js b/src/plugins/vis_type_timelion/server/series_functions/hide.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/hide.test.js rename to src/plugins/vis_type_timelion/server/series_functions/hide.test.js diff --git a/src/plugins/timelion/server/series_functions/holt/index.js b/src/plugins/vis_type_timelion/server/series_functions/holt/index.js similarity index 100% rename from src/plugins/timelion/server/series_functions/holt/index.js rename to src/plugins/vis_type_timelion/server/series_functions/holt/index.js diff --git a/src/plugins/timelion/server/series_functions/holt/lib/des.js b/src/plugins/vis_type_timelion/server/series_functions/holt/lib/des.js similarity index 100% rename from src/plugins/timelion/server/series_functions/holt/lib/des.js rename to src/plugins/vis_type_timelion/server/series_functions/holt/lib/des.js diff --git a/src/plugins/timelion/server/series_functions/holt/lib/ses.js b/src/plugins/vis_type_timelion/server/series_functions/holt/lib/ses.js similarity index 100% rename from src/plugins/timelion/server/series_functions/holt/lib/ses.js rename to src/plugins/vis_type_timelion/server/series_functions/holt/lib/ses.js diff --git a/src/plugins/timelion/server/series_functions/holt/lib/tes.js b/src/plugins/vis_type_timelion/server/series_functions/holt/lib/tes.js similarity index 100% rename from src/plugins/timelion/server/series_functions/holt/lib/tes.js rename to src/plugins/vis_type_timelion/server/series_functions/holt/lib/tes.js diff --git a/src/plugins/timelion/server/series_functions/label.js b/src/plugins/vis_type_timelion/server/series_functions/label.js similarity index 100% rename from src/plugins/timelion/server/series_functions/label.js rename to src/plugins/vis_type_timelion/server/series_functions/label.js diff --git a/src/plugins/timelion/server/series_functions/label.test.js b/src/plugins/vis_type_timelion/server/series_functions/label.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/label.test.js rename to src/plugins/vis_type_timelion/server/series_functions/label.test.js diff --git a/src/plugins/timelion/server/series_functions/legend.js b/src/plugins/vis_type_timelion/server/series_functions/legend.js similarity index 100% rename from src/plugins/timelion/server/series_functions/legend.js rename to src/plugins/vis_type_timelion/server/series_functions/legend.js diff --git a/src/plugins/timelion/server/series_functions/legend.test.js b/src/plugins/vis_type_timelion/server/series_functions/legend.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/legend.test.js rename to src/plugins/vis_type_timelion/server/series_functions/legend.test.js diff --git a/src/plugins/timelion/server/series_functions/lines.js b/src/plugins/vis_type_timelion/server/series_functions/lines.js similarity index 100% rename from src/plugins/timelion/server/series_functions/lines.js rename to src/plugins/vis_type_timelion/server/series_functions/lines.js diff --git a/src/plugins/timelion/server/series_functions/lines.test.js b/src/plugins/vis_type_timelion/server/series_functions/lines.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/lines.test.js rename to src/plugins/vis_type_timelion/server/series_functions/lines.test.js diff --git a/src/plugins/timelion/server/series_functions/log.js b/src/plugins/vis_type_timelion/server/series_functions/log.js similarity index 100% rename from src/plugins/timelion/server/series_functions/log.js rename to src/plugins/vis_type_timelion/server/series_functions/log.js diff --git a/src/plugins/timelion/server/series_functions/log.test.js b/src/plugins/vis_type_timelion/server/series_functions/log.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/log.test.js rename to src/plugins/vis_type_timelion/server/series_functions/log.test.js diff --git a/src/plugins/timelion/server/series_functions/max.js b/src/plugins/vis_type_timelion/server/series_functions/max.js similarity index 100% rename from src/plugins/timelion/server/series_functions/max.js rename to src/plugins/vis_type_timelion/server/series_functions/max.js diff --git a/src/plugins/timelion/server/series_functions/max.test.js b/src/plugins/vis_type_timelion/server/series_functions/max.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/max.test.js rename to src/plugins/vis_type_timelion/server/series_functions/max.test.js diff --git a/src/plugins/timelion/server/series_functions/min.js b/src/plugins/vis_type_timelion/server/series_functions/min.js similarity index 100% rename from src/plugins/timelion/server/series_functions/min.js rename to src/plugins/vis_type_timelion/server/series_functions/min.js diff --git a/src/plugins/timelion/server/series_functions/min.test.js b/src/plugins/vis_type_timelion/server/series_functions/min.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/min.test.js rename to src/plugins/vis_type_timelion/server/series_functions/min.test.js diff --git a/src/plugins/timelion/server/series_functions/movingaverage.js b/src/plugins/vis_type_timelion/server/series_functions/movingaverage.js similarity index 100% rename from src/plugins/timelion/server/series_functions/movingaverage.js rename to src/plugins/vis_type_timelion/server/series_functions/movingaverage.js diff --git a/src/plugins/timelion/server/series_functions/movingaverage.test.js b/src/plugins/vis_type_timelion/server/series_functions/movingaverage.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/movingaverage.test.js rename to src/plugins/vis_type_timelion/server/series_functions/movingaverage.test.js diff --git a/src/plugins/timelion/server/series_functions/movingstd.js b/src/plugins/vis_type_timelion/server/series_functions/movingstd.js similarity index 100% rename from src/plugins/timelion/server/series_functions/movingstd.js rename to src/plugins/vis_type_timelion/server/series_functions/movingstd.js diff --git a/src/plugins/timelion/server/series_functions/movingstd.test.js b/src/plugins/vis_type_timelion/server/series_functions/movingstd.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/movingstd.test.js rename to src/plugins/vis_type_timelion/server/series_functions/movingstd.test.js diff --git a/src/plugins/timelion/server/series_functions/multiply.js b/src/plugins/vis_type_timelion/server/series_functions/multiply.js similarity index 100% rename from src/plugins/timelion/server/series_functions/multiply.js rename to src/plugins/vis_type_timelion/server/series_functions/multiply.js diff --git a/src/plugins/timelion/server/series_functions/multiply.test.js b/src/plugins/vis_type_timelion/server/series_functions/multiply.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/multiply.test.js rename to src/plugins/vis_type_timelion/server/series_functions/multiply.test.js diff --git a/src/plugins/timelion/server/series_functions/points.js b/src/plugins/vis_type_timelion/server/series_functions/points.js similarity index 100% rename from src/plugins/timelion/server/series_functions/points.js rename to src/plugins/vis_type_timelion/server/series_functions/points.js diff --git a/src/plugins/timelion/server/series_functions/points.test.js b/src/plugins/vis_type_timelion/server/series_functions/points.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/points.test.js rename to src/plugins/vis_type_timelion/server/series_functions/points.test.js diff --git a/src/plugins/timelion/server/series_functions/precision.js b/src/plugins/vis_type_timelion/server/series_functions/precision.js similarity index 100% rename from src/plugins/timelion/server/series_functions/precision.js rename to src/plugins/vis_type_timelion/server/series_functions/precision.js diff --git a/src/plugins/timelion/server/series_functions/precision.test.js b/src/plugins/vis_type_timelion/server/series_functions/precision.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/precision.test.js rename to src/plugins/vis_type_timelion/server/series_functions/precision.test.js diff --git a/src/plugins/timelion/server/series_functions/props.js b/src/plugins/vis_type_timelion/server/series_functions/props.js similarity index 100% rename from src/plugins/timelion/server/series_functions/props.js rename to src/plugins/vis_type_timelion/server/series_functions/props.js diff --git a/src/plugins/timelion/server/series_functions/quandl.js b/src/plugins/vis_type_timelion/server/series_functions/quandl.js similarity index 100% rename from src/plugins/timelion/server/series_functions/quandl.js rename to src/plugins/vis_type_timelion/server/series_functions/quandl.js diff --git a/src/plugins/timelion/server/series_functions/quandl.test.js b/src/plugins/vis_type_timelion/server/series_functions/quandl.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/quandl.test.js rename to src/plugins/vis_type_timelion/server/series_functions/quandl.test.js diff --git a/src/plugins/timelion/server/series_functions/range.js b/src/plugins/vis_type_timelion/server/series_functions/range.js similarity index 100% rename from src/plugins/timelion/server/series_functions/range.js rename to src/plugins/vis_type_timelion/server/series_functions/range.js diff --git a/src/plugins/timelion/server/series_functions/range.test.js b/src/plugins/vis_type_timelion/server/series_functions/range.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/range.test.js rename to src/plugins/vis_type_timelion/server/series_functions/range.test.js diff --git a/src/plugins/timelion/server/series_functions/scale_interval.js b/src/plugins/vis_type_timelion/server/series_functions/scale_interval.js similarity index 100% rename from src/plugins/timelion/server/series_functions/scale_interval.js rename to src/plugins/vis_type_timelion/server/series_functions/scale_interval.js diff --git a/src/plugins/timelion/server/series_functions/scale_interval.test.js b/src/plugins/vis_type_timelion/server/series_functions/scale_interval.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/scale_interval.test.js rename to src/plugins/vis_type_timelion/server/series_functions/scale_interval.test.js diff --git a/src/plugins/timelion/server/series_functions/static.js b/src/plugins/vis_type_timelion/server/series_functions/static.js similarity index 100% rename from src/plugins/timelion/server/series_functions/static.js rename to src/plugins/vis_type_timelion/server/series_functions/static.js diff --git a/src/plugins/timelion/server/series_functions/static.test.js b/src/plugins/vis_type_timelion/server/series_functions/static.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/static.test.js rename to src/plugins/vis_type_timelion/server/series_functions/static.test.js diff --git a/src/plugins/timelion/server/series_functions/subtract.js b/src/plugins/vis_type_timelion/server/series_functions/subtract.js similarity index 100% rename from src/plugins/timelion/server/series_functions/subtract.js rename to src/plugins/vis_type_timelion/server/series_functions/subtract.js diff --git a/src/plugins/timelion/server/series_functions/subtract.test.js b/src/plugins/vis_type_timelion/server/series_functions/subtract.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/subtract.test.js rename to src/plugins/vis_type_timelion/server/series_functions/subtract.test.js diff --git a/src/plugins/timelion/server/series_functions/sum.js b/src/plugins/vis_type_timelion/server/series_functions/sum.js similarity index 100% rename from src/plugins/timelion/server/series_functions/sum.js rename to src/plugins/vis_type_timelion/server/series_functions/sum.js diff --git a/src/plugins/timelion/server/series_functions/sum.test.js b/src/plugins/vis_type_timelion/server/series_functions/sum.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/sum.test.js rename to src/plugins/vis_type_timelion/server/series_functions/sum.test.js diff --git a/src/plugins/timelion/server/series_functions/title.js b/src/plugins/vis_type_timelion/server/series_functions/title.js similarity index 100% rename from src/plugins/timelion/server/series_functions/title.js rename to src/plugins/vis_type_timelion/server/series_functions/title.js diff --git a/src/plugins/timelion/server/series_functions/title.test.js b/src/plugins/vis_type_timelion/server/series_functions/title.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/title.test.js rename to src/plugins/vis_type_timelion/server/series_functions/title.test.js diff --git a/src/plugins/timelion/server/series_functions/trend/index.js b/src/plugins/vis_type_timelion/server/series_functions/trend/index.js similarity index 100% rename from src/plugins/timelion/server/series_functions/trend/index.js rename to src/plugins/vis_type_timelion/server/series_functions/trend/index.js diff --git a/src/plugins/timelion/server/series_functions/trend/lib/regress.js b/src/plugins/vis_type_timelion/server/series_functions/trend/lib/regress.js similarity index 100% rename from src/plugins/timelion/server/series_functions/trend/lib/regress.js rename to src/plugins/vis_type_timelion/server/series_functions/trend/lib/regress.js diff --git a/src/plugins/timelion/server/series_functions/trim.js b/src/plugins/vis_type_timelion/server/series_functions/trim.js similarity index 100% rename from src/plugins/timelion/server/series_functions/trim.js rename to src/plugins/vis_type_timelion/server/series_functions/trim.js diff --git a/src/plugins/timelion/server/series_functions/trim.test.js b/src/plugins/vis_type_timelion/server/series_functions/trim.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/trim.test.js rename to src/plugins/vis_type_timelion/server/series_functions/trim.test.js diff --git a/src/plugins/timelion/server/series_functions/worldbank.js b/src/plugins/vis_type_timelion/server/series_functions/worldbank.js similarity index 100% rename from src/plugins/timelion/server/series_functions/worldbank.js rename to src/plugins/vis_type_timelion/server/series_functions/worldbank.js diff --git a/src/plugins/timelion/server/series_functions/worldbank_indicators.js b/src/plugins/vis_type_timelion/server/series_functions/worldbank_indicators.js similarity index 100% rename from src/plugins/timelion/server/series_functions/worldbank_indicators.js rename to src/plugins/vis_type_timelion/server/series_functions/worldbank_indicators.js diff --git a/src/plugins/timelion/server/series_functions/yaxis.js b/src/plugins/vis_type_timelion/server/series_functions/yaxis.js similarity index 100% rename from src/plugins/timelion/server/series_functions/yaxis.js rename to src/plugins/vis_type_timelion/server/series_functions/yaxis.js diff --git a/src/plugins/timelion/server/series_functions/yaxis.test.js b/src/plugins/vis_type_timelion/server/series_functions/yaxis.test.js similarity index 100% rename from src/plugins/timelion/server/series_functions/yaxis.test.js rename to src/plugins/vis_type_timelion/server/series_functions/yaxis.test.js diff --git a/src/plugins/timelion/server/timelion.json b/src/plugins/vis_type_timelion/server/timelion.json similarity index 100% rename from src/plugins/timelion/server/timelion.json rename to src/plugins/vis_type_timelion/server/timelion.json diff --git a/src/plugins/timelion/server/types.ts b/src/plugins/vis_type_timelion/server/types.ts similarity index 100% rename from src/plugins/timelion/server/types.ts rename to src/plugins/vis_type_timelion/server/types.ts diff --git a/tasks/config/peg.js b/tasks/config/peg.js index 1d8667840faba0..2de6ff4b5cff99 100644 --- a/tasks/config/peg.js +++ b/tasks/config/peg.js @@ -26,7 +26,7 @@ module.exports = { }, }, timelion_chain: { - src: 'src/legacy/core_plugins/vis_type_timelion/public/chain.peg', - dest: 'src/legacy/core_plugins/vis_type_timelion/public/_generated_/chain.js', + src: 'src/plugins/vis_type_timelion/public/chain.peg', + dest: 'src/plugins/vis_type_timelion/public/_generated_/chain.js', }, }; diff --git a/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/tsconfig.json b/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/tsconfig.json index d8096d9aab27ab..544c27241f5cb6 100644 --- a/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/tsconfig.json +++ b/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/tsconfig.json @@ -6,7 +6,8 @@ "types": [ "node", "jest", - "react" + "react", + "flot" ] }, "include": [ @@ -16,4 +17,4 @@ "../../../../typings/**/*", ], "exclude": [] -} \ No newline at end of file +} diff --git a/test/tsconfig.json b/test/tsconfig.json index 285d3db64a874c..5a3716e620fed8 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -3,7 +3,8 @@ "compilerOptions": { "types": [ "node", - "mocha" + "mocha", + "flot" ], "lib": [ "esnext", diff --git a/x-pack/plugins/features/kibana.json b/x-pack/plugins/features/kibana.json index 325e5a0407493e..6e51f3b6507106 100644 --- a/x-pack/plugins/features/kibana.json +++ b/x-pack/plugins/features/kibana.json @@ -2,7 +2,7 @@ "id": "features", "version": "8.0.0", "kibanaVersion": "kibana", - "optionalPlugins": ["timelion"], + "optionalPlugins": ["visTypeTimelion"], "configPath": ["xpack", "features"], "server": true, "ui": true diff --git a/x-pack/plugins/features/server/plugin.ts b/x-pack/plugins/features/server/plugin.ts index cebf67243fb28f..83cc9e1eb7cc8d 100644 --- a/x-pack/plugins/features/server/plugin.ts +++ b/x-pack/plugins/features/server/plugin.ts @@ -13,7 +13,7 @@ import { import { Capabilities as UICapabilities } from '../../../../src/core/server'; import { deepFreeze } from '../../../../src/core/utils'; import { XPackInfo } from '../../../legacy/plugins/xpack_main/server/lib/xpack_info'; -import { PluginSetupContract as TimelionSetupContract } from '../../../../src/plugins/timelion/server'; +import { PluginSetupContract as TimelionSetupContract } from '../../../../src/plugins/vis_type_timelion/server'; import { FeatureRegistry } from './feature_registry'; import { Feature, FeatureConfig } from '../common/feature'; import { uiCapabilitiesForFeatures } from './ui_capabilities_for_features'; @@ -65,7 +65,7 @@ export class Plugin { public async setup( core: CoreSetup, - { timelion }: { timelion?: TimelionSetupContract } + { visTypeTimelion }: { visTypeTimelion?: TimelionSetupContract } ): Promise> { defineRoutes({ router: core.http.createRouter(), @@ -84,7 +84,7 @@ export class Plugin { // Register OSS features. for (const feature of buildOSSFeatures({ savedObjectTypes: this.legacyAPI.savedObjectTypes, - includeTimelion: timelion !== undefined && timelion.uiEnabled, + includeTimelion: visTypeTimelion !== undefined && visTypeTimelion.uiEnabled, })) { this.featureRegistry.register(feature); } diff --git a/x-pack/test/tsconfig.json b/x-pack/test/tsconfig.json index e9aab9b47535ff..df1d7e789507b3 100644 --- a/x-pack/test/tsconfig.json +++ b/x-pack/test/tsconfig.json @@ -3,7 +3,8 @@ "compilerOptions": { "types": [ "mocha", - "node" + "node", + "flot" ] }, "include": [ diff --git a/x-pack/tsconfig.json b/x-pack/tsconfig.json index a6c94ff74620ed..55f697fb4f5ec0 100644 --- a/x-pack/tsconfig.json +++ b/x-pack/tsconfig.json @@ -40,7 +40,8 @@ }, "types": [ "node", - "jest" + "jest", + "flot" ] } } From abbb51ba11feb2c24e61e07969773ea73e56eadd Mon Sep 17 00:00:00 2001 From: Pierre Gayvallet Date: Fri, 17 Apr 2020 11:04:58 +0200 Subject: [PATCH 16/59] add deprecation warning for legacy 3rd party plugins (#62401) * add warnings for legacy 3rd party plugins * use published doc page for 8.0 breaking changes * update message to remove fixed 8.0 version reference * fix generated doc --- .../legacy/legacy_service.test.mocks.ts | 7 +- src/core/server/legacy/legacy_service.test.ts | 37 +++++++- src/core/server/legacy/legacy_service.ts | 7 +- src/core/server/legacy/plugins/index.ts | 1 + .../log_legacy_plugins_warning.test.ts | 90 +++++++++++++++++++ .../plugins/log_legacy_plugins_warning.ts | 52 +++++++++++ src/core/server/legacy/types.ts | 1 + src/core/server/server.api.md | 10 +-- 8 files changed, 197 insertions(+), 8 deletions(-) create mode 100644 src/core/server/legacy/plugins/log_legacy_plugins_warning.test.ts create mode 100644 src/core/server/legacy/plugins/log_legacy_plugins_warning.ts diff --git a/src/core/server/legacy/legacy_service.test.mocks.ts b/src/core/server/legacy/legacy_service.test.mocks.ts index 451a75ced7ae29..9ad554d63add08 100644 --- a/src/core/server/legacy/legacy_service.test.mocks.ts +++ b/src/core/server/legacy/legacy_service.test.mocks.ts @@ -30,6 +30,11 @@ export const findLegacyPluginSpecsMock = jest.fn().mockImplementation((settings: uiExports: {}, navLinks: [], })); -jest.doMock('./plugins/find_legacy_plugin_specs.ts', () => ({ +jest.doMock('./plugins/find_legacy_plugin_specs', () => ({ findLegacyPluginSpecs: findLegacyPluginSpecsMock, })); + +export const logLegacyThirdPartyPluginDeprecationWarningMock = jest.fn(); +jest.doMock('./plugins/log_legacy_plugins_warning', () => ({ + logLegacyThirdPartyPluginDeprecationWarning: logLegacyThirdPartyPluginDeprecationWarningMock, +})); diff --git a/src/core/server/legacy/legacy_service.test.ts b/src/core/server/legacy/legacy_service.test.ts index 0c4e58f6a8da18..a75f7dda302c27 100644 --- a/src/core/server/legacy/legacy_service.test.ts +++ b/src/core/server/legacy/legacy_service.test.ts @@ -22,7 +22,10 @@ jest.mock('../../../cli/cluster/cluster_manager'); jest.mock('./config/legacy_deprecation_adapters', () => ({ convertLegacyDeprecationProvider: (provider: any) => Promise.resolve(provider), })); -import { findLegacyPluginSpecsMock } from './legacy_service.test.mocks'; +import { + findLegacyPluginSpecsMock, + logLegacyThirdPartyPluginDeprecationWarningMock, +} from './legacy_service.test.mocks'; import { BehaviorSubject, throwError } from 'rxjs'; @@ -476,6 +479,38 @@ describe('#discoverPlugins()', () => { expect(configService.addDeprecationProvider).toHaveBeenCalledWith('', 'providerA'); expect(configService.addDeprecationProvider).toHaveBeenCalledWith('', 'providerB'); }); + + it(`logs deprecations for legacy third party plugins`, async () => { + const pluginSpecs = [ + { getId: () => 'pluginA', getDeprecationsProvider: () => undefined }, + { getId: () => 'pluginB', getDeprecationsProvider: () => undefined }, + ]; + findLegacyPluginSpecsMock.mockImplementation( + settings => + Promise.resolve({ + pluginSpecs, + pluginExtendedConfig: settings, + disabledPluginSpecs: [], + uiExports: {}, + navLinks: [], + }) as any + ); + + const legacyService = new LegacyService({ + coreId, + env, + logger, + configService: configService as any, + }); + + await legacyService.discoverPlugins(); + + expect(logLegacyThirdPartyPluginDeprecationWarningMock).toHaveBeenCalledTimes(1); + expect(logLegacyThirdPartyPluginDeprecationWarningMock).toHaveBeenCalledWith({ + specs: pluginSpecs, + log: expect.any(Object), + }); + }); }); test('Sets the server.uuid property on the legacy configuration', async () => { diff --git a/src/core/server/legacy/legacy_service.ts b/src/core/server/legacy/legacy_service.ts index fd3ebfe120599c..b95362e1ea26e0 100644 --- a/src/core/server/legacy/legacy_service.ts +++ b/src/core/server/legacy/legacy_service.ts @@ -28,7 +28,7 @@ import { DevConfig, DevConfigType, config as devConfig } from '../dev'; import { BasePathProxyServer, HttpConfig, HttpConfigType, config as httpConfig } from '../http'; import { Logger } from '../logging'; import { PathConfigType } from '../path'; -import { findLegacyPluginSpecs } from './plugins'; +import { findLegacyPluginSpecs, logLegacyThirdPartyPluginDeprecationWarning } from './plugins'; import { convertLegacyDeprecationProvider } from './config'; import { ILegacyInternals, @@ -133,6 +133,11 @@ export class LegacyService implements CoreService { this.coreContext.env.packageInfo ); + logLegacyThirdPartyPluginDeprecationWarning({ + specs: pluginSpecs, + log: this.log, + }); + this.legacyPlugins = { pluginSpecs, disabledPluginSpecs, diff --git a/src/core/server/legacy/plugins/index.ts b/src/core/server/legacy/plugins/index.ts index a6d55e1da78390..7ec5dbc1983ab9 100644 --- a/src/core/server/legacy/plugins/index.ts +++ b/src/core/server/legacy/plugins/index.ts @@ -18,3 +18,4 @@ */ export { findLegacyPluginSpecs } from './find_legacy_plugin_specs'; +export { logLegacyThirdPartyPluginDeprecationWarning } from './log_legacy_plugins_warning'; diff --git a/src/core/server/legacy/plugins/log_legacy_plugins_warning.test.ts b/src/core/server/legacy/plugins/log_legacy_plugins_warning.test.ts new file mode 100644 index 00000000000000..1790b096a71aea --- /dev/null +++ b/src/core/server/legacy/plugins/log_legacy_plugins_warning.test.ts @@ -0,0 +1,90 @@ +/* + * 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 { loggerMock } from '../../logging/logger.mock'; +import { logLegacyThirdPartyPluginDeprecationWarning } from './log_legacy_plugins_warning'; +import { LegacyPluginSpec } from '../types'; + +const createPluginSpec = ({ id, path }: { id: string; path: string }): LegacyPluginSpec => { + return { + getId: () => id, + getExpectedKibanaVersion: () => 'kibana', + getConfigPrefix: () => 'plugin.config', + getDeprecationsProvider: () => undefined, + getPack: () => ({ + getPath: () => path, + }), + }; +}; + +describe('logLegacyThirdPartyPluginDeprecationWarning', () => { + let log: ReturnType; + + beforeEach(() => { + log = loggerMock.create(); + }); + + it('logs warning for third party plugins', () => { + logLegacyThirdPartyPluginDeprecationWarning({ + specs: [createPluginSpec({ id: 'plugin', path: '/some-external-path' })], + log, + }); + expect(log.warn).toHaveBeenCalledTimes(1); + expect(log.warn.mock.calls[0]).toMatchInlineSnapshot(` + Array [ + "Some installed third party plugin(s) [plugin] are using the legacy plugin format and will no longer work in a future Kibana release. Please refer to https://www.elastic.co/guide/en/kibana/master/breaking-changes-8.0.html for a list of breaking changes and https://github.com/elastic/kibana/blob/master/src/core/MIGRATION.md for documentation on how to migrate legacy plugins.", + ] + `); + }); + + it('lists all the deprecated plugins and only log once', () => { + logLegacyThirdPartyPluginDeprecationWarning({ + specs: [ + createPluginSpec({ id: 'pluginA', path: '/abs/path/to/pluginA' }), + createPluginSpec({ id: 'pluginB', path: '/abs/path/to/pluginB' }), + createPluginSpec({ id: 'pluginC', path: '/abs/path/to/pluginC' }), + ], + log, + }); + expect(log.warn).toHaveBeenCalledTimes(1); + expect(log.warn.mock.calls[0]).toMatchInlineSnapshot(` + Array [ + "Some installed third party plugin(s) [pluginA, pluginB, pluginC] are using the legacy plugin format and will no longer work in a future Kibana release. Please refer to https://www.elastic.co/guide/en/kibana/master/breaking-changes-8.0.html for a list of breaking changes and https://github.com/elastic/kibana/blob/master/src/core/MIGRATION.md for documentation on how to migrate legacy plugins.", + ] + `); + }); + + it('does not log warning for internal legacy plugins', () => { + logLegacyThirdPartyPluginDeprecationWarning({ + specs: [ + createPluginSpec({ + id: 'plugin', + path: '/absolute/path/to/kibana/src/legacy/core_plugins', + }), + createPluginSpec({ + id: 'plugin', + path: '/absolute/path/to/kibana/x-pack', + }), + ], + log, + }); + + expect(log.warn).not.toHaveBeenCalled(); + }); +}); diff --git a/src/core/server/legacy/plugins/log_legacy_plugins_warning.ts b/src/core/server/legacy/plugins/log_legacy_plugins_warning.ts new file mode 100644 index 00000000000000..f9c3dcbf554cb8 --- /dev/null +++ b/src/core/server/legacy/plugins/log_legacy_plugins_warning.ts @@ -0,0 +1,52 @@ +/* + * 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 { Logger } from '../../logging'; +import { LegacyPluginSpec } from '../types'; + +const internalPaths = ['/src/legacy/core_plugins', '/x-pack']; + +const breakingChangesUrl = + 'https://www.elastic.co/guide/en/kibana/master/breaking-changes-8.0.html'; +const migrationGuideUrl = 'https://github.com/elastic/kibana/blob/master/src/core/MIGRATION.md'; + +export const logLegacyThirdPartyPluginDeprecationWarning = ({ + specs, + log, +}: { + specs: LegacyPluginSpec[]; + log: Logger; +}) => { + const thirdPartySpecs = specs.filter(isThirdPartyPluginSpec); + if (thirdPartySpecs.length > 0) { + const pluginIds = thirdPartySpecs.map(spec => spec.getId()); + log.warn( + `Some installed third party plugin(s) [${pluginIds.join( + ', ' + )}] are using the legacy plugin format and will no longer work in a future Kibana release. ` + + `Please refer to ${breakingChangesUrl} for a list of breaking changes ` + + `and ${migrationGuideUrl} for documentation on how to migrate legacy plugins.` + ); + } +}; + +const isThirdPartyPluginSpec = (spec: LegacyPluginSpec): boolean => { + const pluginPath = spec.getPack().getPath(); + return !internalPaths.some(internalPath => pluginPath.indexOf(internalPath) > -1); +}; diff --git a/src/core/server/legacy/types.ts b/src/core/server/legacy/types.ts index 38cb9e6835ce99..2567ca790e04f7 100644 --- a/src/core/server/legacy/types.ts +++ b/src/core/server/legacy/types.ts @@ -98,6 +98,7 @@ export interface LegacyPluginSpec { getExpectedKibanaVersion: () => string; getConfigPrefix: () => string; getDeprecationsProvider: () => LegacyConfigDeprecationProvider | undefined; + getPack: () => LegacyPluginPack; } /** diff --git a/src/core/server/server.api.md b/src/core/server/server.api.md index dd08df06c73d2a..7ca5c75f19e8ff 100644 --- a/src/core/server/server.api.md +++ b/src/core/server/server.api.md @@ -2468,11 +2468,11 @@ export const validBodyOutput: readonly ["data", "stream"]; // Warnings were encountered during analysis: // // src/core/server/http/router/response.ts:316:3 - (ae-forgotten-export) The symbol "KibanaResponse" needs to be exported by the entry point index.d.ts -// src/core/server/legacy/types.ts:162:3 - (ae-forgotten-export) The symbol "VarsProvider" needs to be exported by the entry point index.d.ts -// src/core/server/legacy/types.ts:163:3 - (ae-forgotten-export) The symbol "VarsReplacer" needs to be exported by the entry point index.d.ts -// src/core/server/legacy/types.ts:164:3 - (ae-forgotten-export) The symbol "LegacyNavLinkSpec" needs to be exported by the entry point index.d.ts -// src/core/server/legacy/types.ts:165:3 - (ae-forgotten-export) The symbol "LegacyAppSpec" needs to be exported by the entry point index.d.ts -// src/core/server/legacy/types.ts:166:16 - (ae-forgotten-export) The symbol "LegacyPluginSpec" needs to be exported by the entry point index.d.ts +// src/core/server/legacy/types.ts:163:3 - (ae-forgotten-export) The symbol "VarsProvider" needs to be exported by the entry point index.d.ts +// src/core/server/legacy/types.ts:164:3 - (ae-forgotten-export) The symbol "VarsReplacer" needs to be exported by the entry point index.d.ts +// src/core/server/legacy/types.ts:165:3 - (ae-forgotten-export) The symbol "LegacyNavLinkSpec" needs to be exported by the entry point index.d.ts +// src/core/server/legacy/types.ts:166:3 - (ae-forgotten-export) The symbol "LegacyAppSpec" needs to be exported by the entry point index.d.ts +// src/core/server/legacy/types.ts:167:16 - (ae-forgotten-export) The symbol "LegacyPluginSpec" needs to be exported by the entry point index.d.ts // src/core/server/plugins/types.ts:230:3 - (ae-forgotten-export) The symbol "KibanaConfigType" needs to be exported by the entry point index.d.ts // src/core/server/plugins/types.ts:230:3 - (ae-forgotten-export) The symbol "SharedGlobalConfigKeys" needs to be exported by the entry point index.d.ts // src/core/server/plugins/types.ts:232:3 - (ae-forgotten-export) The symbol "PathConfigType" needs to be exported by the entry point index.d.ts From 90f5ce0ef34885373d43bd613ac382a5ab9aee15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Marcondes?= <55978943+cauemarcondes@users.noreply.github.com> Date: Fri, 17 Apr 2020 10:15:28 +0100 Subject: [PATCH 17/59] [APM]Upgrade apm-rum agent to latest version to fix full page reload (#63723) --- package.json | 2 +- x-pack/package.json | 2 +- yarn.lock | 45 ++++++++++++++++++++++----------------------- 3 files changed, 24 insertions(+), 25 deletions(-) diff --git a/package.json b/package.json index 8a45ea27d3168b..21e9f67e6206a1 100644 --- a/package.json +++ b/package.json @@ -119,7 +119,7 @@ "dependencies": { "@babel/core": "^7.9.0", "@babel/register": "^7.9.0", - "@elastic/apm-rum": "^4.6.0", + "@elastic/apm-rum": "^5.1.1", "@elastic/charts": "18.3.0", "@elastic/datemath": "5.0.3", "@elastic/ems-client": "7.8.0", diff --git a/x-pack/package.json b/x-pack/package.json index b2ec4c3dc3f6f0..a4fdb17f52fe55 100644 --- a/x-pack/package.json +++ b/x-pack/package.json @@ -179,7 +179,7 @@ "@babel/core": "^7.9.0", "@babel/register": "^7.9.0", "@babel/runtime": "^7.9.2", - "@elastic/apm-rum-react": "^0.3.2", + "@elastic/apm-rum-react": "^1.1.1", "@elastic/datemath": "5.0.3", "@elastic/ems-client": "7.8.0", "@elastic/eui": "21.0.1", diff --git a/yarn.lock b/yarn.lock index 34ee6f393f25a0..45540cd2675b74 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1220,30 +1220,29 @@ debug "^3.1.0" lodash.once "^4.1.1" -"@elastic/apm-rum-core@^4.7.0": - version "4.7.0" - resolved "https://registry.yarnpkg.com/@elastic/apm-rum-core/-/apm-rum-core-4.7.0.tgz#b00b58bf7380f2e36652e5333e3ca97608986e40" - integrity sha512-/lTZWfA3ces3qoKCx72Sc+w43lZkyktaQlbYoYO86h3tNX7tScc/7YBBHI9oxKMcXweqkKOcpnwNZFy71bb86w== +"@elastic/apm-rum-core@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@elastic/apm-rum-core/-/apm-rum-core-5.2.0.tgz#2ed30dc226c9b5779532ab2e6065a155587bcea4" + integrity sha512-3ti2dhrqfxjHFXgArQI/sVAG2AgZH0kB1nx+2WjLpuAh8gGS4R772M5VXcWcGQb8UW9jrANwwbW2hT2GKv+uOA== dependencies: error-stack-parser "^1.3.5" - es6-promise "^4.2.8" opentracing "^0.14.3" - uuid "^3.1.0" + promise-polyfill "^8.1.3" -"@elastic/apm-rum-react@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@elastic/apm-rum-react/-/apm-rum-react-0.3.2.tgz#134634643e15ebcf97b6f17b2c74a50afdbe1c64" - integrity sha512-hU1srW9noygppyrLmipulu30c+LWEie8V/dQjEqLYMx2mRZRwNIue3midYgWa6qrWqgYZhwpAtWrWcXc+AWk2Q== +"@elastic/apm-rum-react@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@elastic/apm-rum-react/-/apm-rum-react-1.1.1.tgz#3a2ba91efc9260da55ef6c31cce642a476eba828" + integrity sha512-ZMixw+82VbZIDBnz0dj5Fo4PZ7pnXlLjAA7XTi3AtSIEjpsZa7YIuCFzJdrgb/nOq7MOFkODkFPTiIYAM/yCqg== dependencies: - "@elastic/apm-rum" "^4.6.0" + "@elastic/apm-rum" "^5.1.1" hoist-non-react-statics "^3.3.0" -"@elastic/apm-rum@^4.6.0": - version "4.6.0" - resolved "https://registry.yarnpkg.com/@elastic/apm-rum/-/apm-rum-4.6.0.tgz#e2ac560dd4a4761c0e9b08c301418b1d4063bdd2" - integrity sha512-hsqvyTm5rT6lKgV06wvm8ID9aMsuJyw8wIOPjRwKmvzlTjayabxKTcr50lJJV8jY9OWfDkqymIqpHyCEChQAHQ== +"@elastic/apm-rum@^5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@elastic/apm-rum/-/apm-rum-5.1.1.tgz#02d29fa606e66f9a3a88f629d468b02457b1b183" + integrity sha512-A0O/0ZffcHm1taLuXyFoUmV2+aARr+9+xbmsEDIExLV0yKaNlaLl3UaZrodSOZ1ijlCEsRRS+y2i0md93YKQTA== dependencies: - "@elastic/apm-rum-core" "^4.7.0" + "@elastic/apm-rum-core" "^5.2.0" "@elastic/charts@18.3.0": version "18.3.0" @@ -12279,11 +12278,6 @@ es6-promise@^4.2.5: resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.6.tgz#b685edd8258886365ea62b57d30de28fadcd974f" integrity sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q== -es6-promise@^4.2.8: - version "4.2.8" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" - integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== - es6-promisify@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" @@ -23577,6 +23571,11 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= +promise-polyfill@^8.1.3: + version "8.1.3" + resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-8.1.3.tgz#8c99b3cf53f3a91c68226ffde7bde81d7f904116" + integrity sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g== + promise.prototype.finally@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.0.tgz#66f161b1643636e50e7cf201dc1b84a857f3864e" @@ -30861,7 +30860,7 @@ utils-regex-from-string@^1.0.0: regex-regex "^1.0.0" validate.io-string-primitive "^1.0.0" -uuid@3.3.2, uuid@^3.0.1, uuid@^3.1.0, uuid@^3.3.2: +uuid@3.3.2, uuid@^3.0.1, uuid@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== @@ -30876,7 +30875,7 @@ uuid@^3.0.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" integrity sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g== -uuid@^3.3.3: +uuid@^3.1.0, uuid@^3.3.3: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== From f91c795e30b7221cdce36e235470a4cda82f70b2 Mon Sep 17 00:00:00 2001 From: Sonja Krause-Harder Date: Fri, 17 Apr 2020 13:23:30 +0200 Subject: [PATCH 18/59] [EPM] Handle multi fields in index template generation (#63112) * Add unit test stub for multi fields. * Add multi field handling to mapping generation. * Start documenting index template generation. * Add unit tests. * Remove stub for fields.yml documentation Co-authored-by: Elastic Machine --- docs/ingest_manager/index-templates.asciidoc | 7 + docs/ingest_manager/index.asciidoc | 7 + .../__snapshots__/template.test.ts.snap | 176 +++++++++--------- .../elasticsearch/template/template.test.ts | 98 ++++++++++ .../epm/elasticsearch/template/template.ts | 69 +++++-- 5 files changed, 256 insertions(+), 101 deletions(-) create mode 100644 docs/ingest_manager/index-templates.asciidoc diff --git a/docs/ingest_manager/index-templates.asciidoc b/docs/ingest_manager/index-templates.asciidoc new file mode 100644 index 00000000000000..e19af63c3116f1 --- /dev/null +++ b/docs/ingest_manager/index-templates.asciidoc @@ -0,0 +1,7 @@ +# Elasticsearch Index Templates + +## Generation + +* Index templates are generated from `YAML` files contained in the package. +* There is one index template per dataset. +* For the generation of an index template, all `yml` files contained in the package subdirectory `dataset/DATASET_NAME/fields/` are used. diff --git a/docs/ingest_manager/index.asciidoc b/docs/ingest_manager/index.asciidoc index 22afa88c919e4b..866935d1fa5801 100644 --- a/docs/ingest_manager/index.asciidoc +++ b/docs/ingest_manager/index.asciidoc @@ -199,3 +199,10 @@ The new ingest pipeline is expected to still work with the data coming from olde In case of a breaking change in the data structure, the new ingest pipeline is also expected to deal with this change. In case there are breaking changes which cannot be dealt with in an ingest pipeline, a new package has to be created. Each package lists its minimal required agent version. In case there are agents enrolled with an older version, the user is notified to upgrade these agents as otherwise the new configs cannot be rolled out. + +=== Generated assets + +When a package is installed or upgraded, certain Kibana and Elasticsearch assets are generated from . These follow the naming conventions explained above (see "indexing strategy") and contain configuration for the elastic stack that makes ingesting and displaying data work with as little user interaction as possible. + +* link:index-templates.asciidoc[Elasticsearch Index Templates] +* Kibana Index Patterns diff --git a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/__snapshots__/template.test.ts.snap b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/__snapshots__/template.test.ts.snap index 0e239c24dd9cf8..166983fbccc35a 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/__snapshots__/template.test.ts.snap +++ b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/__snapshots__/template.test.ts.snap @@ -47,12 +47,12 @@ exports[`tests loading base.yml: base.yml 1`] = ` "user": { "properties": { "auid": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "euid": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" } } }, @@ -73,12 +73,12 @@ exports[`tests loading base.yml: base.yml 1`] = ` "nested": { "properties": { "bar": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "baz": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" } } }, @@ -142,8 +142,8 @@ exports[`tests loading coredns.logs.yml: coredns.logs.yml 1`] = ` "coredns": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "query": { "properties": { @@ -151,28 +151,28 @@ exports[`tests loading coredns.logs.yml: coredns.logs.yml 1`] = ` "type": "long" }, "class": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "name": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "type": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" } } }, "response": { "properties": { "code": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "flags": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "size": { "type": "long" @@ -509,12 +509,12 @@ exports[`tests loading system.yml: system.yml 1`] = ` "diskio": { "properties": { "name": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "serial_number": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "read": { "properties": { @@ -643,16 +643,16 @@ exports[`tests loading system.yml: system.yml 1`] = ` "type": "long" }, "device_name": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "type": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "mount_point": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "files": { "type": "long" @@ -867,8 +867,8 @@ exports[`tests loading system.yml: system.yml 1`] = ` "network": { "properties": { "name": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "out": { "properties": { @@ -946,12 +946,12 @@ exports[`tests loading system.yml: system.yml 1`] = ` "process": { "properties": { "state": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "cmdline": { - "type": "keyword", - "ignore_above": 2048 + "ignore_above": 2048, + "type": "keyword" }, "env": { "type": "object" @@ -1040,22 +1040,22 @@ exports[`tests loading system.yml: system.yml 1`] = ` "cgroup": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "path": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "cpu": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "path": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "cfs": { "properties": { @@ -1118,12 +1118,12 @@ exports[`tests loading system.yml: system.yml 1`] = ` "cpuacct": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "path": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "total": { "properties": { @@ -1158,12 +1158,12 @@ exports[`tests loading system.yml: system.yml 1`] = ` "memory": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "path": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "mem": { "properties": { @@ -1382,12 +1382,12 @@ exports[`tests loading system.yml: system.yml 1`] = ` "blkio": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "path": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "total": { "properties": { @@ -1436,20 +1436,20 @@ exports[`tests loading system.yml: system.yml 1`] = ` "raid": { "properties": { "name": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "status": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "level": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "sync_action": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "disks": { "properties": { @@ -1507,24 +1507,24 @@ exports[`tests loading system.yml: system.yml 1`] = ` "type": "long" }, "host": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "etld_plus_one": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "host_error": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" } } }, "process": { "properties": { "cmdline": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" } } }, @@ -1622,42 +1622,42 @@ exports[`tests loading system.yml: system.yml 1`] = ` "users": { "properties": { "id": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "seat": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "path": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "type": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "service": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "remote": { "type": "boolean" }, "state": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "scope": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" }, "leader": { "type": "long" }, "remote_host": { - "type": "keyword", - "ignore_above": 1024 + "ignore_above": 1024, + "type": "keyword" } } } diff --git a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts index f4e13748641ed6..cde2e5b420f3bf 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts @@ -63,3 +63,101 @@ test('tests loading system.yml', () => { expect(template).toMatchSnapshot(path.basename(ymlPath)); }); + +test('tests processing text field with multi fields', () => { + const textWithMultiFieldsLiteralYml = ` +- name: textWithMultiFields + type: text + multi_fields: + - name: raw + type: keyword + - name: indexed + type: text +`; + const textWithMultiFieldsMapping = { + properties: { + textWithMultiFields: { + type: 'text', + fields: { + raw: { + ignore_above: 1024, + type: 'keyword', + }, + indexed: { + type: 'text', + }, + }, + }, + }, + }; + const fields: Field[] = safeLoad(textWithMultiFieldsLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(textWithMultiFieldsMapping)); +}); + +test('tests processing keyword field with multi fields', () => { + const keywordWithMultiFieldsLiteralYml = ` +- name: keywordWithMultiFields + type: keyword + multi_fields: + - name: raw + type: keyword + - name: indexed + type: text +`; + + const keywordWithMultiFieldsMapping = { + properties: { + keywordWithMultiFields: { + ignore_above: 1024, + type: 'keyword', + fields: { + raw: { + ignore_above: 1024, + type: 'keyword', + }, + indexed: { + type: 'text', + }, + }, + }, + }, + }; + const fields: Field[] = safeLoad(keywordWithMultiFieldsLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(keywordWithMultiFieldsMapping)); +}); + +test('tests processing keyword field with multi fields with analyzed text field', () => { + const keywordWithAnalyzedMultiFieldsLiteralYml = ` + - name: keywordWithAnalyzedMultiField + type: keyword + multi_fields: + - name: analyzed + type: text + analyzer: autocomplete + search_analyzer: standard + `; + + const keywordWithAnalyzedMultiFieldsMapping = { + properties: { + keywordWithAnalyzedMultiField: { + ignore_above: 1024, + type: 'keyword', + fields: { + analyzed: { + analyzer: 'autocomplete', + search_analyzer: 'standard', + type: 'text', + }, + }, + }, + }, + }; + const fields: Field[] = safeLoad(keywordWithAnalyzedMultiFieldsLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(keywordWithAnalyzedMultiFieldsMapping)); +}); diff --git a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts index 832e4772beb0da..e876c8a2efb4f9 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Field } from '../../fields/field'; +import { Field, Fields } from '../../fields/field'; import { Dataset, IndexTemplate } from '../../../../types'; import { getDatasetAssetBaseName } from '../index'; @@ -15,6 +15,14 @@ interface Mappings { properties: any; } +interface Mapping { + [key: string]: any; +} + +interface MultiFields { + [key: string]: object; +} + const DEFAULT_SCALING_FACTOR = 1000; const DEFAULT_IGNORE_ABOVE = 1024; @@ -67,23 +75,19 @@ export function generateMappings(fields: Field[]): Mappings { fieldProps.scaling_factor = field.scaling_factor || DEFAULT_SCALING_FACTOR; break; case 'text': - fieldProps.type = 'text'; - if (field.analyzer) { - fieldProps.analyzer = field.analyzer; - } - if (field.search_analyzer) { - fieldProps.search_analyzer = field.search_analyzer; + const textMapping = generateTextMapping(field); + fieldProps = { ...fieldProps, ...textMapping, type: 'text' }; + if (field.multi_fields) { + fieldProps.fields = generateMultiFields(field.multi_fields); } break; case 'keyword': - fieldProps.type = 'keyword'; - if (field.ignore_above) { - fieldProps.ignore_above = field.ignore_above; - } else { - fieldProps.ignore_above = DEFAULT_IGNORE_ABOVE; + const keywordMapping = generateKeywordMapping(field); + fieldProps = { ...fieldProps, ...keywordMapping, type: 'keyword' }; + if (field.multi_fields) { + fieldProps.fields = generateMultiFields(field.multi_fields); } break; - // TODO move handling of multi_fields here? case 'object': // TODO improve fieldProps.type = 'object'; @@ -113,6 +117,45 @@ export function generateMappings(fields: Field[]): Mappings { return { properties: props }; } +function generateMultiFields(fields: Fields): MultiFields { + const multiFields: MultiFields = {}; + if (fields) { + fields.forEach((f: Field) => { + const type = f.type; + switch (type) { + case 'text': + multiFields[f.name] = { ...generateTextMapping(f), type: f.type }; + break; + case 'keyword': + multiFields[f.name] = { ...generateKeywordMapping(f), type: f.type }; + break; + } + }); + } + return multiFields; +} + +function generateKeywordMapping(field: Field): Mapping { + const mapping: Mapping = { + ignore_above: DEFAULT_IGNORE_ABOVE, + }; + if (field.ignore_above) { + mapping.ignore_above = field.ignore_above; + } + return mapping; +} + +function generateTextMapping(field: Field): Mapping { + const mapping: Mapping = {}; + if (field.analyzer) { + mapping.analyzer = field.analyzer; + } + if (field.search_analyzer) { + mapping.search_analyzer = field.search_analyzer; + } + return mapping; +} + function getDefaultProperties(field: Field): Properties { const properties: Properties = {}; From 1385cce3b7e4b06da95ede4ae454fb0b08ca60e4 Mon Sep 17 00:00:00 2001 From: Sonja Krause-Harder Date: Fri, 17 Apr 2020 15:16:20 +0200 Subject: [PATCH 19/59] [EPM] Improve object handling in index template mappings (#63688) * Unit-test current mapping for object types * Handle 'enabled' attribute for object fields * Handle 'dynamic' attribute for object fields Co-authored-by: Elastic Machine --- .../elasticsearch/template/template.test.ts | 98 +++++++++++++++++++ .../epm/elasticsearch/template/template.ts | 7 +- .../server/services/epm/fields/field.ts | 1 + 3 files changed, 105 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts index cde2e5b420f3bf..1a73c9581a2de7 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.test.ts @@ -161,3 +161,101 @@ test('tests processing keyword field with multi fields with analyzed text field' const mappings = generateMappings(processedFields); expect(JSON.stringify(mappings)).toEqual(JSON.stringify(keywordWithAnalyzedMultiFieldsMapping)); }); + +test('tests processing object field with no other attributes', () => { + const objectFieldLiteralYml = ` +- name: objectField + type: object +`; + const objectFieldMapping = { + properties: { + objectField: { + type: 'object', + }, + }, + }; + const fields: Field[] = safeLoad(objectFieldLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(objectFieldMapping)); +}); + +test('tests processing object field with enabled set to false', () => { + const objectFieldEnabledFalseLiteralYml = ` +- name: objectField + type: object + enabled: false +`; + const objectFieldEnabledFalseMapping = { + properties: { + objectField: { + type: 'object', + enabled: false, + }, + }, + }; + const fields: Field[] = safeLoad(objectFieldEnabledFalseLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(objectFieldEnabledFalseMapping)); +}); + +test('tests processing object field with dynamic set to false', () => { + const objectFieldDynamicFalseLiteralYml = ` +- name: objectField + type: object + dynamic: false +`; + const objectFieldDynamicFalseMapping = { + properties: { + objectField: { + type: 'object', + dynamic: false, + }, + }, + }; + const fields: Field[] = safeLoad(objectFieldDynamicFalseLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(objectFieldDynamicFalseMapping)); +}); + +test('tests processing object field with dynamic set to true', () => { + const objectFieldDynamicTrueLiteralYml = ` +- name: objectField + type: object + dynamic: true +`; + const objectFieldDynamicTrueMapping = { + properties: { + objectField: { + type: 'object', + dynamic: true, + }, + }, + }; + const fields: Field[] = safeLoad(objectFieldDynamicTrueLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(objectFieldDynamicTrueMapping)); +}); + +test('tests processing object field with dynamic set to strict', () => { + const objectFieldDynamicStrictLiteralYml = ` +- name: objectField + type: object + dynamic: strict +`; + const objectFieldDynamicStrictMapping = { + properties: { + objectField: { + type: 'object', + dynamic: 'strict', + }, + }, + }; + const fields: Field[] = safeLoad(objectFieldDynamicStrictLiteralYml); + const processedFields = processFields(fields); + const mappings = generateMappings(processedFields); + expect(JSON.stringify(mappings)).toEqual(JSON.stringify(objectFieldDynamicStrictMapping)); +}); diff --git a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts index e876c8a2efb4f9..22a61d2bdfb7c3 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/elasticsearch/template/template.ts @@ -89,8 +89,13 @@ export function generateMappings(fields: Field[]): Mappings { } break; case 'object': - // TODO improve fieldProps.type = 'object'; + if (field.hasOwnProperty('enabled')) { + fieldProps.enabled = field.enabled; + } + if (field.hasOwnProperty('dynamic')) { + fieldProps.dynamic = field.dynamic; + } break; case 'array': // this assumes array fields were validated in an earlier step diff --git a/x-pack/plugins/ingest_manager/server/services/epm/fields/field.ts b/x-pack/plugins/ingest_manager/server/services/epm/fields/field.ts index 810896bb50389f..9c9843e0454ab5 100644 --- a/x-pack/plugins/ingest_manager/server/services/epm/fields/field.ts +++ b/x-pack/plugins/ingest_manager/server/services/epm/fields/field.ts @@ -27,6 +27,7 @@ export interface Field { ignore_above?: number; object_type?: string; scaling_factor?: number; + dynamic?: 'strict' | boolean; // Kibana specific analyzed?: boolean; From 954dda1662de39e678213d288e7110536d1d4f06 Mon Sep 17 00:00:00 2001 From: Yara Tercero Date: Fri, 17 Apr 2020 10:04:48 -0400 Subject: [PATCH 20/59] [SIEM][Detections] - Update KQL/Lucene search to include lists exceptions (#63264) [SIEM][Detections] - Update KQL/Lucene search to include lists exceptions (#63264) ### Summary This PR adds logic to include the lists values in search so we can now filter off of lists. - does work with KQL search - does work with Lucene search - does NOT yet filter off of large lists (will be separate PR) - does NOT yet work on ML search (will be separate PR) --- .../schemas/create_rules_schema.test.ts | 4 +- .../routes/schemas/patch_rules_schema.test.ts | 4 +- .../schemas/types/lists_default_array.ts | 10 +- .../schemas/update_rules_schema.test.ts | 4 +- .../rules/queries/lists/query_with_and.json | 35 + .../queries/lists/query_with_excluded.json | 23 + .../queries/lists/query_with_exists.json | 18 + .../rules/queries/lists/query_with_list.json | 54 + .../rules/queries/lists/query_with_match.json | 23 + .../queries/lists/query_with_match_all.json | 26 + .../rules/queries/lists/query_with_or.json | 32 + .../rules/queries/query_with_list.json | 41 - .../signals/build_exceptions_query.test.ts | 1318 +++++++++++++++++ .../signals/build_exceptions_query.ts | 203 +++ .../signals/get_filter.test.ts | 198 ++- .../detection_engine/signals/get_filter.ts | 24 +- .../signals/signal_rule_alert_type.ts | 2 + .../siem/server/lib/detection_engine/types.ts | 6 +- 18 files changed, 1959 insertions(+), 66 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_and.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_excluded.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_exists.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_list.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match_all.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_or.json delete mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.test.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.ts diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts index e56e8e5fe34d31..82d355d37e7bb5 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts @@ -556,7 +556,9 @@ describe('create rules schema', () => { test('language does not validate with something made up', () => { expect( - createRulesSchema.validate>({ + createRulesSchema.validate< + Partial & { language: string }> + >({ rule_id: 'rule-1', output_index: '.siem-signals', risk_score: 50, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts index e01a8f40fcea4a..9e23e4e3bad55f 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts @@ -572,7 +572,9 @@ describe('patch rules schema', () => { test('language does not validate with something made up', () => { expect( - patchRulesSchema.validate>({ + patchRulesSchema.validate< + Partial & { language: string }> + >({ id: 'rule-1', description: 'some description', from: 'now-5m', diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts index 85a38e296494a1..743914ad070a2e 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts @@ -7,10 +7,16 @@ import * as t from 'io-ts'; import { Either } from 'fp-ts/lib/Either'; -import { list_and as listAnd } from '../response/schemas'; +import { + list_and as listAnd, + list_values as listValues, + list_values_operator as listOperator, +} from '../response/schemas'; export type ListsDefaultArrayC = t.Type; -type List = t.TypeOf; +export type List = t.TypeOf; +export type ListValues = t.TypeOf; +export type ListOperator = t.TypeOf; /** * Types the ListsDefaultArray as: diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts index e8f9aad620ca01..be2f06590e81d0 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts @@ -575,7 +575,9 @@ describe('create rules schema', () => { test('language does not validate with something made up', () => { expect( - updateRulesSchema.validate>({ + updateRulesSchema.validate< + Partial & { language: string }> + >({ rule_id: 'rule-1', output_index: '.siem-signals', risk_score: 50, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_and.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_and.json new file mode 100644 index 00000000000000..33ae8df87e3c82 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_and.json @@ -0,0 +1,35 @@ +{ + "name": "List - and", + "description": "Query with a list that includes and. This rule should only produce signals when host.name exists and when both event.module is endgame and event.category is anything other than file", + "rule_id": "query-with-list-and", + "risk_score": 1, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "language": "kuery", + "lists": [ + { + "field": "event.module", + "values_operator": "excluded", + "values_type": "match", + "values": [ + { + "name": "endgame" + } + ], + "and": [ + { + "field": "event.category", + "values_operator": "included", + "values_type": "match", + "values": [ + { + "name": "file" + } + ] + } + ] + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_excluded.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_excluded.json new file mode 100644 index 00000000000000..8ce9440fce2193 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_excluded.json @@ -0,0 +1,23 @@ +{ + "name": "List - excluded", + "description": "Query with a list of values_operator excluded. This rule should only produce signals when host.name exists and event.module is suricata", + "rule_id": "query-with-list-excluded", + "risk_score": 1, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "language": "kuery", + "lists": [ + { + "field": "event.module", + "values_operator": "excluded", + "values_type": "match", + "values": [ + { + "name": "suricata" + } + ] + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_exists.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_exists.json new file mode 100644 index 00000000000000..4ec014422a61b2 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_exists.json @@ -0,0 +1,18 @@ +{ + "name": "List - exists", + "description": "Query with a list that includes exists. This rule should only produce signals when host.name exists and event.action does not exist", + "rule_id": "query-with-list-exists", + "risk_score": 1, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "language": "kuery", + "lists": [ + { + "field": "event.action", + "values_operator": "included", + "values_type": "exists" + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_list.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_list.json new file mode 100644 index 00000000000000..ce4bf80b0a7222 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_list.json @@ -0,0 +1,54 @@ +{ + "name": "Query with a list", + "description": "Query with a list. This rule should only produce signals when either host.name exists and event.module is system and user.name is zeek or gdm OR when host.name exists and event.module is not endgame or zeek or system.", + "rule_id": "query-with-list", + "risk_score": 2, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "language": "kuery", + "lists": [ + { + "field": "event.module", + "values_operator": "excluded", + "values_type": "match", + "values": [ + { + "name": "system" + } + ], + "and": [ + { + "field": "user.name", + "values_operator": "excluded", + "values_type": "match_all", + "values": [ + { + "name": "zeek" + }, + { + "name": "gdm" + } + ] + } + ] + }, + { + "field": "event.module", + "values_operator": "included", + "values_type": "match_all", + "values": [ + { + "name": "endgame" + }, + { + "name": "zeek" + }, + { + "name": "system" + } + ] + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match.json new file mode 100644 index 00000000000000..e1abac19b51e5a --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match.json @@ -0,0 +1,23 @@ +{ + "name": "List - match", + "description": "Query with a list that includes match. This rule should only produce signals when host.name exists and event.module is not suricata", + "rule_id": "query-with-list-match", + "risk_score": 1, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "language": "kuery", + "lists": [ + { + "field": "event.module", + "values_operator": "included", + "values_type": "match", + "values": [ + { + "name": "suricata" + } + ] + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match_all.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match_all.json new file mode 100644 index 00000000000000..1afbb1fee4785d --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_match_all.json @@ -0,0 +1,26 @@ +{ + "name": "List - match_all", + "description": "Query with a list that includes match_all. This rule should only produce signals when host.name exists and event.module is not suricata or auditd", + "rule_id": "query-with-list-match-all", + "risk_score": 1, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "language": "kuery", + "lists": [ + { + "field": "event.module", + "values_operator": "included", + "values_type": "match_all", + "values": [ + { + "name": "suricata" + }, + { + "name": "auditd" + } + ] + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_or.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_or.json new file mode 100644 index 00000000000000..08e38e9ffa53d3 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/lists/query_with_or.json @@ -0,0 +1,32 @@ +{ + "name": "List - or", + "description": "Query with a list that includes or. This rule should only produce signals when host.name exists and event.module is suricata OR when host.name exists and event.category is file", + "rule_id": "query-with-list-or", + "risk_score": 1, + "severity": "high", + "type": "query", + "query": "host.name: *", + "interval": "30s", + "lists": [ + { + "field": "event.module", + "values_operator": "excluded", + "values_type": "match", + "values": [ + { + "name": "suricata" + } + ] + }, + { + "field": "event.category", + "values_operator": "excluded", + "values_type": "match", + "values": [ + { + "name": "file" + } + ] + } + ] +} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json deleted file mode 100644 index 997d03369a699a..00000000000000 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "Query with a list", - "description": "Query with a list", - "rule_id": "query-with-list", - "risk_score": 1, - "severity": "high", - "type": "query", - "query": "user.name: root or user.name: admin", - "lists": [ - { - "field": "source.ip", - "values_operator": "included", - "values_type": "exists" - }, - { - "field": "host.name", - "values_operator": "excluded", - "values_type": "match", - "values": [ - { - "name": "rock01" - } - ], - "and": [ - { - "field": "host.id", - "values_operator": "included", - "values_type": "match_all", - "values": [ - { - "name": "123" - }, - { - "name": "678" - } - ] - } - ] - } - ] -} diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.test.ts new file mode 100644 index 00000000000000..ec8db77dac725d --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.test.ts @@ -0,0 +1,1318 @@ +/* + * 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 { + buildQueryExceptions, + buildExceptions, + operatorBuilder, + buildExists, + buildMatch, + buildMatchAll, + evaluateValues, + formatQuery, + getLanguageBooleanOperator, +} from './build_exceptions_query'; +import { List } from '../routes/schemas/types/lists_default_array'; + +describe('build_exceptions_query', () => { + describe('getLanguageBooleanOperator', () => { + test('it returns value as uppercase if language is "lucene"', () => { + const result = getLanguageBooleanOperator({ language: 'lucene', value: 'not' }); + + expect(result).toEqual('NOT'); + }); + + test('it returns value as is if language is "kuery"', () => { + const result = getLanguageBooleanOperator({ language: 'kuery', value: 'not' }); + + expect(result).toEqual('not'); + }); + }); + + describe('operatorBuilder', () => { + describe('kuery', () => { + test('it returns "not " when operator is "excluded"', () => { + const operator = operatorBuilder({ operator: 'excluded', language: 'kuery' }); + + expect(operator).toEqual(' and '); + }); + + test('it returns empty string when operator is "included"', () => { + const operator = operatorBuilder({ operator: 'included', language: 'kuery' }); + + expect(operator).toEqual(' and not '); + }); + }); + + describe('lucene', () => { + test('it returns "NOT " when operator is "excluded"', () => { + const operator = operatorBuilder({ operator: 'excluded', language: 'lucene' }); + + expect(operator).toEqual(' AND '); + }); + + test('it returns empty string when operator is "included"', () => { + const operator = operatorBuilder({ operator: 'included', language: 'lucene' }); + + expect(operator).toEqual(' AND NOT '); + }); + }); + }); + + describe('buildExists', () => { + describe('kuery', () => { + test('it returns formatted wildcard string when operator is "excluded"', () => { + const query = buildExists({ operator: 'excluded', field: 'host.name', language: 'kuery' }); + + expect(query).toEqual(' and host.name:*'); + }); + + test('it returns formatted wildcard string when operator is "included"', () => { + const query = buildExists({ operator: 'included', field: 'host.name', language: 'kuery' }); + + expect(query).toEqual(' and not host.name:*'); + }); + }); + + describe('lucene', () => { + test('it returns formatted wildcard string when operator is "excluded"', () => { + const query = buildExists({ operator: 'excluded', field: 'host.name', language: 'lucene' }); + + expect(query).toEqual(' AND _exists_host.name'); + }); + + test('it returns formatted wildcard string when operator is "included"', () => { + const query = buildExists({ operator: 'included', field: 'host.name', language: 'lucene' }); + + expect(query).toEqual(' AND NOT _exists_host.name'); + }); + }); + }); + + describe('buildMatch', () => { + describe('kuery', () => { + test('it returns empty string if no items in "values"', () => { + const query = buildMatch({ + operator: 'included', + field: 'host.name', + values: [], + language: 'kuery', + }); + + expect(query).toEqual(''); + }); + + test('it returns formatted string when operator is "included"', () => { + const values = [ + { + name: 'suricata', + }, + ]; + const query = buildMatch({ + operator: 'included', + field: 'host.name', + values, + language: 'kuery', + }); + + expect(query).toEqual(' and not host.name:suricata'); + }); + + test('it returns formatted string when operator is "excluded"', () => { + const values = [ + { + name: 'suricata', + }, + ]; + const query = buildMatch({ + operator: 'excluded', + field: 'host.name', + values, + language: 'kuery', + }); + + expect(query).toEqual(' and host.name:suricata'); + }); + + // TODO: need to clean up types and maybe restrict values to one if type is 'match' + test('it returns formatted string when "values" includes more than one item', () => { + const values = [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ]; + const query = buildMatch({ + operator: 'included', + field: 'host.name', + values, + language: 'kuery', + }); + + expect(query).toEqual(' and not host.name:suricata'); + }); + }); + + describe('lucene', () => { + test('it returns formatted string when operator is "included"', () => { + const values = [ + { + name: 'suricata', + }, + ]; + const query = buildMatch({ + operator: 'included', + field: 'host.name', + values, + language: 'lucene', + }); + + expect(query).toEqual(' AND NOT host.name:suricata'); + }); + + test('it returns formatted string when operator is "excluded"', () => { + const values = [ + { + name: 'suricata', + }, + ]; + const query = buildMatch({ + operator: 'excluded', + field: 'host.name', + values, + language: 'lucene', + }); + + expect(query).toEqual(' AND host.name:suricata'); + }); + + // TODO: need to clean up types and maybe restrict values to one if type is 'match' + test('it returns formatted string when "values" includes more than one item', () => { + const values = [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ]; + const query = buildMatch({ + operator: 'included', + field: 'host.name', + values, + language: 'lucene', + }); + + expect(query).toEqual(' AND NOT host.name:suricata'); + }); + }); + }); + + describe('buildMatchAll', () => { + describe('kuery', () => { + test('it returns empty string if given an empty array for "values"', () => { + const exceptionSegment = buildMatchAll({ + operator: 'included', + field: 'host.name', + values: [], + language: 'kuery', + }); + + expect(exceptionSegment).toEqual(''); + }); + + test('it returns formatted string when "values" includes only one item', () => { + const values = [ + { + name: 'suricata', + }, + ]; + const exceptionSegment = buildMatchAll({ + operator: 'included', + field: 'host.name', + values, + language: 'kuery', + }); + + expect(exceptionSegment).toEqual(' and not host.name:suricata'); + }); + + test('it returns formatted string when operator is "included"', () => { + const values = [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ]; + const exceptionSegment = buildMatchAll({ + operator: 'included', + field: 'host.name', + values, + language: 'kuery', + }); + + expect(exceptionSegment).toEqual(' and not host.name:(suricata or auditd)'); + }); + + test('it returns formatted string when operator is "excluded"', () => { + const values = [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ]; + const exceptionSegment = buildMatchAll({ + operator: 'excluded', + field: 'host.name', + values, + language: 'kuery', + }); + + expect(exceptionSegment).toEqual(' and host.name:(suricata or auditd)'); + }); + }); + + describe('lucene', () => { + test('it returns formatted string when operator is "included"', () => { + const values = [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ]; + const exceptionSegment = buildMatchAll({ + operator: 'included', + field: 'host.name', + values, + language: 'lucene', + }); + + expect(exceptionSegment).toEqual(' AND NOT host.name:(suricata OR auditd)'); + }); + + test('it returns formatted string when operator is "excluded"', () => { + const values = [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ]; + const exceptionSegment = buildMatchAll({ + operator: 'excluded', + field: 'host.name', + values, + language: 'lucene', + }); + + expect(exceptionSegment).toEqual(' AND host.name:(suricata OR auditd)'); + }); + + test('it returns formatted string when "values" includes only one item', () => { + const values = [ + { + name: 'suricata', + }, + ]; + const exceptionSegment = buildMatchAll({ + operator: 'included', + field: 'host.name', + values, + language: 'lucene', + }); + + expect(exceptionSegment).toEqual(' AND NOT host.name:suricata'); + }); + }); + }); + + describe('evaluateValues', () => { + describe('kuery', () => { + test('it returns formatted wildcard string when "type" is "exists"', () => { + const list: List = { + values_operator: 'included', + values_type: 'exists', + field: 'host.name', + }; + const result = evaluateValues({ + list, + language: 'kuery', + }); + + expect(result).toEqual(' and not host.name:*'); + }); + + test('it returns formatted string when "type" is "match"', () => { + const list: List = { + values_operator: 'included', + values_type: 'match', + field: 'host.name', + values: [{ name: 'suricata' }], + }; + const result = evaluateValues({ + list, + language: 'kuery', + }); + + expect(result).toEqual(' and not host.name:suricata'); + }); + + test('it returns formatted string when "type" is "match_all"', () => { + const list: List = { + values_operator: 'included', + values_type: 'match_all', + field: 'host.name', + values: [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ], + }; + + const result = evaluateValues({ + list, + language: 'kuery', + }); + + expect(result).toEqual(' and not host.name:(suricata or auditd)'); + }); + }); + + describe('lucene', () => { + describe('kuery', () => { + test('it returns formatted wildcard string when "type" is "exists"', () => { + const list: List = { + values_operator: 'included', + values_type: 'exists', + field: 'host.name', + }; + const result = evaluateValues({ + list, + language: 'lucene', + }); + + expect(result).toEqual(' AND NOT _exists_host.name'); + }); + + test('it returns formatted string when "type" is "match"', () => { + const list: List = { + values_operator: 'included', + values_type: 'match', + field: 'host.name', + values: [{ name: 'suricata' }], + }; + const result = evaluateValues({ + list, + language: 'lucene', + }); + + expect(result).toEqual(' AND NOT host.name:suricata'); + }); + + test('it returns formatted string when "type" is "match_all"', () => { + const list: List = { + values_operator: 'included', + values_type: 'match_all', + field: 'host.name', + values: [ + { + name: 'suricata', + }, + { + name: 'auditd', + }, + ], + }; + + const result = evaluateValues({ + list, + language: 'lucene', + }); + + expect(result).toEqual(' AND NOT host.name:(suricata OR auditd)'); + }); + }); + }); + }); + + describe('formatQuery', () => { + test('it returns query if "exceptions" is empty array', () => { + const formattedQuery = formatQuery({ exceptions: [], query: 'a:*', language: 'kuery' }); + + expect(formattedQuery).toEqual('a:*'); + }); + + test('it returns expected query string when single exception in array', () => { + const formattedQuery = formatQuery({ + exceptions: [' and b:(value-1 or value-2) and not c:*'], + query: 'a:*', + language: 'kuery', + }); + + expect(formattedQuery).toEqual('(a:* and b:(value-1 or value-2) and not c:*)'); + }); + + test('it returns expected query string when multiple exceptions in array', () => { + const formattedQuery = formatQuery({ + exceptions: [' and b:(value-1 or value-2) and not c:*', ' and not d:*'], + query: 'a:*', + language: 'kuery', + }); + + expect(formattedQuery).toEqual( + '(a:* and b:(value-1 or value-2) and not c:*) or (a:* and not d:*)' + ); + }); + }); + + describe('buildExceptions', () => { + test('it returns empty array if empty lists array passed in', () => { + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists: [], + }); + + expect(query).toEqual([]); + }); + + test('it returns expected query when more than one item in list', () => { + // Equal to query && !(b && !c) -> (query AND NOT b) OR (query AND c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value-1', + }, + { + name: 'value-2', + }, + ], + }, + { + field: 'c', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'value-3', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:(value-1 or value-2)', ' and c:value-3']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list item includes nested "and" value', () => { + // Equal to query && !(b || !c) -> (query AND NOT b AND c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value-1', + }, + { + name: 'value-2', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'value-3', + }, + ], + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:(value-1 or value-2) and c:value-3']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list item includes nested "and" value of empty array', () => { + // Equal to query && !(b || !c) -> (query AND NOT b AND c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value-1', + }, + { + name: 'value-2', + }, + ], + and: [], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:(value-1 or value-2)']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list item includes nested "and" value of null', () => { + // Equal to query && !(b || !c) -> (query AND NOT b AND c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value-1', + }, + { + name: 'value-2', + }, + ], + and: undefined, + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:(value-1 or value-2)']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes multiple items and nested "and" values', () => { + // Equal to query && !((b || !c) && d) -> (query AND NOT b AND c) OR (query AND NOT d) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value-1', + }, + { + name: 'value-2', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'value-3', + }, + ], + }, + ], + }, + { + field: 'd', + values_operator: 'included', + values_type: 'exists', + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:(value-1 or value-2) and c:value-3', ' and not d:*']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when language is "lucene"', () => { + // Equal to query && !((b || !c) && !d) -> (query AND NOT b AND c) OR (query AND d) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value-1', + }, + { + name: 'value-2', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'value-3', + }, + ], + }, + ], + }, + { + field: 'e', + values_operator: 'excluded', + values_type: 'exists', + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'lucene', + lists, + }); + const expectedQuery = [' AND NOT b:(value-1 OR value-2) AND c:value-3', ' AND _exists_e']; + + expect(query).toEqual(expectedQuery); + }); + + describe('exists', () => { + test('it returns expected query when list includes single list item with values_operator of "included"', () => { + // Equal to query && !(b) -> (query AND NOT b) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'exists', + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:*']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes single list item with values_operator of "excluded"', () => { + // Equal to query && !(!b) -> (query AND b) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'excluded', + values_type: 'exists', + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and b:*']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes list item with "and" values', () => { + // Equal to query && !(!b || !c) -> (query AND b AND c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'excluded', + values_type: 'exists', + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'exists', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and b:* and c:*']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes multiple items', () => { + // Equal to query && !((b || !c || d) && e) -> (query AND NOT b AND c AND NOT d) OR (query AND NOT e) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'exists', + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'exists', + }, + { + field: 'd', + values_operator: 'included', + values_type: 'exists', + }, + ], + }, + { + field: 'e', + values_operator: 'included', + values_type: 'exists', + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:* and c:* and not d:*', ' and not e:*']; + + expect(query).toEqual(expectedQuery); + }); + }); + + describe('match', () => { + test('it returns expected query when list includes single list item with values_operator of "included"', () => { + // Equal to query && !(b) -> (query AND NOT b) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match', + values: [ + { + name: 'value', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:value']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes single list item with values_operator of "excluded"', () => { + // Equal to query && !(!b) -> (query AND b) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'value', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and b:value']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes list item with "and" values', () => { + // Equal to query && !(!b || !c) -> (query AND b AND c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'value', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'valueC', + }, + ], + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and b:value and c:valueC']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes multiple items', () => { + // Equal to query && !((b || !c || d) && e) -> (query AND NOT b AND c AND NOT d) OR (query AND NOT e) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match', + values: [ + { + name: 'value', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'valueC', + }, + ], + }, + { + field: 'd', + values_operator: 'included', + values_type: 'match', + values: [ + { + name: 'valueC', + }, + ], + }, + ], + }, + { + field: 'e', + values_operator: 'included', + values_type: 'match', + values: [ + { + name: 'valueC', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [ + ' and not b:value and c:valueC and not d:valueC', + ' and not e:valueC', + ]; + + expect(query).toEqual(expectedQuery); + }); + }); + + describe('match_all', () => { + test('it returns expected query when list includes single list item with values_operator of "included"', () => { + // Equal to query && !(b) -> (query AND NOT b) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value', + }, + { + name: 'value-1', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and not b:(value or value-1)']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes single list item with values_operator of "excluded"', () => { + // Equal to query && !(!b) -> (query AND b) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'excluded', + values_type: 'match_all', + values: [ + { + name: 'value', + }, + { + name: 'value-1', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and b:(value or value-1)']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes list item with "and" values', () => { + // Equal to query && !(!b || c) -> (query AND b AND NOT c) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'excluded', + values_type: 'match_all', + values: [ + { + name: 'value', + }, + { + name: 'value-1', + }, + ], + and: [ + { + field: 'c', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueC', + }, + { + name: 'value-2', + }, + ], + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [' and b:(value or value-1) and not c:(valueC or value-2)']; + + expect(query).toEqual(expectedQuery); + }); + + test('it returns expected query when list includes multiple items', () => { + // Equal to query && !((b || !c || d) && e) -> ((query AND NOT b AND c AND NOT d) OR (query AND NOT e) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value', + }, + { + name: 'value-1', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match_all', + values: [ + { + name: 'valueC', + }, + { + name: 'value-2', + }, + ], + }, + { + field: 'd', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueD', + }, + { + name: 'value-3', + }, + ], + }, + ], + }, + { + field: 'e', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueE', + }, + { + name: 'value-4', + }, + ], + }, + ]; + const query = buildExceptions({ + query: 'a:*', + language: 'kuery', + lists, + }); + const expectedQuery = [ + ' and not b:(value or value-1) and c:(valueC or value-2) and not d:(valueD or value-3)', + ' and not e:(valueE or value-4)', + ]; + + expect(query).toEqual(expectedQuery); + }); + }); + }); + + describe('buildQueryExceptions', () => { + test('it returns original query if no lists exist', () => { + const query = buildQueryExceptions({ + query: 'host.name: *', + language: 'kuery', + lists: undefined, + }); + const expectedQuery = 'host.name: *'; + + expect(query).toEqual([{ query: expectedQuery, language: 'kuery' }]); + }); + + test('it returns original query if lists is empty array', () => { + const query = buildQueryExceptions({ query: 'host.name: *', language: 'kuery', lists: [] }); + const expectedQuery = 'host.name: *'; + + expect(query).toEqual([{ query: expectedQuery, language: 'kuery' }]); + }); + + test('it returns original query if lists is null', () => { + const query = buildQueryExceptions({ query: 'host.name: *', language: 'kuery', lists: null }); + const expectedQuery = 'host.name: *'; + + expect(query).toEqual([{ query: expectedQuery, language: 'kuery' }]); + }); + + test('it returns original query if lists is undefined', () => { + const query = buildQueryExceptions({ + query: 'host.name: *', + language: 'kuery', + lists: undefined, + }); + const expectedQuery = 'host.name: *'; + + expect(query).toEqual([{ query: expectedQuery, language: 'kuery' }]); + }); + + test('it returns expected query when lists exist and language is "kuery"', () => { + // Equal to query && !((b || !c || d) && e) -> ((query AND NOT b AND c AND NOT d) OR (query AND NOT e) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value', + }, + { + name: 'value-1', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match_all', + values: [ + { + name: 'valueC', + }, + { + name: 'value-2', + }, + ], + }, + { + field: 'd', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueD', + }, + { + name: 'value-3', + }, + ], + }, + ], + }, + { + field: 'e', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueE', + }, + { + name: 'value-4', + }, + ], + }, + ]; + const query = buildQueryExceptions({ query: 'a:*', language: 'kuery', lists }); + const expectedQuery = + '(a:* and not b:(value or value-1) and c:(valueC or value-2) and not d:(valueD or value-3)) or (a:* and not e:(valueE or value-4))'; + + expect(query).toEqual([{ query: expectedQuery, language: 'kuery' }]); + }); + + test('it returns expected query when lists exist and language is "lucene"', () => { + // Equal to query && !((b || !c || d) && e) -> ((query AND NOT b AND c AND NOT d) OR (query AND NOT e) + // https://www.dcode.fr/boolean-expressions-calculator + const lists: List[] = [ + { + field: 'b', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'value', + }, + { + name: 'value-1', + }, + ], + and: [ + { + field: 'c', + values_operator: 'excluded', + values_type: 'match_all', + values: [ + { + name: 'valueC', + }, + { + name: 'value-2', + }, + ], + }, + { + field: 'd', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueD', + }, + { + name: 'value-3', + }, + ], + }, + ], + }, + { + field: 'e', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: 'valueE', + }, + { + name: 'value-4', + }, + ], + }, + ]; + const query = buildQueryExceptions({ query: 'a:*', language: 'lucene', lists }); + const expectedQuery = + '(a:* AND NOT b:(value OR value-1) AND c:(valueC OR value-2) AND NOT d:(valueD OR value-3)) OR (a:* AND NOT e:(valueE OR value-4))'; + + expect(query).toEqual([{ query: expectedQuery, language: 'lucene' }]); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.ts new file mode 100644 index 00000000000000..21d1524796649b --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_exceptions_query.ts @@ -0,0 +1,203 @@ +/* + * 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 { Query } from '../../../../../../../../src/plugins/data/server'; +import { List, ListOperator, ListValues } from '../routes/schemas/types/lists_default_array'; +import { RuleAlertParams, Language } from '../types'; + +type Operators = 'and' | 'or' | 'not'; +type LuceneOperators = 'AND' | 'OR' | 'NOT'; + +export const getLanguageBooleanOperator = ({ + language, + value, +}: { + language: Language; + value: Operators; +}): Operators | LuceneOperators => { + switch (language) { + case 'lucene': + const luceneValues: Record = { and: 'AND', or: 'OR', not: 'NOT' }; + + return luceneValues[value]; + case 'kuery': + return value; + default: + return value; + } +}; + +export const operatorBuilder = ({ + operator, + language, +}: { + operator: ListOperator; + language: Language; +}): string => { + const and = getLanguageBooleanOperator({ + language, + value: 'and', + }); + const or = getLanguageBooleanOperator({ + language, + value: 'not', + }); + + switch (operator) { + case 'excluded': + return ` ${and} `; + case 'included': + return ` ${and} ${or} `; + default: + return ''; + } +}; + +export const buildExists = ({ + operator, + field, + language, +}: { + operator: ListOperator; + field: string; + language: Language; +}): string => { + const exceptionOperator = operatorBuilder({ operator, language }); + + switch (language) { + case 'kuery': + return `${exceptionOperator}${field}:*`; + case 'lucene': + return `${exceptionOperator}_exists_${field}`; + default: + return ''; + } +}; + +export const buildMatch = ({ + operator, + field, + values, + language, +}: { + operator: ListOperator; + field: string; + values: ListValues[]; + language: Language; +}): string => { + if (values.length > 0) { + const exceptionOperator = operatorBuilder({ operator, language }); + const [exception] = values; + + return `${exceptionOperator}${field}:${exception.name}`; + } else { + return ''; + } +}; + +export const buildMatchAll = ({ + operator, + field, + values, + language, +}: { + operator: ListOperator; + field: string; + values: ListValues[]; + language: Language; +}): string => { + switch (values.length) { + case 0: + return ''; + case 1: + return buildMatch({ operator, field, values, language }); + default: + const or = getLanguageBooleanOperator({ language, value: 'or' }); + const exceptionOperator = operatorBuilder({ operator, language }); + const matchAllValues = values.map(value => { + return value.name; + }); + + return `${exceptionOperator}${field}:(${matchAllValues.join(` ${or} `)})`; + } +}; + +export const evaluateValues = ({ list, language }: { list: List; language: Language }): string => { + const { values_operator: operator, values_type: type, field, values } = list; + switch (type) { + case 'exists': + return buildExists({ operator, field, language }); + case 'match': + return buildMatch({ operator, field, values: values ?? [], language }); + case 'match_all': + return buildMatchAll({ operator, field, values: values ?? [], language }); + default: + return ''; + } +}; + +export const formatQuery = ({ + exceptions, + query, + language, +}: { + exceptions: string[]; + query: string; + language: Language; +}): string => { + if (exceptions.length > 0) { + const or = getLanguageBooleanOperator({ language, value: 'or' }); + const formattedExceptions = exceptions.map(exception => { + return `(${query}${exception})`; + }); + + return formattedExceptions.join(` ${or} `); + } else { + return query; + } +}; + +export const buildExceptions = ({ + query, + lists, + language, +}: { + query: string; + lists: List[]; + language: Language; +}): string[] => { + return lists.reduce((accum, listItem) => { + const { and, ...exceptionDetails } = { ...listItem }; + const andExceptionsSegments = and ? buildExceptions({ query, lists: and, language }) : []; + const exceptionSegment = evaluateValues({ list: exceptionDetails, language }); + const exception = [...exceptionSegment, ...andExceptionsSegments]; + + return [...accum, exception.join('')]; + }, []); +}; + +export const buildQueryExceptions = ({ + query, + language, + lists, +}: { + query: string; + language: Language; + lists: RuleAlertParams['lists']; +}): Query[] => { + if (lists && lists !== null) { + const exceptions = buildExceptions({ lists, language, query }); + const formattedQuery = formatQuery({ exceptions, language, query }); + + return [ + { + query: formattedQuery, + language, + }, + ]; + } else { + return [{ query, language }]; + } +}; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.test.ts index 510667b211d25c..c34a0010574afd 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.test.ts @@ -35,7 +35,7 @@ describe('get_filter', () => { describe('getQueryFilter', () => { test('it should work with an empty filter as kuery', () => { - const esQuery = getQueryFilter('host.name: linux', 'kuery', [], ['auditbeat-*']); + const esQuery = getQueryFilter('host.name: linux', 'kuery', [], ['auditbeat-*'], []); expect(esQuery).toEqual({ bool: { must: [], @@ -60,7 +60,7 @@ describe('get_filter', () => { }); test('it should work with an empty filter as lucene', () => { - const esQuery = getQueryFilter('host.name: linux', 'lucene', [], ['auditbeat-*']); + const esQuery = getQueryFilter('host.name: linux', 'lucene', [], ['auditbeat-*'], []); expect(esQuery).toEqual({ bool: { must: [ @@ -102,7 +102,8 @@ describe('get_filter', () => { }, }, ], - ['auditbeat-*'] + ['auditbeat-*'], + [] ); expect(esQuery).toEqual({ bool: { @@ -145,7 +146,8 @@ describe('get_filter', () => { }, }, ], - ['auditbeat-*'] + ['auditbeat-*'], + [] ); expect(esQuery).toEqual({ bool: { @@ -194,7 +196,8 @@ describe('get_filter', () => { 'host.name: windows', 'kuery', [query, exists], - ['auditbeat-*'] + ['auditbeat-*'], + [] ); expect(esQuery).toEqual({ bool: { @@ -252,7 +255,8 @@ describe('get_filter', () => { }, }, ], - ['auditbeat-*'] + ['auditbeat-*'], + [] ); expect(esQuery).toEqual({ bool: { @@ -300,7 +304,8 @@ describe('get_filter', () => { }, }, ], - ['auditbeat-*'] + ['auditbeat-*'], + [] ); expect(esQuery).toEqual({ bool: { @@ -349,7 +354,8 @@ describe('get_filter', () => { }, }, ], - ['auditbeat-*'] + ['auditbeat-*'], + [] ); expect(esQuery).toEqual({ bool: { @@ -368,6 +374,108 @@ describe('get_filter', () => { }, }); }); + + test('it should work with a list', () => { + const esQuery = getQueryFilter( + 'host.name: linux', + 'kuery', + [], + ['auditbeat-*'], + [ + { + field: 'event.module', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'suricata', + }, + ], + }, + ] + ); + expect(esQuery).toEqual({ + bool: { + filter: [ + { + bool: { + filter: [ + { + bool: { + minimum_should_match: 1, + should: [ + { + match: { + 'host.name': 'linux', + }, + }, + ], + }, + }, + { + bool: { + minimum_should_match: 1, + should: [ + { + match: { + 'event.module': 'suricata', + }, + }, + ], + }, + }, + ], + }, + }, + ], + must: [], + must_not: [], + should: [], + }, + }); + }); + + test('it should work with an empty list', () => { + const esQuery = getQueryFilter('host.name: linux', 'kuery', [], ['auditbeat-*'], []); + expect(esQuery).toEqual({ + bool: { + filter: [ + { bool: { minimum_should_match: 1, should: [{ match: { 'host.name': 'linux' } }] } }, + ], + must: [], + must_not: [], + should: [], + }, + }); + }); + + test('it should work when lists has value null', () => { + const esQuery = getQueryFilter('host.name: linux', 'kuery', [], ['auditbeat-*'], null); + expect(esQuery).toEqual({ + bool: { + filter: [ + { bool: { minimum_should_match: 1, should: [{ match: { 'host.name': 'linux' } }] } }, + ], + must: [], + must_not: [], + should: [], + }, + }); + }); + + test('it should work when lists has value undefined', () => { + const esQuery = getQueryFilter('host.name: linux', 'kuery', [], ['auditbeat-*'], undefined); + expect(esQuery).toEqual({ + bool: { + filter: [ + { bool: { minimum_should_match: 1, should: [{ match: { 'host.name': 'linux' } }] } }, + ], + must: [], + must_not: [], + should: [], + }, + }); + }); }); describe('getFilter', () => { @@ -380,6 +488,7 @@ describe('get_filter', () => { savedId: undefined, services: servicesMock, index: ['auditbeat-*'], + lists: undefined, }); expect(filter).toEqual({ bool: { @@ -414,6 +523,7 @@ describe('get_filter', () => { savedId: undefined, services: servicesMock, index: ['auditbeat-*'], + lists: undefined, }) ).rejects.toThrow('query, filters, and index parameter should be defined'); }); @@ -428,6 +538,7 @@ describe('get_filter', () => { savedId: undefined, services: servicesMock, index: ['auditbeat-*'], + lists: undefined, }) ).rejects.toThrow('query, filters, and index parameter should be defined'); }); @@ -442,6 +553,7 @@ describe('get_filter', () => { savedId: undefined, services: servicesMock, index: undefined, + lists: undefined, }) ).rejects.toThrow('query, filters, and index parameter should be defined'); }); @@ -455,6 +567,7 @@ describe('get_filter', () => { savedId: 'some-id', services: servicesMock, index: ['auditbeat-*'], + lists: undefined, }); expect(filter).toEqual({ bool: { @@ -478,6 +591,7 @@ describe('get_filter', () => { savedId: undefined, services: servicesMock, index: ['auditbeat-*'], + lists: undefined, }) ).rejects.toThrow('savedId parameter should be defined'); }); @@ -492,6 +606,7 @@ describe('get_filter', () => { savedId: 'some-id', services: servicesMock, index: undefined, + lists: undefined, }) ).rejects.toThrow('savedId parameter should be defined'); }); @@ -506,6 +621,7 @@ describe('get_filter', () => { savedId: 'some-id', services: servicesMock, index: undefined, + lists: undefined, }) ).rejects.toThrow('Unsupported Rule of type "machine_learning" supplied to getFilter'); }); @@ -515,7 +631,8 @@ describe('get_filter', () => { '(event.module:suricata and event.kind:alert) and suricata.eve.alert.signature_id: (2610182 or 2610183 or 2610184 or 2610185 or 2610186 or 2610187)', 'kuery', [], - ['my custom index'] + ['my custom index'], + [] ); expect(esQuery).toEqual({ bool: { @@ -644,5 +761,68 @@ describe('get_filter', () => { }, }); }); + + test('returns a query when given a list', async () => { + const filter = await getFilter({ + type: 'query', + filters: undefined, + language: 'kuery', + query: 'host.name: siem', + savedId: undefined, + services: servicesMock, + index: ['auditbeat-*'], + lists: [ + { + field: 'event.module', + values_operator: 'excluded', + values_type: 'match', + values: [ + { + name: 'suricata', + }, + ], + }, + ], + }); + expect(filter).toEqual({ + bool: { + filter: [ + { + bool: { + filter: [ + { + bool: { + minimum_should_match: 1, + should: [ + { + match: { + 'host.name': 'siem', + }, + }, + ], + }, + }, + { + bool: { + minimum_should_match: 1, + should: [ + { + match: { + 'event.module': 'suricata', + }, + }, + ], + }, + }, + ], + }, + }, + ], + must: [], + must_not: [], + should: [], + }, + }); + }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.ts index 82a50222dc3514..e900f78609e1eb 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/get_filter.ts @@ -13,21 +13,24 @@ import { esFilters, IIndexPattern, } from '../../../../../../../../src/plugins/data/server'; -import { PartialFilter, RuleAlertParams } from '../types'; +import { PartialFilter, RuleAlertParams, Language } from '../types'; import { BadRequestError } from '../errors/bad_request_error'; +import { buildQueryExceptions } from './build_exceptions_query'; export const getQueryFilter = ( query: string, - language: string, + language: Language, filters: PartialFilter[], - index: string[] + index: string[], + lists: RuleAlertParams['lists'] ) => { const indexPattern = { fields: [], title: index.join(), } as IIndexPattern; - const queries: Query[] = [{ query, language }]; + const queries: Query[] = buildQueryExceptions({ query, language, lists }); + const config = { allowLeadingWildcards: true, queryStringOptions: { analyze_wildcard: true }, @@ -45,18 +48,19 @@ export const getQueryFilter = ( interface GetFilterArgs { type: RuleAlertParams['type']; filters: PartialFilter[] | undefined | null; - language: string | undefined | null; + language: Language | undefined | null; query: string | undefined | null; savedId: string | undefined | null; services: AlertServices; index: string[] | undefined | null; + lists: RuleAlertParams['lists']; } interface QueryAttributes { // NOTE: doesn't match Query interface query: { query: string; - language: string; + language: Language; }; filters: PartialFilter[]; } @@ -69,11 +73,12 @@ export const getFilter = async ({ services, type, query, + lists, }: GetFilterArgs): Promise => { switch (type) { case 'query': { if (query != null && language != null && index != null) { - return getQueryFilter(query, language, filters || [], index); + return getQueryFilter(query, language, filters || [], index, lists); } else { throw new BadRequestError('query, filters, and index parameter should be defined'); } @@ -90,13 +95,14 @@ export const getFilter = async ({ savedObject.attributes.query.query, savedObject.attributes.query.language, savedObject.attributes.filters, - index + index, + lists ); } catch (err) { // saved object does not exist, so try and fall back if the user pushed // any additional language, query, filters, etc... if (query != null && language != null && index != null) { - return getQueryFilter(query, language, filters || [], index); + return getQueryFilter(query, language, filters || [], index, lists); } else { // user did not give any additional fall back mechanism for generating a rule // rethrow error for activity monitoring diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts index 0357f906f8035a..efb1338fd480ee 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts @@ -66,6 +66,7 @@ export const signalRulesAlertType = ({ query, to, type, + lists, } = params; const searchAfterSize = Math.min(maxSignals, DEFAULT_SEARCH_AFTER_PAGE_SIZE); let hasError: boolean = false; @@ -200,6 +201,7 @@ export const signalRulesAlertType = ({ savedId, services, index: inputIndex, + lists, }); const noReIndex = buildEventsSearchQuery({ diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts index 035f1b10ff8b2c..d87c226bf957aa 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts @@ -24,7 +24,7 @@ export interface ThreatParams { technique: IMitreAttack[]; } -// Notice below we are using lists: ListsDefaultArraySchema[]; which is coming directly from the response output section. +// Notice below we are using lists: ListsAndArraySchema[]; which is coming directly from the response output section. // TODO: Eventually this whole RuleAlertParams will be replaced with io-ts. For now we can slowly strangle it out and reduce duplicate types // We don't have the input types defined through io-ts just yet but as we being introducing types from there we will more and more remove // types and share them between input and output schema but have an input Rule Schema and an output Rule Schema. @@ -34,6 +34,8 @@ export interface Meta { kibana_siem_app_url?: string | undefined; } +export type Language = 'kuery' | 'lucene'; + export interface RuleAlertParams { actions: RuleAlertAction[]; anomalyThreshold: number | undefined; @@ -47,7 +49,7 @@ export interface RuleAlertParams { index: string[] | undefined | null; interval: string; ruleId: string | undefined | null; - language: string | undefined | null; + language: Language | undefined | null; maxSignals: number; machineLearningJobId: string | undefined; riskScore: number; From c57121ba79cd30f632b7a40d66d1bbc92c1300f5 Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens Date: Fri, 17 Apr 2020 16:05:46 +0200 Subject: [PATCH 21/59] Relax error requirement of ECONNREFUSED (#63835) Also added a test for the different errors that could occur at a lower network level. --- .../proxy_route/proxy_fallback.test.ts | 64 +++++++++++++++++++ .../api/console/proxy/create_handler.ts | 5 +- 2 files changed, 66 insertions(+), 3 deletions(-) create mode 100644 src/plugins/console/server/__tests__/proxy_route/proxy_fallback.test.ts diff --git a/src/plugins/console/server/__tests__/proxy_route/proxy_fallback.test.ts b/src/plugins/console/server/__tests__/proxy_route/proxy_fallback.test.ts new file mode 100644 index 00000000000000..b226bad11a01af --- /dev/null +++ b/src/plugins/console/server/__tests__/proxy_route/proxy_fallback.test.ts @@ -0,0 +1,64 @@ +/* + * 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 { duration } from 'moment'; +import { getProxyRouteHandlerDeps } from './mocks'; + +import { kibanaResponseFactory } from '../../../../../core/server'; +import { createHandler } from '../../routes/api/console/proxy/create_handler'; +import * as requestModule from '../../lib/proxy_request'; + +describe('Console Proxy Route', () => { + afterEach(async () => { + jest.resetAllMocks(); + }); + + describe('fallback behaviour', () => { + it('falls back to all configured endpoints regardless of error', async () => { + // Describe a situation where all three configured nodes reject + (requestModule.proxyRequest as jest.Mock).mockRejectedValueOnce(new Error('ECONNREFUSED')); + (requestModule.proxyRequest as jest.Mock).mockRejectedValueOnce(new Error('EHOSTUNREACH')); + (requestModule.proxyRequest as jest.Mock).mockRejectedValueOnce(new Error('ESOCKETTIMEDOUT')); + + const handler = createHandler( + getProxyRouteHandlerDeps({ + readLegacyESConfig: () => ({ + requestTimeout: duration(30000), + customHeaders: {}, + requestHeadersWhitelist: [], + hosts: ['http://localhost:9201', 'http://localhost:9202', 'http://localhost:9203'], + }), + }) + ); + + const response = await handler( + {} as any, + { + headers: {}, + query: { method: 'get', path: 'test' }, + } as any, + kibanaResponseFactory + ); + + expect(response.status).toBe(502); + // Return the message from the ES node we attempted last. + expect(response.payload.message).toBe('ESOCKETTIMEDOUT'); + }); + }); +}); diff --git a/src/plugins/console/server/routes/api/console/proxy/create_handler.ts b/src/plugins/console/server/routes/api/console/proxy/create_handler.ts index 50a9fcf03c2093..9446289ff03ea1 100644 --- a/src/plugins/console/server/routes/api/console/proxy/create_handler.ts +++ b/src/plugins/console/server/routes/api/console/proxy/create_handler.ts @@ -175,10 +175,9 @@ export const createHandler = ({ break; } catch (e) { + // If we reached here it means we hit a lower level network issue than just, for e.g., a 500. + // We try contacting another node in that case. log.error(e); - if (e.code !== 'ECONNREFUSED') { - return response.internalError(e); - } if (idx === hosts.length - 1) { log.warn(`Could not connect to any configured ES node [${hosts.join(', ')}]`); return response.customError({ From 7e7884e01fdb3922a324ca9faa77a6b6899b6e5f Mon Sep 17 00:00:00 2001 From: CJ Cenizal Date: Fri, 17 Apr 2020 07:37:50 -0700 Subject: [PATCH 22/59] Add body validation to update follower index API endpoint. (#63653) --- .../public/np_ready/app/services/api.js | 28 ++++++++++- .../np_ready/routes/api/follower_index.ts | 12 +++++ .../follower_indices.helpers.js | 48 ++++++++++++++++++- .../follower_indices.js | 26 ++++++++++ 4 files changed, 112 insertions(+), 2 deletions(-) diff --git a/x-pack/legacy/plugins/cross_cluster_replication/public/np_ready/app/services/api.js b/x-pack/legacy/plugins/cross_cluster_replication/public/np_ready/app/services/api.js index b50c36aa8df9f5..24bc7e17356e25 100644 --- a/x-pack/legacy/plugins/cross_cluster_replication/public/np_ready/app/services/api.js +++ b/x-pack/legacy/plugins/cross_cluster_replication/public/np_ready/app/services/api.js @@ -145,9 +145,35 @@ export const updateFollowerIndex = (id, followerIndex) => { if (isUsingAdvancedSettings) { uiMetrics.push(UIM_FOLLOWER_INDEX_USE_ADVANCED_OPTIONS); } + + const { + maxReadRequestOperationCount, + maxOutstandingReadRequests, + maxReadRequestSize, + maxWriteRequestOperationCount, + maxWriteRequestSize, + maxOutstandingWriteRequests, + maxWriteBufferCount, + maxWriteBufferSize, + maxRetryDelay, + readPollTimeout, + } = followerIndex; + const request = httpClient.put(`${API_BASE_PATH}/follower_indices/${encodeURIComponent(id)}`, { - body: JSON.stringify(followerIndex), + body: JSON.stringify({ + maxReadRequestOperationCount, + maxOutstandingReadRequests, + maxReadRequestSize, + maxWriteRequestOperationCount, + maxWriteRequestSize, + maxOutstandingWriteRequests, + maxWriteBufferCount, + maxWriteBufferSize, + maxRetryDelay, + readPollTimeout, + }), }); + return trackUserRequest(request, uiMetrics); }; diff --git a/x-pack/legacy/plugins/cross_cluster_replication/server/np_ready/routes/api/follower_index.ts b/x-pack/legacy/plugins/cross_cluster_replication/server/np_ready/routes/api/follower_index.ts index 3896e1c02c9150..1d7dacf4a86887 100644 --- a/x-pack/legacy/plugins/cross_cluster_replication/server/np_ready/routes/api/follower_index.ts +++ b/x-pack/legacy/plugins/cross_cluster_replication/server/np_ready/routes/api/follower_index.ts @@ -164,6 +164,18 @@ export const registerFollowerIndexRoutes = ({ router, __LEGACY }: RouteDependenc path: `${API_BASE_PATH}/follower_indices/{id}`, validate: { params: schema.object({ id: schema.string() }), + body: schema.object({ + maxReadRequestOperationCount: schema.maybe(schema.number()), + maxOutstandingReadRequests: schema.maybe(schema.number()), + maxReadRequestSize: schema.maybe(schema.string()), // byte value + maxWriteRequestOperationCount: schema.maybe(schema.number()), + maxWriteRequestSize: schema.maybe(schema.string()), // byte value + maxOutstandingWriteRequests: schema.maybe(schema.number()), + maxWriteBufferCount: schema.maybe(schema.number()), + maxWriteBufferSize: schema.maybe(schema.string()), // byte value + maxRetryDelay: schema.maybe(schema.string()), // time value + readPollTimeout: schema.maybe(schema.string()), // time value + }), }, }, licensePreRoutingFactory({ diff --git a/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.helpers.js b/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.helpers.js index dbcb6bf819749e..294db29f6dce44 100644 --- a/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.helpers.js +++ b/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.helpers.js @@ -13,7 +13,45 @@ export const registerHelpers = supertest => { const loadFollowerIndices = () => supertest.get(`${API_BASE_PATH}/follower_indices`); - const getFollowerIndex = name => supertest.get(`${API_BASE_PATH}/follower_indices/${name}`); + const getFollowerIndex = (name, waitUntilIsActive = false) => { + const maxRetries = 10; + const delayBetweenRetries = 500; + let retryCount = 0; + + const proceed = async () => { + const response = await supertest.get(`${API_BASE_PATH}/follower_indices/${name}`); + + if (waitUntilIsActive && response.body.status !== 'active') { + retryCount += 1; + + if (retryCount > maxRetries) { + throw new Error('Error waiting for follower index to be active.'); + } + + return new Promise(resolve => setTimeout(resolve, delayBetweenRetries)).then(proceed); + } + + return response; + }; + + return { + expect: status => + new Promise((resolve, reject) => + proceed() + .then(response => { + if (status !== response.status) { + reject(new Error(`Expected status ${status} but got ${response.status}`)); + } + return resolve(response); + }) + .catch(reject) + ), + then: (resolve, reject) => + proceed() + .then(resolve) + .catch(reject), + }; + }; const createFollowerIndex = (name = getRandomString(), payload = getFollowerIndexPayload()) => { followerIndicesCreated.push(name); @@ -24,6 +62,13 @@ export const registerHelpers = supertest => { .send({ ...payload, name }); }; + const updateFollowerIndex = (name, payload) => { + return supertest + .put(`${API_BASE_PATH}/follower_indices/${name}`) + .set('kbn-xsrf', 'xxx') + .send(payload); + }; + const unfollowLeaderIndex = followerIndex => { const followerIndices = Array.isArray(followerIndex) ? followerIndex : [followerIndex]; const followerIndicesToEncodedString = followerIndices @@ -51,6 +96,7 @@ export const registerHelpers = supertest => { loadFollowerIndices, getFollowerIndex, createFollowerIndex, + updateFollowerIndex, unfollowAll, }; }; diff --git a/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.js b/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.js index 5f9ebbd2a0a3fe..eabf474120f2b4 100644 --- a/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.js +++ b/x-pack/test/api_integration/apis/management/cross_cluster_replication/follower_indices.js @@ -21,6 +21,7 @@ export default function({ getService }) { loadFollowerIndices, getFollowerIndex, createFollowerIndex, + updateFollowerIndex, unfollowAll, } = registerFollowerIndicesnHelpers(supertest); @@ -92,6 +93,31 @@ export default function({ getService }) { }); }); + describe('update()', () => { + it('should update a follower index advanced settings', async () => { + // Create a follower index + const leaderIndex = await createIndex(); + const followerIndex = getRandomString(); + const initialValue = 1234; + const payload = getFollowerIndexPayload(leaderIndex, undefined, { + maxReadRequestOperationCount: initialValue, + }); + await createFollowerIndex(followerIndex, payload); + + // Verify that its advanced settings are correctly set + const { body } = await getFollowerIndex(followerIndex, true); + expect(body.maxReadRequestOperationCount).to.be(initialValue); + + // Update the follower index + const updatedValue = 7777; + await updateFollowerIndex(followerIndex, { maxReadRequestOperationCount: updatedValue }); + + // Verify that the advanced settings are updated + const { body: updatedBody } = await getFollowerIndex(followerIndex, true); + expect(updatedBody.maxReadRequestOperationCount).to.be(updatedValue); + }); + }); + describe('Advanced settings', () => { it('hard-coded values should match Elasticsearch default values', async () => { /** From cf7da3cdb710ba7a0c133f93809ae78135d79e86 Mon Sep 17 00:00:00 2001 From: Radu Gheorghe Date: Fri, 17 Apr 2020 18:01:30 +0300 Subject: [PATCH 23/59] Add headers to the sample curl (#63548) * Add headers to the sample curl At least in 7.x it doesn't work without the kbn-xsrf and json headers. * More headers to curl commands Co-authored-by: Elastic Machine --- docs/api/saved-objects/create.asciidoc | 4 ++-- docs/api/saved-objects/export.asciidoc | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/api/saved-objects/create.asciidoc b/docs/api/saved-objects/create.asciidoc index dc010c80fd0121..571b57a5ef9c28 100644 --- a/docs/api/saved-objects/create.asciidoc +++ b/docs/api/saved-objects/create.asciidoc @@ -57,12 +57,12 @@ any data that you send to the API is properly formed. [source,sh] -------------------------------------------------- -$ curl -X POST "localhost:5601/api/saved_objects/index-pattern/my-pattern" +$ curl -X POST "localhost:5601/api/saved_objects/index-pattern/my-pattern" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d ' { "attributes": { "title": "my-pattern-*" } -} +}' -------------------------------------------------- // KIBANA diff --git a/docs/api/saved-objects/export.asciidoc b/docs/api/saved-objects/export.asciidoc index e8c762b9543a18..a992d13ed9b9c8 100644 --- a/docs/api/saved-objects/export.asciidoc +++ b/docs/api/saved-objects/export.asciidoc @@ -68,10 +68,10 @@ Export all index pattern saved objects: [source,sh] -------------------------------------------------- -$ curl -X POST "localhost:5601/api/saved_objects/_export" +$ curl -X POST "localhost:5601/api/saved_objects/_export" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d ' { "type": "index-pattern" -} +}' -------------------------------------------------- // KIBANA @@ -79,11 +79,11 @@ Export all index pattern saved objects and exclude the export summary from the s [source,sh] -------------------------------------------------- -$ curl -X POST "localhost:5601/api/saved_objects/_export" +$ curl -X POST "localhost:5601/api/saved_objects/_export" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d ' { "type": "index-pattern", "excludeExportDetails": true -} +}' -------------------------------------------------- // KIBANA @@ -91,7 +91,7 @@ Export a specific saved object: [source,sh] -------------------------------------------------- -$ curl -X POST "localhost:5601/api/saved_objects/_export" +$ curl -X POST "localhost:5601/api/saved_objects/_export" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d ' { "objects": [ { @@ -99,7 +99,7 @@ $ curl -X POST "localhost:5601/api/saved_objects/_export" "id": "be3733a0-9efe-11e7-acb3-3dab96693fab" } ] -} +}' -------------------------------------------------- // KIBANA @@ -107,7 +107,7 @@ Export a specific saved object and it's related objects : [source,sh] -------------------------------------------------- -$ curl -X POST "localhost:5601/api/saved_objects/_export" +$ curl -X POST "localhost:5601/api/saved_objects/_export" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d ' { "objects": [ { @@ -116,6 +116,6 @@ $ curl -X POST "localhost:5601/api/saved_objects/_export" } ], "includeReferencesDeep": true -} +}' -------------------------------------------------- // KIBANA From 3f98f0f8496f55f80f6ee4ed9a5d720d1aecf08a Mon Sep 17 00:00:00 2001 From: Devon Thomson Date: Fri, 17 Apr 2020 11:35:27 -0400 Subject: [PATCH 24/59] Duplicate panel feature (#61367) Added a new cloning feature for panels on a dashboard. --- .../actions/clone_panel_action.test.tsx | 155 ++++++++++++++++ .../actions/clone_panel_action.tsx | 158 +++++++++++++++++ .../public/application/actions/index.ts | 5 + .../embeddable/dashboard_container.tsx | 60 ++++++- .../panel/create_panel_state.test.ts | 14 +- .../embeddable/panel/create_panel_state.ts | 113 ++++-------- .../panel/dashboard_panel_placement.ts | 167 ++++++++++++++++++ .../embeddable/placeholder/index.ts | 21 +++ .../placeholder/placeholder_embeddable.tsx | 52 ++++++ .../placeholder_embeddable_factory.ts | 45 +++++ src/plugins/dashboard/public/plugin.tsx | 13 ++ .../apps/dashboard/panel_controls.js | 48 +++++ .../services/dashboard/panel_actions.js | 25 ++- 13 files changed, 783 insertions(+), 93 deletions(-) create mode 100644 src/plugins/dashboard/public/application/actions/clone_panel_action.test.tsx create mode 100644 src/plugins/dashboard/public/application/actions/clone_panel_action.tsx create mode 100644 src/plugins/dashboard/public/application/embeddable/panel/dashboard_panel_placement.ts create mode 100644 src/plugins/dashboard/public/application/embeddable/placeholder/index.ts create mode 100644 src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable.tsx create mode 100644 src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable_factory.ts diff --git a/src/plugins/dashboard/public/application/actions/clone_panel_action.test.tsx b/src/plugins/dashboard/public/application/actions/clone_panel_action.test.tsx new file mode 100644 index 00000000000000..17943333d25b04 --- /dev/null +++ b/src/plugins/dashboard/public/application/actions/clone_panel_action.test.tsx @@ -0,0 +1,155 @@ +/* + * 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 { isErrorEmbeddable, IContainer } from '../../embeddable_plugin'; +import { DashboardContainer, DashboardPanelState } from '../embeddable'; +import { getSampleDashboardInput, getSampleDashboardPanel } from '../test_helpers'; +import { + CONTACT_CARD_EMBEDDABLE, + ContactCardEmbeddableFactory, + ContactCardEmbeddable, + ContactCardEmbeddableInput, + ContactCardEmbeddableOutput, +} from '../../embeddable_plugin_test_samples'; +import { coreMock } from '../../../../../core/public/mocks'; +import { CoreStart } from 'kibana/public'; +import { ClonePanelAction } from '.'; + +// eslint-disable-next-line +import { embeddablePluginMock } from 'src/plugins/embeddable/public/mocks'; + +const { setup, doStart } = embeddablePluginMock.createInstance(); +setup.registerEmbeddableFactory( + CONTACT_CARD_EMBEDDABLE, + new ContactCardEmbeddableFactory((() => null) as any, {} as any) +); +const start = doStart(); + +let container: DashboardContainer; +let embeddable: ContactCardEmbeddable; +let coreStart: CoreStart; +beforeEach(async () => { + coreStart = coreMock.createStart(); + coreStart.savedObjects.client = { + ...coreStart.savedObjects.client, + get: jest.fn().mockImplementation(() => ({ attributes: { title: 'Holy moly' } })), + find: jest.fn().mockImplementation(() => ({ total: 15 })), + create: jest.fn().mockImplementation(() => ({ id: 'brandNewSavedObject' })), + }; + + const options = { + ExitFullScreenButton: () => null, + SavedObjectFinder: () => null, + application: {} as any, + embeddable: start, + inspector: {} as any, + notifications: {} as any, + overlays: coreStart.overlays, + savedObjectMetaData: {} as any, + uiActions: {} as any, + }; + const input = getSampleDashboardInput({ + panels: { + '123': getSampleDashboardPanel({ + explicitInput: { firstName: 'Kibanana', id: '123' }, + type: CONTACT_CARD_EMBEDDABLE, + }), + }, + }); + container = new DashboardContainer(input, options); + + const contactCardEmbeddable = await container.addNewEmbeddable< + ContactCardEmbeddableInput, + ContactCardEmbeddableOutput, + ContactCardEmbeddable + >(CONTACT_CARD_EMBEDDABLE, { + firstName: 'Kibana', + }); + + if (isErrorEmbeddable(contactCardEmbeddable)) { + throw new Error('Failed to create embeddable'); + } else { + embeddable = contactCardEmbeddable; + } +}); + +test('Clone adds a new embeddable', async () => { + const dashboard = embeddable.getRoot() as IContainer; + const originalPanelCount = Object.keys(dashboard.getInput().panels).length; + const originalPanelKeySet = new Set(Object.keys(dashboard.getInput().panels)); + const action = new ClonePanelAction(coreStart); + await action.execute({ embeddable }); + expect(Object.keys(container.getInput().panels).length).toEqual(originalPanelCount + 1); + const newPanelId = Object.keys(container.getInput().panels).find( + key => !originalPanelKeySet.has(key) + ); + expect(newPanelId).toBeDefined(); + const newPanel = container.getInput().panels[newPanelId!]; + expect(newPanel.type).toEqual(embeddable.type); +}); + +test('Clones an embeddable without a saved object ID', async () => { + const dashboard = embeddable.getRoot() as IContainer; + const panel = dashboard.getInput().panels[embeddable.id] as DashboardPanelState; + const action = new ClonePanelAction(coreStart); + // @ts-ignore + const newPanel = await action.cloneEmbeddable(panel, embeddable.type); + expect(newPanel.type).toEqual(embeddable.type); +}); + +test('Clones an embeddable with a saved object ID', async () => { + const dashboard = embeddable.getRoot() as IContainer; + const panel = dashboard.getInput().panels[embeddable.id] as DashboardPanelState; + panel.explicitInput.savedObjectId = 'holySavedObjectBatman'; + const action = new ClonePanelAction(coreStart); + // @ts-ignore + const newPanel = await action.cloneEmbeddable(panel, embeddable.type); + expect(coreStart.savedObjects.client.get).toHaveBeenCalledTimes(1); + expect(coreStart.savedObjects.client.find).toHaveBeenCalledTimes(1); + expect(coreStart.savedObjects.client.create).toHaveBeenCalledTimes(1); + expect(newPanel.type).toEqual(embeddable.type); +}); + +test('Gets a unique title ', async () => { + coreStart.savedObjects.client.find = jest.fn().mockImplementation(({ search }) => { + if (search === '"testFirstTitle"') return { total: 1 }; + else if (search === '"testSecondTitle"') return { total: 41 }; + else if (search === '"testThirdTitle"') return { total: 90 }; + }); + const action = new ClonePanelAction(coreStart); + // @ts-ignore + expect(await action.getUniqueTitle('testFirstTitle', embeddable.type)).toEqual( + 'testFirstTitle (copy)' + ); + // @ts-ignore + expect(await action.getUniqueTitle('testSecondTitle (copy 39)', embeddable.type)).toEqual( + 'testSecondTitle (copy 40)' + ); + // @ts-ignore + expect(await action.getUniqueTitle('testSecondTitle (copy 20)', embeddable.type)).toEqual( + 'testSecondTitle (copy 40)' + ); + // @ts-ignore + expect(await action.getUniqueTitle('testThirdTitle', embeddable.type)).toEqual( + 'testThirdTitle (copy 89)' + ); + // @ts-ignore + expect(await action.getUniqueTitle('testThirdTitle (copy 10000)', embeddable.type)).toEqual( + 'testThirdTitle (copy 89)' + ); +}); diff --git a/src/plugins/dashboard/public/application/actions/clone_panel_action.tsx b/src/plugins/dashboard/public/application/actions/clone_panel_action.tsx new file mode 100644 index 00000000000000..4d15e7e899fa89 --- /dev/null +++ b/src/plugins/dashboard/public/application/actions/clone_panel_action.tsx @@ -0,0 +1,158 @@ +/* + * 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 { i18n } from '@kbn/i18n'; +import { CoreStart } from 'src/core/public'; +import uuid from 'uuid'; +import { ActionByType, IncompatibleActionError } from '../../ui_actions_plugin'; +import { ViewMode, PanelState, IEmbeddable } from '../../embeddable_plugin'; +import { SavedObject } from '../../../../saved_objects/public'; +import { PanelNotFoundError, EmbeddableInput } from '../../../../embeddable/public'; +import { + placePanelBeside, + IPanelPlacementBesideArgs, +} from '../embeddable/panel/dashboard_panel_placement'; +import { DashboardPanelState, DASHBOARD_CONTAINER_TYPE, DashboardContainer } from '..'; + +export const ACTION_CLONE_PANEL = 'clonePanel'; + +export interface ClonePanelActionContext { + embeddable: IEmbeddable; +} + +export class ClonePanelAction implements ActionByType { + public readonly type = ACTION_CLONE_PANEL; + public readonly id = ACTION_CLONE_PANEL; + public order = 11; + + constructor(private core: CoreStart) {} + + public getDisplayName({ embeddable }: ClonePanelActionContext) { + if (!embeddable.getRoot() || !embeddable.getRoot().isContainer) { + throw new IncompatibleActionError(); + } + return i18n.translate('dashboard.panel.clonePanel', { + defaultMessage: 'Clone panel', + }); + } + + public getIconType({ embeddable }: ClonePanelActionContext) { + if (!embeddable.getRoot() || !embeddable.getRoot().isContainer) { + throw new IncompatibleActionError(); + } + return 'copy'; + } + + public async isCompatible({ embeddable }: ClonePanelActionContext) { + return Boolean( + embeddable.getInput()?.viewMode !== ViewMode.VIEW && + embeddable.getRoot() && + embeddable.getRoot().isContainer && + embeddable.getRoot().type === DASHBOARD_CONTAINER_TYPE + ); + } + + public async execute({ embeddable }: ClonePanelActionContext) { + if (!embeddable.getRoot() || !embeddable.getRoot().isContainer) { + throw new IncompatibleActionError(); + } + + const dashboard = embeddable.getRoot() as DashboardContainer; + const panelToClone = dashboard.getInput().panels[embeddable.id] as DashboardPanelState; + if (!panelToClone) { + throw new PanelNotFoundError(); + } + + dashboard.showPlaceholderUntil( + this.cloneEmbeddable(panelToClone, embeddable.type), + placePanelBeside, + { + width: panelToClone.gridData.w, + height: panelToClone.gridData.h, + currentPanels: dashboard.getInput().panels, + placeBesideId: panelToClone.explicitInput.id, + } as IPanelPlacementBesideArgs + ); + } + + private async getUniqueTitle(rawTitle: string, embeddableType: string): Promise { + const clonedTag = i18n.translate('dashboard.panel.title.clonedTag', { + defaultMessage: 'copy', + }); + const cloneRegex = new RegExp(`\\(${clonedTag}\\)`, 'g'); + const cloneNumberRegex = new RegExp(`\\(${clonedTag} [0-9]+\\)`, 'g'); + const baseTitle = rawTitle + .replace(cloneNumberRegex, '') + .replace(cloneRegex, '') + .trim(); + + const similarSavedObjects = await this.core.savedObjects.client.find({ + type: embeddableType, + perPage: 0, + fields: ['title'], + searchFields: ['title'], + search: `"${baseTitle}"`, + }); + const similarBaseTitlesCount: number = similarSavedObjects.total - 1; + + return similarBaseTitlesCount <= 0 + ? baseTitle + ` (${clonedTag})` + : baseTitle + ` (${clonedTag} ${similarBaseTitlesCount})`; + } + + private async cloneEmbeddable( + panelToClone: DashboardPanelState, + embeddableType: string + ): Promise> { + const panelState: PanelState = { + type: embeddableType, + explicitInput: { + ...panelToClone.explicitInput, + id: uuid.v4(), + }, + }; + let newTitle: string = ''; + if (panelToClone.explicitInput.savedObjectId) { + // Fetch existing saved object + const savedObjectToClone = await this.core.savedObjects.client.get( + embeddableType, + panelToClone.explicitInput.savedObjectId + ); + + // Clone the saved object + newTitle = await this.getUniqueTitle(savedObjectToClone.attributes.title, embeddableType); + const clonedSavedObject = await this.core.savedObjects.client.create( + embeddableType, + { + ..._.cloneDeep(savedObjectToClone.attributes), + title: newTitle, + }, + { references: _.cloneDeep(savedObjectToClone.references) } + ); + panelState.explicitInput.savedObjectId = clonedSavedObject.id; + } + this.core.notifications.toasts.addSuccess({ + title: i18n.translate('dashboard.panel.clonedToast', { + defaultMessage: 'Cloned panel', + }), + 'data-test-subj': 'addObjectToContainerSuccess', + }); + return panelState; + } +} diff --git a/src/plugins/dashboard/public/application/actions/index.ts b/src/plugins/dashboard/public/application/actions/index.ts index 23c26dbd280f8e..d7a84fb79f6af3 100644 --- a/src/plugins/dashboard/public/application/actions/index.ts +++ b/src/plugins/dashboard/public/application/actions/index.ts @@ -27,3 +27,8 @@ export { ReplacePanelActionContext, ACTION_REPLACE_PANEL, } from './replace_panel_action'; +export { + ClonePanelAction, + ClonePanelActionContext, + ACTION_CLONE_PANEL, +} from './clone_panel_action'; diff --git a/src/plugins/dashboard/public/application/embeddable/dashboard_container.tsx b/src/plugins/dashboard/public/application/embeddable/dashboard_container.tsx index 50089f1f061f4e..8346fd900caef8 100644 --- a/src/plugins/dashboard/public/application/embeddable/dashboard_container.tsx +++ b/src/plugins/dashboard/public/application/embeddable/dashboard_container.tsx @@ -23,6 +23,7 @@ import { I18nProvider } from '@kbn/i18n/react'; import { RefreshInterval, TimeRange, Query, Filter } from 'src/plugins/data/public'; import { CoreStart } from 'src/core/public'; import { Start as InspectorStartContract } from 'src/plugins/inspector/public'; +import uuid from 'uuid'; import { UiActionsStart } from '../../ui_actions_plugin'; import { Container, @@ -32,6 +33,7 @@ import { EmbeddableFactory, IEmbeddable, EmbeddableStart, + PanelState, } from '../../embeddable_plugin'; import { DASHBOARD_CONTAINER_TYPE } from './dashboard_constants'; import { createPanelState } from './panel'; @@ -42,6 +44,8 @@ import { KibanaReactContext, KibanaReactContextValue, } from '../../../../kibana_react/public'; +import { PLACEHOLDER_EMBEDDABLE } from './placeholder'; +import { PanelPlacementMethod, IPanelPlacementArgs } from './panel/dashboard_panel_placement'; export interface DashboardContainerInput extends ContainerInput { viewMode: ViewMode; @@ -120,7 +124,61 @@ export class DashboardContainer extends Container = {} ): DashboardPanelState { const panelState = super.createNewPanelState(factory, partial); - return createPanelState(panelState, Object.values(this.input.panels)); + return createPanelState(panelState, this.input.panels); + } + + public showPlaceholderUntil( + newStateComplete: Promise>, + placementMethod?: PanelPlacementMethod, + placementArgs?: TPlacementMethodArgs + ): void { + const originalPanelState = { + type: PLACEHOLDER_EMBEDDABLE, + explicitInput: { + id: uuid.v4(), + disabledActions: [ + 'ACTION_CUSTOMIZE_PANEL', + 'CUSTOM_TIME_RANGE', + 'clonePanel', + 'replacePanel', + 'togglePanel', + ], + }, + } as PanelState; + const placeholderPanelState = createPanelState( + originalPanelState, + this.input.panels, + placementMethod, + placementArgs + ); + this.updateInput({ + panels: { + ...this.input.panels, + [placeholderPanelState.explicitInput.id]: placeholderPanelState, + }, + }); + newStateComplete.then((newPanelState: Partial) => { + const finalPanels = { ...this.input.panels }; + delete finalPanels[placeholderPanelState.explicitInput.id]; + const newPanelId = newPanelState.explicitInput?.id + ? newPanelState.explicitInput.id + : uuid.v4(); + finalPanels[newPanelId] = { + ...placeholderPanelState, + ...newPanelState, + gridData: { + ...placeholderPanelState.gridData, + i: newPanelId, + }, + explicitInput: { + ...newPanelState.explicitInput, + id: newPanelId, + }, + }; + this.updateInput({ + panels: finalPanels, + }); + }); } public render(dom: HTMLElement) { diff --git a/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.test.ts b/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.test.ts index 409cae8b49a531..7c11ac8a5031bf 100644 --- a/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.test.ts +++ b/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.test.ts @@ -26,7 +26,7 @@ import { CONTACT_CARD_EMBEDDABLE } from '../../../embeddable_plugin_test_samples interface TestInput extends EmbeddableInput { test: string; } -const panels: DashboardPanelState[] = []; +const panels: { [key: string]: DashboardPanelState } = {}; test('createPanelState adds a new panel state in 0,0 position', () => { const panelState = createPanelState( @@ -34,7 +34,7 @@ test('createPanelState adds a new panel state in 0,0 position', () => { type: CONTACT_CARD_EMBEDDABLE, explicitInput: { test: 'hi', id: '123' }, }, - [] + panels ); expect(panelState.explicitInput.test).toBe('hi'); expect(panelState.type).toBe(CONTACT_CARD_EMBEDDABLE); @@ -44,7 +44,7 @@ test('createPanelState adds a new panel state in 0,0 position', () => { expect(panelState.gridData.h).toBe(DEFAULT_PANEL_HEIGHT); expect(panelState.gridData.w).toBe(DEFAULT_PANEL_WIDTH); - panels.push(panelState); + panels[panelState.explicitInput.id] = panelState; }); test('createPanelState adds a second new panel state', () => { @@ -58,7 +58,7 @@ test('createPanelState adds a second new panel state', () => { expect(panelState.gridData.h).toBe(DEFAULT_PANEL_HEIGHT); expect(panelState.gridData.w).toBe(DEFAULT_PANEL_WIDTH); - panels.push(panelState); + panels[panelState.explicitInput.id] = panelState; }); test('createPanelState adds a third new panel state', () => { @@ -74,17 +74,17 @@ test('createPanelState adds a third new panel state', () => { expect(panelState.gridData.h).toBe(DEFAULT_PANEL_HEIGHT); expect(panelState.gridData.w).toBe(DEFAULT_PANEL_WIDTH); - panels.push(panelState); + panels[panelState.explicitInput.id] = panelState; }); test('createPanelState adds a new panel state in the top most position', () => { - const panelsWithEmptySpace = panels.filter(panel => panel.gridData.x === 0); + delete panels['456']; const panelState = createPanelState( { type: CONTACT_CARD_EMBEDDABLE, explicitInput: { test: 'bye', id: '987' }, }, - panelsWithEmptySpace + panels ); expect(panelState.gridData.x).toBe(DEFAULT_PANEL_WIDTH); expect(panelState.gridData.y).toBe(0); diff --git a/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.ts b/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.ts index f3a48368fe1b3d..79116a57869d35 100644 --- a/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.ts +++ b/src/plugins/dashboard/public/application/embeddable/panel/create_panel_state.ts @@ -19,98 +19,45 @@ import _ from 'lodash'; import { PanelState, EmbeddableInput } from '../../../embeddable_plugin'; -import { - DASHBOARD_GRID_COLUMN_COUNT, - DEFAULT_PANEL_HEIGHT, - DEFAULT_PANEL_WIDTH, -} from '../dashboard_constants'; +import { DEFAULT_PANEL_HEIGHT, DEFAULT_PANEL_WIDTH } from '../dashboard_constants'; import { DashboardPanelState } from '../types'; - -// Look for the smallest y and x value where the default panel will fit. -function findTopLeftMostOpenSpace( - width: number, - height: number, - currentPanels: DashboardPanelState[] -) { - let maxY = -1; - - currentPanels.forEach(panel => { - maxY = Math.max(panel.gridData.y + panel.gridData.h, maxY); - }); - - // Handle case of empty grid. - if (maxY < 0) { - return { x: 0, y: 0 }; - } - - const grid = new Array(maxY); - for (let y = 0; y < maxY; y++) { - grid[y] = new Array(DASHBOARD_GRID_COLUMN_COUNT).fill(0); - } - - currentPanels.forEach(panel => { - for (let x = panel.gridData.x; x < panel.gridData.x + panel.gridData.w; x++) { - for (let y = panel.gridData.y; y < panel.gridData.y + panel.gridData.h; y++) { - const row = grid[y]; - if (row === undefined) { - throw new Error( - `Attempted to access a row that doesn't exist at ${y} for panel ${JSON.stringify( - panel - )}` - ); - } - grid[y][x] = 1; - } - } - }); - - for (let y = 0; y < maxY; y++) { - for (let x = 0; x < DASHBOARD_GRID_COLUMN_COUNT; x++) { - if (grid[y][x] === 1) { - // Space is filled - continue; - } else { - for (let h = y; h < Math.min(y + height, maxY); h++) { - for (let w = x; w < Math.min(x + width, DASHBOARD_GRID_COLUMN_COUNT); w++) { - const spaceIsEmpty = grid[h][w] === 0; - const fitsPanelWidth = w === x + width - 1; - // If the panel is taller than any other panel in the current grid, it can still fit in the space, hence - // we check the minimum of maxY and the panel height. - const fitsPanelHeight = h === Math.min(y + height - 1, maxY - 1); - - if (spaceIsEmpty && fitsPanelWidth && fitsPanelHeight) { - // Found space - return { x, y }; - } else if (grid[h][w] === 1) { - // x, y spot doesn't work, break. - break; - } - } - } - } - } - } - return { x: 0, y: maxY }; -} +import { + IPanelPlacementArgs, + findTopLeftMostOpenSpace, + PanelPlacementMethod, +} from './dashboard_panel_placement'; /** * Creates and initializes a basic panel state. */ -export function createPanelState( +export function createPanelState< + TEmbeddableInput extends EmbeddableInput, + TPlacementMethodArgs extends IPanelPlacementArgs = IPanelPlacementArgs +>( panelState: PanelState, - currentPanels: DashboardPanelState[] + currentPanels: { [key: string]: DashboardPanelState }, + placementMethod?: PanelPlacementMethod, + placementArgs?: TPlacementMethodArgs ): DashboardPanelState { - const { x, y } = findTopLeftMostOpenSpace( - DEFAULT_PANEL_WIDTH, - DEFAULT_PANEL_HEIGHT, - currentPanels - ); + const defaultPlacementArgs = { + width: DEFAULT_PANEL_WIDTH, + height: DEFAULT_PANEL_HEIGHT, + currentPanels, + }; + const finalPlacementArgs = placementArgs + ? { + ...defaultPlacementArgs, + ...placementArgs, + } + : defaultPlacementArgs; + + const gridDataLocation = placementMethod + ? placementMethod(finalPlacementArgs as TPlacementMethodArgs) + : findTopLeftMostOpenSpace(defaultPlacementArgs); + return { gridData: { - w: DEFAULT_PANEL_WIDTH, - h: DEFAULT_PANEL_HEIGHT, - x, - y, + ...gridDataLocation, i: panelState.explicitInput.id, }, ...panelState, diff --git a/src/plugins/dashboard/public/application/embeddable/panel/dashboard_panel_placement.ts b/src/plugins/dashboard/public/application/embeddable/panel/dashboard_panel_placement.ts new file mode 100644 index 00000000000000..70a6c83418587d --- /dev/null +++ b/src/plugins/dashboard/public/application/embeddable/panel/dashboard_panel_placement.ts @@ -0,0 +1,167 @@ +/* + * 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 { PanelNotFoundError } from '../../../embeddable_plugin'; +import { DashboardPanelState, GridData, DASHBOARD_GRID_COLUMN_COUNT } from '..'; + +export type PanelPlacementMethod = ( + args: PlacementArgs +) => Omit; + +export interface IPanelPlacementArgs { + width: number; + height: number; + currentPanels: { [key: string]: DashboardPanelState }; +} + +export interface IPanelPlacementBesideArgs extends IPanelPlacementArgs { + placeBesideId: string; +} + +// Look for the smallest y and x value where the default panel will fit. +export function findTopLeftMostOpenSpace({ + width, + height, + currentPanels, +}: IPanelPlacementArgs): Omit { + let maxY = -1; + + const currentPanelsArray = Object.values(currentPanels); + currentPanelsArray.forEach(panel => { + maxY = Math.max(panel.gridData.y + panel.gridData.h, maxY); + }); + + // Handle case of empty grid. + if (maxY < 0) { + return { x: 0, y: 0, w: width, h: height }; + } + + const grid = new Array(maxY); + for (let y = 0; y < maxY; y++) { + grid[y] = new Array(DASHBOARD_GRID_COLUMN_COUNT).fill(0); + } + + currentPanelsArray.forEach(panel => { + for (let x = panel.gridData.x; x < panel.gridData.x + panel.gridData.w; x++) { + for (let y = panel.gridData.y; y < panel.gridData.y + panel.gridData.h; y++) { + const row = grid[y]; + if (row === undefined) { + throw new Error( + `Attempted to access a row that doesn't exist at ${y} for panel ${JSON.stringify( + panel + )}` + ); + } + grid[y][x] = 1; + } + } + }); + + for (let y = 0; y < maxY; y++) { + for (let x = 0; x < DASHBOARD_GRID_COLUMN_COUNT; x++) { + if (grid[y][x] === 1) { + // Space is filled + continue; + } else { + for (let h = y; h < Math.min(y + height, maxY); h++) { + for (let w = x; w < Math.min(x + width, DASHBOARD_GRID_COLUMN_COUNT); w++) { + const spaceIsEmpty = grid[h][w] === 0; + const fitsPanelWidth = w === x + width - 1; + // If the panel is taller than any other panel in the current grid, it can still fit in the space, hence + // we check the minimum of maxY and the panel height. + const fitsPanelHeight = h === Math.min(y + height - 1, maxY - 1); + + if (spaceIsEmpty && fitsPanelWidth && fitsPanelHeight) { + // Found space + return { x, y, w: width, h: height }; + } else if (grid[h][w] === 1) { + // x, y spot doesn't work, break. + break; + } + } + } + } + } + } + return { x: 0, y: maxY, w: width, h: height }; +} + +interface IplacementDirection { + grid: Omit; + fits: boolean; +} + +export function placePanelBeside({ + width, + height, + currentPanels, + placeBesideId, +}: IPanelPlacementBesideArgs): Omit { + // const clonedPanels = _.cloneDeep(currentPanels); + if (!placeBesideId) { + throw new Error('Place beside method called without placeBesideId'); + } + const panelToPlaceBeside = currentPanels[placeBesideId]; + if (!panelToPlaceBeside) { + throw new PanelNotFoundError(); + } + const beside = panelToPlaceBeside.gridData; + const otherPanels: GridData[] = []; + _.forOwn(currentPanels, (panel: DashboardPanelState, key: string | undefined) => { + otherPanels.push(panel.gridData); + }); + + const possiblePlacementDirections: IplacementDirection[] = [ + { grid: { x: beside.x + beside.w, y: beside.y, w: width, h: height }, fits: true }, // right + { grid: { x: beside.x - width, y: beside.y, w: width, h: height }, fits: true }, // left + { grid: { x: beside.x, y: beside.y + beside.h, w: width, h: height }, fits: true }, // bottom + ]; + + for (const direction of possiblePlacementDirections) { + if ( + direction.grid.x >= 0 && + direction.grid.x + direction.grid.w <= DASHBOARD_GRID_COLUMN_COUNT && + direction.grid.y >= 0 + ) { + const intersection = otherPanels.some((currentPanelGrid: GridData) => { + return ( + direction.grid.x + direction.grid.w > currentPanelGrid.x && + direction.grid.x < currentPanelGrid.x + currentPanelGrid.w && + direction.grid.y < currentPanelGrid.y + currentPanelGrid.h && + direction.grid.y + direction.grid.h > currentPanelGrid.y + ); + }); + if (!intersection) { + return direction.grid; + } + } else { + direction.fits = false; + } + } + // if we get here that means there is no blank space around the panel we are placing beside. This means it's time to mess up the dashboard's groove. Fun! + const [, , bottomPlacement] = possiblePlacementDirections; + for (const currentPanelGrid of otherPanels) { + if (bottomPlacement.grid.y <= currentPanelGrid.y) { + const movedPanel = _.cloneDeep(currentPanels[currentPanelGrid.i]); + movedPanel.gridData.y = movedPanel.gridData.y + bottomPlacement.grid.h; + currentPanels[currentPanelGrid.i] = movedPanel; + } + } + return bottomPlacement.grid; +} diff --git a/src/plugins/dashboard/public/application/embeddable/placeholder/index.ts b/src/plugins/dashboard/public/application/embeddable/placeholder/index.ts new file mode 100644 index 00000000000000..7c65d50ce3fea1 --- /dev/null +++ b/src/plugins/dashboard/public/application/embeddable/placeholder/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 * from './placeholder_embeddable'; +export * from './placeholder_embeddable_factory'; diff --git a/src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable.tsx b/src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable.tsx new file mode 100644 index 00000000000000..1a5c3386bdeda0 --- /dev/null +++ b/src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable.tsx @@ -0,0 +1,52 @@ +/* + * 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 React from 'react'; +import ReactDOM from 'react-dom'; +import { EuiLoadingChart } from '@elastic/eui'; +import classNames from 'classnames'; +import { Embeddable, EmbeddableInput, IContainer } from '../../../embeddable_plugin'; + +export const PLACEHOLDER_EMBEDDABLE = 'placeholder'; + +export class PlaceholderEmbeddable extends Embeddable { + public readonly type = PLACEHOLDER_EMBEDDABLE; + private node?: HTMLElement; + + constructor(initialInput: EmbeddableInput, parent?: IContainer) { + super(initialInput, {}, parent); + this.input = initialInput; + } + public render(node: HTMLElement) { + if (this.node) { + ReactDOM.unmountComponentAtNode(this.node); + } + this.node = node; + + const classes = classNames('embPanel', 'embPanel-isLoading'); + ReactDOM.render( +
    + +
    , + node + ); + } + + public reload() {} +} diff --git a/src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable_factory.ts b/src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable_factory.ts new file mode 100644 index 00000000000000..30a93989649a7a --- /dev/null +++ b/src/plugins/dashboard/public/application/embeddable/placeholder/placeholder_embeddable_factory.ts @@ -0,0 +1,45 @@ +/* + * 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 { i18n } from '@kbn/i18n'; + +import { + EmbeddableFactoryDefinition, + EmbeddableInput, + IContainer, +} from '../../../embeddable_plugin'; +import { PlaceholderEmbeddable, PLACEHOLDER_EMBEDDABLE } from './placeholder_embeddable'; + +export class PlaceholderEmbeddableFactory implements EmbeddableFactoryDefinition { + public readonly type = PLACEHOLDER_EMBEDDABLE; + + public async isEditable() { + return false; + } + + public async create(initialInput: EmbeddableInput, parent?: IContainer) { + return new PlaceholderEmbeddable(initialInput, parent); + } + + public getDisplayName() { + return i18n.translate('dashboard.placeholder.factory.displayName', { + defaultMessage: 'placeholder', + }); + } +} diff --git a/src/plugins/dashboard/public/plugin.tsx b/src/plugins/dashboard/public/plugin.tsx index 322d734d9f39f4..203c784d9df4e3 100644 --- a/src/plugins/dashboard/public/plugin.tsx +++ b/src/plugins/dashboard/public/plugin.tsx @@ -67,9 +67,12 @@ import { ExpandPanelActionContext, ReplacePanelAction, ReplacePanelActionContext, + ClonePanelAction, + ClonePanelActionContext, ACTION_EXPAND_PANEL, ACTION_REPLACE_PANEL, RenderDeps, + ACTION_CLONE_PANEL, } from './application'; import { DashboardAppLinkGeneratorState, @@ -78,6 +81,7 @@ import { } from './url_generator'; import { createSavedDashboardLoader } from './saved_dashboards'; import { DashboardConstants } from './dashboard_constants'; +import { PlaceholderEmbeddableFactory } from './application/embeddable/placeholder'; declare module '../../share/public' { export interface UrlGeneratorStateMapping { @@ -115,6 +119,7 @@ declare module '../../../plugins/ui_actions/public' { export interface ActionContextMapping { [ACTION_EXPAND_PANEL]: ExpandPanelActionContext; [ACTION_REPLACE_PANEL]: ReplacePanelActionContext; + [ACTION_CLONE_PANEL]: ClonePanelActionContext; } } @@ -173,6 +178,9 @@ export class DashboardPlugin const factory = new DashboardContainerFactory(getStartServices); embeddable.registerEmbeddableFactory(factory.type, factory); + const placeholderFactory = new PlaceholderEmbeddableFactory(); + embeddable.registerEmbeddableFactory(placeholderFactory.type, placeholderFactory); + const { appMounted, appUnMounted, stop: stopUrlTracker } = createKbnUrlTracker({ baseUrl: core.http.basePath.prepend('/app/kibana'), defaultSubUrl: `#${DashboardConstants.LANDING_PAGE_PATH}`, @@ -297,6 +305,11 @@ export class DashboardPlugin ); uiActions.registerAction(changeViewAction); uiActions.attachAction(CONTEXT_MENU_TRIGGER, changeViewAction); + + const clonePanelAction = new ClonePanelAction(core); + uiActions.registerAction(clonePanelAction); + uiActions.attachAction(CONTEXT_MENU_TRIGGER, clonePanelAction); + const savedDashboardLoader = createSavedDashboardLoader({ savedObjectsClient: core.savedObjects.client, indexPatterns, diff --git a/test/functional/apps/dashboard/panel_controls.js b/test/functional/apps/dashboard/panel_controls.js index 52c4a11360355b..6e24b9f3570a3b 100644 --- a/test/functional/apps/dashboard/panel_controls.js +++ b/test/functional/apps/dashboard/panel_controls.js @@ -113,6 +113,50 @@ export default function({ getService, getPageObjects }) { }); }); + describe('panel cloning', function() { + before(async () => { + await PageObjects.dashboard.clickNewDashboard(); + await PageObjects.timePicker.setHistoricalDataRange(); + await dashboardAddPanel.addVisualization(PIE_CHART_VIS_NAME); + }); + + after(async function() { + await PageObjects.dashboard.gotoDashboardLandingPage(); + }); + + it('clones a panel', async () => { + const initialPanelTitles = await PageObjects.dashboard.getPanelTitles(); + await dashboardPanelActions.clonePanelByTitle(PIE_CHART_VIS_NAME); + await PageObjects.header.waitUntilLoadingHasFinished(); + await PageObjects.dashboard.waitForRenderComplete(); + const postPanelTitles = await PageObjects.dashboard.getPanelTitles(); + expect(postPanelTitles.length).to.equal(initialPanelTitles.length + 1); + }); + + it('appends a clone title tag', async () => { + const panelTitles = await PageObjects.dashboard.getPanelTitles(); + expect(panelTitles[1]).to.equal(PIE_CHART_VIS_NAME + ' (copy)'); + }); + + it('retains original panel dimensions', async () => { + const panelDimensions = await PageObjects.dashboard.getPanelDimensions(); + expect(panelDimensions[0]).to.eql(panelDimensions[1]); + }); + + it('gives a correct title to the clone of a clone', async () => { + const initialPanelTitles = await PageObjects.dashboard.getPanelTitles(); + const clonedPanelName = initialPanelTitles[initialPanelTitles.length - 1]; + await dashboardPanelActions.clonePanelByTitle(clonedPanelName); + await PageObjects.header.waitUntilLoadingHasFinished(); + await PageObjects.dashboard.waitForRenderComplete(); + const postPanelTitles = await PageObjects.dashboard.getPanelTitles(); + expect(postPanelTitles.length).to.equal(initialPanelTitles.length + 1); + expect(postPanelTitles[postPanelTitles.length - 1]).to.equal( + PIE_CHART_VIS_NAME + ' (copy 1)' + ); + }); + }); + describe('panel edit controls', function() { before(async () => { await PageObjects.dashboard.clickNewDashboard(); @@ -137,6 +181,7 @@ export default function({ getService, getPageObjects }) { await dashboardPanelActions.expectExistsEditPanelAction(); await dashboardPanelActions.expectExistsReplacePanelAction(); + await dashboardPanelActions.expectExistsDuplicatePanelAction(); await dashboardPanelActions.expectExistsRemovePanelAction(); }); @@ -151,6 +196,7 @@ export default function({ getService, getPageObjects }) { await dashboardPanelActions.openContextMenu(); await dashboardPanelActions.expectExistsEditPanelAction(); await dashboardPanelActions.expectExistsReplacePanelAction(); + await dashboardPanelActions.expectExistsDuplicatePanelAction(); await dashboardPanelActions.expectExistsRemovePanelAction(); // Get rid of the timestamp in the url. @@ -166,6 +212,7 @@ export default function({ getService, getPageObjects }) { await dashboardPanelActions.openContextMenu(); await dashboardPanelActions.expectMissingEditPanelAction(); await dashboardPanelActions.expectMissingReplacePanelAction(); + await dashboardPanelActions.expectMissingDuplicatePanelAction(); await dashboardPanelActions.expectMissingRemovePanelAction(); }); @@ -174,6 +221,7 @@ export default function({ getService, getPageObjects }) { await dashboardPanelActions.openContextMenu(); await dashboardPanelActions.expectExistsEditPanelAction(); await dashboardPanelActions.expectExistsReplacePanelAction(); + await dashboardPanelActions.expectExistsDuplicatePanelAction(); await dashboardPanelActions.expectMissingRemovePanelAction(); await dashboardPanelActions.clickExpandPanelToggle(); }); diff --git a/test/functional/services/dashboard/panel_actions.js b/test/functional/services/dashboard/panel_actions.js index baea2a52208c16..b155d747f3b939 100644 --- a/test/functional/services/dashboard/panel_actions.js +++ b/test/functional/services/dashboard/panel_actions.js @@ -20,6 +20,7 @@ const REMOVE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-deletePanel'; const EDIT_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-editPanel'; const REPLACE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-replacePanel'; +const CLONE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-clonePanel'; const TOGGLE_EXPAND_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-togglePanel'; const CUSTOMIZE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-ACTION_CUSTOMIZE_PANEL'; const OPEN_CONTEXT_MENU_ICON_DATA_TEST_SUBJ = 'embeddablePanelToggleMenuIcon'; @@ -97,6 +98,16 @@ export function DashboardPanelActionsProvider({ getService, getPageObjects }) { await testSubjects.click(REPLACE_PANEL_DATA_TEST_SUBJ); } + async clonePanelByTitle(title) { + log.debug(`clonePanel(${title})`); + let panelOptions = null; + if (title) { + panelOptions = await this.getPanelHeading(title); + } + await this.openContextMenu(panelOptions); + await testSubjects.click(CLONE_PANEL_DATA_TEST_SUBJ); + } + async openInspectorByTitle(title) { const header = await this.getPanelHeading(title); await this.openInspector(header); @@ -123,7 +134,12 @@ export function DashboardPanelActionsProvider({ getService, getPageObjects }) { } async expectExistsReplacePanelAction() { - log.debug('expectExistsEditPanelAction'); + log.debug('expectExistsReplacePanelAction'); + await testSubjects.existOrFail(REPLACE_PANEL_DATA_TEST_SUBJ); + } + + async expectExistsDuplicatePanelAction() { + log.debug('expectExistsDuplicatePanelAction'); await testSubjects.existOrFail(REPLACE_PANEL_DATA_TEST_SUBJ); } @@ -133,7 +149,12 @@ export function DashboardPanelActionsProvider({ getService, getPageObjects }) { } async expectMissingReplacePanelAction() { - log.debug('expectMissingEditPanelAction'); + log.debug('expectMissingReplacePanelAction'); + await testSubjects.missingOrFail(REPLACE_PANEL_DATA_TEST_SUBJ); + } + + async expectMissingDuplicatePanelAction() { + log.debug('expectMissingDuplicatePanelAction'); await testSubjects.missingOrFail(REPLACE_PANEL_DATA_TEST_SUBJ); } From c4ddd00540d838add7bdea9faf741ad4f288cca6 Mon Sep 17 00:00:00 2001 From: Pierre Gayvallet Date: Fri, 17 Apr 2020 17:39:06 +0200 Subject: [PATCH 25/59] Add isConfigSchema typeguard and stop using `instanceof Type` checks in core (#63821) * add isConfigSchema type guard * replace instanceof checks with isConfigSchema * add dummy test plugin using a route with validation schema * remove `?.` prop access * remove test plugin * fix test description --- packages/kbn-config-schema/src/index.ts | 1 + .../kbn-config-schema/src/typeguards/index.ts | 20 +++++++ .../src/typeguards/is_config_schema.test.ts | 56 +++++++++++++++++++ .../src/typeguards/is_config_schema.ts | 24 ++++++++ packages/kbn-config-schema/src/types/type.ts | 3 + src/core/server/http/router/router.ts | 4 +- .../server/http/router/validator/validator.ts | 4 +- src/core/server/plugins/plugin.ts | 4 +- 8 files changed, 110 insertions(+), 6 deletions(-) create mode 100644 packages/kbn-config-schema/src/typeguards/index.ts create mode 100644 packages/kbn-config-schema/src/typeguards/is_config_schema.test.ts create mode 100644 packages/kbn-config-schema/src/typeguards/is_config_schema.ts diff --git a/packages/kbn-config-schema/src/index.ts b/packages/kbn-config-schema/src/index.ts index fc3e3c541846ab..5d387f327e58fd 100644 --- a/packages/kbn-config-schema/src/index.ts +++ b/packages/kbn-config-schema/src/index.ts @@ -60,6 +60,7 @@ import { export { ObjectType, TypeOf, Type }; export { ByteSizeValue } from './byte_size_value'; export { SchemaTypeError, ValidationError } from './errors'; +export { isConfigSchema } from './typeguards'; function any(options?: TypeOptions) { return new AnyType(options); diff --git a/packages/kbn-config-schema/src/typeguards/index.ts b/packages/kbn-config-schema/src/typeguards/index.ts new file mode 100644 index 00000000000000..e724878eb33e9a --- /dev/null +++ b/packages/kbn-config-schema/src/typeguards/index.ts @@ -0,0 +1,20 @@ +/* + * 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 { isConfigSchema } from './is_config_schema'; diff --git a/packages/kbn-config-schema/src/typeguards/is_config_schema.test.ts b/packages/kbn-config-schema/src/typeguards/is_config_schema.test.ts new file mode 100644 index 00000000000000..e0ef3835ca0a37 --- /dev/null +++ b/packages/kbn-config-schema/src/typeguards/is_config_schema.test.ts @@ -0,0 +1,56 @@ +/* + * 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 { schema } from '..'; +import { isConfigSchema } from './is_config_schema'; + +describe('isConfigSchema', () => { + it('returns true for every sub classes of `Type`', () => { + expect(isConfigSchema(schema.any())).toBe(true); + expect(isConfigSchema(schema.arrayOf(schema.string()))).toBe(true); + expect(isConfigSchema(schema.boolean())).toBe(true); + expect(isConfigSchema(schema.buffer())).toBe(true); + expect(isConfigSchema(schema.byteSize())).toBe(true); + expect(isConfigSchema(schema.duration())).toBe(true); + expect(isConfigSchema(schema.literal(''))).toBe(true); + expect(isConfigSchema(schema.mapOf(schema.string(), schema.number()))).toBe(true); + expect(isConfigSchema(schema.nullable(schema.string()))).toBe(true); + expect(isConfigSchema(schema.number())).toBe(true); + expect(isConfigSchema(schema.object({}))).toBe(true); + expect(isConfigSchema(schema.oneOf([schema.string()]))).toBe(true); + expect(isConfigSchema(schema.recordOf(schema.string(), schema.object({})))).toBe(true); + expect(isConfigSchema(schema.string())).toBe(true); + expect(isConfigSchema(schema.stream())).toBe(true); + }); + + it('returns false for every javascript data type', () => { + expect(isConfigSchema('foo')).toBe(false); + expect(isConfigSchema(42)).toBe(false); + expect(isConfigSchema(new Date())).toBe(false); + expect(isConfigSchema(null)).toBe(false); + expect(isConfigSchema(undefined)).toBe(false); + expect(isConfigSchema([1, 2, 3])).toBe(false); + expect(isConfigSchema({ foo: 'bar' })).toBe(false); + expect(isConfigSchema(function() {})).toBe(false); + }); + + it('returns true as long as `__isKbnConfigSchemaType` is true', () => { + expect(isConfigSchema({ __isKbnConfigSchemaType: true })).toBe(true); + }); +}); diff --git a/packages/kbn-config-schema/src/typeguards/is_config_schema.ts b/packages/kbn-config-schema/src/typeguards/is_config_schema.ts new file mode 100644 index 00000000000000..20e68ab2ead254 --- /dev/null +++ b/packages/kbn-config-schema/src/typeguards/is_config_schema.ts @@ -0,0 +1,24 @@ +/* + * 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 { Type } from '../types'; + +export function isConfigSchema(obj: any): obj is Type { + return obj ? obj.__isKbnConfigSchemaType === true : false; +} diff --git a/packages/kbn-config-schema/src/types/type.ts b/packages/kbn-config-schema/src/types/type.ts index 6d5ddf6b24afb5..5ca16c61399e7e 100644 --- a/packages/kbn-config-schema/src/types/type.ts +++ b/packages/kbn-config-schema/src/types/type.ts @@ -32,6 +32,9 @@ export abstract class Type { // sets the value to `null` while still keeping the type. public readonly type: V = null! as V; + // used for the `isConfigSchema` typeguard + public readonly __isKbnConfigSchemaType = true; + /** * Internal "schema" backed by Joi. * @type {Schema} diff --git a/src/core/server/http/router/router.ts b/src/core/server/http/router/router.ts index b4e7fc2a989b69..69402a74eda5f2 100644 --- a/src/core/server/http/router/router.ts +++ b/src/core/server/http/router/router.ts @@ -20,7 +20,7 @@ import { Request, ResponseObject, ResponseToolkit } from 'hapi'; import Boom from 'boom'; -import { Type } from '@kbn/config-schema'; +import { isConfigSchema } from '@kbn/config-schema'; import { Logger } from '../../logging'; import { KibanaRequest } from './request'; import { KibanaResponseFactory, kibanaResponseFactory, IKibanaResponse } from './response'; @@ -139,7 +139,7 @@ function routeSchemasFromRouteConfig( if (route.validate !== false) { Object.entries(route.validate).forEach(([key, schema]) => { - if (!(schema instanceof Type || typeof schema === 'function')) { + if (!(isConfigSchema(schema) || typeof schema === 'function')) { throw new Error( `Expected a valid validation logic declared with '@kbn/config-schema' package or a RouteValidationFunction at key: [${key}].` ); diff --git a/src/core/server/http/router/validator/validator.ts b/src/core/server/http/router/validator/validator.ts index 97dd2bc894f813..6c766e69f0f37f 100644 --- a/src/core/server/http/router/validator/validator.ts +++ b/src/core/server/http/router/validator/validator.ts @@ -17,7 +17,7 @@ * under the License. */ -import { ValidationError, Type, schema, ObjectType } from '@kbn/config-schema'; +import { ValidationError, Type, schema, ObjectType, isConfigSchema } from '@kbn/config-schema'; import { Stream } from 'stream'; import { RouteValidationError } from './validator_error'; @@ -236,7 +236,7 @@ export class RouteValidator

    { data?: unknown, namespace?: string ): RouteValidationResultType { - if (validationRule instanceof Type) { + if (isConfigSchema(validationRule)) { return validationRule.validate(data, {}, namespace); } else if (typeof validationRule === 'function') { return this.validateFunction(validationRule, data, namespace); diff --git a/src/core/server/plugins/plugin.ts b/src/core/server/plugins/plugin.ts index 7c67ab7a48df1d..d7cfaa14d23434 100644 --- a/src/core/server/plugins/plugin.ts +++ b/src/core/server/plugins/plugin.ts @@ -21,7 +21,7 @@ import { join } from 'path'; import typeDetect from 'type-detect'; import { Subject } from 'rxjs'; import { first } from 'rxjs/operators'; -import { Type } from '@kbn/config-schema'; +import { isConfigSchema } from '@kbn/config-schema'; import { Logger } from '../logging'; import { @@ -150,7 +150,7 @@ export class PluginWrapper< } const configDescriptor = pluginDefinition.config; - if (!(configDescriptor.schema instanceof Type)) { + if (!isConfigSchema(configDescriptor.schema)) { throw new Error('Configuration schema expected to be an instance of Type'); } return configDescriptor; From 7efe7e88d31d3ccaf503ee2f864610b25c63165c Mon Sep 17 00:00:00 2001 From: Justin Kambic Date: Fri, 17 Apr 2020 11:50:20 -0400 Subject: [PATCH 26/59] [Uptime] Remove monitor states graphql (#62853) * WIP replacing GQL with redux/rest. * Finish implementing migration. * Introduce new connected component for ping list. * Replace GraphQL type with io-ts. * Update some broken tests. * Add test for new helper function. * Write test snapshots. * Migrate api tests from graphql to rest. * Update fixtures that rely on pings. * Move ping types to runtime_types folder with rest of io-ts files. * Update Ping type location and imports, type checking. * Remove reliance on fixtures for ping functional API tests. * Fix broken unit tests. * Fix broken types. * Remove local state storage from parent components. * Add functional test to cover Ping List functionality. * Fix monitor page functional test that was broken by merge conflicts. * Fix broken tests. * Fix broken API test. * Replace a test with a describe block that will pre-navigate all tests. * Delete unused reducer keys. * Re-introduce loading to ping list reducer. * Inroduce code that will cause PingList to re-fetch when refresh button is pressed. * Update expanded rows to support multiple concurrent expanded rows. * Modify pingList reducer to have singular optional error field. * Delete unnecessary helper code. * Delete unused interface. * Add runtime_type to parse getPings params, fix pagination index. * Add dedicated monitor type to runtime_types. * Fix broken tests. * Fix broken tests. * Rename '@timestamp' property to 'timestamp' on Ping type. * Fix broken type and key pings list table on document ID instead of timestamp. * Fix broken unit tests. * Fix broken tests and types. * Fix broken functional test. * Add REST endpoint for monitor states. * Add REST route to constants file. * Introduce io-ts typing for monitor states. * Remove remaining GraphQL types. * Update monitor states types to use io-ts types. * Add state management for monitor states. * Introduce connected monitor list component. * Fixup runtime types for monitor states. * Remove all remaining references to apollo graphql. * Update URL generator function tests to use inline snapshots instead of snapshot files. * Fix missing imports and small type issues. * Prefer inline snapshot to object literal comparison. * Add type check and console log to API response. * Update README to remove graphql references. * Fix type error. * Make monitor list refresh when global refresh button is pressed. * Fix broken types. * Rename `@timestamp` field to `timestamp`. * Change spelling of var. * Add timestamp map for `@timestamp` field in monitor states fetcher. * Remove need for `monito_states` fixture. * Write test code that allows for deletion of the `monitor_states_id_filtered` fixture. * Rewrite pagination tests to no longer rely on monitor states page fixtures. * Skip test that is causing other functional tests to fail. * Remove unused translations. * Fix broken test snapshots. * Fix stale error reporting errors. * Remove runtime validation from REST handler. Co-authored-by: Elastic Machine --- x-pack/legacy/plugins/uptime/README.md | 17 +- .../common/constants/context_defaults.ts | 2 +- .../uptime/common/constants/rest_api.ts | 1 + .../plugins/uptime/common/graphql/types.ts | 232 --- .../common/runtime_types/monitor/index.ts | 1 + .../common/runtime_types/monitor/state.ts | 145 ++ .../public/components/connected/index.ts | 1 + .../monitor/list_drawer_container.tsx | 3 +- .../connected/monitor/monitor_list.tsx | 31 + .../monitor_bar_series.test.tsx.snap | 1 - .../__tests__/monitor_bar_series.test.tsx | 13 +- .../functional/charts/monitor_bar_series.tsx | 18 +- .../public/components/functional/index.ts | 2 +- .../__snapshots__/monitor_list.test.tsx.snap | 909 +++++++--- .../monitor_list_pagination.test.tsx.snap | 307 ---- .../__tests__/monitor_list.test.tsx | 217 ++- .../monitor_list_pagination.test.tsx | 126 -- .../monitor_list_status_column.test.tsx | 47 +- .../functional/monitor_list/index.ts | 2 +- .../functional/monitor_list/monitor_list.tsx | 206 ++- .../monitor_list_drawer.test.tsx.snap | 8 +- .../__tests__/integration_group.test.tsx | 3 +- .../__tests__/monitor_list_drawer.test.tsx | 11 +- .../__tests__/monitor_status_list.test.tsx | 52 +- .../monitor_list_drawer/integration_group.tsx | 2 +- .../monitor_list_actions_popover.tsx | 2 +- .../monitor_list_drawer.tsx | 3 +- .../monitor_status_list.tsx | 2 +- .../monitor_list_status_column.tsx | 2 +- .../public/components/higher_order/index.ts | 1 - .../higher_order/uptime_graphql_query.tsx | 89 - .../framework/apollo_client_adapter.ts | 16 - .../framework/framework_adapter_types.ts | 12 - .../framework/new_platform_adapter.tsx | 2 - .../format_error_string.test.ts.snap | 7 - .../__tests__/format_error_string.test.ts | 41 - .../public/lib/helper/format_error_list.ts | 20 - .../__snapshots__/get_apm_href.test.ts.snap | 5 - .../__snapshots__/get_infra_href.test.ts.snap | 19 - .../get_logging_href.test.ts.snap | 13 - .../__tests__/get_apm_href.test.ts | 12 +- .../__tests__/get_infra_href.test.ts | 57 +- .../__tests__/get_logging_href.test.ts | 35 +- .../observability_integration/build_href.ts | 2 +- .../observability_integration/get_apm_href.ts | 2 +- .../get_infra_href.ts | 2 +- .../get_logging_href.ts | 2 +- .../lib/helper/series_has_down_values.ts | 4 +- .../legacy/plugins/uptime/public/lib/lib.ts | 8 +- .../plugins/uptime/public/pages/overview.tsx | 60 +- .../public/queries/monitor_states_query.ts | 110 -- .../uptime/public/state/actions/index.ts | 1 + .../public/state/actions/monitor_list.ts | 12 + .../public/state/actions/monitor_status.ts | 1 + .../plugins/uptime/public/state/api/index.ts | 1 + .../uptime/public/state/api/monitor_list.ts | 19 + .../uptime/public/state/effects/index.ts | 2 + .../public/state/effects/monitor_list.ts | 17 + .../uptime/public/state/reducers/index.ts | 2 + .../public/state/reducers/monitor_duration.ts | 4 +- .../public/state/reducers/monitor_list.ts | 51 + .../state/selectors/__tests__/index.test.ts | 9 + .../uptime/public/state/selectors/index.ts | 5 + .../plugins/uptime/public/uptime_app.tsx | 41 +- .../plugins/uptime/scripts/gql_gen.json | 11 - .../uptime/scripts/infer_graphql_types.js | 45 - .../translations/translations/ja-JP.json | 1 - .../translations/translations/zh-CN.json | 1 - .../uptime/server/graphql/constants.ts | 7 - x-pack/plugins/uptime/server/graphql/index.ts | 17 - .../server/graphql/monitor_states/index.ts | 8 - .../graphql/monitor_states/resolvers.ts | 76 - .../graphql/monitor_states/schema.gql.ts | 183 -- .../uptime/server/graphql/pings/index.ts | 7 - .../uptime/server/graphql/pings/schema.gql.ts | 264 --- x-pack/plugins/uptime/server/graphql/types.ts | 23 - .../__tests__/parse_literal.test.ts | 42 - .../__tests__/parse_value.test.ts | 19 - .../__tests__/serialize.test.ts | 24 - .../graphql/unsigned_int_scalar/index.ts | 8 - .../graphql/unsigned_int_scalar/resolvers.ts | 51 - .../graphql/unsigned_int_scalar/schema.gql.ts | 11 - .../lib/adapters/framework/adapter_types.ts | 2 - .../framework/kibana_framework_adapter.ts | 70 - .../lib/requests/get_monitor_details.ts | 4 +- .../server/lib/requests/get_monitor_states.ts | 5 +- .../search/__tests__/fetch_page.test.ts | 51 +- .../search/__tests__/query_context.test.ts | 2 +- .../requests/search/__tests__/test_helpers.ts | 2 +- .../requests/search/enrich_monitor_groups.ts | 15 +- .../server/lib/requests/search/fetch_page.ts | 2 +- .../requests/search/find_potential_matches.ts | 2 +- .../requests/search/monitor_group_iterator.ts | 2 +- .../search/refine_potential_matches.ts | 2 +- .../server/lib/requests/search/types.ts | 2 +- .../plugins/uptime/server/rest_api/index.ts | 2 + .../uptime/server/rest_api/monitors/index.ts | 1 + .../server/rest_api/monitors/monitor_list.ts | 69 + x-pack/plugins/uptime/server/uptime_server.ts | 8 - .../apis/uptime/feature_controls.ts | 26 - .../graphql/fixtures/monitor_states.json | 1609 ----------------- .../fixtures/monitor_states_id_filtered.json | 169 -- .../fixtures/monitor_states_page_1.json | 1609 ----------------- .../fixtures/monitor_states_page_10.json | 1609 ----------------- .../monitor_states_page_10_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_2.json | 1609 ----------------- .../monitor_states_page_2_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_3.json | 1609 ----------------- .../monitor_states_page_3_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_4.json | 1609 ----------------- .../monitor_states_page_4_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_5.json | 1609 ----------------- .../monitor_states_page_5_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_6.json | 1609 ----------------- .../monitor_states_page_6_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_7.json | 1609 ----------------- .../monitor_states_page_7_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_8.json | 1609 ----------------- .../monitor_states_page_8_previous.json | 1609 ----------------- .../fixtures/monitor_states_page_9.json | 1609 ----------------- .../monitor_states_page_9_previous.json | 1609 ----------------- .../apis/uptime/graphql/index.ts | 17 - .../apis/uptime/graphql/monitor_states.ts | 245 --- .../test/api_integration/apis/uptime/index.ts | 1 - .../apis/uptime/rest/doc_count.ts | 2 +- .../apis/uptime/rest/filters.ts | 2 +- .../{graphql => rest}/fixtures/filters.json | 0 .../fixtures/monitor_status.json | 0 .../fixtures/monitor_status_all.json | 0 .../fixtures/monitors_with_location.json | 0 .../{graphql => rest}/fixtures/snapshot.json | 0 .../fixtures/snapshot_empty.json | 0 .../fixtures/snapshot_filtered_by_down.json | 0 .../fixtures/snapshot_filtered_by_up.json | 0 .../helper}/expect_fixture_eql.ts | 6 +- .../helpers => rest/helper}/make_checks.ts | 0 .../api_integration/apis/uptime/rest/index.ts | 2 + .../apis/uptime/rest/monitor_duration.ts | 2 +- .../apis/uptime/rest/monitor_latest_status.ts | 2 +- .../uptime/rest/monitor_states_generated.ts | 193 ++ .../uptime/rest/monitor_states_real_data.ts | 525 ++++++ .../apis/uptime/rest/ping_histogram.ts | 2 +- .../apis/uptime/rest/snapshot.ts | 4 +- .../apis/uptime/rest/telemetry_collectors.ts | 2 +- .../test/functional/apps/uptime/locations.ts | 2 +- .../test/functional/apps/uptime/settings.ts | 2 +- 146 files changed, 2261 insertions(+), 35212 deletions(-) delete mode 100644 x-pack/legacy/plugins/uptime/common/graphql/types.ts create mode 100644 x-pack/legacy/plugins/uptime/common/runtime_types/monitor/state.ts create mode 100644 x-pack/legacy/plugins/uptime/public/components/connected/monitor/monitor_list.tsx delete mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list_pagination.test.tsx.snap delete mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_pagination.test.tsx delete mode 100644 x-pack/legacy/plugins/uptime/public/components/higher_order/uptime_graphql_query.tsx delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/adapters/framework/apollo_client_adapter.ts delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/adapters/framework/framework_adapter_types.ts delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/__snapshots__/format_error_string.test.ts.snap delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/format_error_string.test.ts delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/helper/format_error_list.ts delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_apm_href.test.ts.snap delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_infra_href.test.ts.snap delete mode 100644 x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_logging_href.test.ts.snap delete mode 100644 x-pack/legacy/plugins/uptime/public/queries/monitor_states_query.ts create mode 100644 x-pack/legacy/plugins/uptime/public/state/actions/monitor_list.ts create mode 100644 x-pack/legacy/plugins/uptime/public/state/api/monitor_list.ts create mode 100644 x-pack/legacy/plugins/uptime/public/state/effects/monitor_list.ts create mode 100644 x-pack/legacy/plugins/uptime/public/state/reducers/monitor_list.ts delete mode 100644 x-pack/legacy/plugins/uptime/scripts/gql_gen.json delete mode 100644 x-pack/legacy/plugins/uptime/scripts/infer_graphql_types.js delete mode 100644 x-pack/plugins/uptime/server/graphql/constants.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/index.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/monitor_states/index.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/monitor_states/resolvers.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/monitor_states/schema.gql.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/pings/index.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/pings/schema.gql.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/types.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_literal.test.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_value.test.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/serialize.test.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/index.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/resolvers.ts delete mode 100644 x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/schema.gql.ts create mode 100644 x-pack/plugins/uptime/server/rest_api/monitors/monitor_list.ts delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_id_filtered.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_1.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9_previous.json delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/index.ts delete mode 100644 x-pack/test/api_integration/apis/uptime/graphql/monitor_states.ts rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/filters.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/monitor_status.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/monitor_status_all.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/monitors_with_location.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/snapshot.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/snapshot_empty.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/snapshot_filtered_by_down.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql => rest}/fixtures/snapshot_filtered_by_up.json (100%) rename x-pack/test/api_integration/apis/uptime/{graphql/helpers => rest/helper}/expect_fixture_eql.ts (87%) rename x-pack/test/api_integration/apis/uptime/{graphql/helpers => rest/helper}/make_checks.ts (100%) create mode 100644 x-pack/test/api_integration/apis/uptime/rest/monitor_states_generated.ts create mode 100644 x-pack/test/api_integration/apis/uptime/rest/monitor_states_real_data.ts diff --git a/x-pack/legacy/plugins/uptime/README.md b/x-pack/legacy/plugins/uptime/README.md index 2ed0e2fc77cbc8..92162341ff4266 100644 --- a/x-pack/legacy/plugins/uptime/README.md +++ b/x-pack/legacy/plugins/uptime/README.md @@ -3,7 +3,7 @@ ## Purpose The purpose of this plugin is to provide users of Heartbeat more visibility of what's happening -in their infrastructure. It's primarily built using React and Apollo's GraphQL tools. +in their infrastructure. ## Layout @@ -11,13 +11,15 @@ There are three sections to the app, `common`, `public`, and `server`. ### common -Contains GraphQL types, constants and a few other files. +Contains runtime types types, constants and a few other files. + +Notably, we use `io-ts`/`fp-ts` functions and types to help provide +additional runtime safety for our API requests/responses. ### public -Components come in two main types, queries and functional. Queries are extended from Apollo's queries -type which abstracts a lot of the GraphQL connectivity away. Functional are dumb components that -don't store any state. +We use Redux and associated tools for managing our app state. Components come in the usual `connect`ed and +presentational varieties. The `lib` directory controls bootstrapping code and adapter types. @@ -27,12 +29,13 @@ The principal structure of the app is stored in `uptime_app.tsx`. ### server -There is a `graphql` directory which contains the resolvers, schema files, and constants. - The `lib` directory contains `adapters`, which are connections to external resources like Kibana Server, Elasticsearch, etc. In addition, it contains domains, which are libraries that provide functionality via adapters. +The `requests` directory contains functions responsible for querying Elasticsearch and parsing its +responses. + There's also a `rest_api` folder that defines the structure of the RESTful API endpoints. ## Testing diff --git a/x-pack/legacy/plugins/uptime/common/constants/context_defaults.ts b/x-pack/legacy/plugins/uptime/common/constants/context_defaults.ts index 540e60a28b066c..c6b79afd9043b5 100644 --- a/x-pack/legacy/plugins/uptime/common/constants/context_defaults.ts +++ b/x-pack/legacy/plugins/uptime/common/constants/context_defaults.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { SortOrder, CursorDirection } from '../graphql/types'; +import { CursorDirection, SortOrder } from '../runtime_types'; /** * The Uptime UI utilizes a settings context, the defaults for which are stored here. diff --git a/x-pack/legacy/plugins/uptime/common/constants/rest_api.ts b/x-pack/legacy/plugins/uptime/common/constants/rest_api.ts index dffa131870db15..9721d396625fc7 100644 --- a/x-pack/legacy/plugins/uptime/common/constants/rest_api.ts +++ b/x-pack/legacy/plugins/uptime/common/constants/rest_api.ts @@ -7,6 +7,7 @@ export enum API_URLS { INDEX_PATTERN = `/api/uptime/index_pattern`, INDEX_STATUS = '/api/uptime/index_status', + MONITOR_LIST = `/api/uptime/monitor/list`, MONITOR_LOCATIONS = `/api/uptime/monitor/locations`, MONITOR_DURATION = `/api/uptime/monitor/duration`, MONITOR_DETAILS = `/api/uptime/monitor/details`, diff --git a/x-pack/legacy/plugins/uptime/common/graphql/types.ts b/x-pack/legacy/plugins/uptime/common/graphql/types.ts deleted file mode 100644 index 506966ec6b5c9c..00000000000000 --- a/x-pack/legacy/plugins/uptime/common/graphql/types.ts +++ /dev/null @@ -1,232 +0,0 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Scalars -// ==================================================== - -export type UnsignedInteger = any; - -// ==================================================== -// Types -// ==================================================== - -export interface Query { - /** Fetches the current state of Uptime monitors for the given parameters. */ - getMonitorStates?: MonitorSummaryResult | null; -} - -/** The monitor's status for a ping */ -export interface Duration { - us?: UnsignedInteger | null; -} - -export interface Rtt { - connect?: Duration | null; - - handshake?: Duration | null; - - validate?: Duration | null; -} - -export interface Summary { - up?: number | null; - - down?: number | null; - - geo?: CheckGeo | null; -} - -export interface CheckGeo { - name?: string | null; - - location?: Location | null; -} - -export interface Location { - lat?: number | null; - - lon?: number | null; -} - -export interface DocCount { - count: UnsignedInteger; -} - -/** The primary object returned for monitor states. */ -export interface MonitorSummaryResult { - /** Used to go to the next page of results */ - prevPagePagination?: string | null; - /** Used to go to the previous page of results */ - nextPagePagination?: string | null; - /** The objects representing the state of a series of heartbeat monitors. */ - summaries?: MonitorSummary[] | null; - /** The number of summaries. */ - totalSummaryCount: number; -} -/** Represents the current state and associated data for an Uptime monitor. */ -export interface MonitorSummary { - /** The ID assigned by the config or generated by the user. */ - monitor_id: string; - /** The state of the monitor and its associated details. */ - state: State; - - histogram?: SummaryHistogram | null; -} -/** Unifies the subsequent data for an uptime monitor. */ -export interface State { - /** The agent processing the monitor. */ - agent?: Agent | null; - /** There is a check object for each instance of the monitoring agent. */ - checks?: Check[] | null; - - geo?: StateGeo | null; - - observer?: StateObserver | null; - - monitor?: MonitorState | null; - - summary: Summary; - - timestamp: UnsignedInteger; - /** Transport encryption information. */ - tls?: (StateTls | null)[] | null; - - url?: StateUrl | null; -} - -export interface Agent { - id: string; -} - -export interface Check { - agent?: Agent | null; - - container?: StateContainer | null; - - kubernetes?: StateKubernetes | null; - - monitor: CheckMonitor; - - observer?: CheckObserver | null; - - timestamp: string; -} - -export interface StateContainer { - id?: string | null; -} - -export interface StateKubernetes { - pod?: StatePod | null; -} - -export interface StatePod { - uid?: string | null; -} - -export interface CheckMonitor { - ip?: string | null; - - name?: string | null; - - status: string; -} - -export interface CheckObserver { - geo?: CheckGeo | null; -} - -export interface StateGeo { - name?: (string | null)[] | null; - - location?: Location | null; -} - -export interface StateObserver { - geo?: StateGeo | null; -} - -export interface MonitorState { - status?: string | null; - - name?: string | null; - - id?: string | null; - - type?: string | null; -} -/** Contains monitor transmission encryption information. */ -export interface StateTls { - /** The date and time after which the certificate is invalid. */ - certificate_not_valid_after?: string | null; - - certificate_not_valid_before?: string | null; - - certificates?: string | null; - - rtt?: Rtt | null; -} - -export interface StateUrl { - domain?: string | null; - - full?: string | null; - - path?: string | null; - - port?: number | null; - - scheme?: string | null; -} -/** Monitor status data over time. */ -export interface SummaryHistogram { - /** The number of documents used to assemble the histogram. */ - count: number; - /** The individual histogram data points. */ - points: SummaryHistogramPoint[]; -} -/** Represents a monitor's statuses for a period of time. */ -export interface SummaryHistogramPoint { - /** The time at which these data were collected. */ - timestamp: UnsignedInteger; - /** The number of _up_ documents. */ - up: number; - /** The number of _down_ documents. */ - down: number; -} - -export interface GetMonitorStatesQueryArgs { - dateRangeStart: string; - - dateRangeEnd: string; - - pagination?: string | null; - - filters?: string | null; - - statusFilter?: string | null; - - pageSize: number; -} - -// ==================================================== -// Enums -// ==================================================== - -export enum CursorDirection { - AFTER = 'AFTER', - BEFORE = 'BEFORE', -} - -export enum SortOrder { - ASC = 'ASC', - DESC = 'DESC', -} - -// ==================================================== -// END: Typescript template -// ==================================================== diff --git a/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/index.ts b/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/index.ts index 80b48d09dc5b80..46b19d8442a943 100644 --- a/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/index.ts +++ b/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/index.ts @@ -6,3 +6,4 @@ export * from './details'; export * from './locations'; +export * from './state'; diff --git a/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/state.ts b/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/state.ts new file mode 100644 index 00000000000000..90aa692f89a42f --- /dev/null +++ b/x-pack/legacy/plugins/uptime/common/runtime_types/monitor/state.ts @@ -0,0 +1,145 @@ +/* + * 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 * as t from 'io-ts'; + +export const CheckMonitorType = t.intersection([ + t.partial({ + name: t.string, + ip: t.union([t.array(t.string), t.string]), + }), + t.type({ + status: t.string, + }), +]); + +export const CheckType = t.intersection([ + t.partial({ + agent: t.partial({ + id: t.string, + }), + container: t.type({ + id: t.string, + }), + kubernetes: t.type({ + pod: t.type({ + uid: t.string, + }), + }), + observer: t.type({ + geo: t.partial({ + name: t.string, + location: t.partial({ + lat: t.number, + lon: t.number, + }), + }), + }), + }), + t.type({ + monitor: CheckMonitorType, + timestamp: t.number, + }), +]); + +export type Check = t.TypeOf; + +export const StateType = t.intersection([ + t.partial({ + checks: t.array(CheckType), + observer: t.partial({ + geo: t.partial({ + name: t.array(t.string), + }), + }), + summary: t.partial({ + up: t.number, + down: t.number, + geo: t.partial({ + name: t.string, + location: t.partial({ + lat: t.number, + lon: t.number, + }), + }), + }), + }), + t.type({ + timestamp: t.string, + url: t.partial({ + domain: t.string, + full: t.string, + path: t.string, + port: t.number, + scheme: t.string, + }), + }), +]); + +export const HistogramPointType = t.type({ + timestamp: t.number, + up: t.number, + down: t.number, +}); + +export type HistogramPoint = t.TypeOf; + +export const HistogramType = t.type({ + count: t.number, + points: t.array(HistogramPointType), +}); + +export type Histogram = t.TypeOf; + +export const MonitorSummaryType = t.intersection([ + t.type({ + monitor_id: t.string, + state: StateType, + }), + t.partial({ + histogram: HistogramType, + }), +]); + +export type MonitorSummary = t.TypeOf; + +export const MonitorSummaryResultType = t.intersection([ + t.partial({ + summaries: t.array(MonitorSummaryType), + }), + t.type({ + prevPagePagination: t.union([t.string, t.null]), + nextPagePagination: t.union([t.string, t.null]), + totalSummaryCount: t.number, + }), +]); + +export type MonitorSummaryResult = t.TypeOf; + +export const FetchMonitorStatesQueryArgsType = t.intersection([ + t.partial({ + pagination: t.string, + filters: t.string, + statusFilter: t.string, + }), + t.type({ + dateRangeStart: t.string, + dateRangeEnd: t.string, + pageSize: t.number, + }), +]); + +export type FetchMonitorStatesQueryArgs = t.TypeOf; + +export enum CursorDirection { + AFTER = 'AFTER', + BEFORE = 'BEFORE', +} + +export enum SortOrder { + ASC = 'ASC', + DESC = 'DESC', +} diff --git a/x-pack/legacy/plugins/uptime/public/components/connected/index.ts b/x-pack/legacy/plugins/uptime/public/components/connected/index.ts index be3cc5b65aa0ee..94e2529a46a00d 100644 --- a/x-pack/legacy/plugins/uptime/public/components/connected/index.ts +++ b/x-pack/legacy/plugins/uptime/public/components/connected/index.ts @@ -11,6 +11,7 @@ export { KueryBar } from './kuerybar/kuery_bar_container'; export { FilterGroup } from './filter_group/filter_group_container'; export { MonitorStatusDetails } from './monitor/status_details_container'; export { MonitorStatusBar } from './monitor/status_bar_container'; +export { MonitorList } from './monitor/monitor_list'; export { MonitorListDrawer } from './monitor/list_drawer_container'; export { MonitorListActionsPopover } from './monitor/drawer_popover_container'; export { PingList, PingListProps } from './pings'; diff --git a/x-pack/legacy/plugins/uptime/public/components/connected/monitor/list_drawer_container.tsx b/x-pack/legacy/plugins/uptime/public/components/connected/monitor/list_drawer_container.tsx index 70da62d5833af2..37a96ba0396aa5 100644 --- a/x-pack/legacy/plugins/uptime/public/components/connected/monitor/list_drawer_container.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/connected/monitor/list_drawer_container.tsx @@ -12,8 +12,7 @@ import { MonitorDetailsActionPayload } from '../../../state/actions/types'; import { getMonitorDetailsAction } from '../../../state/actions/monitor'; import { MonitorListDrawerComponent } from '../../functional/monitor_list/monitor_list_drawer/monitor_list_drawer'; import { useGetUrlParams } from '../../../hooks'; -import { MonitorSummary } from '../../../../common/graphql/types'; -import { MonitorDetails } from '../../../../common/runtime_types/monitor'; +import { MonitorDetails, MonitorSummary } from '../../../../common/runtime_types'; interface ContainerProps { summary: MonitorSummary; diff --git a/x-pack/legacy/plugins/uptime/public/components/connected/monitor/monitor_list.tsx b/x-pack/legacy/plugins/uptime/public/components/connected/monitor/monitor_list.tsx new file mode 100644 index 00000000000000..c9457664566b75 --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/components/connected/monitor/monitor_list.tsx @@ -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 React, { useCallback } from 'react'; +import { useSelector, useDispatch } from 'react-redux'; +import { getMonitorList } from '../../../state/actions'; +import { FetchMonitorStatesQueryArgs } from '../../../../common/runtime_types'; +import { monitorListSelector } from '../../../state/selectors'; +import { MonitorListComponent } from '../../functional/monitor_list'; + +export interface MonitorListProps { + filters?: string; + linkParameters?: string; +} + +export const MonitorList: React.FC = props => { + const dispatch = useDispatch(); + const dispatchCallback = useCallback( + (params: FetchMonitorStatesQueryArgs) => { + dispatch(getMonitorList(params)); + }, + [dispatch] + ); + const monitorListState = useSelector(monitorListSelector); + return ( + + ); +}; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/monitor_bar_series.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/monitor_bar_series.test.tsx.snap index 8ca73879cab8c0..b389139d71dbfe 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/monitor_bar_series.test.tsx.snap +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/monitor_bar_series.test.tsx.snap @@ -82,7 +82,6 @@ exports[`MonitorBarSeries component shallow renders a series when there are down } > { let props: MonitorBarSeriesProps; - let histogramSeries: SummaryHistogramPoint[]; + let histogramSeries: HistogramPoint[]; beforeEach(() => { props = { - dangerColor: 'A danger color', histogramSeries: [ { timestamp: 124, @@ -193,16 +192,12 @@ describe('MonitorBarSeries component', () => { }); it('shallow renders nothing if the data series is null', () => { - const component = shallowWithRouter( - - ); + const component = shallowWithRouter(); expect(component).toEqual({}); }); it('renders if the data series is present', () => { - const component = renderWithRouter( - - ); + const component = renderWithRouter(); expect(component).toMatchSnapshot(); }); }); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/monitor_bar_series.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/monitor_bar_series.tsx index 6a1e255d308d75..5e11685e361400 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/monitor_bar_series.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/monitor_bar_series.tsx @@ -14,23 +14,20 @@ import { timeFormatter, } from '@elastic/charts'; import { i18n } from '@kbn/i18n'; -import React from 'react'; +import React, { useContext } from 'react'; import moment from 'moment'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiText, EuiToolTip } from '@elastic/eui'; -import { SummaryHistogramPoint } from '../../../../common/graphql/types'; +import { HistogramPoint } from '../../../../common/runtime_types'; import { getChartDateLabel, seriesHasDownValues } from '../../../lib/helper'; import { useUrlParams } from '../../../hooks'; +import { UptimeThemeContext } from '../../../contexts'; export interface MonitorBarSeriesProps { - /** - * The color to use for the display of down states. - */ - dangerColor: string; /** * The timeseries data to display. */ - histogramSeries: SummaryHistogramPoint[] | null; + histogramSeries: HistogramPoint[] | null; } /** @@ -38,7 +35,10 @@ export interface MonitorBarSeriesProps { * so we will only render the series component if there are down counts for the selected monitor. * @param props - the values for the monitor this chart visualizes */ -export const MonitorBarSeries = ({ dangerColor, histogramSeries }: MonitorBarSeriesProps) => { +export const MonitorBarSeries = ({ histogramSeries }: MonitorBarSeriesProps) => { + const { + colors: { danger }, + } = useContext(UptimeThemeContext); const [getUrlParams, updateUrlParams] = useUrlParams(); const { absoluteDateRangeStart, absoluteDateRangeEnd } = getUrlParams(); @@ -68,7 +68,7 @@ export const MonitorBarSeries = ({ dangerColor, histogramSeries }: MonitorBarSer /> [timestamp, down])} name={i18n.translate('xpack.uptime.monitorList.downLineSeries.downLabel', { defaultMessage: 'Down checks', diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/index.ts b/x-pack/legacy/plugins/uptime/public/components/functional/index.ts index d82912a6216e86..07809561c31b7c 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/index.ts +++ b/x-pack/legacy/plugins/uptime/public/components/functional/index.ts @@ -13,7 +13,7 @@ export * from './alerts'; export { DonutChart } from './charts/donut_chart'; export { KueryBarComponent } from './kuery_bar/kuery_bar'; export { MonitorCharts } from './monitor_charts'; -export { MonitorList } from './monitor_list'; +export { MonitorListComponent } from './monitor_list'; export { OverviewPageParsingErrorCallout } from './overview_page_parsing_error_callout'; export { PingListComponent } from './ping_list'; export { PingHistogramComponent } from './charts'; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list.test.tsx.snap index 2b8bc0bb06ddfa..ed5602323d254f 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list.test.tsx.snap +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list.test.tsx.snap @@ -1,125 +1,535 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`MonitorList component renders a no items message when no data is provided 1`] = ` - - - -

    - -
    - - - + + +`; + +exports[`MonitorList component MonitorListPagination component renders the pagination 1`] = ` + + + +`; + +exports[`MonitorList component renders a no items message when no data is provided 1`] = ` + + + +`; + +exports[`MonitorList component renders error list 1`] = ` + + + +`; + +exports[`MonitorList component renders loading state 1`] = ` + + - - - - - - - - - - - - - - - - - - + } + /> + `; exports[`MonitorList component renders the monitor list 1`] = ` @@ -672,185 +1082,132 @@ exports[`MonitorList component renders the monitor list 1`] = ` `; exports[`MonitorList component shallow renders the monitor list 1`] = ` - - - -
    - -
    -
    - - + - - - - - - - - - - - - - - - - -
    -
    + } + /> + `; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list_pagination.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list_pagination.test.tsx.snap deleted file mode 100644 index db5bfa72deb368..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/__snapshots__/monitor_list_pagination.test.tsx.snap +++ /dev/null @@ -1,307 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`MonitorListPagination component renders a no items message when no data is provided 1`] = ` - - - -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -`; - -exports[`MonitorListPagination component renders the monitor list 1`] = ` - - - -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -`; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list.test.tsx index d2030155d0092e..9b1d799a23e379 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list.test.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list.test.tsx @@ -4,17 +4,30 @@ * you may not use this file except in compliance with the Elastic License. */ -import { shallowWithIntl } from 'test_utils/enzyme_helpers'; import React from 'react'; -import { MonitorSummaryResult } from '../../../../../common/graphql/types'; +import { + MonitorSummaryResult, + CursorDirection, + SortOrder, +} from '../../../../../common/runtime_types'; import { MonitorListComponent } from '../monitor_list'; -import { renderWithRouter } from '../../../../lib'; +import { renderWithRouter, shallowWithRouter } from '../../../../lib'; describe('MonitorList component', () => { let result: MonitorSummaryResult; + let localStorageMock: any; beforeEach(() => { + localStorageMock = { + getItem: jest.fn().mockImplementation(() => '25'), + setItem: jest.fn(), + }; + + // @ts-ignore replacing a call to localStorage we use for monitor list size + global.localStorage = localStorageMock; result = { + nextPagePagination: null, + prevPagePagination: null, summaries: [ { monitor_id: 'foo', @@ -25,21 +38,21 @@ describe('MonitorList component', () => { ip: '127.0.0.1', status: 'up', }, - timestamp: '124', + timestamp: 124, }, { monitor: { ip: '127.0.0.2', status: 'down', }, - timestamp: '125', + timestamp: 125, }, { monitor: { ip: '127.0.0.3', status: 'down', }, - timestamp: '126', + timestamp: 126, }, ], summary: { @@ -47,6 +60,7 @@ describe('MonitorList component', () => { down: 2, }, timestamp: '123', + url: {}, }, }, { @@ -58,14 +72,14 @@ describe('MonitorList component', () => { ip: '127.0.0.1', status: 'up', }, - timestamp: '125', + timestamp: 125, }, { monitor: { ip: '127.0.0.2', status: 'up', }, - timestamp: '126', + timestamp: 126, }, ], summary: { @@ -73,6 +87,7 @@ describe('MonitorList component', () => { down: 0, }, timestamp: '125', + url: {}, }, }, ], @@ -81,15 +96,11 @@ describe('MonitorList component', () => { }); it('shallow renders the monitor list', () => { - const component = shallowWithIntl( + const component = shallowWithRouter( ); @@ -97,15 +108,19 @@ describe('MonitorList component', () => { }); it('renders a no items message when no data is provided', () => { - const component = shallowWithIntl( + const component = shallowWithRouter( ); expect(component).toMatchSnapshot(); @@ -114,16 +129,156 @@ describe('MonitorList component', () => { it('renders the monitor list', () => { const component = renderWithRouter( + ); + + expect(component).toMatchSnapshot(); + }); + + it('renders error list', () => { + const component = shallowWithRouter( + ); expect(component).toMatchSnapshot(); }); + + it('renders loading state', () => { + const component = shallowWithRouter( + + ); + + expect(component).toMatchSnapshot(); + }); + + describe('MonitorListPagination component', () => { + let paginationResult: MonitorSummaryResult; + + beforeEach(() => { + paginationResult = { + prevPagePagination: JSON.stringify({ + cursorKey: { monitor_id: 123 }, + cursorDirection: CursorDirection.BEFORE, + sortOrder: SortOrder.ASC, + }), + nextPagePagination: JSON.stringify({ + cursorKey: { monitor_id: 456 }, + cursorDirection: CursorDirection.AFTER, + sortOrder: SortOrder.ASC, + }), + summaries: [ + { + monitor_id: 'foo', + state: { + checks: [ + { + monitor: { + ip: '127.0.0.1', + status: 'up', + }, + timestamp: 124, + }, + { + monitor: { + ip: '127.0.0.2', + status: 'down', + }, + timestamp: 125, + }, + { + monitor: { + ip: '127.0.0.3', + status: 'down', + }, + timestamp: 126, + }, + ], + summary: { + up: 1, + down: 2, + }, + timestamp: '123', + url: {}, + }, + }, + { + monitor_id: 'bar', + state: { + checks: [ + { + monitor: { + ip: '127.0.0.1', + status: 'up', + }, + timestamp: 125, + }, + { + monitor: { + ip: '127.0.0.2', + status: 'up', + }, + timestamp: 126, + }, + ], + summary: { + up: 2, + down: 0, + }, + timestamp: '125', + url: {}, + }, + }, + ], + totalSummaryCount: 2, + }; + }); + + it('renders the pagination', () => { + const component = shallowWithRouter( + + ); + + expect(component).toMatchSnapshot(); + }); + + it('renders a no items message when no data is provided', () => { + const component = shallowWithRouter( + + ); + + expect(component).toMatchSnapshot(); + }); + }); }); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_pagination.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_pagination.test.tsx deleted file mode 100644 index b08b8b3fabc3e3..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_pagination.test.tsx +++ /dev/null @@ -1,126 +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 { shallowWithIntl } from 'test_utils/enzyme_helpers'; -import React from 'react'; -import { - CursorDirection, - MonitorSummaryResult, - SortOrder, -} from '../../../../../common/graphql/types'; -import { MonitorListComponent } from '../monitor_list'; - -describe('MonitorListPagination component', () => { - let result: MonitorSummaryResult; - - beforeEach(() => { - result = { - prevPagePagination: JSON.stringify({ - cursorKey: { monitor_id: 123 }, - cursorDirection: CursorDirection.BEFORE, - sortOrder: SortOrder.ASC, - }), - nextPagePagination: JSON.stringify({ - cursorKey: { monitor_id: 456 }, - cursorDirection: CursorDirection.AFTER, - sortOrder: SortOrder.ASC, - }), - summaries: [ - { - monitor_id: 'foo', - state: { - checks: [ - { - monitor: { - ip: '127.0.0.1', - status: 'up', - }, - timestamp: '124', - }, - { - monitor: { - ip: '127.0.0.2', - status: 'down', - }, - timestamp: '125', - }, - { - monitor: { - ip: '127.0.0.3', - status: 'down', - }, - timestamp: '126', - }, - ], - summary: { - up: 1, - down: 2, - }, - timestamp: '123', - }, - }, - { - monitor_id: 'bar', - state: { - checks: [ - { - monitor: { - ip: '127.0.0.1', - status: 'up', - }, - timestamp: '125', - }, - { - monitor: { - ip: '127.0.0.2', - status: 'up', - }, - timestamp: '126', - }, - ], - summary: { - up: 2, - down: 0, - }, - timestamp: '125', - }, - }, - ], - totalSummaryCount: 2, - }; - }); - - it('renders the monitor list', () => { - const component = shallowWithIntl( - - ); - - expect(component).toMatchSnapshot(); - }); - - it('renders a no items message when no data is provided', () => { - const component = shallowWithIntl( - - ); - expect(component).toMatchSnapshot(); - }); -}); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_status_column.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_status_column.test.tsx index 406e18535f34c3..d765c0b33ea4bb 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_status_column.test.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/__tests__/monitor_list_status_column.test.tsx @@ -8,7 +8,7 @@ import React from 'react'; import moment from 'moment'; import { renderWithIntl, shallowWithIntl } from 'test_utils/enzyme_helpers'; import { getLocationStatus, MonitorListStatusColumn } from '../monitor_list_status_column'; -import { Check } from '../../../../../common/graphql/types'; +import { Check } from '../../../../../common/runtime_types'; import { STATUS } from '../../../../../common/constants'; describe('MonitorListStatusColumn', () => { @@ -29,9 +29,6 @@ describe('MonitorListStatusColumn', () => { beforeEach(() => { upChecks = [ { - agent: { id: '6a2f2a1c-e346-49ed-8418-6d48af8841d6' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -46,12 +43,9 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794631464', + timestamp: 1579794631464, }, { - agent: { id: '1117fd01-bc1a-4aa5-bfab-40ab455eadf9' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -66,12 +60,9 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794634220', + timestamp: 1579794634220, }, { - agent: { id: 'eda59510-45e8-4dfe-b0f8-959c449e3565' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -86,15 +77,12 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794628368', + timestamp: 1579794628368, }, ]; downChecks = [ { - agent: { id: '6a2f2a1c-e346-49ed-8418-6d48af8841d6' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -109,12 +97,9 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794631464', + timestamp: 1579794631464, }, { - agent: { id: '1117fd01-bc1a-4aa5-bfab-40ab455eadf9' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -129,12 +114,9 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794634220', + timestamp: 1579794634220, }, { - agent: { id: 'eda59510-45e8-4dfe-b0f8-959c449e3565' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -149,15 +131,12 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794628368', + timestamp: 1579794628368, }, ]; checks = [ { - agent: { id: '6a2f2a1c-e346-49ed-8418-6d48af8841d6' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -172,12 +151,9 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794631464', + timestamp: 1579794631464, }, { - agent: { id: '1117fd01-bc1a-4aa5-bfab-40ab455eadf9' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -192,12 +168,9 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794634220', + timestamp: 1579794634220, }, { - agent: { id: 'eda59510-45e8-4dfe-b0f8-959c449e3565' }, - container: null, - kubernetes: null, monitor: { ip: '104.86.46.103', name: '', @@ -212,7 +185,7 @@ describe('MonitorListStatusColumn', () => { }, }, }, - timestamp: '1579794628368', + timestamp: 1579794628368, }, ]; }); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/index.ts b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/index.ts index a83330a7a3a0b9..2dc43050f95155 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/index.ts +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/index.ts @@ -4,6 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -export { MonitorList } from './monitor_list'; +export { MonitorListComponent } from './monitor_list'; export { Criteria, Pagination } from './types'; export { LocationLink } from './monitor_list_drawer'; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list.tsx index a9fb1ce2f4be16..6705101ccd5723 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list.tsx @@ -16,17 +16,11 @@ import { EuiTitle, } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; -import React, { useState } from 'react'; +import React, { useState, useEffect } from 'react'; import styled from 'styled-components'; -import { withUptimeGraphQL, UptimeGraphQLQueryProps } from '../../higher_order'; -import { monitorStatesQuery } from '../../../queries/monitor_states_query'; -import { - MonitorSummary, - MonitorSummaryResult, - SummaryHistogramPoint, -} from '../../../../common/graphql/types'; +import { HistogramPoint, FetchMonitorStatesQueryArgs } from '../../../../common/runtime_types'; +import { MonitorSummary } from '../../../../common/runtime_types'; import { MonitorListStatusColumn } from './monitor_list_status_column'; -import { formatUptimeGraphQLErrorList } from '../../../lib/helper/format_error_list'; import { ExpandedRowMap } from './types'; import { MonitorBarSeries } from '../charts'; import { MonitorPageLink } from './monitor_page_link'; @@ -34,36 +28,69 @@ import { OverviewPageLink } from './overview_page_link'; import * as labels from './translations'; import { MonitorListDrawer } from '../../connected'; import { MonitorListPageSizeSelect } from './monitor_list_page_size_select'; +import { MonitorListProps } from '../../connected/monitor/monitor_list'; +import { MonitorList } from '../../../state/reducers/monitor_list'; +import { useUrlParams } from '../../../hooks'; -interface MonitorListQueryResult { - monitorStates?: MonitorSummaryResult; -} - -interface MonitorListProps { - dangerColor: string; - hasActiveFilters: boolean; - successColor: string; - linkParameters?: string; - pageSize: number; - setPageSize: (size: number) => void; +interface Props extends MonitorListProps { + lastRefresh: number; + monitorList: MonitorList; + getMonitorList: (params: FetchMonitorStatesQueryArgs) => void; } -type Props = UptimeGraphQLQueryProps & MonitorListProps; - const TruncatedEuiLink = styled(EuiLink)` white-space: nowrap; overflow: hidden; text-overflow: ellipsis; `; -export const MonitorListComponent = (props: Props) => { - const { dangerColor, data, errors, hasActiveFilters, linkParameters, loading } = props; +const DEFAULT_PAGE_SIZE = 10; +const LOCAL_STORAGE_KEY = 'xpack.uptime.monitorList.pageSize'; +const getPageSizeValue = () => { + const value = parseInt(localStorage.getItem(LOCAL_STORAGE_KEY) ?? '', 10); + if (isNaN(value)) { + return DEFAULT_PAGE_SIZE; + } + return value; +}; + +export const MonitorListComponent: React.FC = ({ + filters, + getMonitorList, + lastRefresh, + monitorList: { list, error, loading }, + linkParameters, +}) => { + const [pageSize, setPageSize] = useState(getPageSizeValue()); const [drawerIds, updateDrawerIds] = useState([]); - const items = data?.monitorStates?.summaries ?? []; + const [getUrlValues] = useUrlParams(); + const { dateRangeStart, dateRangeEnd, pagination, statusFilter } = getUrlValues(); + + useEffect(() => { + getMonitorList({ + dateRangeStart, + dateRangeEnd, + filters, + pageSize, + pagination, + statusFilter, + }); + }, [ + getMonitorList, + dateRangeStart, + dateRangeEnd, + filters, + lastRefresh, + pageSize, + pagination, + statusFilter, + ]); + + const items = list.summaries ?? []; - const nextPagePagination = data?.monitorStates?.nextPagePagination ?? ''; - const prevPagePagination = data?.monitorStates?.prevPagePagination ?? ''; + const nextPagePagination = list.nextPagePagination ?? ''; + const prevPagePagination = list.prevPagePagination ?? ''; const getExpandedRowMap = () => { return drawerIds.reduce((map: ExpandedRowMap, id: string) => { @@ -123,8 +150,8 @@ export const MonitorListComponent = (props: Props) => { mobileOptions: { show: false, }, - render: (histogramSeries: SummaryHistogramPoint[] | null) => ( - + render: (histogramSeries: HistogramPoint[] | null) => ( + ), }, { @@ -153,70 +180,61 @@ export const MonitorListComponent = (props: Props) => { ]; return ( - <> - - -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    - + + +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    ); }; - -export const MonitorList = withUptimeGraphQL( - MonitorListComponent, - monitorStatesQuery -); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/__snapshots__/monitor_list_drawer.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/__snapshots__/monitor_list_drawer.test.tsx.snap index cf754581b1a335..4520b760be3794 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/__snapshots__/monitor_list_drawer.test.tsx.snap +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/__snapshots__/monitor_list_drawer.test.tsx.snap @@ -71,21 +71,21 @@ exports[`MonitorListDrawer component renders a MonitorListDrawer when there are "ip": "127.0.0.1", "status": "up", }, - "timestamp": "121", + "timestamp": 121, }, Object { "monitor": Object { "ip": "127.0.0.2", "status": "down", }, - "timestamp": "123", + "timestamp": 123, }, Object { "monitor": Object { "ip": "127.0.0.3", "status": "up", }, - "timestamp": "125", + "timestamp": 125, }, ], "summary": Object { @@ -175,7 +175,7 @@ exports[`MonitorListDrawer component renders a MonitorListDrawer when there is o "ip": "127.0.0.1", "status": "up", }, - "timestamp": "121", + "timestamp": 121, }, ], "summary": Object { diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/integration_group.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/integration_group.test.tsx index 723f8f9f4430a9..48fa2c97666819 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/integration_group.test.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/integration_group.test.tsx @@ -5,7 +5,7 @@ */ import React from 'react'; -import { MonitorSummary } from '../../../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../../../common/runtime_types'; import { shallowWithIntl } from 'test_utils/enzyme_helpers'; import { IntegrationGroup } from '../integration_group'; @@ -19,6 +19,7 @@ describe('IntegrationGroup', () => { summary: {}, checks: [], timestamp: '123', + url: {}, }, }; }); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_list_drawer.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_list_drawer.test.tsx index d870acefaaea61..4bc0c3f0a40bac 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_list_drawer.test.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_list_drawer.test.tsx @@ -4,10 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ import 'jest'; -import { MonitorSummary, Check } from '../../../../../../common/graphql/types'; import React from 'react'; import { MonitorListDrawerComponent } from '../monitor_list_drawer'; -import { MonitorDetails } from '../../../../../../common/runtime_types'; +import { Check, MonitorDetails, MonitorSummary } from '../../../../../../common/runtime_types'; import { shallowWithRouter } from '../../../../../lib'; describe('MonitorListDrawer component', () => { @@ -24,7 +23,7 @@ describe('MonitorListDrawer component', () => { ip: '127.0.0.1', status: 'up', }, - timestamp: '121', + timestamp: 121, }, ], summary: { @@ -77,21 +76,21 @@ describe('MonitorListDrawer component', () => { ip: '127.0.0.1', status: 'up', }, - timestamp: '121', + timestamp: 121, }, { monitor: { ip: '127.0.0.2', status: 'down', }, - timestamp: '123', + timestamp: 123, }, { monitor: { ip: '127.0.0.3', status: 'up', }, - timestamp: '125', + timestamp: 125, }, ]; summary.state.checks = checks; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_status_list.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_status_list.test.tsx index 8c07d0b1a7d224..c7f3aef4075e13 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_status_list.test.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/__tests__/monitor_status_list.test.tsx @@ -8,7 +8,7 @@ import { shallowWithIntl } from 'test_utils/enzyme_helpers'; import React from 'react'; import moment from 'moment'; import { MonitorStatusList } from '../monitor_status_list'; -import { Check } from '../../../../../../common/graphql/types'; +import { Check } from '../../../../../../common/runtime_types'; describe('MonitorStatusList component', () => { let checks: Check[]; @@ -21,110 +21,92 @@ describe('MonitorStatusList component', () => { beforeEach(() => { checks = [ { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, monitor: { ip: '151.101.130.217', name: 'elastic', status: 'up', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, monitor: { ip: '151.101.194.217', name: 'elastic', status: 'up', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, monitor: { ip: '151.101.2.217', name: 'elastic', status: 'up', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, - container: null, - kubernetes: null, monitor: { ip: '151.101.66.217', name: 'elastic', status: 'up', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, - container: null, - kubernetes: null, monitor: { ip: '2a04:4e42:200::729', name: 'elastic', status: 'down', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, - container: null, - kubernetes: null, monitor: { ip: '2a04:4e42:400::729', name: 'elastic', status: 'down', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, - container: null, - kubernetes: null, monitor: { ip: '2a04:4e42:600::729', name: 'elastic', status: 'down', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, { - agent: { id: '8f9a37fb-573a-4fdc-9895-440a5b39c250' }, - container: null, - kubernetes: null, monitor: { ip: '2a04:4e42::729', name: 'elastic', status: 'down', }, observer: { - geo: { name: null, location: null }, + geo: {}, }, - timestamp: '1570538236414', + timestamp: 1570538236414, }, ]; }); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/integration_group.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/integration_group.tsx index 34bff58a3e2d98..cc06b9a2306c70 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/integration_group.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/integration_group.tsx @@ -19,7 +19,7 @@ import { getLoggingIpHref, getLoggingKubernetesHref, } from '../../../../lib/helper'; -import { MonitorSummary } from '../../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../../common/runtime_types'; import { UptimeSettingsContext } from '../../../../contexts'; interface IntegrationGroupProps { diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_actions_popover.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_actions_popover.tsx index 6b946baa8d4037..c57ecbaa4d3ed5 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_actions_popover.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_actions_popover.tsx @@ -9,7 +9,7 @@ import { i18n } from '@kbn/i18n'; import React from 'react'; import { EuiPopover, EuiButton } from '@elastic/eui'; import { IntegrationGroup } from './integration_group'; -import { MonitorSummary } from '../../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../../common/runtime_types'; import { toggleIntegrationsPopover, PopoverState } from '../../../../state/actions'; interface MonitorListActionsPopoverProps { diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_drawer.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_drawer.tsx index 8383596ccc346a..6dc9ebbef1287d 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_drawer.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_list_drawer.tsx @@ -7,10 +7,9 @@ import React from 'react'; import styled from 'styled-components'; import { EuiLink, EuiSpacer, EuiFlexGroup, EuiFlexItem, EuiIcon, EuiText } from '@elastic/eui'; -import { MonitorSummary } from '../../../../../common/graphql/types'; import { MostRecentError } from './most_recent_error'; import { MonitorStatusList } from './monitor_status_list'; -import { MonitorDetails } from '../../../../../common/runtime_types'; +import { MonitorDetails, MonitorSummary } from '../../../../../common/runtime_types'; import { MonitorListActionsPopover } from '../../../connected'; const ContainerDiv = styled.div` diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_status_list.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_status_list.tsx index a2042e379dd80f..8a46167dcd3bc0 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_status_list.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_drawer/monitor_status_list.tsx @@ -8,9 +8,9 @@ import React from 'react'; import { get, capitalize } from 'lodash'; import { EuiCallOut, EuiSpacer } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; -import { Check } from '../../../../../common/graphql/types'; import { LocationLink } from './location_link'; import { MonitorStatusRow } from './monitor_status_row'; +import { Check } from '../../../../../common/runtime_types'; import { STATUS, UNNAMED_LOCATION } from '../../../../../common/constants'; interface MonitorStatusListProps { diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_status_column.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_status_column.tsx index 7e23be572a6f9c..8076fe66cc2086 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_status_column.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/monitor_list/monitor_list_status_column.tsx @@ -11,7 +11,7 @@ import { capitalize } from 'lodash'; import styled from 'styled-components'; import { EuiHealth, EuiFlexGroup, EuiFlexItem, EuiText, EuiToolTip } from '@elastic/eui'; import { parseTimestamp } from './parse_timestamp'; -import { Check } from '../../../../common/graphql/types'; +import { Check } from '../../../../common/runtime_types'; import { STATUS, SHORT_TIMESPAN_LOCALE, diff --git a/x-pack/legacy/plugins/uptime/public/components/higher_order/index.ts b/x-pack/legacy/plugins/uptime/public/components/higher_order/index.ts index e0e14456cfc684..0682f6d0478f36 100644 --- a/x-pack/legacy/plugins/uptime/public/components/higher_order/index.ts +++ b/x-pack/legacy/plugins/uptime/public/components/higher_order/index.ts @@ -4,5 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { UptimeGraphQLQueryProps, withUptimeGraphQL } from './uptime_graphql_query'; export { ResponsiveWrapperProps, withResponsiveWrapper } from './responsive_wrapper'; diff --git a/x-pack/legacy/plugins/uptime/public/components/higher_order/uptime_graphql_query.tsx b/x-pack/legacy/plugins/uptime/public/components/higher_order/uptime_graphql_query.tsx deleted file mode 100644 index 6839050cec7a8b..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/components/higher_order/uptime_graphql_query.tsx +++ /dev/null @@ -1,89 +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 { OperationVariables } from 'apollo-client'; -import { GraphQLError } from 'graphql'; -import React, { Fragment, useContext, useEffect, useState } from 'react'; -import { withApollo, WithApolloClient } from 'react-apollo'; -import { formatUptimeGraphQLErrorList } from '../../lib/helper/format_error_list'; -import { UptimeRefreshContext } from '../../contexts'; - -export interface UptimeGraphQLQueryProps { - loading: boolean; - data?: T; - errors?: GraphQLError[]; -} - -interface UptimeGraphQLProps { - implementsCustomErrorState?: boolean; - variables: OperationVariables; -} - -/** - * This HOC abstracts the task of querying our GraphQL endpoint, - * which eliminates the need for a lot of boilerplate code in the other components. - * - * @type T - the expected result's type - * @type P - any props the wrapped component will require - * @param WrappedComponent - the consuming component - * @param query - the graphQL query - */ -export function withUptimeGraphQL(WrappedComponent: any, query: any) { - type Props = UptimeGraphQLProps & WithApolloClient & P; - - return withApollo((props: Props) => { - const { lastRefresh } = useContext(UptimeRefreshContext); - const [loading, setLoading] = useState(true); - const [data, setData] = useState(undefined); - const [errors, setErrors] = useState(undefined); - let updateState = ( - loadingVal: boolean, - dataVal: T | undefined, - errorsVal: GraphQLError[] | undefined - ) => { - setLoading(loadingVal); - setData(dataVal); - setErrors(errorsVal); - }; - const { client, implementsCustomErrorState, variables } = props; - const fetch = () => { - setLoading(true); - client - .query({ fetchPolicy: 'network-only', query, variables }) - .then( - (result: any) => { - updateState(result.loading, result.data, result.errors); - }, - (result: any) => { - updateState(false, undefined, result.graphQLErrors); - } - ); - }; - useEffect(() => { - fetch(); - - /** - * If the `then` handler in `fetch`'s promise is fired after - * this component has unmounted, it will try to set state on an - * unmounted component, which indicates a memory leak and will trigger - * React warnings. - * - * We counteract this side effect by providing a cleanup function that will - * reassign the update function to do nothing with the returned values. - */ - return () => { - // this component is planned to be deprecated, for the time being - // we will want to preserve this for the reason above. - // eslint-disable-next-line react-hooks/exhaustive-deps - updateState = () => {}; - }; - }, [variables, lastRefresh]); - if (!implementsCustomErrorState && errors && errors.length > 0) { - return {formatUptimeGraphQLErrorList(errors)}; - } - return ; - }); -} diff --git a/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/apollo_client_adapter.ts b/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/apollo_client_adapter.ts deleted file mode 100644 index 2cec0d5fc8c64d..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/apollo_client_adapter.ts +++ /dev/null @@ -1,16 +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 { InMemoryCache } from 'apollo-cache-inmemory'; -import { ApolloClient } from 'apollo-client'; -import { HttpLink } from 'apollo-link-http'; -import { CreateGraphQLClient } from './framework_adapter_types'; - -export const createApolloClient: CreateGraphQLClient = (uri: string, xsrfHeader: string) => - new ApolloClient({ - link: new HttpLink({ uri, credentials: 'same-origin', headers: { 'kbn-xsrf': xsrfHeader } }), - cache: new InMemoryCache({ dataIdFromObject: () => undefined }), - }); diff --git a/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/framework_adapter_types.ts b/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/framework_adapter_types.ts deleted file mode 100644 index 34cf48514c9324..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/framework_adapter_types.ts +++ /dev/null @@ -1,12 +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 { NormalizedCacheObject } from 'apollo-cache-inmemory'; -import { ApolloClient } from 'apollo-client'; - -export type GraphQLClient = ApolloClient; - -export type CreateGraphQLClient = (url: string, xsrfHeader: string) => GraphQLClient; diff --git a/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/new_platform_adapter.tsx b/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/new_platform_adapter.tsx index a2f3328b986128..71c73bf5ba5d4f 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/new_platform_adapter.tsx +++ b/x-pack/legacy/plugins/uptime/public/lib/adapters/framework/new_platform_adapter.tsx @@ -20,7 +20,6 @@ import { DEFAULT_TIMEPICKER_QUICK_RANGES, } from '../../../../common/constants'; import { UMFrameworkAdapter } from '../../lib'; -import { createApolloClient } from './apollo_client_adapter'; export const getKibanaFrameworkAdapter = ( core: CoreStart, @@ -60,7 +59,6 @@ export const getKibanaFrameworkAdapter = ( const props: UptimeAppProps = { basePath: basePath.get(), canSave, - client: createApolloClient(`${basePath.get()}/api/uptime/graphql`, 'true'), core, darkMode: core.uiSettings.get(DEFAULT_DARK_MODE), commonlyUsedRanges: core.uiSettings.get(DEFAULT_TIMEPICKER_QUICK_RANGES), diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/__snapshots__/format_error_string.test.ts.snap b/x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/__snapshots__/format_error_string.test.ts.snap deleted file mode 100644 index 8519157e4039e0..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/__snapshots__/format_error_string.test.ts.snap +++ /dev/null @@ -1,7 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`formatErrorString returns a formatted string containing each error 1`] = ` -"Error: foo is bar -Error: bar is not foo -" -`; diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/format_error_string.test.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/format_error_string.test.ts deleted file mode 100644 index ba437c05cbe2b0..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/__tests__/format_error_string.test.ts +++ /dev/null @@ -1,41 +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 { formatUptimeGraphQLErrorList } from '../format_error_list'; - -describe('formatErrorString', () => { - it('returns an empty string for empty array', () => { - const result = formatUptimeGraphQLErrorList([]); - expect(result).toEqual(''); - }); - it('returns a formatted string containing each error', () => { - const result = formatUptimeGraphQLErrorList([ - { - message: 'foo is bar', - locations: undefined, - path: undefined, - nodes: undefined, - source: undefined, - positions: undefined, - originalError: undefined, - extensions: undefined, - name: 'test error', - }, - { - message: 'bar is not foo', - locations: undefined, - path: undefined, - nodes: undefined, - source: undefined, - positions: undefined, - originalError: undefined, - extensions: undefined, - name: 'test error', - }, - ]); - expect(result).toMatchSnapshot(); - }); -}); diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/format_error_list.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/format_error_list.ts deleted file mode 100644 index a23122c5eead51..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/format_error_list.ts +++ /dev/null @@ -1,20 +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 { i18n } from '@kbn/i18n'; -import { GraphQLError } from 'graphql'; - -export const formatUptimeGraphQLErrorList = (errors: GraphQLError[]) => - errors.reduce( - (errorString, error) => - errorString.concat( - `${i18n.translate('xpack.uptime.errorMessage', { - values: { message: error.message }, - defaultMessage: 'Error: {message}', - })}\n` - ), - '' - ); diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_apm_href.test.ts.snap b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_apm_href.test.ts.snap deleted file mode 100644 index 53d336b52bd241..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_apm_href.test.ts.snap +++ /dev/null @@ -1,5 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`getApmHref creates href with base path when present 1`] = `"foo/app/apm#/services?kuery=url.domain:%20%22www.elastic.co%22&rangeFrom=now-15m&rangeTo=now"`; - -exports[`getApmHref does not add a base path or extra slash when base path is empty string 1`] = `"/app/apm#/services?kuery=url.domain:%20%22www.elastic.co%22&rangeFrom=now-15m&rangeTo=now"`; diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_infra_href.test.ts.snap b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_infra_href.test.ts.snap deleted file mode 100644 index e79eb50d384a8d..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_infra_href.test.ts.snap +++ /dev/null @@ -1,19 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`getInfraHref getInfraContainerHref creates a link for valid parameters 1`] = `"foo/app/metrics/link-to/container-detail/test-container-id"`; - -exports[`getInfraHref getInfraContainerHref does not specify a base path when none is available 1`] = `"/app/metrics/link-to/container-detail/test-container-id"`; - -exports[`getInfraHref getInfraContainerHref returns the first item when multiple container ids are supplied 1`] = `"bar/app/metrics/link-to/container-detail/test-container-id"`; - -exports[`getInfraHref getInfraIpHref creates a link for valid parameters 1`] = `"bar/app/metrics/inventory?waffleFilter=(expression:'host.ip%20%3A%20151.101.202.217',kind:kuery)"`; - -exports[`getInfraHref getInfraIpHref does not specify a base path when none is available 1`] = `"/app/metrics/inventory?waffleFilter=(expression:'host.ip%20%3A%20151.101.202.217',kind:kuery)"`; - -exports[`getInfraHref getInfraIpHref returns a url for ors between multiple ips 1`] = `"foo/app/metrics/inventory?waffleFilter=(expression:'host.ip%20%3A%20152.151.23.192%20or%20host.ip%20%3A%20151.101.202.217',kind:kuery)"`; - -exports[`getInfraHref getInfraKubernetesHref creates a link for valid parameters 1`] = `"foo/app/metrics/link-to/pod-detail/test-pod-uid"`; - -exports[`getInfraHref getInfraKubernetesHref does not specify a base path when none is available 1`] = `"/app/metrics/link-to/pod-detail/test-pod-uid"`; - -exports[`getInfraHref getInfraKubernetesHref selects the first pod uid when there are multiple 1`] = `"/app/metrics/link-to/pod-detail/test-pod-uid"`; diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_logging_href.test.ts.snap b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_logging_href.test.ts.snap deleted file mode 100644 index cfac6ce133c8ab..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/__snapshots__/get_logging_href.test.ts.snap +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`getLoggingHref creates a container href with base path when present 1`] = `"bar/app/logs?logFilter=(expression:'container.id%20:%20test-container-id',kind:kuery)"`; - -exports[`getLoggingHref creates a container href without a base path if it's an empty string 1`] = `"/app/logs?logFilter=(expression:'container.id%20:%20test-container-id',kind:kuery)"`; - -exports[`getLoggingHref creates a pod href with base path when present 1`] = `"bar/app/logs?logFilter=(expression:'pod.uid%20:%20test-pod-id',kind:kuery)"`; - -exports[`getLoggingHref creates a pod href without a base path when it's an empty string 1`] = `"/app/logs?logFilter=(expression:'pod.uid%20:%20test-pod-id',kind:kuery)"`; - -exports[`getLoggingHref creates an ip href with base path when present 1`] = `"bar/app/logs?logFilter=(expression:'pod.uid%20:%20test-pod-id',kind:kuery)"`; - -exports[`getLoggingHref creates an ip href without a base path when it's an empty string 1`] = `"/app/logs?logFilter=(expression:'host.ip%20%3A%20151.101.202.217',kind:kuery)"`; diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_apm_href.test.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_apm_href.test.ts index db49e95896ac1d..f27ed78d593acc 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_apm_href.test.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_apm_href.test.ts @@ -5,7 +5,7 @@ */ import { getApmHref } from '../get_apm_href'; -import { MonitorSummary } from '../../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../../common/runtime_types'; describe('getApmHref', () => { let summary: MonitorSummary; @@ -29,7 +29,7 @@ describe('getApmHref', () => { uid: 'test-pod-id', }, }, - timestamp: '123', + timestamp: 123, }, ], timestamp: '123', @@ -43,11 +43,15 @@ describe('getApmHref', () => { it('creates href with base path when present', () => { const result = getApmHref(summary, 'foo', 'now-15m', 'now'); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"foo/app/apm#/services?kuery=url.domain:%20%22www.elastic.co%22&rangeFrom=now-15m&rangeTo=now"` + ); }); it('does not add a base path or extra slash when base path is empty string', () => { const result = getApmHref(summary, '', 'now-15m', 'now'); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"/app/apm#/services?kuery=url.domain:%20%22www.elastic.co%22&rangeFrom=now-15m&rangeTo=now"` + ); }); }); diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_infra_href.test.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_infra_href.test.ts index c2360c321da8fd..ee5db74af22c2c 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_infra_href.test.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_infra_href.test.ts @@ -5,7 +5,7 @@ */ import { getInfraContainerHref, getInfraKubernetesHref, getInfraIpHref } from '../get_infra_href'; -import { MonitorSummary } from '../../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../../common/runtime_types'; describe('getInfraHref', () => { let summary: MonitorSummary; @@ -13,7 +13,6 @@ describe('getInfraHref', () => { summary = { monitor_id: 'foo', state: { - summary: {}, checks: [ { monitor: { @@ -28,9 +27,11 @@ describe('getInfraHref', () => { uid: 'test-pod-uid', }, }, - timestamp: '123', + timestamp: 123, }, ], + summary: {}, + url: {}, timestamp: '123', }, }; @@ -38,11 +39,15 @@ describe('getInfraHref', () => { it('getInfraContainerHref creates a link for valid parameters', () => { const result = getInfraContainerHref(summary, 'foo'); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"foo/app/metrics/link-to/container-detail/test-container-id"` + ); }); it('getInfraContainerHref does not specify a base path when none is available', () => { - expect(getInfraContainerHref(summary, '')).toMatchSnapshot(); + expect(getInfraContainerHref(summary, '')).toMatchInlineSnapshot( + `"/app/metrics/link-to/container-detail/test-container-id"` + ); }); it('getInfraContainerHref returns undefined when no container id is present', () => { @@ -65,7 +70,7 @@ describe('getInfraHref', () => { uid: 'test-pod-uid', }, }, - timestamp: '123', + timestamp: 123, }, { monitor: { @@ -80,10 +85,12 @@ describe('getInfraHref', () => { uid: 'test-pod-uid-bar', }, }, - timestamp: '123', + timestamp: 123, }, ]; - expect(getInfraContainerHref(summary, 'bar')).toMatchSnapshot(); + expect(getInfraContainerHref(summary, 'bar')).toMatchInlineSnapshot( + `"bar/app/metrics/link-to/container-detail/test-container-id"` + ); }); it('getInfraContainerHref returns undefined when checks are undefined', () => { @@ -94,11 +101,13 @@ describe('getInfraHref', () => { it('getInfraKubernetesHref creates a link for valid parameters', () => { const result = getInfraKubernetesHref(summary, 'foo'); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot(`"foo/app/metrics/link-to/pod-detail/test-pod-uid"`); }); it('getInfraKubernetesHref does not specify a base path when none is available', () => { - expect(getInfraKubernetesHref(summary, '')).toMatchSnapshot(); + expect(getInfraKubernetesHref(summary, '')).toMatchInlineSnapshot( + `"/app/metrics/link-to/pod-detail/test-pod-uid"` + ); }); it('getInfraKubernetesHref returns undefined when no pod data is present', () => { @@ -121,7 +130,7 @@ describe('getInfraHref', () => { uid: 'test-pod-uid', }, }, - timestamp: '123', + timestamp: 123, }, { monitor: { @@ -136,10 +145,12 @@ describe('getInfraHref', () => { uid: 'test-pod-uid-bar', }, }, - timestamp: '123', + timestamp: 123, }, ]; - expect(getInfraKubernetesHref(summary, '')).toMatchSnapshot(); + expect(getInfraKubernetesHref(summary, '')).toMatchInlineSnapshot( + `"/app/metrics/link-to/pod-detail/test-pod-uid"` + ); }); it('getInfraKubernetesHref returns undefined when checks are undefined', () => { @@ -148,17 +159,21 @@ describe('getInfraHref', () => { }); it('getInfraKubernetesHref returns undefined when checks are null', () => { - summary.state.checks![0]!.kubernetes!.pod!.uid = null; + delete summary.state.checks![0]!.kubernetes!.pod!.uid; expect(getInfraKubernetesHref(summary, '')).toBeUndefined(); }); it('getInfraIpHref creates a link for valid parameters', () => { const result = getInfraIpHref(summary, 'bar'); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"bar/app/metrics/inventory?waffleFilter=(expression:'host.ip%20%3A%20151.101.202.217',kind:kuery)"` + ); }); it('getInfraIpHref does not specify a base path when none is available', () => { - expect(getInfraIpHref(summary, '')).toMatchSnapshot(); + expect(getInfraIpHref(summary, '')).toMatchInlineSnapshot( + `"/app/metrics/inventory?waffleFilter=(expression:'host.ip%20%3A%20151.101.202.217',kind:kuery)"` + ); }); it('getInfraIpHref returns undefined when ip is undefined', () => { @@ -167,14 +182,14 @@ describe('getInfraHref', () => { }); it('getInfraIpHref returns undefined when ip is null', () => { - summary.state.checks![0].monitor.ip = null; + delete summary.state.checks![0].monitor.ip; expect(getInfraIpHref(summary, 'foo')).toBeUndefined(); }); it('getInfraIpHref returns a url for ors between multiple ips', () => { summary.state.checks = [ { - timestamp: '123', + timestamp: 123, monitor: { ip: '152.151.23.192', status: 'up', @@ -193,10 +208,12 @@ describe('getInfraHref', () => { uid: 'test-pod-uid', }, }, - timestamp: '123', + timestamp: 123, }, ]; - expect(getInfraIpHref(summary, 'foo')).toMatchSnapshot(); + expect(getInfraIpHref(summary, 'foo')).toMatchInlineSnapshot( + `"foo/app/metrics/inventory?waffleFilter=(expression:'host.ip%20%3A%20152.151.23.192%20or%20host.ip%20%3A%20151.101.202.217',kind:kuery)"` + ); }); it('getInfraIpHref returns undefined if checks are undefined', () => { diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_logging_href.test.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_logging_href.test.ts index 1117fa14299621..b188a8d1b8ef6e 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_logging_href.test.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/__tests__/get_logging_href.test.ts @@ -9,7 +9,7 @@ import { getLoggingKubernetesHref, getLoggingIpHref, } from '../get_logging_href'; -import { MonitorSummary } from '../../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../../common/runtime_types'; describe('getLoggingHref', () => { let summary: MonitorSummary; @@ -33,10 +33,11 @@ describe('getLoggingHref', () => { uid: 'test-pod-id', }, }, - timestamp: '123', + timestamp: 123, }, ], timestamp: '123', + url: {}, }, }; }); @@ -44,37 +45,49 @@ describe('getLoggingHref', () => { it('creates a container href with base path when present', () => { const result = getLoggingContainerHref(summary, 'bar'); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"bar/app/logs?logFilter=(expression:'container.id%20:%20test-container-id',kind:kuery)"` + ); }); it(`creates a container href without a base path if it's an empty string`, () => { const result = getLoggingContainerHref(summary, ''); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"/app/logs?logFilter=(expression:'container.id%20:%20test-container-id',kind:kuery)"` + ); }); it(`creates an ip href with base path when present`, () => { const result = getLoggingKubernetesHref(summary, 'bar'); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"bar/app/logs?logFilter=(expression:'pod.uid%20:%20test-pod-id',kind:kuery)"` + ); }); it('creates a pod href with base path when present', () => { const result = getLoggingKubernetesHref(summary, 'bar'); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"bar/app/logs?logFilter=(expression:'pod.uid%20:%20test-pod-id',kind:kuery)"` + ); }); it(`creates a pod href without a base path when it's an empty string`, () => { const result = getLoggingKubernetesHref(summary, ''); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"/app/logs?logFilter=(expression:'pod.uid%20:%20test-pod-id',kind:kuery)"` + ); }); it(`creates an ip href without a base path when it's an empty string`, () => { const result = getLoggingIpHref(summary, ''); expect(result).not.toBeUndefined(); - expect(result).toMatchSnapshot(); + expect(result).toMatchInlineSnapshot( + `"/app/logs?logFilter=(expression:'host.ip%20%3A%20151.101.202.217',kind:kuery)"` + ); }); it('returns undefined if necessary container is not present', () => { @@ -83,7 +96,7 @@ describe('getLoggingHref', () => { }); it('returns undefined if necessary container is null', () => { - summary.state.checks![0].container!.id = null; + delete summary.state.checks![0].container!.id; expect(getLoggingContainerHref(summary, '')).toBeUndefined(); }); @@ -93,7 +106,7 @@ describe('getLoggingHref', () => { }); it('returns undefined if necessary pod is null', () => { - summary.state.checks![0].kubernetes!.pod!.uid = null; + delete summary.state.checks![0].kubernetes!.pod!.uid; expect(getLoggingKubernetesHref(summary, '')).toBeUndefined(); }); @@ -103,7 +116,7 @@ describe('getLoggingHref', () => { }); it('returns undefined ip href if ip is null', () => { - summary.state.checks![0].monitor.ip = null; + delete summary.state.checks![0].monitor.ip; expect(getLoggingIpHref(summary, '')).toBeUndefined(); }); }); diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/build_href.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/build_href.ts index 19e437651090b7..0f830435be89de 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/build_href.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/build_href.ts @@ -5,7 +5,7 @@ */ import { get } from 'lodash'; -import { Check } from '../../../../common/graphql/types'; +import { Check } from '../../../../common/runtime_types'; /** * Builds URLs to the designated features by extracting values from the provided diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_apm_href.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_apm_href.ts index aaa57acee6c6a7..0ff5a8acb33674 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_apm_href.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_apm_href.ts @@ -6,7 +6,7 @@ import { get } from 'lodash'; import { addBasePath } from './add_base_path'; -import { MonitorSummary } from '../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../common/runtime_types'; export const getApmHref = ( summary: MonitorSummary, diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_infra_href.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_infra_href.ts index 73065be395c764..384067e4b033bd 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_infra_href.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_infra_href.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { MonitorSummary } from '../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../common/runtime_types'; import { addBasePath } from './add_base_path'; import { buildHref } from './build_href'; diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_logging_href.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_logging_href.ts index b97b5a34855fb5..222c7b57c92725 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_logging_href.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/observability_integration/get_logging_href.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { MonitorSummary } from '../../../../common/graphql/types'; +import { MonitorSummary } from '../../../../common/runtime_types'; import { addBasePath } from './add_base_path'; import { buildHref } from './build_href'; diff --git a/x-pack/legacy/plugins/uptime/public/lib/helper/series_has_down_values.ts b/x-pack/legacy/plugins/uptime/public/lib/helper/series_has_down_values.ts index 13079b912a1470..4ebeb350ed8927 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/helper/series_has_down_values.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/helper/series_has_down_values.ts @@ -4,8 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ -import { SummaryHistogramPoint } from '../../../common/graphql/types'; +import { HistogramPoint } from '../../../common/runtime_types'; -export const seriesHasDownValues = (series: SummaryHistogramPoint[] | null): boolean => { +export const seriesHasDownValues = (series: HistogramPoint[] | null): boolean => { return series ? series.some(point => !!point.down) : false; }; diff --git a/x-pack/legacy/plugins/uptime/public/lib/lib.ts b/x-pack/legacy/plugins/uptime/public/lib/lib.ts index aba151bf5aab3a..6b6191441c9316 100644 --- a/x-pack/legacy/plugins/uptime/public/lib/lib.ts +++ b/x-pack/legacy/plugins/uptime/public/lib/lib.ts @@ -4,9 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { NormalizedCacheObject } from 'apollo-cache-inmemory'; -import ApolloClient from 'apollo-client'; -import React from 'react'; +import { ReactElement } from 'react'; import { ChromeBreadcrumb } from 'src/core/public'; import { UMBadge } from '../badge'; import { UptimeAppProps } from '../uptime_app'; @@ -19,9 +17,7 @@ export type UMUpdateBreadcrumbs = (breadcrumbs: ChromeBreadcrumb[]) => void; export type UMUpdateBadge = (badge: UMBadge) => void; -export type UMGraphQLClient = ApolloClient; // | OtherClientType - -export type BootstrapUptimeApp = (props: UptimeAppProps) => React.ReactElement; +export type BootstrapUptimeApp = (props: UptimeAppProps) => ReactElement; export interface UMFrameworkAdapter { render(element: any): void; diff --git a/x-pack/legacy/plugins/uptime/public/pages/overview.tsx b/x-pack/legacy/plugins/uptime/public/pages/overview.tsx index 5550facaf42e9f..5b51a208a4c37b 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/overview.tsx +++ b/x-pack/legacy/plugins/uptime/public/pages/overview.tsx @@ -5,20 +5,15 @@ */ import { EuiFlexGroup, EuiFlexItem, EuiSpacer } from '@elastic/eui'; -import React, { useContext, useEffect, useState } from 'react'; +import React, { useEffect } from 'react'; import styled from 'styled-components'; import { i18n } from '@kbn/i18n'; -import { - MonitorList, - OverviewPageParsingErrorCallout, - StatusPanel, -} from '../components/functional'; +import { OverviewPageParsingErrorCallout, StatusPanel } from '../components/functional'; import { useUptimeTelemetry, UptimePage, useGetUrlParams } from '../hooks'; import { stringifyUrlParams } from '../lib/helper/stringify_url_params'; import { useTrackPageview } from '../../../../../plugins/observability/public'; import { DataPublicPluginSetup, IIndexPattern } from '../../../../../../src/plugins/data/public'; -import { UptimeThemeContext } from '../contexts'; -import { EmptyState, FilterGroup, KueryBar } from '../components/connected'; +import { EmptyState, FilterGroup, KueryBar, MonitorList } from '../components/connected'; import { useUpdateKueryString } from '../hooks'; import { PageHeader } from './page_header'; import { useBreadcrumbs } from '../hooks/use_breadcrumbs'; @@ -40,34 +35,9 @@ const EuiFlexItemStyled = styled(EuiFlexItem)` } `; -// TODO: these values belong deeper down in the monitor -// list pagination control, but are here temporarily until we -// are done removing GraphQL -const DEFAULT_PAGE_SIZE = 10; -const LOCAL_STORAGE_KEY = 'xpack.uptime.monitorList.pageSize'; -const getMonitorListPageSizeValue = () => { - const value = parseInt(localStorage.getItem(LOCAL_STORAGE_KEY) ?? '', 10); - if (isNaN(value)) { - return DEFAULT_PAGE_SIZE; - } - return value; -}; - export const OverviewPageComponent = ({ autocomplete, indexPattern, setEsKueryFilters }: Props) => { - const { colors } = useContext(UptimeThemeContext); - // TODO: this is temporary until we migrate the monitor list to our Redux implementation - const [monitorListPageSize, setMonitorListPageSize] = useState( - getMonitorListPageSizeValue() - ); const { absoluteDateRangeStart, absoluteDateRangeEnd, ...params } = useGetUrlParams(); - const { - dateRangeStart, - dateRangeEnd, - pagination, - statusFilter, - search, - filters: urlFilters, - } = params; + const { search, filters: urlFilters } = params; useUptimeTelemetry(UptimePage.Overview); @@ -80,13 +50,6 @@ export const OverviewPageComponent = ({ autocomplete, indexPattern, setEsKueryFi setEsKueryFilters(esFilters ?? ''); }, [esFilters, setEsKueryFilters]); - const sharedProps = { - dateRangeStart, - dateRangeEnd, - statusFilter, - filters: esFilters, - }; - const linkParameters = stringifyUrlParams(params, true); const heading = i18n.translate('xpack.uptime.overviewPage.headerText', { @@ -117,20 +80,7 @@ export const OverviewPageComponent = ({ autocomplete, indexPattern, setEsKueryFi - +
    ); diff --git a/x-pack/legacy/plugins/uptime/public/queries/monitor_states_query.ts b/x-pack/legacy/plugins/uptime/public/queries/monitor_states_query.ts deleted file mode 100644 index 676e638c239de2..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/queries/monitor_states_query.ts +++ /dev/null @@ -1,110 +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 gql from 'graphql-tag'; - -export const monitorStatesQueryString = ` -query MonitorStates($dateRangeStart: String!, $dateRangeEnd: String!, $pagination: String, $filters: String, $statusFilter: String, $pageSize: Int) { - monitorStates: getMonitorStates( - dateRangeStart: $dateRangeStart - dateRangeEnd: $dateRangeEnd - pagination: $pagination - filters: $filters - statusFilter: $statusFilter - pageSize: $pageSize - ) { - prevPagePagination - nextPagePagination - totalSummaryCount - summaries { - monitor_id - histogram { - count - points { - timestamp - up - down - } - } - state { - agent { - id - } - checks { - agent { - id - } - container { - id - } - kubernetes { - pod { - uid - } - } - monitor { - ip - name - status - } - observer { - geo { - name - location { - lat - lon - } - } - } - timestamp - } - geo { - name - location { - lat - lon - } - } - observer { - geo { - name - location { - lat - lon - } - } - } - monitor { - id - name - status - type - } - summary { - up - down - geo { - name - location { - lat - lon - } - } - } - url { - full - domain - } - timestamp - } - } - } -} -`; - -export const monitorStatesQuery = gql` - ${monitorStatesQueryString} -`; diff --git a/x-pack/legacy/plugins/uptime/public/state/actions/index.ts b/x-pack/legacy/plugins/uptime/public/state/actions/index.ts index 4563e6bfc4f0eb..0dc6baa0b2e50d 100644 --- a/x-pack/legacy/plugins/uptime/public/state/actions/index.ts +++ b/x-pack/legacy/plugins/uptime/public/state/actions/index.ts @@ -7,6 +7,7 @@ export * from './overview_filters'; export * from './snapshot'; export * from './ui'; +export * from './monitor_list'; export * from './monitor_status'; export * from './index_patternts'; export * from './ping'; diff --git a/x-pack/legacy/plugins/uptime/public/state/actions/monitor_list.ts b/x-pack/legacy/plugins/uptime/public/state/actions/monitor_list.ts new file mode 100644 index 00000000000000..ee2267a9058afc --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/state/actions/monitor_list.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. + */ + +import { createAction } from 'redux-actions'; +import { FetchMonitorStatesQueryArgs, MonitorSummaryResult } from '../../../common/runtime_types'; + +export const getMonitorList = createAction('GET_MONITOR_LIST'); +export const getMonitorListSuccess = createAction('GET_MONITOR_LIST_SUCCESS'); +export const getMonitorListFailure = createAction('GET_MONITOR_LIST_FAIL'); diff --git a/x-pack/legacy/plugins/uptime/public/state/actions/monitor_status.ts b/x-pack/legacy/plugins/uptime/public/state/actions/monitor_status.ts index e8c862e209739a..3d480e66c9e0b2 100644 --- a/x-pack/legacy/plugins/uptime/public/state/actions/monitor_status.ts +++ b/x-pack/legacy/plugins/uptime/public/state/actions/monitor_status.ts @@ -3,6 +3,7 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ + import { createAction } from 'redux-actions'; import { QueryParams } from './types'; import { Ping } from '../../../common/runtime_types'; diff --git a/x-pack/legacy/plugins/uptime/public/state/api/index.ts b/x-pack/legacy/plugins/uptime/public/state/api/index.ts index 793762c0f4a10a..a50afb3f866de7 100644 --- a/x-pack/legacy/plugins/uptime/public/state/api/index.ts +++ b/x-pack/legacy/plugins/uptime/public/state/api/index.ts @@ -5,6 +5,7 @@ */ export * from './monitor'; +export * from './monitor_list'; export * from './overview_filters'; export * from './snapshot'; export * from './monitor_status'; diff --git a/x-pack/legacy/plugins/uptime/public/state/api/monitor_list.ts b/x-pack/legacy/plugins/uptime/public/state/api/monitor_list.ts new file mode 100644 index 00000000000000..084bcb4bd2a915 --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/state/api/monitor_list.ts @@ -0,0 +1,19 @@ +/* + * 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 { API_URLS } from '../../../common/constants'; +import { apiService } from './utils'; +import { + FetchMonitorStatesQueryArgs, + MonitorSummaryResult, + MonitorSummaryResultType, +} from '../../../common/runtime_types'; + +export const fetchMonitorList = async ( + params: FetchMonitorStatesQueryArgs +): Promise => { + return await apiService.get(API_URLS.MONITOR_LIST, params, MonitorSummaryResultType); +}; diff --git a/x-pack/legacy/plugins/uptime/public/state/effects/index.ts b/x-pack/legacy/plugins/uptime/public/state/effects/index.ts index 8df11312b64550..739179c5bbeae6 100644 --- a/x-pack/legacy/plugins/uptime/public/state/effects/index.ts +++ b/x-pack/legacy/plugins/uptime/public/state/effects/index.ts @@ -8,6 +8,7 @@ import { fork } from 'redux-saga/effects'; import { fetchMonitorDetailsEffect } from './monitor'; import { fetchOverviewFiltersEffect } from './overview_filters'; import { fetchSnapshotCountEffect } from './snapshot'; +import { fetchMonitorListEffect } from './monitor_list'; import { fetchMonitorStatusEffect } from './monitor_status'; import { fetchDynamicSettingsEffect, setDynamicSettingsEffect } from './dynamic_settings'; import { fetchIndexPatternEffect } from './index_pattern'; @@ -20,6 +21,7 @@ export function* rootEffect() { yield fork(fetchMonitorDetailsEffect); yield fork(fetchSnapshotCountEffect); yield fork(fetchOverviewFiltersEffect); + yield fork(fetchMonitorListEffect); yield fork(fetchMonitorStatusEffect); yield fork(fetchDynamicSettingsEffect); yield fork(setDynamicSettingsEffect); diff --git a/x-pack/legacy/plugins/uptime/public/state/effects/monitor_list.ts b/x-pack/legacy/plugins/uptime/public/state/effects/monitor_list.ts new file mode 100644 index 00000000000000..b607641ecd7d0e --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/state/effects/monitor_list.ts @@ -0,0 +1,17 @@ +/* + * 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 { takeLatest } from 'redux-saga/effects'; +import { getMonitorList, getMonitorListSuccess, getMonitorListFailure } from '../actions'; +import { fetchMonitorList } from '../api'; +import { fetchEffectFactory } from './fetch_effect'; + +export function* fetchMonitorListEffect() { + yield takeLatest( + getMonitorList, + fetchEffectFactory(fetchMonitorList, getMonitorListSuccess, getMonitorListFailure) + ); +} diff --git a/x-pack/legacy/plugins/uptime/public/state/reducers/index.ts b/x-pack/legacy/plugins/uptime/public/state/reducers/index.ts index 0a3ff35df0599f..294bde2f277ec5 100644 --- a/x-pack/legacy/plugins/uptime/public/state/reducers/index.ts +++ b/x-pack/legacy/plugins/uptime/public/state/reducers/index.ts @@ -10,6 +10,7 @@ import { overviewFiltersReducer } from './overview_filters'; import { snapshotReducer } from './snapshot'; import { uiReducer } from './ui'; import { monitorStatusReducer } from './monitor_status'; +import { monitorListReducer } from './monitor_list'; import { dynamicSettingsReducer } from './dynamic_settings'; import { indexPatternReducer } from './index_pattern'; import { pingReducer } from './ping'; @@ -23,6 +24,7 @@ export const rootReducer = combineReducers({ overviewFilters: overviewFiltersReducer, snapshot: snapshotReducer, ui: uiReducer, + monitorList: monitorListReducer, monitorStatus: monitorStatusReducer, dynamicSettings: dynamicSettingsReducer, indexPattern: indexPatternReducer, diff --git a/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_duration.ts b/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_duration.ts index 0e1771c393e50c..ec6b374c1057ce 100644 --- a/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_duration.ts +++ b/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_duration.ts @@ -24,9 +24,9 @@ const initialState: MonitorDuration = { errors: [], }; -type PayLoad = MonitorDurationResult & Error; +type Payload = MonitorDurationResult & Error; -export const monitorDurationReducer = handleActions( +export const monitorDurationReducer = handleActions( { [String(getMonitorDurationAction)]: (state: MonitorDuration) => ({ ...state, diff --git a/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_list.ts b/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_list.ts new file mode 100644 index 00000000000000..cf895aebeb7558 --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/state/reducers/monitor_list.ts @@ -0,0 +1,51 @@ +/* + * 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 { handleActions, Action } from 'redux-actions'; +import { getMonitorList, getMonitorListSuccess, getMonitorListFailure } from '../actions'; +import { MonitorSummaryResult } from '../../../common/runtime_types'; + +export interface MonitorList { + list: MonitorSummaryResult; + error?: Error; + loading: boolean; +} + +export const initialState: MonitorList = { + list: { + nextPagePagination: null, + prevPagePagination: null, + summaries: [], + totalSummaryCount: 0, + }, + loading: false, +}; + +type Payload = MonitorSummaryResult & Error; + +export const monitorListReducer = handleActions( + { + [String(getMonitorList)]: (state: MonitorList) => ({ + ...state, + loading: true, + }), + [String(getMonitorListSuccess)]: ( + state: MonitorList, + action: Action + ) => ({ + ...state, + loading: false, + error: undefined, + list: { ...action.payload }, + }), + [String(getMonitorListFailure)]: (state: MonitorList, action: Action) => ({ + ...state, + error: action.payload, + loading: false, + }), + }, + initialState +); diff --git a/x-pack/legacy/plugins/uptime/public/state/selectors/__tests__/index.test.ts b/x-pack/legacy/plugins/uptime/public/state/selectors/__tests__/index.test.ts index 77902f347f6f93..2b7c04178e9b4b 100644 --- a/x-pack/legacy/plugins/uptime/public/state/selectors/__tests__/index.test.ts +++ b/x-pack/legacy/plugins/uptime/public/state/selectors/__tests__/index.test.ts @@ -71,6 +71,15 @@ describe('state selectors', () => { loading: false, errors: [], }, + monitorList: { + list: { + prevPagePagination: null, + nextPagePagination: null, + summaries: [], + totalSummaryCount: 0, + }, + loading: false, + }, ml: { mlJob: { data: null, diff --git a/x-pack/legacy/plugins/uptime/public/state/selectors/index.ts b/x-pack/legacy/plugins/uptime/public/state/selectors/index.ts index 37695e42743066..dc5df3f93804db 100644 --- a/x-pack/legacy/plugins/uptime/public/state/selectors/index.ts +++ b/x-pack/legacy/plugins/uptime/public/state/selectors/index.ts @@ -92,3 +92,8 @@ export const selectMonitorStatusAlert = ({ indexPattern, overviewFilters, ui }: export const indexStatusSelector = ({ indexStatus }: AppState) => { return indexStatus.indexStatus; }; + +export const monitorListSelector = ({ monitorList, ui: { lastRefresh } }: AppState) => ({ + monitorList, + lastRefresh, +}); diff --git a/x-pack/legacy/plugins/uptime/public/uptime_app.tsx b/x-pack/legacy/plugins/uptime/public/uptime_app.tsx index dafb20dc9c323d..556e5b9bf299ed 100644 --- a/x-pack/legacy/plugins/uptime/public/uptime_app.tsx +++ b/x-pack/legacy/plugins/uptime/public/uptime_app.tsx @@ -7,13 +7,12 @@ import { EuiPage, EuiErrorBoundary } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import React, { useEffect } from 'react'; -import { ApolloProvider } from 'react-apollo'; import { Provider as ReduxProvider } from 'react-redux'; import { BrowserRouter as Router } from 'react-router-dom'; import { I18nStart, ChromeBreadcrumb, CoreStart } from 'src/core/public'; import { PluginsSetup } from 'ui/new_platform/new_platform'; import { KibanaContextProvider } from '../../../../../src/plugins/kibana_react/public'; -import { UMGraphQLClient, UMUpdateBadge } from './lib/lib'; +import { UMUpdateBadge } from './lib/lib'; import { UptimeRefreshContextProvider, UptimeSettingsContextProvider, @@ -39,7 +38,6 @@ export interface UptimeAppColors { export interface UptimeAppProps { basePath: string; canSave: boolean; - client: UMGraphQLClient; core: CoreStart; darkMode: boolean; i18n: I18nStart; @@ -59,7 +57,6 @@ const Application = (props: UptimeAppProps) => { const { basePath, canSave, - client, core, darkMode, i18n: i18nCore, @@ -97,25 +94,23 @@ const Application = (props: UptimeAppProps) => { - - - - - - -
    - - -
    -
    -
    -
    -
    -
    -
    + + + + + +
    + + +
    +
    +
    +
    +
    +
    diff --git a/x-pack/legacy/plugins/uptime/scripts/gql_gen.json b/x-pack/legacy/plugins/uptime/scripts/gql_gen.json deleted file mode 100644 index 87b8233dd1eeb3..00000000000000 --- a/x-pack/legacy/plugins/uptime/scripts/gql_gen.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "flattenTypes": true, - "generatorConfig": {}, - "primitives": { - "String": "string", - "Int": "number", - "Float": "number", - "Boolean": "boolean", - "ID": "string" - } -} diff --git a/x-pack/legacy/plugins/uptime/scripts/infer_graphql_types.js b/x-pack/legacy/plugins/uptime/scripts/infer_graphql_types.js deleted file mode 100644 index 2499e15bf4e239..00000000000000 --- a/x-pack/legacy/plugins/uptime/scripts/infer_graphql_types.js +++ /dev/null @@ -1,45 +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. - */ - -require('../../../../../src/setup_node_env'); - -const { resolve } = require('path'); -// eslint-disable-next-line import/no-extraneous-dependencies, import/no-unresolved -const { generate } = require('graphql-code-generator'); - -const CONFIG_PATH = resolve(__dirname, 'gql_gen.json'); -const OUTPUT_INTROSPECTION_PATH = resolve('common', 'graphql', 'introspection.json'); -const OUTPUT_TYPES_PATH = resolve('common', 'graphql', 'types.ts'); -const SCHEMA_PATH = resolve(__dirname, 'graphql_schemas.ts'); - -async function main() { - await generate( - { - args: [], - config: CONFIG_PATH, - out: OUTPUT_INTROSPECTION_PATH, - overwrite: true, - schema: SCHEMA_PATH, - template: 'graphql-codegen-introspection-template', - }, - true - ); - await generate( - { - args: [], - config: CONFIG_PATH, - out: OUTPUT_TYPES_PATH, - overwrite: true, - schema: SCHEMA_PATH, - template: 'graphql-codegen-typescript-template', - }, - true - ); -} - -if (require.main === module) { - main(); -} diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 72b55121bbec01..2f05088c4a62b4 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -16241,7 +16241,6 @@ "xpack.uptime.emptyStateError.notAuthorized": "アップタイムデータの表示が承認されていません。システム管理者にお問い合わせください。", "xpack.uptime.emptyStateError.notFoundPage": "ページが見つかりません", "xpack.uptime.emptyStateError.title": "エラー", - "xpack.uptime.errorMessage": "エラー: {message}", "xpack.uptime.featureCatalogueDescription": "エンドポイントヘルスチェックとアップタイム監視を行います。", "xpack.uptime.featureRegistry.uptimeFeatureName": "アップタイム", "xpack.uptime.filterBar.ariaLabel": "概要ページのインプットフィルター基準", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index c1b4663da91e7d..620aa6c7f225cd 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -16246,7 +16246,6 @@ "xpack.uptime.emptyStateError.notAuthorized": "您无权查看 Uptime 数据,请联系系统管理员。", "xpack.uptime.emptyStateError.notFoundPage": "未找到页面", "xpack.uptime.emptyStateError.title": "错误", - "xpack.uptime.errorMessage": "错误:{message}", "xpack.uptime.featureCatalogueDescription": "执行终端节点运行状况检查和运行时间监测。", "xpack.uptime.featureRegistry.uptimeFeatureName": "运行时间", "xpack.uptime.filterBar.ariaLabel": "概览页面的输入筛选条件", diff --git a/x-pack/plugins/uptime/server/graphql/constants.ts b/x-pack/plugins/uptime/server/graphql/constants.ts deleted file mode 100644 index aba58f5c6c4a54..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/constants.ts +++ /dev/null @@ -1,7 +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. - */ - -export const DEFAULT_GRAPHQL_PATH = '/api/uptime/graphql'; diff --git a/x-pack/plugins/uptime/server/graphql/index.ts b/x-pack/plugins/uptime/server/graphql/index.ts deleted file mode 100644 index a88afd7ac769c8..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/index.ts +++ /dev/null @@ -1,17 +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 { createMonitorStatesResolvers, monitorStatesSchema } from './monitor_states'; -import { pingsSchema } from './pings'; -import { CreateUMGraphQLResolvers } from './types'; -import { unsignedIntegerResolverFunctions, unsignedIntegerSchema } from './unsigned_int_scalar'; - -export { DEFAULT_GRAPHQL_PATH } from './constants'; -export const resolvers: CreateUMGraphQLResolvers[] = [ - createMonitorStatesResolvers, - unsignedIntegerResolverFunctions, -]; -export const typeDefs: any[] = [pingsSchema, unsignedIntegerSchema, monitorStatesSchema]; diff --git a/x-pack/plugins/uptime/server/graphql/monitor_states/index.ts b/x-pack/plugins/uptime/server/graphql/monitor_states/index.ts deleted file mode 100644 index fb0893dbc4dbff..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/monitor_states/index.ts +++ /dev/null @@ -1,8 +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. - */ - -export { createMonitorStatesResolvers } from './resolvers'; -export { monitorStatesSchema } from './schema.gql'; diff --git a/x-pack/plugins/uptime/server/graphql/monitor_states/resolvers.ts b/x-pack/plugins/uptime/server/graphql/monitor_states/resolvers.ts deleted file mode 100644 index 479c06234ca66a..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/monitor_states/resolvers.ts +++ /dev/null @@ -1,76 +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 { CreateUMGraphQLResolvers, UMContext } from '../types'; -import { UMServerLibs } from '../../lib/lib'; -import { UMResolver } from '../../../../../legacy/plugins/uptime/common/graphql/resolver_types'; -import { - GetMonitorStatesQueryArgs, - MonitorSummaryResult, -} from '../../../../../legacy/plugins/uptime/common/graphql/types'; -import { CONTEXT_DEFAULTS } from '../../../../../legacy/plugins/uptime/common/constants'; -import { savedObjectsAdapter } from '../../lib/saved_objects'; - -export type UMGetMonitorStatesResolver = UMResolver< - MonitorSummaryResult | Promise, - any, - GetMonitorStatesQueryArgs, - UMContext ->; - -export const createMonitorStatesResolvers: CreateUMGraphQLResolvers = ( - libs: UMServerLibs -): { - Query: { - getMonitorStates: UMGetMonitorStatesResolver; - }; -} => { - return { - Query: { - async getMonitorStates( - _resolver, - { dateRangeStart, dateRangeEnd, filters, pagination, statusFilter, pageSize }, - { APICaller, savedObjectsClient } - ): Promise { - const dynamicSettings = await savedObjectsAdapter.getUptimeDynamicSettings( - savedObjectsClient - ); - - const decodedPagination = pagination - ? JSON.parse(decodeURIComponent(pagination)) - : CONTEXT_DEFAULTS.CURSOR_PAGINATION; - const [ - indexStatus, - { summaries, nextPagePagination, prevPagePagination }, - ] = await Promise.all([ - libs.requests.getIndexStatus({ callES: APICaller, dynamicSettings }), - libs.requests.getMonitorStates({ - callES: APICaller, - dynamicSettings, - dateRangeStart, - dateRangeEnd, - pagination: decodedPagination, - pageSize, - filters, - // this is added to make typescript happy, - // this sort of reassignment used to be further downstream but I've moved it here - // because this code is going to be decomissioned soon - statusFilter: statusFilter || undefined, - }), - ]); - - const totalSummaryCount = indexStatus?.docCount ?? 0; - - return { - summaries, - nextPagePagination, - prevPagePagination, - totalSummaryCount, - }; - }, - }, - }; -}; diff --git a/x-pack/plugins/uptime/server/graphql/monitor_states/schema.gql.ts b/x-pack/plugins/uptime/server/graphql/monitor_states/schema.gql.ts deleted file mode 100644 index 040ad99ac0c640..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/monitor_states/schema.gql.ts +++ /dev/null @@ -1,183 +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 gql from 'graphql-tag'; - -export const monitorStatesSchema = gql` - "Represents a monitor's statuses for a period of time." - type SummaryHistogramPoint { - "The time at which these data were collected." - timestamp: UnsignedInteger! - "The number of _up_ documents." - up: Int! - "The number of _down_ documents." - down: Int! - } - - "Monitor status data over time." - type SummaryHistogram { - "The number of documents used to assemble the histogram." - count: Int! - "The individual histogram data points." - points: [SummaryHistogramPoint!]! - } - - type Agent { - id: String! - } - - type Check { - agent: Agent - container: StateContainer - kubernetes: StateKubernetes - monitor: CheckMonitor! - observer: CheckObserver - timestamp: String! - } - - type StateContainer { - id: String - } - - type StateKubernetes { - pod: StatePod - } - - type StatePod { - uid: String - } - - type CheckMonitor { - ip: String - name: String - status: String! - } - - type Location { - lat: Float - lon: Float - } - - type CheckGeo { - name: String - location: Location - } - - type CheckObserver { - geo: CheckGeo - } - - type StateGeo { - name: [String] - location: Location - } - - type StateObserver { - geo: StateGeo - } - - type MonitorState { - status: String - name: String - id: String - type: String - } - - type Summary { - up: Int - down: Int - geo: CheckGeo - } - - type MonitorSummaryUrl { - domain: String - fragment: String - full: String - original: String - password: String - path: String - port: Int - query: String - scheme: String - username: String - } - - type StateUrl { - domain: String - full: String - path: String - port: Int - scheme: String - } - - "Contains monitor transmission encryption information." - type StateTLS { - "The date and time after which the certificate is invalid." - certificate_not_valid_after: String - certificate_not_valid_before: String - certificates: String - rtt: RTT - } - - "Unifies the subsequent data for an uptime monitor." - type State { - "The agent processing the monitor." - agent: Agent - "There is a check object for each instance of the monitoring agent." - checks: [Check!] - geo: StateGeo - observer: StateObserver - monitor: MonitorState - summary: Summary! - timestamp: UnsignedInteger! - "Transport encryption information." - tls: [StateTLS] - url: StateUrl - } - - "Represents the current state and associated data for an Uptime monitor." - type MonitorSummary { - "The ID assigned by the config or generated by the user." - monitor_id: String! - "The state of the monitor and its associated details." - state: State! - histogram: SummaryHistogram - } - - "The primary object returned for monitor states." - type MonitorSummaryResult { - "Used to go to the next page of results" - prevPagePagination: String - "Used to go to the previous page of results" - nextPagePagination: String - "The objects representing the state of a series of heartbeat monitors." - summaries: [MonitorSummary!] - "The number of summaries." - totalSummaryCount: Int! - } - - enum CursorDirection { - AFTER - BEFORE - } - - enum SortOrder { - ASC - DESC - } - - type Query { - "Fetches the current state of Uptime monitors for the given parameters." - getMonitorStates( - dateRangeStart: String! - dateRangeEnd: String! - pagination: String - filters: String - statusFilter: String - pageSize: Int - ): MonitorSummaryResult - } -`; diff --git a/x-pack/plugins/uptime/server/graphql/pings/index.ts b/x-pack/plugins/uptime/server/graphql/pings/index.ts deleted file mode 100644 index 100ce29c398ec1..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/pings/index.ts +++ /dev/null @@ -1,7 +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. - */ - -export { pingsSchema } from './schema.gql'; diff --git a/x-pack/plugins/uptime/server/graphql/pings/schema.gql.ts b/x-pack/plugins/uptime/server/graphql/pings/schema.gql.ts deleted file mode 100644 index 179bca53db1617..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/pings/schema.gql.ts +++ /dev/null @@ -1,264 +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 gql from 'graphql-tag'; - -export const pingsSchema = gql` - type PingResults { - "Total number of matching pings" - total: UnsignedInteger! - "Unique list of all locations the query matched" - locations: [String!]! - "List of pings " - pings: [Ping!]! - } - - type ContainerImage { - name: String - tag: String - } - - type Container { - id: String - image: ContainerImage - name: String - runtime: String - } - - type DocCount { - count: UnsignedInteger! - } - - "The monitor's status for a ping" - type Duration { - us: UnsignedInteger - } - - "An agent for recording a beat" - type Beat { - hostname: String - name: String - timezone: String - type: String - } - - type Docker { - id: String - image: String - name: String - } - - type ECS { - version: String - } - - type Error { - code: Int - message: String - type: String - } - - type OS { - family: String - kernel: String - platform: String - version: String - name: String - build: String - } - - "Geolocation data added via processors to enrich events." - type Geo { - "Name of the city in which the agent is running." - city_name: String - "The name of the continent on which the agent is running." - continent_name: String - "ISO designation for the agent's country." - country_iso_code: String - "The name of the agent's country." - country_name: String - "The lat/long of the agent." - location: String - "A name for the host's location, e.g. 'us-east-1' or 'LAX'." - name: String - "ISO designation of the agent's region." - region_iso_code: String - "Name of the region hosting the agent." - region_name: String - } - - type Host { - architecture: String - id: String - hostname: String - ip: String - mac: String - name: String - os: OS - } - - type HttpRTT { - content: Duration - response_header: Duration - total: Duration - validate: Duration - validate_body: Duration - write_request: Duration - } - - type HTTPBody { - "Size of HTTP response body in bytes" - bytes: UnsignedInteger - "Hash of the HTTP response body" - hash: String - "Response body of the HTTP Response. May be truncated based on client settings." - content: String - "Byte length of the content string, taking into account multibyte chars." - content_bytes: UnsignedInteger - } - - type HTTPResponse { - status_code: UnsignedInteger - body: HTTPBody - } - - type HTTP { - response: HTTPResponse - rtt: HttpRTT - url: String - } - - type ICMP { - requests: Int - rtt: Int - } - - type KubernetesContainer { - image: String - name: String - } - - type KubernetesNode { - name: String - } - - type KubernetesPod { - name: String - uid: String - } - - type Kubernetes { - container: KubernetesContainer - namespace: String - node: KubernetesNode - pod: KubernetesPod - } - - type MetaCloud { - availability_zone: String - instance_id: String - instance_name: String - machine_type: String - project_id: String - provider: String - region: String - } - - type Meta { - cloud: MetaCloud - } - - type Monitor { - duration: Duration - host: String - "The id of the monitor" - id: String - "The IP pinged by the monitor" - ip: String - "The name of the protocol being monitored" - name: String - "The protocol scheme of the monitored host" - scheme: String - "The status of the monitored host" - status: String - "The type of host being monitored" - type: String - check_group: String - } - - "Metadata added by a proccessor, which is specified in its configuration." - type Observer { - "Geolocation data for the agent." - geo: Geo - } - - type Resolve { - host: String - ip: String - rtt: Duration - } - - type RTT { - connect: Duration - handshake: Duration - validate: Duration - } - - type Socks5 { - rtt: RTT - } - - type TCP { - port: Int - rtt: RTT - } - - "Contains monitor transmission encryption information." - type PingTLS { - "The date and time after which the certificate is invalid." - certificate_not_valid_after: String - certificate_not_valid_before: String - certificates: String - rtt: RTT - } - - type URL { - full: String - scheme: String - domain: String - port: Int - path: String - query: String - } - - "A request sent from a monitor to a host" - type Ping { - "unique ID for this ping" - id: String! - "The timestamp of the ping's creation" - timestamp: String! - "The agent that recorded the ping" - beat: Beat - container: Container - docker: Docker - ecs: ECS - error: Error - host: Host - http: HTTP - icmp: ICMP - kubernetes: Kubernetes - meta: Meta - monitor: Monitor - observer: Observer - resolve: Resolve - socks5: Socks5 - summary: Summary - tags: String - tcp: TCP - tls: PingTLS - url: URL - } -`; diff --git a/x-pack/plugins/uptime/server/graphql/types.ts b/x-pack/plugins/uptime/server/graphql/types.ts deleted file mode 100644 index 5f0a6749eb5999..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/types.ts +++ /dev/null @@ -1,23 +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 { RequestHandlerContext, CallAPIOptions, SavedObjectsClient } from 'src/core/server'; -import { UMServerLibs } from '../lib/lib'; - -export type UMContext = RequestHandlerContext & { - APICaller: ( - endpoint: string, - clientParams?: Record, - options?: CallAPIOptions | undefined - ) => Promise; - savedObjectsClient: SavedObjectsClient; -}; - -export interface UMGraphQLResolver { - Query?: any; -} - -export type CreateUMGraphQLResolvers = (libs: UMServerLibs) => any; diff --git a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_literal.test.ts b/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_literal.test.ts deleted file mode 100644 index 7c357abcf8e1d1..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_literal.test.ts +++ /dev/null @@ -1,42 +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 { parseLiteral } from '../resolvers'; - -describe('parseLiteral', () => { - it('parses string literal of type IntValue', () => { - const result = parseLiteral({ - kind: 'IntValue', - value: '1562605032000', - }); - expect(result).toBe(1562605032000); - }); - - it('parses string literal of type FloatValue', () => { - const result = parseLiteral({ - kind: 'FloatValue', - value: '1562605032000.0', - }); - expect(result).toBe(1562605032000); - }); - - it('parses string literal of type String', () => { - const result = parseLiteral({ - kind: 'StringValue', - value: '1562605032000', - }); - expect(result).toBe(1562605032000); - }); - - it('returns `null` for unsupported types', () => { - expect( - parseLiteral({ - kind: 'EnumValue', - value: 'false', - }) - ).toBeNull(); - }); -}); diff --git a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_value.test.ts b/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_value.test.ts deleted file mode 100644 index cb8958918c6dc4..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/parse_value.test.ts +++ /dev/null @@ -1,19 +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 { parseValue } from '../resolvers'; - -describe('parseValue', () => { - it(`parses a number value and returns it if its > 0`, () => { - const result = parseValue('1562605032000'); - expect(result).toBe(1562605032000); - }); - - it(`parses a number and returns null if its value is < 0`, () => { - const result = parseValue('-1562605032000'); - expect(result).toBeNull(); - }); -}); diff --git a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/serialize.test.ts b/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/serialize.test.ts deleted file mode 100644 index 2271d12ee7e13c..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/__tests__/serialize.test.ts +++ /dev/null @@ -1,24 +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 { serialize } from '../resolvers'; - -describe('serialize', () => { - it('serializes date strings correctly', () => { - const result = serialize('2019-07-08T16:59:09.796Z'); - expect(result).toBe(1562605149796); - }); - - it('serializes timestamp strings correctly', () => { - const result = serialize('1562605032000'); - expect(result).toBe(1562605032000); - }); - - it('serializes non-date and non-numeric values to NaN', () => { - const result = serialize('foo'); - expect(result).toBeNaN(); - }); -}); diff --git a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/index.ts b/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/index.ts deleted file mode 100644 index a8819f543a8517..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/index.ts +++ /dev/null @@ -1,8 +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. - */ - -export { unsignedIntegerResolverFunctions } from './resolvers'; -export { unsignedIntegerSchema } from './schema.gql'; diff --git a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/resolvers.ts b/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/resolvers.ts deleted file mode 100644 index 9b8fe145e7ff5f..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/resolvers.ts +++ /dev/null @@ -1,51 +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 { GraphQLScalarType, Kind, ValueNode } from 'graphql'; -import { UMServerLibs } from '../../lib/lib'; -import { CreateUMGraphQLResolvers } from '../types'; - -export const serialize = (value: any): number => { - // `parseInt` will yield `2019` for a value such as "2019-07-08T16:59:09.796Z" - if (isNaN(Number(value))) { - return Date.parse(value); - } - return parseInt(value, 10); -}; - -export const parseValue = (value: any) => { - const parsed = parseInt(value, 10); - if (parsed < 0) { - return null; - } - return parsed; -}; - -export const parseLiteral = (ast: ValueNode) => { - switch (ast.kind) { - case Kind.INT: - case Kind.FLOAT: - case Kind.STRING: - return parseInt(ast.value, 10); - } - return null; -}; - -const unsignedIntegerScalar = new GraphQLScalarType({ - name: 'UnsignedInteger', - description: 'Represents an unsigned 32-bit integer', - serialize, - parseValue, - parseLiteral, -}); - -/** - * This scalar resolver will parse an integer string of > 32 bits and return a value of type `number`. - * This assumes that the code is running in an environment that supports big ints. - */ -export const unsignedIntegerResolverFunctions: CreateUMGraphQLResolvers = (libs: UMServerLibs) => ({ - UnsignedInteger: unsignedIntegerScalar, -}); diff --git a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/schema.gql.ts b/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/schema.gql.ts deleted file mode 100644 index 6af2c8bc8827ff..00000000000000 --- a/x-pack/plugins/uptime/server/graphql/unsigned_int_scalar/schema.gql.ts +++ /dev/null @@ -1,11 +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 gql from 'graphql-tag'; - -export const unsignedIntegerSchema = gql` - scalar UnsignedInteger -`; diff --git a/x-pack/plugins/uptime/server/lib/adapters/framework/adapter_types.ts b/x-pack/plugins/uptime/server/lib/adapters/framework/adapter_types.ts index 47fe5f2af42637..98c6be5aa3c8e8 100644 --- a/x-pack/plugins/uptime/server/lib/adapters/framework/adapter_types.ts +++ b/x-pack/plugins/uptime/server/lib/adapters/framework/adapter_types.ts @@ -4,7 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -import { GraphQLSchema } from 'graphql'; import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; import { IRouter, @@ -44,5 +43,4 @@ export interface UptimeCorePlugins { export interface UMBackendFrameworkAdapter { registerRoute(route: UMKibanaRoute): void; - registerGraphQLEndpoint(routePath: string, schema: GraphQLSchema): void; } diff --git a/x-pack/plugins/uptime/server/lib/adapters/framework/kibana_framework_adapter.ts b/x-pack/plugins/uptime/server/lib/adapters/framework/kibana_framework_adapter.ts index 1f92c8212b393f..0176471aec1be2 100644 --- a/x-pack/plugins/uptime/server/lib/adapters/framework/kibana_framework_adapter.ts +++ b/x-pack/plugins/uptime/server/lib/adapters/framework/kibana_framework_adapter.ts @@ -4,9 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -import { GraphQLSchema } from 'graphql'; -import { schema as kbnSchema } from '@kbn/config-schema'; -import { runHttpQuery } from 'apollo-server-core'; import { UptimeCoreSetup } from './adapter_types'; import { UMBackendFrameworkAdapter } from './adapter_types'; import { UMKibanaRoute } from '../../../rest_api'; @@ -33,71 +30,4 @@ export class UMKibanaBackendFrameworkAdapter implements UMBackendFrameworkAdapte throw new Error(`Handler for method ${method} is not defined`); } } - - public registerGraphQLEndpoint(routePath: string, schema: GraphQLSchema): void { - this.server.route.post( - { - path: routePath, - validate: { - body: kbnSchema.object({ - operationName: kbnSchema.nullable(kbnSchema.string()), - query: kbnSchema.string(), - variables: kbnSchema.recordOf(kbnSchema.string(), kbnSchema.any()), - }), - }, - options: { - tags: ['access:uptime-read'], - }, - }, - async (context, request, resp): Promise => { - const { - core: { - elasticsearch: { - dataClient: { callAsCurrentUser }, - }, - }, - } = context; - const options = { - graphQLOptions: (_req: any) => { - return { - context: { - ...context, - APICaller: callAsCurrentUser, - savedObjectsClient: context.core.savedObjects.client, - }, - schema, - }; - }, - path: routePath, - route: { - tags: ['access:uptime-read'], - }, - }; - try { - const query = request.body as Record; - - const graphQLResponse = await runHttpQuery([request], { - method: 'POST', - options: options.graphQLOptions, - query, - }); - - return resp.ok({ - body: graphQLResponse, - headers: { - 'content-type': 'application/json', - }, - }); - } catch (error) { - if (error.isGraphQLError === true) { - return resp.internalError({ - body: { message: error.message }, - headers: { 'content-type': 'application/json' }, - }); - } - return resp.internalError(); - } - } - ); - } } diff --git a/x-pack/plugins/uptime/server/lib/requests/get_monitor_details.ts b/x-pack/plugins/uptime/server/lib/requests/get_monitor_details.ts index 8393370e1516b0..4ce7176b57b199 100644 --- a/x-pack/plugins/uptime/server/lib/requests/get_monitor_details.ts +++ b/x-pack/plugins/uptime/server/lib/requests/get_monitor_details.ts @@ -68,11 +68,11 @@ export const getMonitorDetails: UMElasticsearchQueryFn< const data = result.hits.hits[0]?._source; const monitorError: MonitorError | undefined = data?.error; - const errorTimeStamp: string | undefined = data?.['@timestamp']; + const errorTimestamp: string | undefined = data?.['@timestamp']; return { monitorId, error: monitorError, - timestamp: errorTimeStamp, + timestamp: errorTimestamp, }; }; diff --git a/x-pack/plugins/uptime/server/lib/requests/get_monitor_states.ts b/x-pack/plugins/uptime/server/lib/requests/get_monitor_states.ts index d7842d1a0b4aa8..4b40943a857051 100644 --- a/x-pack/plugins/uptime/server/lib/requests/get_monitor_states.ts +++ b/x-pack/plugins/uptime/server/lib/requests/get_monitor_states.ts @@ -8,10 +8,11 @@ import { CONTEXT_DEFAULTS } from '../../../../../legacy/plugins/uptime/common/co import { fetchPage } from './search'; import { UMElasticsearchQueryFn } from '../adapters'; import { - MonitorSummary, SortOrder, CursorDirection, -} from '../../../../../legacy/plugins/uptime/common/graphql/types'; + MonitorSummary, +} from '../../../../../legacy/plugins/uptime/common/runtime_types'; + import { QueryContext } from './search'; export interface CursorPagination { diff --git a/x-pack/plugins/uptime/server/lib/requests/search/__tests__/fetch_page.test.ts b/x-pack/plugins/uptime/server/lib/requests/search/__tests__/fetch_page.test.ts index f542773f32796e..2a8f681ab34536 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/__tests__/fetch_page.test.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/__tests__/fetch_page.test.ts @@ -12,7 +12,7 @@ import { MonitorGroupsPage, } from '../fetch_page'; import { QueryContext } from '../query_context'; -import { MonitorSummary } from '../../../../../../../legacy/plugins/uptime/common/graphql/types'; +import { MonitorSummary } from '../../../../../../../legacy/plugins/uptime/common/runtime_types'; import { nextPagination, prevPagination, simpleQueryContext } from './test_helpers'; const simpleFixture: MonitorGroups[] = [ @@ -53,12 +53,16 @@ const simpleFetcher = (monitorGroups: MonitorGroups[]): MonitorGroupsFetcher => }; const simpleEnricher = (monitorGroups: MonitorGroups[]): MonitorEnricher => { - return async (queryContext: QueryContext, checkGroups: string[]): Promise => { + return async (_queryContext: QueryContext, checkGroups: string[]): Promise => { return checkGroups.map(cg => { const monitorGroup = monitorGroups.find(mg => mg.groups.some(g => g.checkGroup === cg))!; return { monitor_id: monitorGroup.id, - state: { summary: {}, timestamp: new Date(Date.parse('1999-12-31')).toISOString() }, + state: { + summary: {}, + timestamp: new Date(Date.parse('1999-12-31')).valueOf().toString(), + url: {}, + }, }; }); }; @@ -71,16 +75,37 @@ describe('fetching a page', () => { simpleFetcher(simpleFixture), simpleEnricher(simpleFixture) ); - expect(res).toEqual({ - items: [ - { - monitor_id: 'foo', - state: { summary: {}, timestamp: '1999-12-31T00:00:00.000Z' }, + expect(res).toMatchInlineSnapshot(` + Object { + "items": Array [ + Object { + "monitor_id": "foo", + "state": Object { + "summary": Object {}, + "timestamp": "946598400000", + "url": Object {}, + }, + }, + Object { + "monitor_id": "bar", + "state": Object { + "summary": Object {}, + "timestamp": "946598400000", + "url": Object {}, + }, + }, + ], + "nextPagePagination": Object { + "cursorDirection": "AFTER", + "cursorKey": "bar", + "sortOrder": "ASC", }, - { monitor_id: 'bar', state: { summary: {}, timestamp: '1999-12-31T00:00:00.000Z' } }, - ], - nextPagePagination: { cursorDirection: 'AFTER', sortOrder: 'ASC', cursorKey: 'bar' }, - prevPagePagination: { cursorDirection: 'BEFORE', sortOrder: 'ASC', cursorKey: 'foo' }, - }); + "prevPagePagination": Object { + "cursorDirection": "BEFORE", + "cursorKey": "foo", + "sortOrder": "ASC", + }, + } + `); }); }); diff --git a/x-pack/plugins/uptime/server/lib/requests/search/__tests__/query_context.test.ts b/x-pack/plugins/uptime/server/lib/requests/search/__tests__/query_context.test.ts index a6c98541fba1d7..84774cdeed8567 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/__tests__/query_context.test.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/__tests__/query_context.test.ts @@ -9,7 +9,7 @@ import { CursorPagination } from '../types'; import { CursorDirection, SortOrder, -} from '../../../../../../../legacy/plugins/uptime/common/graphql/types'; +} from '../../../../../../../legacy/plugins/uptime/common/runtime_types'; describe(QueryContext, () => { // 10 minute range diff --git a/x-pack/plugins/uptime/server/lib/requests/search/__tests__/test_helpers.ts b/x-pack/plugins/uptime/server/lib/requests/search/__tests__/test_helpers.ts index d1212daf5304fd..47034c21301164 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/__tests__/test_helpers.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/__tests__/test_helpers.ts @@ -8,7 +8,7 @@ import { CursorPagination } from '../types'; import { CursorDirection, SortOrder, -} from '../../../../../../../legacy/plugins/uptime/common/graphql/types'; +} from '../../../../../../../legacy/plugins/uptime/common/runtime_types'; import { QueryContext } from '../query_context'; export const prevPagination = (key: any): CursorPagination => { diff --git a/x-pack/plugins/uptime/server/lib/requests/search/enrich_monitor_groups.ts b/x-pack/plugins/uptime/server/lib/requests/search/enrich_monitor_groups.ts index 1798550875276f..4739c804d24e75 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/enrich_monitor_groups.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/enrich_monitor_groups.ts @@ -8,12 +8,12 @@ import { get, sortBy } from 'lodash'; import { QueryContext } from './query_context'; import { QUERY, STATES } from '../../../../../../legacy/plugins/uptime/common/constants'; import { - MonitorSummary, - SummaryHistogram, Check, + Histogram, + MonitorSummary, CursorDirection, SortOrder, -} from '../../../../../../legacy/plugins/uptime/common/graphql/types'; +} from '../../../../../../legacy/plugins/uptime/common/runtime_types'; import { MonitorEnricher } from './fetch_page'; export const enrichMonitorGroups: MonitorEnricher = async ( @@ -250,11 +250,8 @@ export const enrichMonitorGroups: MonitorEnricher = async ( const summaries: MonitorSummary[] = monitorBuckets.map((monitor: any) => { const monitorId = get(monitor, 'key.monitor_id'); monitorIds.push(monitorId); - let state = get(monitor, 'state.value'); - state = { - ...state, - timestamp: state['@timestamp'], - }; + const state: any = monitor.state?.value; + state.timestamp = state['@timestamp']; const { checks } = state; if (checks) { state.checks = sortBy(checks, checksSortBy); @@ -289,7 +286,7 @@ export const enrichMonitorGroups: MonitorEnricher = async ( const getHistogramForMonitors = async ( queryContext: QueryContext, monitorIds: string[] -): Promise<{ [key: string]: SummaryHistogram }> => { +): Promise<{ [key: string]: Histogram }> => { const params = { index: queryContext.heartbeatIndices, body: { diff --git a/x-pack/plugins/uptime/server/lib/requests/search/fetch_page.ts b/x-pack/plugins/uptime/server/lib/requests/search/fetch_page.ts index 62144dacbd3777..84167840d5d9ba 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/fetch_page.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/fetch_page.ts @@ -12,7 +12,7 @@ import { CursorDirection, MonitorSummary, SortOrder, -} from '../../../../../../legacy/plugins/uptime/common/graphql/types'; +} from '../../../../../../legacy/plugins/uptime/common/runtime_types'; import { enrichMonitorGroups } from './enrich_monitor_groups'; import { MonitorGroupIterator } from './monitor_group_iterator'; diff --git a/x-pack/plugins/uptime/server/lib/requests/search/find_potential_matches.ts b/x-pack/plugins/uptime/server/lib/requests/search/find_potential_matches.ts index 424c097853ad3c..3449febfa5b053 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/find_potential_matches.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/find_potential_matches.ts @@ -5,7 +5,7 @@ */ import { get, set } from 'lodash'; -import { CursorDirection } from '../../../../../../legacy/plugins/uptime/common/graphql/types'; +import { CursorDirection } from '../../../../../../legacy/plugins/uptime/common/runtime_types'; import { QueryContext } from './query_context'; // This is the first phase of the query. In it, we find the most recent check groups that matched the given query. diff --git a/x-pack/plugins/uptime/server/lib/requests/search/monitor_group_iterator.ts b/x-pack/plugins/uptime/server/lib/requests/search/monitor_group_iterator.ts index 267551907c5e8f..31d9166eb1e73b 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/monitor_group_iterator.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/monitor_group_iterator.ts @@ -6,7 +6,7 @@ import { QueryContext } from './query_context'; import { fetchChunk } from './fetch_chunk'; -import { CursorDirection } from '../../../../../../legacy/plugins/uptime/common/graphql/types'; +import { CursorDirection } from '../../../../../../legacy/plugins/uptime/common/runtime_types'; import { MonitorGroups } from './fetch_page'; import { CursorPagination } from './types'; diff --git a/x-pack/plugins/uptime/server/lib/requests/search/refine_potential_matches.ts b/x-pack/plugins/uptime/server/lib/requests/search/refine_potential_matches.ts index 218eb2f121a81d..43fc54fb258089 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/refine_potential_matches.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/refine_potential_matches.ts @@ -5,7 +5,7 @@ */ import { QueryContext } from './query_context'; -import { CursorDirection } from '../../../../../../legacy/plugins/uptime/common/graphql/types'; +import { CursorDirection } from '../../../../../../legacy/plugins/uptime/common/runtime_types'; import { MonitorGroups, MonitorLocCheckGroup } from './fetch_page'; /** diff --git a/x-pack/plugins/uptime/server/lib/requests/search/types.ts b/x-pack/plugins/uptime/server/lib/requests/search/types.ts index 42c98ace6e8f5e..2ec52d400b5972 100644 --- a/x-pack/plugins/uptime/server/lib/requests/search/types.ts +++ b/x-pack/plugins/uptime/server/lib/requests/search/types.ts @@ -7,7 +7,7 @@ import { CursorDirection, SortOrder, -} from '../../../../../../legacy/plugins/uptime/common/graphql/types'; +} from '../../../../../../legacy/plugins/uptime/common/runtime_types'; export interface CursorPagination { cursorKey?: any; diff --git a/x-pack/plugins/uptime/server/rest_api/index.ts b/x-pack/plugins/uptime/server/rest_api/index.ts index c0412e588fa93a..ae1e499dcc26c2 100644 --- a/x-pack/plugins/uptime/server/rest_api/index.ts +++ b/x-pack/plugins/uptime/server/rest_api/index.ts @@ -12,6 +12,7 @@ import { createGetSnapshotCount } from './snapshot'; import { UMRestApiRouteFactory } from './types'; import { createGetMonitorDetailsRoute, + createMonitorListRoute, createGetMonitorLocationsRoute, createGetStatusBarRoute, } from './monitors'; @@ -30,6 +31,7 @@ export const restApiRoutes: UMRestApiRouteFactory[] = [ createPostDynamicSettingsRoute, createGetMonitorDetailsRoute, createGetMonitorLocationsRoute, + createMonitorListRoute, createGetStatusBarRoute, createGetSnapshotCount, createLogPageViewRoute, diff --git a/x-pack/plugins/uptime/server/rest_api/monitors/index.ts b/x-pack/plugins/uptime/server/rest_api/monitors/index.ts index 51b39037049b58..256f885d550edc 100644 --- a/x-pack/plugins/uptime/server/rest_api/monitors/index.ts +++ b/x-pack/plugins/uptime/server/rest_api/monitors/index.ts @@ -5,5 +5,6 @@ */ export { createGetMonitorDetailsRoute } from './monitors_details'; +export { createMonitorListRoute } from './monitor_list'; export { createGetMonitorLocationsRoute } from './monitor_locations'; export { createGetStatusBarRoute } from './monitor_status'; diff --git a/x-pack/plugins/uptime/server/rest_api/monitors/monitor_list.ts b/x-pack/plugins/uptime/server/rest_api/monitors/monitor_list.ts new file mode 100644 index 00000000000000..5cb4e8a6241b74 --- /dev/null +++ b/x-pack/plugins/uptime/server/rest_api/monitors/monitor_list.ts @@ -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. + */ + +import { schema } from '@kbn/config-schema'; +import { UMRestApiRouteFactory } from '../types'; +import { CONTEXT_DEFAULTS } from '../../../../../legacy/plugins/uptime/common/constants'; +import { API_URLS } from '../../../../../legacy/plugins/uptime/common/constants/rest_api'; + +export const createMonitorListRoute: UMRestApiRouteFactory = libs => ({ + method: 'GET', + path: API_URLS.MONITOR_LIST, + validate: { + query: schema.object({ + dateRangeStart: schema.string(), + dateRangeEnd: schema.string(), + filters: schema.maybe(schema.string()), + pagination: schema.maybe(schema.string()), + statusFilter: schema.maybe(schema.string()), + pageSize: schema.number(), + }), + }, + options: { + tags: ['access:uptime-read'], + }, + handler: async ({ callES, dynamicSettings }, _context, request, response): Promise => { + const { + dateRangeStart, + dateRangeEnd, + filters, + pagination, + statusFilter, + pageSize, + } = request.query; + + const decodedPagination = pagination + ? JSON.parse(decodeURIComponent(pagination)) + : CONTEXT_DEFAULTS.CURSOR_PAGINATION; + const [indexStatus, { summaries, nextPagePagination, prevPagePagination }] = await Promise.all([ + libs.requests.getIndexStatus({ callES, dynamicSettings }), + libs.requests.getMonitorStates({ + callES, + dynamicSettings, + dateRangeStart, + dateRangeEnd, + pagination: decodedPagination, + pageSize, + filters, + // this is added to make typescript happy, + // this sort of reassignment used to be further downstream but I've moved it here + // because this code is going to be decomissioned soon + statusFilter: statusFilter || undefined, + }), + ]); + + const totalSummaryCount = indexStatus?.docCount ?? 0; + + return response.ok({ + body: { + summaries, + nextPagePagination, + prevPagePagination, + totalSummaryCount, + }, + }); + }, +}); diff --git a/x-pack/plugins/uptime/server/uptime_server.ts b/x-pack/plugins/uptime/server/uptime_server.ts index d4b38b8ad27a0f..cc6fe85b80cb24 100644 --- a/x-pack/plugins/uptime/server/uptime_server.ts +++ b/x-pack/plugins/uptime/server/uptime_server.ts @@ -4,8 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -import { makeExecutableSchema } from 'graphql-tools'; -import { DEFAULT_GRAPHQL_PATH, resolvers, typeDefs } from './graphql'; import { UMServerLibs } from './lib/lib'; import { createRouteWithAuth, restApiRoutes, uptimeRouteWrapper } from './rest_api'; import { UptimeCoreSetup, UptimeCorePlugins } from './lib/adapters'; @@ -23,10 +21,4 @@ export const initUptimeServer = ( uptimeAlertTypeFactories.forEach(alertTypeFactory => plugins.alerting.registerType(alertTypeFactory(server, libs)) ); - - const graphQLSchema = makeExecutableSchema({ - resolvers: resolvers.map(createResolversFn => createResolversFn(libs)), - typeDefs, - }); - libs.framework.registerGraphQLEndpoint(DEFAULT_GRAPHQL_PATH, graphQLSchema); }; diff --git a/x-pack/test/api_integration/apis/uptime/feature_controls.ts b/x-pack/test/api_integration/apis/uptime/feature_controls.ts index 8b82735fc38b05..6d125807e169d1 100644 --- a/x-pack/test/api_integration/apis/uptime/feature_controls.ts +++ b/x-pack/test/api_integration/apis/uptime/feature_controls.ts @@ -26,17 +26,6 @@ export default function featureControlsTests({ getService }: FtrProviderContext) expect(result.response).to.have.property('statusCode', 200); }; - const executeRESTAPIQuery = async (username: string, password: string, spaceId?: string) => { - const basePath = spaceId ? `/s/${spaceId}` : ''; - - return await supertest - .get(basePath + API_URLS.INDEX_STATUS) - .auth(username, password) - .set('kbn-xsrf', 'foo') - .then((response: any) => ({ error: undefined, response })) - .catch((error: any) => ({ error, response: undefined })); - }; - const executePingsRequest = async (username: string, password: string, spaceId?: string) => { const basePath = spaceId ? `/s/${spaceId}` : ''; @@ -72,9 +61,6 @@ export default function featureControlsTests({ getService }: FtrProviderContext) full_name: 'a kibana user', }); - const graphQLResult = await executeRESTAPIQuery(username, password); - expect404(graphQLResult); - const pingsResult = await executePingsRequest(username, password); expect404(pingsResult); } finally { @@ -111,9 +97,6 @@ export default function featureControlsTests({ getService }: FtrProviderContext) full_name: 'a kibana user', }); - const graphQLResult = await executeRESTAPIQuery(username, password); - expectResponse(graphQLResult); - const pingsResult = await executePingsRequest(username, password); expectResponse(pingsResult); } finally { @@ -153,9 +136,6 @@ export default function featureControlsTests({ getService }: FtrProviderContext) full_name: 'a kibana user', }); - const graphQLResult = await executeRESTAPIQuery(username, password); - expect404(graphQLResult); - const pingsResult = await executePingsRequest(username, password); expect404(pingsResult); } finally { @@ -222,17 +202,11 @@ export default function featureControlsTests({ getService }: FtrProviderContext) }); it('user_1 can access APIs in space_1', async () => { - const graphQLResult = await executeRESTAPIQuery(username, password, space1Id); - expectResponse(graphQLResult); - const pingsResult = await executePingsRequest(username, password, space1Id); expectResponse(pingsResult); }); it(`user_1 can't access APIs in space_2`, async () => { - const graphQLResult = await executeRESTAPIQuery(username, password); - expect404(graphQLResult); - const pingsResult = await executePingsRequest(username, password); expect404(pingsResult); }); diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states.json deleted file mode 100644 index a748225dda7cff..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": null, - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0009-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0000-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0001-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0002-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0003-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0004-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0005-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0006-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0007-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0008-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0009-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_id_filtered.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_id_filtered.json deleted file mode 100644 index 44644be5a0724a..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_id_filtered.json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": null, - "nextPagePagination": null, - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0002-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_1.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_1.json deleted file mode 100644 index a748225dda7cff..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_1.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": null, - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0009-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0000-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0001-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0002-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0003-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0004-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0005-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0006-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0007-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0008-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0009-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10.json deleted file mode 100644 index fbd0776fade62e..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0090-intermittent\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": null, - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0090-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0091-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0092-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0093-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0094-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0095-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0096-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234376" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234376 - } - }, - { - "monitor_id": "0097-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234405" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234405 - } - }, - { - "monitor_id": "0098-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234406" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234406 - } - }, - { - "monitor_id": "0099-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234406" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234406 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10_previous.json deleted file mode 100644 index e630e227f473b9..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_10_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0080-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0089-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0080-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0081-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0082-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0083-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0084-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0085-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0086-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0087-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0088-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0089-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2.json deleted file mode 100644 index 26b4b1a195567b..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0010-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0019-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0010-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0011-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0012-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0013-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0014-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0015-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0016-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0017-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0018-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0019-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2_previous.json deleted file mode 100644 index 0b93e66f50246b..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_2_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": null, - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0009-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0000-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0001-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0002-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0003-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0004-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0005-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0006-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0007-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0008-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0009-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3.json deleted file mode 100644 index 7b47742f8859a6..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0020-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0029-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0020-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0021-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0022-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0023-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0024-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0025-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0026-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0027-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0028-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0029-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3_previous.json deleted file mode 100644 index 0d5a76059d004a..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_3_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0010-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0019-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0010-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0011-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0012-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0013-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0014-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0015-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0016-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0017-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0018-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0019-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4.json deleted file mode 100644 index 4caff800ac96e2..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0030-intermittent\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0039-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0030-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0031-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0032-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0033-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0034-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0035-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0036-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0037-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0038-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0039-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4_previous.json deleted file mode 100644 index 02bd149b502470..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_4_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0020-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0029-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0020-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0021-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0022-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0023-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0024-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0025-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0026-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0027-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0028-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0029-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5.json deleted file mode 100644 index 11e880f1ec3291..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0040-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0049-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0040-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0041-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0042-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0043-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0044-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0045-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0046-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0047-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234390" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234390 - } - }, - { - "monitor_id": "0048-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234386" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234386 - } - }, - { - "monitor_id": "0049-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234405" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234405 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5_previous.json deleted file mode 100644 index 26cfa7c7162e83..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_5_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0030-intermittent\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0039-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0030-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0031-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0032-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0033-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0034-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0035-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0036-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0037-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0038-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0039-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6.json deleted file mode 100644 index 8f4b5d4c52e719..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0050-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0059-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0050-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234386" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234386 - } - }, - { - "monitor_id": "0051-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0052-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0053-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0054-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0055-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0056-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0057-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0058-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0059-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6_previous.json deleted file mode 100644 index 50f8f61b13d68c..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_6_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0040-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0049-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0040-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0041-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0042-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0043-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0044-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0045-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0046-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0047-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234390" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234390 - } - }, - { - "monitor_id": "0048-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234386" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234386 - } - }, - { - "monitor_id": "0049-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234405" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234405 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7.json deleted file mode 100644 index 18ab2c6fdf3368..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0060-intermittent\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0069-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0060-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0061-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0062-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0063-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0064-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0065-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0066-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0067-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0068-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0069-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7_previous.json deleted file mode 100644 index 825d6365e3a9d7..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_7_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0050-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0059-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0050-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234386" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234386 - } - }, - { - "monitor_id": "0051-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0052-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0053-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0054-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0055-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0056-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0057-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0058-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0059-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8.json deleted file mode 100644 index abb9bcdd804ed0..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0070-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0079-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0070-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0071-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0072-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234376" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234376 - } - }, - { - "monitor_id": "0073-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234406" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234406 - } - }, - { - "monitor_id": "0074-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234410" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234410 - } - }, - { - "monitor_id": "0075-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234406" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234406 - } - }, - { - "monitor_id": "0076-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234387" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234387 - } - }, - { - "monitor_id": "0077-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234389" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234389 - } - }, - { - "monitor_id": "0078-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0079-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8_previous.json deleted file mode 100644 index 46a5f195e6a828..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_8_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0060-intermittent\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0069-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0060-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0061-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0062-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0063-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0064-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0065-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0066-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0067-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0068-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234374" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234374 - } - }, - { - "monitor_id": "0069-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9.json deleted file mode 100644 index 035baf0ab5b5e0..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0080-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorDirection\":\"AFTER\",\"sortOrder\":\"ASC\",\"cursorKey\":{\"monitor_id\":\"0089-up\"}}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0080-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0081-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0082-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234372" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234372 - } - }, - { - "monitor_id": "0083-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0084-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0085-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0086-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0087-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0088-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - }, - { - "monitor_id": "0089-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234373" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234373 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9_previous.json b/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9_previous.json deleted file mode 100644 index a6d274056eec65..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_states_page_9_previous.json +++ /dev/null @@ -1,1609 +0,0 @@ -{ - "monitorStates": { - "prevPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0070-down\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"BEFORE\"}", - "nextPagePagination": "{\"cursorKey\":{\"monitor_id\":\"0079-up\"},\"sortOrder\":\"ASC\",\"cursorDirection\":\"AFTER\"}", - "totalSummaryCount": 2000, - "summaries": [ - { - "monitor_id": "0070-down", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172694000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172724000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172754000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172784000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172874000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172904000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172934000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172964000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173054000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173084000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173174000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173204000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173234000, - "up": 0, - "down": 1 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "down" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "down", - "type": null - }, - "summary": { - "up": 0, - "down": 1, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=400x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0071-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234375" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234375 - } - }, - { - "monitor_id": "0072-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234376" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234376 - } - }, - { - "monitor_id": "0073-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234406" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234406 - } - }, - { - "monitor_id": "0074-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234410" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234410 - } - }, - { - "monitor_id": "0075-intermittent", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 0, - "down": 1 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234406" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x5,500x1", - "domain": "localhost" - }, - "timestamp": 1568173234406 - } - }, - { - "monitor_id": "0076-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234387" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234387 - } - }, - { - "monitor_id": "0077-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234389" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234389 - } - }, - { - "monitor_id": "0078-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - }, - { - "monitor_id": "0079-up", - "histogram": { - "count": 20, - "points": [ - { - "timestamp": 1568172664000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172694000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172724000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172754000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172784000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172814000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172844000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172874000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172904000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172934000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172964000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568172994000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173024000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173054000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173084000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173114000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173144000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173174000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173204000, - "up": 1, - "down": 0 - }, - { - "timestamp": 1568173234000, - "up": 1, - "down": 0 - } - ] - }, - "state": { - "agent": null, - "checks": [ - { - "agent": { - "id": "04e1d082-65bc-4929-8d65-d0768a2621c4" - }, - "container": null, - "kubernetes": null, - "monitor": { - "ip": "127.0.0.1", - "name": "", - "status": "up" - }, - "observer": { - "geo": { - "name": "mpls", - "location": { - "lat": 37.926867976784706, - "lon": -78.02490200847387 - } - } - }, - "timestamp": "1568173234371" - } - ], - "geo": null, - "observer": { - "geo": { - "name": [ - "mpls" - ], - "location": null - } - }, - "monitor": { - "id": null, - "name": null, - "status": "up", - "type": null - }, - "summary": { - "up": 1, - "down": 0, - "geo": null - }, - "url": { - "full": "http://localhost:5678/pattern?r=200x1", - "domain": "localhost" - }, - "timestamp": 1568173234371 - } - } - ] - } -} \ No newline at end of file diff --git a/x-pack/test/api_integration/apis/uptime/graphql/index.ts b/x-pack/test/api_integration/apis/uptime/graphql/index.ts deleted file mode 100644 index 862cce47f257a5..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/index.ts +++ /dev/null @@ -1,17 +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 { FtrProviderContext } from '../../../ftr_provider_context'; - -export default function({ loadTestFile }: FtrProviderContext) { - describe('graphql', () => { - // each of these test files imports a GQL query from - // the uptime app and runs it against the live HTTP server, - // verifying the pre-loaded documents are returned in a way that - // matches the snapshots contained in './fixtures' - loadTestFile(require.resolve('./monitor_states')); - }); -} diff --git a/x-pack/test/api_integration/apis/uptime/graphql/monitor_states.ts b/x-pack/test/api_integration/apis/uptime/graphql/monitor_states.ts deleted file mode 100644 index 216560583249c5..00000000000000 --- a/x-pack/test/api_integration/apis/uptime/graphql/monitor_states.ts +++ /dev/null @@ -1,245 +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 expect from '@kbn/expect'; -import { expectFixtureEql } from './helpers/expect_fixture_eql'; -import { FtrProviderContext } from '../../../ftr_provider_context'; -import { makeChecksWithStatus } from './helpers/make_checks'; -import { monitorStatesQueryString } from '../../../../../legacy/plugins/uptime/public/queries/monitor_states_query'; -import { MonitorSummary } from '../../../../../legacy/plugins/uptime/common/graphql/types'; - -export default function({ getService }: FtrProviderContext) { - const supertest = getService('supertest'); - let dateRangeStart: string; - let dateRangeEnd: string; - - const getMonitorStates = async (variables: { [key: string]: any } = {}) => { - const query = { - operationName: 'MonitorStates', - query: monitorStatesQueryString, - variables: { - dateRangeStart, - dateRangeEnd, - pageSize: 10, - ...variables, - }, - }; - - const { - body: { data }, - } = await supertest - .post('/api/uptime/graphql') - .set('kbn-xsrf', 'foo') - .send({ ...query }); - - return data; - }; - - describe('monitor states', async () => { - describe('with real world data', () => { - before('load heartbeat data', () => getService('esArchiver').load('uptime/full_heartbeat')); - after('unload heartbeat index', () => - getService('esArchiver').unload('uptime/full_heartbeat') - ); - - before('set start/end', () => { - dateRangeStart = '2019-09-11T03:31:04.380Z'; - dateRangeEnd = '2019-09-11T03:40:34.410Z'; - }); - - it('will fetch monitor state data for the given filters and range', async () => { - const data: any = await getMonitorStates({ - statusFilter: 'up', - filters: - '{"bool":{"must":[{"match":{"monitor.id":{"query":"0002-up","operator":"and"}}}]}}', - }); - // await new Promise(r => setTimeout(r, 90000)); - expectFixtureEql(data, 'monitor_states_id_filtered'); - }); - - it('will fetch monitor state data for the given date range', async () => { - expectFixtureEql(await getMonitorStates(), 'monitor_states'); - }); - - it('can navigate forward and backward using pagination', async () => { - const expectedResultsCount = 100; - const expectedPageCount = expectedResultsCount / 10; - - let pagination: string | null = null; - for (let page = 1; page <= expectedPageCount; page++) { - const data: any = await getMonitorStates({ pagination }); - pagination = data.monitorStates.nextPagePagination; - expectFixtureEql(data, `monitor_states_page_${page}`); - - // Test to see if the previous page pagination works on every page (other than the first) - if (page > 1) { - const prevData = await getMonitorStates({ - pagination: data.monitorStates.prevPagePagination, - }); - expectFixtureEql(prevData, `monitor_states_page_${page}_previous`); - } - } - }); - }); - - describe('monitor state scoping', async () => { - const numIps = 4; // Must be > 2 for IP uniqueness checks - - before('load heartbeat data', () => getService('esArchiver').load('uptime/blank')); - after('unload heartbeat index', () => getService('esArchiver').unload('uptime/blank')); - - describe('query document scoping with mismatched check statuses', async () => { - let checks: any[] = []; - let nonSummaryIp: string | null = null; - const testMonitorId = 'scope-test-id'; - const makeApiParams = (monitorId: string, filterClauses: any[] = []): any => { - return { - filters: JSON.stringify({ - bool: { - filter: [{ match: { 'monitor.id': monitorId } }, ...filterClauses], - }, - }), - }; - }; - - before(async () => { - const es = getService('legacyEs'); - dateRangeStart = new Date().toISOString(); - checks = await makeChecksWithStatus(es, testMonitorId, 1, numIps, 1, {}, 'up', d => { - // turn an all up status into having at least one down - if (d.summary) { - d.monitor.status = 'down'; - d.summary.up--; - d.summary.down++; - } - return d; - }); - - dateRangeEnd = new Date().toISOString(); - nonSummaryIp = checks[0][0].monitor.ip; - }); - - it('should return all IPs', async () => { - const res = await getMonitorStates(makeApiParams(testMonitorId)); - - const uniqueIps = new Set(); - res.monitorStates.summaries[0].state.checks.forEach((c: any) => - uniqueIps.add(c.monitor.ip) - ); - - expect(uniqueIps.size).to.eql(4); - }); - - it('should match non summary documents without a status filter', async () => { - const params = makeApiParams(testMonitorId, [{ match: { 'monitor.ip': nonSummaryIp } }]); - - const nonSummaryRes = await getMonitorStates(params); - expect(nonSummaryRes.monitorStates.summaries.length).to.eql(1); - }); - - it('should not match non summary documents if the check status does not match the document status', async () => { - const params = makeApiParams(testMonitorId, [{ match: { 'monitor.ip': nonSummaryIp } }]); - params.statusFilter = 'down'; - - const nonSummaryRes = await getMonitorStates(params); - expect(nonSummaryRes.monitorStates.summaries.length).to.eql(0); - }); - - it('should not non match non summary documents if the check status does not match', async () => { - const params = makeApiParams(testMonitorId, [{ match: { 'monitor.ip': nonSummaryIp } }]); - params.statusFilter = 'up'; - - const nonSummaryRes = await getMonitorStates(params); - expect(nonSummaryRes.monitorStates.summaries.length).to.eql(0); - }); - - describe('matching outside of the date range', async () => { - before('set date range to future', () => { - const futureDate = new Date(); - - // Set dateRangeStart to one day from now - futureDate.setDate(futureDate.getDate() + 1); - dateRangeStart = futureDate.toISOString(); - - // Set dateRangeStart to two days from now - futureDate.setDate(futureDate.getDate() + 1); - dateRangeEnd = futureDate.toISOString(); - }); - - it('should not match any documents', async () => { - const params = makeApiParams(testMonitorId); - params.statusFilter = 'up'; - - const nonSummaryRes = await getMonitorStates(params); - expect(nonSummaryRes.monitorStates.summaries.length).to.eql(0); - }); - }); - }); - }); - - describe(' test status filter', async () => { - const upMonitorId = 'up-test-id'; - const downMonitorId = 'down-test-id'; - const mixMonitorId = 'mix-test-id'; - before('generate three monitors with up, down, mix state', async () => { - await getService('esArchiver').load('uptime/blank'); - - const es = getService('legacyEs'); - - const observer = { - geo: { - name: 'US-East', - location: '40.7128, -74.0060', - }, - }; - - // Generating three monitors each with two geo locations, - // One in a down state , - // One in an up state, - // One in a mix state - - dateRangeStart = new Date().toISOString(); - - await makeChecksWithStatus(es, upMonitorId, 1, 4, 1, {}, 'up'); - await makeChecksWithStatus(es, upMonitorId, 1, 4, 1, { observer }, 'up'); - - await makeChecksWithStatus(es, downMonitorId, 1, 4, 1, {}, 'down'); - await makeChecksWithStatus(es, downMonitorId, 1, 4, 1, { observer }, 'down'); - - await makeChecksWithStatus(es, mixMonitorId, 1, 4, 1, {}, 'up'); - await makeChecksWithStatus(es, mixMonitorId, 1, 4, 1, { observer }, 'down'); - - dateRangeEnd = new Date().toISOString(); - }); - - after('unload heartbeat index', () => getService('esArchiver').unload('uptime/blank')); - - it('should return all monitor when no status filter', async () => { - const { monitorStates } = await getMonitorStates({}); - expect(monitorStates.summaries.length).to.eql(3); - // Summaries are by default sorted by monitor names - expect( - monitorStates.summaries.map((summary: MonitorSummary) => summary.monitor_id) - ).to.eql([downMonitorId, mixMonitorId, upMonitorId]); - }); - - it('should return a monitor with mix state if check status filter is down', async () => { - const { monitorStates } = await getMonitorStates({ statusFilter: 'down' }); - expect(monitorStates.summaries.length).to.eql(2); - monitorStates.summaries.forEach((summary: MonitorSummary) => { - expect(summary.monitor_id).to.not.eql(upMonitorId); - }); - }); - - it('should not return a monitor with mix state if check status filter is up', async () => { - const { monitorStates } = await getMonitorStates({ statusFilter: 'up' }); - - expect(monitorStates.summaries.length).to.eql(1); - expect(monitorStates.summaries[0].monitor_id).to.eql(upMonitorId); - }); - }); - }); -} diff --git a/x-pack/test/api_integration/apis/uptime/index.ts b/x-pack/test/api_integration/apis/uptime/index.ts index 8def64b71a110d..13af60196f00d3 100644 --- a/x-pack/test/api_integration/apis/uptime/index.ts +++ b/x-pack/test/api_integration/apis/uptime/index.ts @@ -20,7 +20,6 @@ export default function({ getService, loadTestFile }: FtrProviderContext) { loadTestFile(require.resolve('./feature_controls')); loadTestFile(require.resolve('./get_all_pings')); - loadTestFile(require.resolve('./graphql')); loadTestFile(require.resolve('./rest')); }); } diff --git a/x-pack/test/api_integration/apis/uptime/rest/doc_count.ts b/x-pack/test/api_integration/apis/uptime/rest/doc_count.ts index 3f42511dd165c8..5258426cf193c1 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/doc_count.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/doc_count.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ import { FtrProviderContext } from '../../../ftr_provider_context'; -import { expectFixtureEql } from '../graphql/helpers/expect_fixture_eql'; +import { expectFixtureEql } from './helper/expect_fixture_eql'; import { API_URLS } from '../../../../../legacy/plugins/uptime/common/constants'; export default function({ getService }: FtrProviderContext) { diff --git a/x-pack/test/api_integration/apis/uptime/rest/filters.ts b/x-pack/test/api_integration/apis/uptime/rest/filters.ts index 6cec6143a6d7c6..35bf32a1d404d4 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/filters.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/filters.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { expectFixtureEql } from '../graphql/helpers/expect_fixture_eql'; +import { expectFixtureEql } from './helper/expect_fixture_eql'; import { FtrProviderContext } from '../../../ftr_provider_context'; const getApiPath = (dateRangeStart: string, dateRangeEnd: string, filters?: string) => diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/filters.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/filters.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/filters.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/filters.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_status.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/monitor_status.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_status.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/monitor_status.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_status_all.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/monitor_status_all.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitor_status_all.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/monitor_status_all.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitors_with_location.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/monitors_with_location.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/monitors_with_location.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/monitors_with_location.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot_empty.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot_empty.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot_empty.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot_empty.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot_filtered_by_down.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot_filtered_by_down.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot_filtered_by_down.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot_filtered_by_down.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot_filtered_by_up.json b/x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot_filtered_by_up.json similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/fixtures/snapshot_filtered_by_up.json rename to x-pack/test/api_integration/apis/uptime/rest/fixtures/snapshot_filtered_by_up.json diff --git a/x-pack/test/api_integration/apis/uptime/graphql/helpers/expect_fixture_eql.ts b/x-pack/test/api_integration/apis/uptime/rest/helper/expect_fixture_eql.ts similarity index 87% rename from x-pack/test/api_integration/apis/uptime/graphql/helpers/expect_fixture_eql.ts rename to x-pack/test/api_integration/apis/uptime/rest/helper/expect_fixture_eql.ts index d5a4f3976e0798..abf5ec6f697b03 100644 --- a/x-pack/test/api_integration/apis/uptime/graphql/helpers/expect_fixture_eql.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/helper/expect_fixture_eql.ts @@ -10,7 +10,6 @@ import { join } from 'path'; import { cloneDeep, isEqual } from 'lodash'; const fixturesDir = join(__dirname, '..', 'fixtures'); -const restFixturesDir = join(__dirname, '../../rest/', 'fixtures'); const excludeFieldsFrom = (from: any, excluder?: (d: any) => any): any => { const clone = cloneDeep(from); @@ -24,10 +23,7 @@ export const expectFixtureEql = (data: T, fixtureName: string, excluder?: (d: expect(data).not.to.eql(null); expect(data).not.to.eql(undefined); - let fixturePath = join(fixturesDir, `${fixtureName}.json`); - if (!fs.existsSync(fixturePath)) { - fixturePath = join(restFixturesDir, `${fixtureName}.json`); - } + const fixturePath = join(fixturesDir, `${fixtureName}.json`); excluder = excluder || (d => d); const dataExcluded = excludeFieldsFrom(data, excluder); diff --git a/x-pack/test/api_integration/apis/uptime/graphql/helpers/make_checks.ts b/x-pack/test/api_integration/apis/uptime/rest/helper/make_checks.ts similarity index 100% rename from x-pack/test/api_integration/apis/uptime/graphql/helpers/make_checks.ts rename to x-pack/test/api_integration/apis/uptime/rest/helper/make_checks.ts diff --git a/x-pack/test/api_integration/apis/uptime/rest/index.ts b/x-pack/test/api_integration/apis/uptime/rest/index.ts index 3f8df81856f5c9..29755bbddbc86f 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/index.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/index.ts @@ -42,6 +42,7 @@ export default function({ getService, loadTestFile }: FtrProviderContext) { loadTestFile(require.resolve('./snapshot')); loadTestFile(require.resolve('./dynamic_settings')); + loadTestFile(require.resolve('./monitor_states_generated')); loadTestFile(require.resolve('./telemetry_collectors')); }); describe('with real-world data', () => { @@ -52,6 +53,7 @@ export default function({ getService, loadTestFile }: FtrProviderContext) { loadTestFile(require.resolve('./ping_list')); loadTestFile(require.resolve('./monitor_duration')); loadTestFile(require.resolve('./doc_count')); + loadTestFile(require.resolve('./monitor_states_real_data')); }); }); } diff --git a/x-pack/test/api_integration/apis/uptime/rest/monitor_duration.ts b/x-pack/test/api_integration/apis/uptime/rest/monitor_duration.ts index acc50e9b8f3d67..7e93f9cfff8a1d 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/monitor_duration.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/monitor_duration.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { expectFixtureEql } from '../graphql/helpers/expect_fixture_eql'; +import { expectFixtureEql } from './helper/expect_fixture_eql'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function({ getService }: FtrProviderContext) { diff --git a/x-pack/test/api_integration/apis/uptime/rest/monitor_latest_status.ts b/x-pack/test/api_integration/apis/uptime/rest/monitor_latest_status.ts index 749b304c87ee3a..6547816bb7c162 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/monitor_latest_status.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/monitor_latest_status.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { expectFixtureEql } from '../graphql/helpers/expect_fixture_eql'; +import { expectFixtureEql } from './helper/expect_fixture_eql'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function({ getService }: FtrProviderContext) { diff --git a/x-pack/test/api_integration/apis/uptime/rest/monitor_states_generated.ts b/x-pack/test/api_integration/apis/uptime/rest/monitor_states_generated.ts new file mode 100644 index 00000000000000..3c17370532f915 --- /dev/null +++ b/x-pack/test/api_integration/apis/uptime/rest/monitor_states_generated.ts @@ -0,0 +1,193 @@ +/* + * 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 expect from '@kbn/expect'; +import { FtrProviderContext } from '../../../ftr_provider_context'; +import { makeChecksWithStatus } from './helper/make_checks'; +import { API_URLS } from '../../../../../legacy/plugins/uptime/common/constants'; +import { MonitorSummary } from '../../../../../legacy/plugins/uptime/common/runtime_types'; + +export default function({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + describe('monitor state scoping', async () => { + const numIps = 4; // Must be > 2 for IP uniqueness checks + + let dateRangeStart: string; + let dateRangeEnd: string; + + const getBaseUrl = (from: string, to: string) => + `${API_URLS.MONITOR_LIST}?dateRangeStart=${from}&dateRangeEnd=${to}&pageSize=10`; + + before('load heartbeat data', () => getService('esArchiver').load('uptime/blank')); + after('unload heartbeat index', () => getService('esArchiver').unload('uptime/blank')); + + describe('query document scoping with mismatched check statuses', async () => { + let checks: any[] = []; + let nonSummaryIp: string | null = null; + const testMonitorId = 'scope-test-id'; + const makeApiParams = (monitorId: string, filterClauses: any[] = []): any => { + return JSON.stringify({ + bool: { + filter: [{ match: { 'monitor.id': monitorId } }, ...filterClauses], + }, + }); + }; + + before(async () => { + const es = getService('legacyEs'); + dateRangeStart = new Date().toISOString(); + checks = await makeChecksWithStatus(es, testMonitorId, 1, numIps, 1, {}, 'up', d => { + // turn an all up status into having at least one down + if (d.summary) { + d.monitor.status = 'down'; + d.summary.up--; + d.summary.down++; + } + return d; + }); + + dateRangeEnd = new Date().toISOString(); + nonSummaryIp = checks[0][0].monitor.ip; + }); + + it('should return all IPs', async () => { + const filters = makeApiParams(testMonitorId); + const url = getBaseUrl(dateRangeStart, dateRangeEnd) + `&filters=${filters}`; + const apiResponse = await supertest.get(url); + const res = apiResponse.body; + + const uniqueIps = new Set(); + res.summaries[0].state.checks.forEach((c: any) => uniqueIps.add(c.monitor.ip)); + + expect(uniqueIps.size).to.eql(4); + }); + + it('should match non summary documents without a status filter', async () => { + const filters = makeApiParams(testMonitorId, [{ match: { 'monitor.ip': nonSummaryIp } }]); + + const url = getBaseUrl(dateRangeStart, dateRangeEnd) + `&filters=${filters}`; + const apiResponse = await supertest.get(url); + const nonSummaryRes = apiResponse.body; + expect(nonSummaryRes.summaries.length).to.eql(1); + }); + + it('should not match non summary documents if the check status does not match the document status', async () => { + const filters = makeApiParams(testMonitorId, [{ match: { 'monitor.ip': nonSummaryIp } }]); + const url = + getBaseUrl(dateRangeStart, dateRangeEnd) + `&filters=${filters}&statusFilter=down`; + + const apiResponse = await supertest.get(url); + const nonSummaryRes = apiResponse.body; + expect(nonSummaryRes.summaries.length).to.eql(0); + }); + + it('should not non match non summary documents if the check status does not match', async () => { + const filters = makeApiParams(testMonitorId, [{ match: { 'monitor.ip': nonSummaryIp } }]); + const url = + getBaseUrl(dateRangeStart, dateRangeEnd) + `&filters=${filters}&statusFilter=up`; + + const apiResponse = await supertest.get(url); + const nonSummaryRes = apiResponse.body; + expect(nonSummaryRes.summaries.length).to.eql(0); + }); + + describe('matching outside of the date range', async () => { + before('set date range to future', () => { + const futureDate = new Date(); + + // Set dateRangeStart to one day from now + futureDate.setDate(futureDate.getDate() + 1); + dateRangeStart = futureDate.toISOString(); + + // Set dateRangeStart to two days from now + futureDate.setDate(futureDate.getDate() + 1); + dateRangeEnd = futureDate.toISOString(); + }); + + it('should not match any documents', async () => { + const filters = makeApiParams(testMonitorId); + const url = + getBaseUrl(dateRangeStart, dateRangeEnd) + `&filters=${filters}&statusFilter=up`; + + const apiResponse = await supertest.get(url); + const nonSummaryRes = apiResponse.body; + expect(nonSummaryRes.summaries.length).to.eql(0); + }); + }); + }); + + describe('test status filter', async () => { + const upMonitorId = 'up-test-id'; + const downMonitorId = 'down-test-id'; + const mixMonitorId = 'mix-test-id'; + before('generate three monitors with up, down, mix state', async () => { + await getService('esArchiver').load('uptime/blank'); + + const es = getService('legacyEs'); + + const observer = { + geo: { + name: 'US-East', + location: '40.7128, -74.0060', + }, + }; + + // Generating three monitors each with two geo locations, + // One in a down state , + // One in an up state, + // One in a mix state + + dateRangeStart = new Date().toISOString(); + + await makeChecksWithStatus(es, upMonitorId, 1, 4, 1, {}, 'up'); + await makeChecksWithStatus(es, upMonitorId, 1, 4, 1, { observer }, 'up'); + + await makeChecksWithStatus(es, downMonitorId, 1, 4, 1, {}, 'down'); + await makeChecksWithStatus(es, downMonitorId, 1, 4, 1, { observer }, 'down'); + + await makeChecksWithStatus(es, mixMonitorId, 1, 4, 1, {}, 'up'); + await makeChecksWithStatus(es, mixMonitorId, 1, 4, 1, { observer }, 'down'); + + dateRangeEnd = new Date().toISOString(); + }); + + after('unload heartbeat index', () => getService('esArchiver').unload('uptime/blank')); + + it('should return all monitor when no status filter', async () => { + const apiResponse = await supertest.get(getBaseUrl(dateRangeStart, dateRangeEnd)); + const { summaries } = apiResponse.body; + expect(summaries.length).to.eql(3); + // Summaries are by default sorted by monitor names + expect(summaries.map((summary: MonitorSummary) => summary.monitor_id)).to.eql([ + downMonitorId, + mixMonitorId, + upMonitorId, + ]); + }); + + it('should return a monitor with mix state if check status filter is down', async () => { + const apiResponse = await supertest.get( + getBaseUrl(dateRangeStart, dateRangeEnd) + '&statusFilter=down' + ); + const { summaries } = apiResponse.body; + expect(summaries.length).to.eql(2); + summaries.forEach((summary: MonitorSummary) => { + expect(summary.monitor_id).to.not.eql(upMonitorId); + }); + }); + + it('should not return a monitor with mix state if check status filter is up', async () => { + const apiResponse = await supertest.get( + getBaseUrl(dateRangeStart, dateRangeEnd) + '&statusFilter=up' + ); + const { summaries } = apiResponse.body; + + expect(summaries.length).to.eql(1); + expect(summaries[0].monitor_id).to.eql(upMonitorId); + }); + }); + }); +} diff --git a/x-pack/test/api_integration/apis/uptime/rest/monitor_states_real_data.ts b/x-pack/test/api_integration/apis/uptime/rest/monitor_states_real_data.ts new file mode 100644 index 00000000000000..f1e37bff405fd3 --- /dev/null +++ b/x-pack/test/api_integration/apis/uptime/rest/monitor_states_real_data.ts @@ -0,0 +1,525 @@ +/* + * 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 expect from '@kbn/expect'; +import { isRight } from 'fp-ts/lib/Either'; +import { FtrProviderContext } from '../../../ftr_provider_context'; +import { API_URLS } from '../../../../../legacy/plugins/uptime/common/constants'; +import { MonitorSummaryResultType } from '../../../../../legacy/plugins/uptime/common/runtime_types'; + +interface ExpectedMonitorStatesPage { + response: any; + statesIds: string[]; + statuses: string[]; + absFrom: number; + absTo: number; + size: number; + totalCount: number; + prevPagination: null | string; + nextPagination: null | string; +} + +type PendingExpectedMonitorStatesPage = Pick< + ExpectedMonitorStatesPage, + 'statesIds' | 'statuses' | 'prevPagination' | 'nextPagination' +>; + +const checkMonitorStatesResponse = ({ + response, + statesIds, + statuses, + absFrom, + absTo, + size, + totalCount, + prevPagination, + nextPagination, +}: ExpectedMonitorStatesPage) => { + const decoded = MonitorSummaryResultType.decode(response); + expect(isRight(decoded)).to.be.ok(); + if (isRight(decoded)) { + const { summaries, prevPagePagination, nextPagePagination, totalSummaryCount } = decoded.right; + expect(summaries).to.have.length(size); + expect(summaries?.map(s => s.monitor_id)).to.eql(statesIds); + expect( + summaries?.map(s => (s.state.summary?.up && !s.state.summary?.down ? 'up' : 'down')) + ).to.eql(statuses); + (summaries ?? []).forEach(s => { + expect(s.state.url.full).to.be.ok(); + expect(s.histogram?.count).to.be(20); + (s.histogram?.points ?? []).forEach(point => { + expect(point.timestamp).to.be.greaterThan(absFrom); + expect(point.timestamp).to.be.lessThan(absTo); + }); + }); + expect(totalSummaryCount).to.be(totalCount); + expect(prevPagePagination).to.be(prevPagination); + expect(nextPagePagination).to.eql(nextPagination); + } +}; + +export default function({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + describe('monitor states endpoint', () => { + const from = '2019-09-11T03:30:04.380Z'; + const to = '2019-09-11T03:40:34.410Z'; + const absFrom = new Date(from).valueOf(); + const absTo = new Date(to).valueOf(); + + it('will fetch monitor state data for the given filters and range', async () => { + const statusFilter = 'up'; + const size = 10; + const filters = + '{"bool":{"must":[{"match":{"monitor.id":{"query":"0002-up","operator":"and"}}}]}}'; + const apiResponse = await supertest.get( + `${API_URLS.MONITOR_LIST}?dateRangeStart=${from}&dateRangeEnd=${to}&statusFilter=${statusFilter}&filters=${filters}&pageSize=${size}` + ); + checkMonitorStatesResponse({ + response: apiResponse.body, + statesIds: ['0002-up'], + statuses: ['up'], + absFrom, + absTo, + size: 1, + totalCount: 2000, + prevPagination: null, + nextPagination: null, + }); + }); + + it('can navigate forward and backward using pagination', async () => { + const expectedResultsCount = 100; + const size = 10; + const expectedPageCount = expectedResultsCount / size; + const expectedNextResults: PendingExpectedMonitorStatesPage[] = [ + { + statesIds: [ + '0000-intermittent', + '0001-up', + '0002-up', + '0003-up', + '0004-up', + '0005-up', + '0006-up', + '0007-up', + '0008-up', + '0009-up', + ], + statuses: ['up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0009-up"}}', + prevPagination: null, + }, + { + statesIds: [ + '0010-down', + '0011-up', + '0012-up', + '0013-up', + '0014-up', + '0015-intermittent', + '0016-up', + '0017-up', + '0018-up', + '0019-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0019-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0010-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0020-down', + '0021-up', + '0022-up', + '0023-up', + '0024-up', + '0025-up', + '0026-up', + '0027-up', + '0028-up', + '0029-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0029-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0020-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0030-intermittent', + '0031-up', + '0032-up', + '0033-up', + '0034-up', + '0035-up', + '0036-up', + '0037-up', + '0038-up', + '0039-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0039-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0030-intermittent"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0040-down', + '0041-up', + '0042-up', + '0043-up', + '0044-up', + '0045-intermittent', + '0046-up', + '0047-up', + '0048-up', + '0049-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0049-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0040-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0050-down', + '0051-up', + '0052-up', + '0053-up', + '0054-up', + '0055-up', + '0056-up', + '0057-up', + '0058-up', + '0059-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0059-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0050-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0060-intermittent', + '0061-up', + '0062-up', + '0063-up', + '0064-up', + '0065-up', + '0066-up', + '0067-up', + '0068-up', + '0069-up', + ], + statuses: ['up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0069-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0060-intermittent"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0070-down', + '0071-up', + '0072-up', + '0073-up', + '0074-up', + '0075-intermittent', + '0076-up', + '0077-up', + '0078-up', + '0079-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0079-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0070-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0080-down', + '0081-up', + '0082-up', + '0083-up', + '0084-up', + '0085-up', + '0086-up', + '0087-up', + '0088-up', + '0089-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0089-up"}}', + prevPagination: + '{"cursorKey":{"monitor_id":"0080-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0090-intermittent', + '0091-up', + '0092-up', + '0093-up', + '0094-up', + '0095-up', + '0096-up', + '0097-up', + '0098-up', + '0099-up', + ], + statuses: ['up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: null, + prevPagination: + '{"cursorKey":{"monitor_id":"0090-intermittent"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + ]; + + const expectedPrevResults: PendingExpectedMonitorStatesPage[] = [ + { + statesIds: [ + '0000-intermittent', + '0001-up', + '0002-up', + '0003-up', + '0004-up', + '0005-up', + '0006-up', + '0007-up', + '0008-up', + '0009-up', + ], + statuses: ['up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0009-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: null, + }, + { + statesIds: [ + '0010-down', + '0011-up', + '0012-up', + '0013-up', + '0014-up', + '0015-intermittent', + '0016-up', + '0017-up', + '0018-up', + '0019-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0019-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0010-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0020-down', + '0021-up', + '0022-up', + '0023-up', + '0024-up', + '0025-up', + '0026-up', + '0027-up', + '0028-up', + '0029-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0029-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0020-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0030-intermittent', + '0031-up', + '0032-up', + '0033-up', + '0034-up', + '0035-up', + '0036-up', + '0037-up', + '0038-up', + '0039-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0039-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0030-intermittent"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0040-down', + '0041-up', + '0042-up', + '0043-up', + '0044-up', + '0045-intermittent', + '0046-up', + '0047-up', + '0048-up', + '0049-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0049-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0040-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0050-down', + '0051-up', + '0052-up', + '0053-up', + '0054-up', + '0055-up', + '0056-up', + '0057-up', + '0058-up', + '0059-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0059-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0050-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0060-intermittent', + '0061-up', + '0062-up', + '0063-up', + '0064-up', + '0065-up', + '0066-up', + '0067-up', + '0068-up', + '0069-up', + ], + statuses: ['up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0069-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0060-intermittent"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0070-down', + '0071-up', + '0072-up', + '0073-up', + '0074-up', + '0075-intermittent', + '0076-up', + '0077-up', + '0078-up', + '0079-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0079-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0070-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + { + statesIds: [ + '0080-down', + '0081-up', + '0082-up', + '0083-up', + '0084-up', + '0085-up', + '0086-up', + '0087-up', + '0088-up', + '0089-up', + ], + statuses: ['down', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + nextPagination: + '{"cursorKey":{"monitor_id":"0089-up"},"sortOrder":"ASC","cursorDirection":"AFTER"}', + prevPagination: + '{"cursorKey":{"monitor_id":"0080-down"},"sortOrder":"ASC","cursorDirection":"BEFORE"}', + }, + ]; + + const totalCount = 2000; + let pagination: string | null = null; + for (let page = 1; page <= expectedPageCount; page++) { + const baseUrl = `${API_URLS.MONITOR_LIST}?dateRangeStart=${from}&dateRangeEnd=${to}&pageSize=${size}`; + const nextUrl: string = baseUrl + `&pagination=${pagination ?? ''}`; + const nextApiResponse = await supertest.get(nextUrl); + const nextData = nextApiResponse.body; + pagination = nextData.nextPagePagination; + checkMonitorStatesResponse({ + response: nextData, + ...expectedNextResults[page - 1], + absFrom, + absTo, + size, + totalCount, + }); + + // Test to see if the previous page pagination works on every page (other than the first) + if (page > 1) { + const prevUrl: string = baseUrl + `&pagination=${nextData.prevPagePagination}`; + const prevApiResponse = await supertest.get(prevUrl); + const prevData = prevApiResponse.body; + checkMonitorStatesResponse({ + response: prevData, + ...expectedPrevResults[page - 2], + absFrom, + absTo, + size, + totalCount, + }); + } + } + }); + + it('will fetch monitor state data for the given date range', async () => { + const LENGTH = 10; + const { body } = await supertest.get( + `${API_URLS.MONITOR_LIST}?dateRangeStart=${from}&dateRangeEnd=${to}&pageSize=${LENGTH}` + ); + checkMonitorStatesResponse({ + response: body, + statesIds: [ + '0000-intermittent', + '0001-up', + '0002-up', + '0003-up', + '0004-up', + '0005-up', + '0006-up', + '0007-up', + '0008-up', + '0009-up', + ], + statuses: ['up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up', 'up'], + absFrom, + absTo, + size: LENGTH, + totalCount: 2000, + prevPagination: null, + nextPagination: + '{"cursorDirection":"AFTER","sortOrder":"ASC","cursorKey":{"monitor_id":"0009-up"}}', + }); + }); + }); +} diff --git a/x-pack/test/api_integration/apis/uptime/rest/ping_histogram.ts b/x-pack/test/api_integration/apis/uptime/rest/ping_histogram.ts index 0982d5fef7cb44..b1afe4c8e0d7d3 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/ping_histogram.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/ping_histogram.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { expectFixtureEql } from '../graphql/helpers/expect_fixture_eql'; +import { expectFixtureEql } from './helper/expect_fixture_eql'; import { FtrProviderContext } from '../../../ftr_provider_context'; import { assertCloseTo } from '../../../../../plugins/uptime/server/lib/helper'; diff --git a/x-pack/test/api_integration/apis/uptime/rest/snapshot.ts b/x-pack/test/api_integration/apis/uptime/rest/snapshot.ts index 20fe59d149ae8f..9a8951741948e3 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/snapshot.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/snapshot.ts @@ -4,9 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import { expectFixtureEql } from '../graphql/helpers/expect_fixture_eql'; +import { expectFixtureEql } from './helper/expect_fixture_eql'; import { FtrProviderContext } from '../../../ftr_provider_context'; -import { makeChecksWithStatus, getChecksDateRange } from '../graphql/helpers/make_checks'; +import { makeChecksWithStatus, getChecksDateRange } from './helper/make_checks'; export default function({ getService }: FtrProviderContext) { const supertest = getService('supertest'); diff --git a/x-pack/test/api_integration/apis/uptime/rest/telemetry_collectors.ts b/x-pack/test/api_integration/apis/uptime/rest/telemetry_collectors.ts index b2ec96be0f2887..017ef02afe5ea7 100644 --- a/x-pack/test/api_integration/apis/uptime/rest/telemetry_collectors.ts +++ b/x-pack/test/api_integration/apis/uptime/rest/telemetry_collectors.ts @@ -7,7 +7,7 @@ import expect from '@kbn/expect'; import { FtrProviderContext } from '../../../ftr_provider_context'; import { API_URLS } from '../../../../../legacy/plugins/uptime/common/constants'; -import { makeChecksWithStatus } from '../graphql/helpers/make_checks'; +import { makeChecksWithStatus } from './helper/make_checks'; export default function({ getService }: FtrProviderContext) { const supertest = getService('supertest'); diff --git a/x-pack/test/functional/apps/uptime/locations.ts b/x-pack/test/functional/apps/uptime/locations.ts index bbf50344f34934..e266594e6a762d 100644 --- a/x-pack/test/functional/apps/uptime/locations.ts +++ b/x-pack/test/functional/apps/uptime/locations.ts @@ -5,7 +5,7 @@ */ import moment from 'moment'; -import { makeChecksWithStatus } from '../../../api_integration/apis/uptime/graphql/helpers/make_checks'; +import { makeChecksWithStatus } from '../../../api_integration/apis/uptime/rest/helper/make_checks'; import { FtrProviderContext } from '../../ftr_provider_context'; export default ({ getPageObjects, getService }: FtrProviderContext) => { diff --git a/x-pack/test/functional/apps/uptime/settings.ts b/x-pack/test/functional/apps/uptime/settings.ts index 64cfee50ac9825..e81bbc5ae42f92 100644 --- a/x-pack/test/functional/apps/uptime/settings.ts +++ b/x-pack/test/functional/apps/uptime/settings.ts @@ -10,7 +10,7 @@ import { defaultDynamicSettings, DynamicSettings, } from '../../../../legacy/plugins/uptime/common/runtime_types'; -import { makeChecks } from '../../../api_integration/apis/uptime/graphql/helpers/make_checks'; +import { makeChecks } from '../../../api_integration/apis/uptime/rest/helper/make_checks'; export default ({ getPageObjects, getService }: FtrProviderContext) => { const { uptime: uptimePage } = getPageObjects(['uptime']); From 550d6af2cb2ef2cc03d1dd5745908f87286fe323 Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Fri, 17 Apr 2020 18:07:27 +0200 Subject: [PATCH 27/59] Migrate rollup client side code (#63227) --- x-pack/.i18nrc.json | 2 +- x-pack/legacy/plugins/rollup/README.md | 12 ++--- x-pack/legacy/plugins/rollup/common/index.ts | 22 +------- x-pack/legacy/plugins/rollup/index.ts | 26 +-------- x-pack/legacy/plugins/rollup/public/legacy.ts | 13 ----- x-pack/plugins/rollup/common/index.ts | 27 ++++++++++ .../plugins/rollup/common/ui_metric.ts | 0 .../plugins/rollup/fixtures/index.js | 0 .../plugins/rollup/fixtures/job.js | 2 +- x-pack/plugins/rollup/kibana.json | 5 +- .../plugins/rollup/public/application.tsx | 6 ++- .../rollup/public/crud_app/_crud_app.scss | 0 .../plugins/rollup/public/crud_app/app.js | 3 +- .../rollup/public/crud_app/constants/index.js | 0 .../crud_app/constants/metrics_config.js | 0 .../rollup/public/crud_app/constants/paths.js | 0 .../components/field_list/field_list.js | 0 .../sections/components/field_list/index.js | 0 .../crud_app/sections/components/index.js | 0 .../confirm_delete_modal.js | 0 .../confirm_delete_modal/index.js | 0 .../components/job_action_menu/index.js | 0 .../job_action_menu.container.js | 0 .../job_action_menu/job_action_menu.js | 0 .../sections/components/job_details/index.js | 0 .../components/job_details/job_details.js | 0 .../components/job_details/tabs/index.js | 0 .../job_details/tabs/tab_histogram.js | 0 .../components/job_details/tabs/tab_json.js | 0 .../job_details/tabs/tab_metrics.js | 0 .../job_details/tabs/tab_request.js | 0 .../job_details/tabs/tab_summary.js | 0 .../components/job_details/tabs/tab_terms.js | 0 .../sections/components/job_status/index.js | 0 .../components/job_status/job_status.js | 0 .../rollup/public/crud_app/sections/index.js | 0 .../crud_app/sections/job_create/index.js | 0 .../job_create/job_create.container.js | 0 .../sections/job_create/job_create.js | 2 +- .../sections/job_create/navigation/index.js | 0 .../job_create/navigation/navigation.js | 0 .../steps/components/field_chooser.js | 0 .../job_create/steps/components/index.js | 0 .../job_create/steps/components/step_error.js | 0 .../sections/job_create/steps/index.js | 0 .../job_create/steps/step_date_histogram.js | 2 +- .../job_create/steps/step_histogram.js | 0 .../job_create/steps/step_logistics.js | 4 +- .../sections/job_create/steps/step_metrics.js | 0 .../sections/job_create/steps/step_review.js | 0 .../sections/job_create/steps/step_terms.js | 0 .../sections/job_create/steps_config/index.js | 4 +- .../validate_date_histogram_field.js | 0 .../validate_date_histogram_interval.js | 2 +- .../validate_histogram_interval.js | 0 .../job_create/steps_config/validate_id.js | 0 .../steps_config/validate_index_pattern.js | 2 +- .../steps_config/validate_metrics.js | 0 .../steps_config/validate_rollup_cron.js | 0 .../steps_config/validate_rollup_delay.js | 2 +- .../steps_config/validate_rollup_index.js | 0 .../steps_config/validate_rollup_page_size.js | 0 .../detail_panel/detail_panel.container.js | 0 .../job_list/detail_panel/detail_panel.js | 3 +- .../detail_panel/detail_panel.test.js | 7 ++- .../sections/job_list/detail_panel/index.js | 0 .../crud_app/sections/job_list/index.js | 0 .../sections/job_list/job_list.container.js | 0 .../crud_app/sections/job_list/job_list.js | 2 +- .../sections/job_list/job_list.test.js | 8 ++- .../sections/job_list/job_table/index.js | 0 .../job_list/job_table/job_table.container.js | 0 .../sections/job_list/job_table/job_table.js | 3 +- .../job_list/job_table/job_table.test.js | 7 ++- .../rollup/public/crud_app/services/api.js | 0 .../public/crud_app/services/api_errors.ts | 0 .../public/crud_app/services/breadcrumbs.js | 0 .../crud_app/services/documentation_links.js | 0 .../public/crud_app/services/filter_items.js | 0 .../crud_app/services/flatten_panel_tree.js | 0 .../public/crud_app/services/format_fields.js | 0 .../public/crud_app/services/http_provider.ts | 2 +- .../rollup/public/crud_app/services/index.js | 2 +- .../rollup/public/crud_app/services/jobs.js | 0 .../crud_app/services/noticeable_delay.js | 0 .../public/crud_app/services/query_params.js | 0 .../crud_app/services/retype_metrics.js | 0 .../public/crud_app/services/routing.js | 0 .../public/crud_app/services/sort_table.js | 0 .../crud_app/services/track_ui_metric.ts} | 10 ++-- .../public/crud_app/store/action_types.js | 0 .../store/actions/change_job_status.js | 0 .../crud_app/store/actions/clone_job.js | 0 .../crud_app/store/actions/create_job.js | 0 .../crud_app/store/actions/delete_jobs.js | 0 .../crud_app/store/actions/detail_panel.js | 0 .../public/crud_app/store/actions/index.js | 0 .../crud_app/store/actions/load_jobs.js | 0 .../crud_app/store/actions/refresh_jobs.js | 0 .../crud_app/store/actions/table_state.js | 0 .../rollup/public/crud_app/store/index.js | 0 .../crud_app/store/middleware/clone_job.js | 0 .../crud_app/store/middleware/detail_panel.js | 0 .../public/crud_app/store/middleware/index.js | 0 .../crud_app/store/reducers/clone_job.js | 0 .../crud_app/store/reducers/create_job.js | 0 .../crud_app/store/reducers/detail_panel.js | 0 .../public/crud_app/store/reducers/index.js | 0 .../public/crud_app/store/reducers/jobs.js | 0 .../crud_app/store/reducers/table_state.js | 0 .../crud_app/store/reducers/update_job.js | 0 .../public/crud_app/store/selectors/index.js | 0 .../rollup/public/crud_app/store/store.js | 0 .../public/extend_index_management/index.ts | 0 .../plugins/rollup/public/index.scss | 3 -- .../rollup/public/index.ts} | 4 +- .../components/rollup_prompt/index.js | 0 .../components/rollup_prompt/rollup_prompt.js | 0 .../rollup_index_pattern_creation_config.js | 2 +- .../rollup_index_pattern_list_config.js | 2 +- .../plugins/rollup/public/kibana_services.ts | 19 ++++++- .../plugins/rollup/public/plugin.ts | 40 +++++++++----- .../public/search/rollup_search_strategy.ts | 4 +- .../plugins/rollup/public/shared_imports.ts | 2 +- .../client_integration/helpers/constants.js | 0 .../test}/client_integration/helpers/index.js | 0 .../helpers/job_clone.helpers.js | 6 +-- .../helpers/job_create.helpers.js | 4 +- .../helpers/job_list.helpers.js | 6 +-- .../helpers/setup_context.tsx | 0 .../helpers/setup_environment.ts | 0 .../job_create_clone.test.js | 19 ++++--- .../job_create_date_histogram.test.js | 23 ++++---- .../job_create_histogram.test.js | 27 +++++----- .../job_create_logistics.test.js | 25 +++++---- .../job_create_metrics.test.js | 25 +++++---- .../job_create_review.test.js | 53 +++++++++++-------- .../job_create_terms.test.js | 21 ++++---- .../test}/client_integration/job_list.test.js | 27 ++++++---- .../client_integration/job_list_clone.test.js | 27 ++++++---- .../public/visualize/agg_type_field_filter.js | 0 .../public/visualize/agg_type_filter.js | 0 x-pack/plugins/rollup/server/plugin.ts | 23 +++++++- 143 files changed, 288 insertions(+), 254 deletions(-) delete mode 100644 x-pack/legacy/plugins/rollup/public/legacy.ts create mode 100644 x-pack/plugins/rollup/common/index.ts rename x-pack/{legacy => }/plugins/rollup/common/ui_metric.ts (100%) rename x-pack/{legacy => }/plugins/rollup/fixtures/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/fixtures/job.js (95%) rename x-pack/{legacy => }/plugins/rollup/public/application.tsx (87%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/_crud_app.scss (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/app.js (93%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/constants/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/constants/metrics_config.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/constants/paths.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/field_list/field_list.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/field_list/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/confirm_delete_modal.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_action_menu/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.container.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/job_details.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_histogram.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_json.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_metrics.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_request.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_summary.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_terms.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_status/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/components/job_status/job_status.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/job_create.container.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/job_create.js (99%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/navigation/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/navigation/navigation.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/components/field_chooser.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/components/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/components/step_error.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js (99%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/step_histogram.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js (99%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/step_metrics.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/step_review.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps/step_terms.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js (96%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_field.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js (95%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_histogram_interval.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_id.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js (95%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_metrics.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_cron.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js (95%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_page_size.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.container.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js (98%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js (98%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/detail_panel/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_list.container.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_list.js (98%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js (90%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_table/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.container.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js (99%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js (96%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/api.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/api_errors.ts (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/breadcrumbs.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/documentation_links.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/filter_items.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/flatten_panel_tree.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/format_fields.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/http_provider.ts (91%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/index.js (95%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/jobs.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/noticeable_delay.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/query_params.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/retype_metrics.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/routing.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/services/sort_table.js (100%) rename x-pack/{legacy/plugins/rollup/public/crud_app/services/track_ui_metric.js => plugins/rollup/public/crud_app/services/track_ui_metric.ts} (70%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/action_types.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/change_job_status.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/clone_job.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/create_job.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/delete_jobs.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/detail_panel.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/load_jobs.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/refresh_jobs.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/actions/table_state.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/middleware/clone_job.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/middleware/detail_panel.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/middleware/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/clone_job.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/create_job.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/detail_panel.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/jobs.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/table_state.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/reducers/update_job.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/selectors/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/crud_app/store/store.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/extend_index_management/index.ts (100%) rename x-pack/{legacy => }/plugins/rollup/public/index.scss (67%) rename x-pack/{legacy/plugins/rollup/public/legacy_imports.ts => plugins/rollup/public/index.ts} (72%) rename x-pack/{legacy => }/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/index.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/rollup_prompt.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js (97%) rename x-pack/{legacy => }/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js (93%) rename x-pack/{legacy => }/plugins/rollup/public/kibana_services.ts (57%) rename x-pack/{legacy => }/plugins/rollup/public/plugin.ts (73%) rename x-pack/{legacy => }/plugins/rollup/public/search/rollup_search_strategy.ts (96%) rename x-pack/{legacy => }/plugins/rollup/public/shared_imports.ts (76%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/constants.js (100%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/index.js (100%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/job_clone.helpers.js (83%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/job_create.helpers.js (96%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/job_list.helpers.js (74%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/setup_context.tsx (100%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/helpers/setup_environment.ts (100%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_clone.test.js (93%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_date_histogram.test.js (88%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_histogram.test.js (91%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_logistics.test.js (96%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_metrics.test.js (95%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_review.test.js (71%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_create_terms.test.js (93%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_list.test.js (77%) rename x-pack/{legacy/plugins/rollup/__jest__ => plugins/rollup/public/test}/client_integration/job_list_clone.test.js (74%) rename x-pack/{legacy => }/plugins/rollup/public/visualize/agg_type_field_filter.js (100%) rename x-pack/{legacy => }/plugins/rollup/public/visualize/agg_type_filter.js (100%) diff --git a/x-pack/.i18nrc.json b/x-pack/.i18nrc.json index 50f36ddd21c97d..14e958397a1818 100644 --- a/x-pack/.i18nrc.json +++ b/x-pack/.i18nrc.json @@ -32,7 +32,7 @@ "xpack.remoteClusters": "plugins/remote_clusters", "xpack.painlessLab": "plugins/painless_lab", "xpack.reporting": ["plugins/reporting", "legacy/plugins/reporting"], - "xpack.rollupJobs": "legacy/plugins/rollup", + "xpack.rollupJobs": ["legacy/plugins/rollup", "plugins/rollup"], "xpack.searchProfiler": "plugins/searchprofiler", "xpack.security": ["legacy/plugins/security", "plugins/security"], "xpack.server": "legacy/server", diff --git a/x-pack/legacy/plugins/rollup/README.md b/x-pack/legacy/plugins/rollup/README.md index 6d04973de591e1..3647be38b6a09e 100644 --- a/x-pack/legacy/plugins/rollup/README.md +++ b/x-pack/legacy/plugins/rollup/README.md @@ -14,7 +14,7 @@ The rest of this doc dives into the implementation details of each of the above ## Create and manage rollup jobs -The most straight forward part of this plugin! A new app called Rollup Jobs is registered in the Management section and follows a typical CRUD UI pattern. This app allows users to create, start, stop, clone, and delete rollup jobs. There is no way to edit an existing rollup job; instead, the UI offers a cloning ability. The client-side portion of this app lives [here](public/crud_app) and uses endpoints registered [here](server/routes/api/jobs.js). +The most straight forward part of this plugin! A new app called Rollup Jobs is registered in the Management section and follows a typical CRUD UI pattern. This app allows users to create, start, stop, clone, and delete rollup jobs. There is no way to edit an existing rollup job; instead, the UI offers a cloning ability. The client-side portion of this app lives [here](../../../plugins/rollup/public/crud_app) and uses endpoints registered [here](server/routes/api/jobs.js). Refer to the [Elasticsearch documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/rollup-getting-started.html) to understand rollup indices and how to create rollup jobs. @@ -22,22 +22,22 @@ Refer to the [Elasticsearch documentation](https://www.elastic.co/guide/en/elast Kibana uses index patterns to consume and visualize rollup indices. Typically, Kibana can inspect the indices captured by an index pattern, identify its aggregations and fields, and determine how to consume the data. Rollup indices don't contain this type of information, so we predefine how to consume a rollup index pattern with the type and typeMeta fields on the index pattern saved object. All rollup index patterns have `type` defined as "rollup" and `typeMeta` defined as an object of the index pattern's capabilities. -In the Index Pattern app, the "Create index pattern" button includes a context menu when a rollup index is detected. This menu offers items for creating a standard index pattern and a rollup index pattern. A [rollup config is registered to index pattern creation extension point](public/index_pattern_creation/rollup_index_pattern_creation_config.js). The context menu behavior in particular uses the `getIndexPatternCreationOption()` method. When the user chooses to create a rollup index pattern, this config changes the behavior of the index pattern creation wizard: +In the Index Pattern app, the "Create index pattern" button includes a context menu when a rollup index is detected. This menu offers items for creating a standard index pattern and a rollup index pattern. A [rollup config is registered to index pattern creation extension point](../../../plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js). The context menu behavior in particular uses the `getIndexPatternCreationOption()` method. When the user chooses to create a rollup index pattern, this config changes the behavior of the index pattern creation wizard: 1. Adds a `Rollup` badge to rollup indices using `getIndexTags()`. 2. Enforces index pattern rules using `checkIndicesForErrors()`. Rollup index patterns must match **one** rollup index, and optionally, any number of regular indices. A rollup index pattern configured with one or more regular indices is known as a "hybrid" index pattern. This allows the user to visualize historical (rollup) data and live (regular) data in the same visualization. 3. Routes to this plugin's [rollup `_fields_for_wildcard` endpoint](server/routes/api/index_patterns.js), instead of the standard one, using `getFetchForWildcardOptions()`, so that the internal rollup data field names are mapped to the original field names. 4. Writes additional information about aggregations, fields, histogram interval, and date histogram interval and timezone to the rollup index pattern saved object using `getIndexPatternMappings()`. This collection of information is referred to as its "capabilities". -Once a rollup index pattern is created, it is tagged with `Rollup` in the list of index patterns, and its details page displays capabilities information. This is done by registering [yet another config for the index pattern list](public/index_pattern_list/rollup_index_pattern_list_config.js) extension points. +Once a rollup index pattern is created, it is tagged with `Rollup` in the list of index patterns, and its details page displays capabilities information. This is done by registering [yet another config for the index pattern list](../../../plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js) extension points. ## Create visualizations from rollup index patterns This plugin enables the user to create visualizations from rollup data using the Visualize app, excluding TSVB, Vega, and Timelion. When Visualize sends search requests, this plugin routes the requests to the [Elasticsearch rollup search endpoint](https://www.elastic.co/guide/en/elasticsearch/reference/current/rollup-search.html), which searches the special document structure within rollup indices. The visualization options available to users are based on the capabilities of the rollup index pattern they're visualizing. -Routing to the Elasticsearch rollup search endpoint is done by creating an extension point in Courier, effectively allowing multiple "search strategies" to be registered. A [rollup search strategy](public/search/register.js) is registered by this plugin that queries [this plugin's rollup search endpoint](server/routes/api/search.js). +Routing to the Elasticsearch rollup search endpoint is done by creating an extension point in Courier, effectively allowing multiple "search strategies" to be registered. A [rollup search strategy](../../../plugins/rollup/public/search/register.js) is registered by this plugin that queries [this plugin's rollup search endpoint](server/routes/api/search.js). -Limiting visualization editor options is done by [registering configs](public/visualize/index.js) to various vis extension points. These configs use information stored on the rollup index pattern to limit: +Limiting visualization editor options is done by [registering configs](../../../plugins/rollup/public/visualize/index.js) to various vis extension points. These configs use information stored on the rollup index pattern to limit: * Available aggregation types * Available fields for a particular aggregation * Default and base interval for histogram aggregation @@ -47,6 +47,6 @@ Limiting visualization editor options is done by [registering configs](public/vi In Index Management, similar to system indices, rollup indices are hidden by default. A toggle is provided to show rollup indices and add a badge to the table rows. This is done by using Index Management's extension points. -The toggle and badge are registered on client-side [here](public/extend_index_management/index.js). +The toggle and badge are registered on client-side [here](../../../plugins/rollup/public/extend_index_management/index.js). Additional data needed to filter rollup indices in Index Management is provided with a [data enricher](rollup_data_enricher.js). diff --git a/x-pack/legacy/plugins/rollup/common/index.ts b/x-pack/legacy/plugins/rollup/common/index.ts index 42298034622034..526af055a3ef65 100644 --- a/x-pack/legacy/plugins/rollup/common/index.ts +++ b/x-pack/legacy/plugins/rollup/common/index.ts @@ -16,24 +16,4 @@ export const PLUGIN = { }, }; -export const CONFIG_ROLLUPS = 'rollups:enableIndexPatterns'; - -export const API_BASE_PATH = '/api/rollup'; - -export { - UIM_APP_NAME, - UIM_APP_LOAD, - UIM_JOB_CREATE, - UIM_JOB_DELETE, - UIM_JOB_DELETE_MANY, - UIM_JOB_START, - UIM_JOB_START_MANY, - UIM_JOB_STOP, - UIM_JOB_STOP_MANY, - UIM_SHOW_DETAILS_CLICK, - UIM_DETAIL_PANEL_SUMMARY_TAB_CLICK, - UIM_DETAIL_PANEL_TERMS_TAB_CLICK, - UIM_DETAIL_PANEL_HISTOGRAM_TAB_CLICK, - UIM_DETAIL_PANEL_METRICS_TAB_CLICK, - UIM_DETAIL_PANEL_JSON_TAB_CLICK, -} from './ui_metric'; +export * from '../../../../plugins/rollup/common'; diff --git a/x-pack/legacy/plugins/rollup/index.ts b/x-pack/legacy/plugins/rollup/index.ts index 621667f3618b2c..f33ae7cfee0a22 100644 --- a/x-pack/legacy/plugins/rollup/index.ts +++ b/x-pack/legacy/plugins/rollup/index.ts @@ -4,40 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ -import { resolve } from 'path'; -import { i18n } from '@kbn/i18n'; import { PluginInitializerContext } from 'src/core/server'; import { RollupSetup } from '../../../plugins/rollup/server'; -import { PLUGIN, CONFIG_ROLLUPS } from './common'; +import { PLUGIN } from './common'; import { plugin } from './server'; export function rollup(kibana: any) { return new kibana.Plugin({ id: PLUGIN.ID, configPrefix: 'xpack.rollup', - publicDir: resolve(__dirname, 'public'), require: ['kibana', 'elasticsearch', 'xpack_main'], - uiExports: { - styleSheetPaths: resolve(__dirname, 'public/index.scss'), - managementSections: ['plugins/rollup/legacy'], - uiSettingDefaults: { - [CONFIG_ROLLUPS]: { - name: i18n.translate('xpack.rollupJobs.rollupIndexPatternsTitle', { - defaultMessage: 'Enable rollup index patterns', - }), - value: true, - description: i18n.translate('xpack.rollupJobs.rollupIndexPatternsDescription', { - defaultMessage: `Enable the creation of index patterns which capture rollup indices, - which in turn enable visualizations based on rollup data. Refresh - the page to apply the changes.`, - }), - category: ['rollups'], - }, - }, - indexManagement: ['plugins/rollup/legacy'], - visualize: ['plugins/rollup/legacy'], - search: ['plugins/rollup/legacy'], - }, init(server: any) { const { core: coreSetup, plugins } = server.newPlatform.setup; const { usageCollection, visTypeTimeseries, indexManagement } = plugins; diff --git a/x-pack/legacy/plugins/rollup/public/legacy.ts b/x-pack/legacy/plugins/rollup/public/legacy.ts deleted file mode 100644 index 83945110c2c760..00000000000000 --- a/x-pack/legacy/plugins/rollup/public/legacy.ts +++ /dev/null @@ -1,13 +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 { npSetup, npStart } from 'ui/new_platform'; -import { RollupPlugin } from './plugin'; - -const plugin = new RollupPlugin(); - -export const setup = plugin.setup(npSetup.core, npSetup.plugins); -export const start = plugin.start(npStart.core, npStart.plugins); diff --git a/x-pack/plugins/rollup/common/index.ts b/x-pack/plugins/rollup/common/index.ts new file mode 100644 index 00000000000000..aeffa3dc3959fd --- /dev/null +++ b/x-pack/plugins/rollup/common/index.ts @@ -0,0 +1,27 @@ +/* + * 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 const CONFIG_ROLLUPS = 'rollups:enableIndexPatterns'; + +export const API_BASE_PATH = '/api/rollup'; + +export { + UIM_APP_NAME, + UIM_APP_LOAD, + UIM_JOB_CREATE, + UIM_JOB_DELETE, + UIM_JOB_DELETE_MANY, + UIM_JOB_START, + UIM_JOB_START_MANY, + UIM_JOB_STOP, + UIM_JOB_STOP_MANY, + UIM_SHOW_DETAILS_CLICK, + UIM_DETAIL_PANEL_SUMMARY_TAB_CLICK, + UIM_DETAIL_PANEL_TERMS_TAB_CLICK, + UIM_DETAIL_PANEL_HISTOGRAM_TAB_CLICK, + UIM_DETAIL_PANEL_METRICS_TAB_CLICK, + UIM_DETAIL_PANEL_JSON_TAB_CLICK, +} from './ui_metric'; diff --git a/x-pack/legacy/plugins/rollup/common/ui_metric.ts b/x-pack/plugins/rollup/common/ui_metric.ts similarity index 100% rename from x-pack/legacy/plugins/rollup/common/ui_metric.ts rename to x-pack/plugins/rollup/common/ui_metric.ts diff --git a/x-pack/legacy/plugins/rollup/fixtures/index.js b/x-pack/plugins/rollup/fixtures/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/fixtures/index.js rename to x-pack/plugins/rollup/fixtures/index.js diff --git a/x-pack/legacy/plugins/rollup/fixtures/job.js b/x-pack/plugins/rollup/fixtures/job.js similarity index 95% rename from x-pack/legacy/plugins/rollup/fixtures/job.js rename to x-pack/plugins/rollup/fixtures/job.js index 3889cc6087d836..310244a5031e7a 100644 --- a/x-pack/legacy/plugins/rollup/fixtures/job.js +++ b/x-pack/plugins/rollup/fixtures/job.js @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { getRandomString } from '../../../../test_utils'; +import { getRandomString } from '../../../test_utils'; const initialValues = { dateHistogramField: 'timestamp', diff --git a/x-pack/plugins/rollup/kibana.json b/x-pack/plugins/rollup/kibana.json index 6ab2fc8907c0db..8f832f6c6a345a 100644 --- a/x-pack/plugins/rollup/kibana.json +++ b/x-pack/plugins/rollup/kibana.json @@ -2,5 +2,8 @@ "id": "rollup", "version": "8.0.0", "kibanaVersion": "kibana", - "server": true + "server": true, + "ui": true, + "optionalPlugins": ["home", "indexManagement", "indexPatternManagement", "usageCollection"], + "requiredPlugins": ["management", "data"] } diff --git a/x-pack/legacy/plugins/rollup/public/application.tsx b/x-pack/plugins/rollup/public/application.tsx similarity index 87% rename from x-pack/legacy/plugins/rollup/public/application.tsx rename to x-pack/plugins/rollup/public/application.tsx index df17d37bc34656..1bdf940d746b28 100644 --- a/x-pack/legacy/plugins/rollup/public/application.tsx +++ b/x-pack/plugins/rollup/public/application.tsx @@ -5,15 +5,17 @@ */ import React from 'react'; +import { ChromeBreadcrumb, CoreSetup } from 'kibana/public'; import { render, unmountComponentAtNode } from 'react-dom'; import { Provider } from 'react-redux'; -import { KibanaContextProvider } from '../../../../../src/plugins/kibana_react/public'; -import { ChromeBreadcrumb, CoreSetup } from '../../../../../src/core/public'; +import { KibanaContextProvider } from '../../../../src/plugins/kibana_react/public'; // @ts-ignore import { rollupJobsStore } from './crud_app/store'; // @ts-ignore import { App } from './crud_app/app'; +import './index.scss'; + /** * This module will be loaded asynchronously to reduce the bundle size of your plugin's main bundle. */ diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/_crud_app.scss b/x-pack/plugins/rollup/public/crud_app/_crud_app.scss similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/_crud_app.scss rename to x-pack/plugins/rollup/public/crud_app/_crud_app.scss diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/app.js b/x-pack/plugins/rollup/public/crud_app/app.js similarity index 93% rename from x-pack/legacy/plugins/rollup/public/crud_app/app.js rename to x-pack/plugins/rollup/public/crud_app/app.js index da35c8a56f2d20..0ef3253eeb94ea 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/app.js +++ b/x-pack/plugins/rollup/public/crud_app/app.js @@ -10,7 +10,8 @@ import { HashRouter, Switch, Route, Redirect, withRouter } from 'react-router-do import { UIM_APP_LOAD } from '../../common'; import { CRUD_APP_BASE_PATH } from './constants'; -import { registerRouter, setUserHasLeftApp, trackUiMetric, METRIC_TYPE } from './services'; +import { registerRouter, setUserHasLeftApp, METRIC_TYPE } from './services'; +import { trackUiMetric } from '../kibana_services'; import { JobList, JobCreate } from './sections'; class ShareRouterComponent extends Component { diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/constants/index.js b/x-pack/plugins/rollup/public/crud_app/constants/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/constants/index.js rename to x-pack/plugins/rollup/public/crud_app/constants/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/constants/metrics_config.js b/x-pack/plugins/rollup/public/crud_app/constants/metrics_config.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/constants/metrics_config.js rename to x-pack/plugins/rollup/public/crud_app/constants/metrics_config.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/constants/paths.js b/x-pack/plugins/rollup/public/crud_app/constants/paths.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/constants/paths.js rename to x-pack/plugins/rollup/public/crud_app/constants/paths.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/field_list/field_list.js b/x-pack/plugins/rollup/public/crud_app/sections/components/field_list/field_list.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/field_list/field_list.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/field_list/field_list.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/field_list/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/field_list/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/field_list/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/field_list/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/confirm_delete_modal.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/confirm_delete_modal.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/confirm_delete_modal.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/confirm_delete_modal.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/confirm_delete_modal/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.container.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.container.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.container.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.container.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_action_menu/job_action_menu.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/job_details.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/job_details.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/job_details.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/job_details.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_histogram.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_histogram.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_histogram.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_histogram.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_json.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_json.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_json.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_json.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_metrics.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_metrics.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_metrics.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_metrics.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_request.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_request.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_request.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_request.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_summary.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_summary.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_summary.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_summary.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_terms.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_terms.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_terms.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_details/tabs/tab_terms.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_status/index.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_status/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_status/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_status/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_status/job_status.js b/x-pack/plugins/rollup/public/crud_app/sections/components/job_status/job_status.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/components/job_status/job_status.js rename to x-pack/plugins/rollup/public/crud_app/sections/components/job_status/job_status.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/index.js b/x-pack/plugins/rollup/public/crud_app/sections/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/job_create.container.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/job_create.container.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/job_create.container.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/job_create.container.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/job_create.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/job_create.js similarity index 99% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/job_create.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/job_create.js index 5379778c77e2f5..4458054f30dd1f 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/job_create.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/job_create.js @@ -14,7 +14,7 @@ import first from 'lodash/array/first'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { withKibana } from '../../../../../../../../src/plugins/kibana_react/public/'; +import { withKibana } from '../../../../../../../src/plugins/kibana_react/public'; import { EuiCallOut, diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/navigation/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/navigation/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/navigation/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/navigation/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/navigation/navigation.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/navigation/navigation.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/navigation/navigation.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/navigation/navigation.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/components/field_chooser.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/components/field_chooser.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/components/field_chooser.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/components/field_chooser.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/components/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/components/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/components/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/components/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/components/step_error.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/components/step_error.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/components/step_error.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/components/step_error.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js similarity index 99% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js index ba65d082c0b4b8..c327e51a6b7eeb 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_date_histogram.js @@ -24,7 +24,7 @@ import { EuiTitle, } from '@elastic/eui'; -import { search } from '../../../../../../../../../src/plugins/data/public'; +import { search } from '../../../../../../../../src/plugins/data/public'; const { parseEsInterval } = search.aggs; import { getDateHistogramDetailsUrl, getDateHistogramAggregationUrl } from '../../../services'; diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_histogram.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_histogram.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_histogram.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_histogram.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js similarity index 99% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js index 5462a46bf59b96..0fd76e572b2e50 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_logistics.js @@ -24,8 +24,8 @@ import { EuiTitle, } from '@elastic/eui'; -import { CronEditor } from '../../../../../../../../../src/plugins/es_ui_shared/public'; -import { indexPatterns } from '../../../../../../../../../src/plugins/data/public'; +import { CronEditor } from '../../../../../../../../src/plugins/es_ui_shared/public'; +import { indexPatterns } from '../../../../../../../../src/plugins/data/public'; import { indices } from '../../../../shared_imports'; import { getLogisticalDetailsUrl, getCronUrl } from '../../../services'; diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_metrics.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_metrics.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_metrics.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_metrics.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_review.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_review.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_review.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_review.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_terms.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_terms.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps/step_terms.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps/step_terms.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js similarity index 96% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js index e1efcfdd24627b..4a55c4679c3d86 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/index.js @@ -8,7 +8,7 @@ import cloneDeep from 'lodash/lang/cloneDeep'; import get from 'lodash/object/get'; import pick from 'lodash/object/pick'; -import { WEEK } from '../../../../../../../../../src/plugins/es_ui_shared/public'; +import { WEEK } from '../../../../../../../../src/plugins/es_ui_shared/public'; import { validateId } from './validate_id'; import { validateIndexPattern } from './validate_index_pattern'; @@ -42,7 +42,7 @@ export const stepIds = [ * 1. getDefaultFields: (overrides) => object * 2. fieldValidations * - * See x-pack/legacy/plugins/rollup/public/crud_app/services/jobs.js for more information on override's shape + * See x-pack/plugins/rollup/public/crud_app/services/jobs.js for more information on override's shape */ export const stepIdToStepConfigMap = { [STEP_LOGISTICS]: { diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_field.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_field.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_field.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_field.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js similarity index 95% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js index b6c824bc8c553a..819c814e373d59 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_date_histogram_interval.js @@ -6,7 +6,7 @@ import React from 'react'; import { FormattedMessage } from '@kbn/i18n/react'; -import { search } from '../../../../../../../../../src/plugins/data/public'; +import { search } from '../../../../../../../../src/plugins/data/public'; const { InvalidEsIntervalFormatError, InvalidEsCalendarIntervalError, diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_histogram_interval.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_histogram_interval.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_histogram_interval.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_histogram_interval.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_id.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_id.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_id.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_id.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js similarity index 95% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js index 206cc325813c0d..534fcaa744744a 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_index_pattern.js @@ -7,7 +7,7 @@ import React from 'react'; import { FormattedMessage } from '@kbn/i18n/react'; -import { indexPatterns } from '../../../../../../../../../src/plugins/data/public'; +import { indexPatterns } from '../../../../../../../../src/plugins/data/public'; export function validateIndexPattern(indexPattern, rollupIndex) { if (!indexPattern || !indexPattern.trim()) { return [ diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_metrics.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_metrics.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_metrics.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_metrics.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_cron.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_cron.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_cron.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_cron.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js similarity index 95% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js index 37c2ca9a1d775d..66bfd43bc3d1bd 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_delay.js @@ -6,7 +6,7 @@ import React from 'react'; import { FormattedMessage } from '@kbn/i18n/react'; -import { search } from '../../../../../../../../../src/plugins/data/public'; +import { search } from '../../../../../../../../src/plugins/data/public'; const { InvalidEsIntervalFormatError, InvalidEsCalendarIntervalError, diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_page_size.js b/x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_page_size.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_page_size.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_create/steps_config/validate_rollup_page_size.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.container.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.container.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.container.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.container.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js similarity index 98% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js index f774b1d7f63b72..3f168a66feed84 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.js @@ -34,7 +34,8 @@ import { UIM_DETAIL_PANEL_METRICS_TAB_CLICK, UIM_DETAIL_PANEL_JSON_TAB_CLICK, } from '../../../../../common'; -import { trackUiMetric, METRIC_TYPE } from '../../../services'; +import { METRIC_TYPE } from '../../../services'; +import { trackUiMetric } from '../../../../kibana_services'; import { JobActionMenu, diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js similarity index 98% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js index 9ac8e6075e4cf3..cea5b3c3e96e57 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/detail_panel.test.js @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { registerTestBed } from '../../../../../../../../test_utils'; +import { registerTestBed } from '../../../../../../../test_utils'; import { getJob } from '../../../../../fixtures'; import { rollupJobsStore } from '../../../store'; import { DetailPanel } from './detail_panel'; @@ -17,9 +17,8 @@ import { tabToHumanizedMap, } from '../../components'; -jest.mock('ui/new_platform'); -jest.mock('../../../services', () => { - const services = require.requireActual('../../../services'); +jest.mock('../../../../kibana_services', () => { + const services = require.requireActual('../../../../kibana_services'); return { ...services, trackUiMetric: jest.fn(), diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/detail_panel/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/detail_panel/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.container.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.container.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.container.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.container.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.js similarity index 98% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.js index 98329a687217a7..011becded148cf 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.js @@ -25,7 +25,7 @@ import { EuiCallOut, } from '@elastic/eui'; -import { withKibana } from '../../../../../../../../src/plugins/kibana_react/public/'; +import { withKibana } from '../../../../../../../src/plugins/kibana_react/public'; import { CRUD_APP_BASE_PATH } from '../../constants'; import { getRouterLinkProps, extractQueryParams, listBreadcrumb } from '../../services'; diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js similarity index 90% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js index 725789fc584de5..8c3bffd223ca9c 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_list.test.js @@ -5,16 +5,14 @@ */ import React from 'react'; -import { registerTestBed } from '../../../../../../../test_utils'; +import { registerTestBed } from '../../../../../../test_utils'; import { rollupJobsStore } from '../../store'; import { JobList } from './job_list'; -import { KibanaContextProvider } from '../../../../../../../../src/plugins/kibana_react/public'; -import { coreMock } from '../../../../../../../../src/core/public/mocks'; +import { KibanaContextProvider } from '../../../../../../../src/plugins/kibana_react/public'; +import { coreMock } from '../../../../../../../src/core/public/mocks'; const startMock = coreMock.createStart(); -jest.mock('ui/new_platform'); - jest.mock('../../services', () => { const services = require.requireActual('../../services'); return { diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/index.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/index.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.container.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.container.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.container.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.container.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js similarity index 99% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js index 4dbe396ab8410f..f47992e1b501ae 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.js @@ -30,7 +30,8 @@ import { } from '@elastic/eui'; import { UIM_SHOW_DETAILS_CLICK } from '../../../../../common'; -import { trackUiMetric, METRIC_TYPE } from '../../../services'; +import { METRIC_TYPE } from '../../../services'; +import { trackUiMetric } from '../../../../kibana_services'; import { JobActionMenu, JobStatus } from '../../components'; const COLUMNS = [ diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js similarity index 96% rename from x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js rename to x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js index c688343d5f7681..c6a3d3a8f69add 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js +++ b/x-pack/plugins/rollup/public/crud_app/sections/job_list/job_table/job_table.test.js @@ -6,14 +6,13 @@ import { Pager } from '@elastic/eui'; -import { registerTestBed } from '../../../../../../../../test_utils'; +import { registerTestBed } from '../../../../../../../test_utils'; import { getJobs, jobCount } from '../../../../../fixtures'; import { rollupJobsStore } from '../../../store'; import { JobTable } from './job_table'; -jest.mock('ui/new_platform'); -jest.mock('../../../services', () => { - const services = require.requireActual('../../../services'); +jest.mock('../../../../kibana_services', () => { + const services = require.requireActual('../../../../kibana_services'); return { ...services, trackUiMetric: jest.fn(), diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/api.js b/x-pack/plugins/rollup/public/crud_app/services/api.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/api.js rename to x-pack/plugins/rollup/public/crud_app/services/api.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/api_errors.ts b/x-pack/plugins/rollup/public/crud_app/services/api_errors.ts similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/api_errors.ts rename to x-pack/plugins/rollup/public/crud_app/services/api_errors.ts diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/breadcrumbs.js b/x-pack/plugins/rollup/public/crud_app/services/breadcrumbs.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/breadcrumbs.js rename to x-pack/plugins/rollup/public/crud_app/services/breadcrumbs.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/documentation_links.js b/x-pack/plugins/rollup/public/crud_app/services/documentation_links.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/documentation_links.js rename to x-pack/plugins/rollup/public/crud_app/services/documentation_links.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/filter_items.js b/x-pack/plugins/rollup/public/crud_app/services/filter_items.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/filter_items.js rename to x-pack/plugins/rollup/public/crud_app/services/filter_items.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/flatten_panel_tree.js b/x-pack/plugins/rollup/public/crud_app/services/flatten_panel_tree.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/flatten_panel_tree.js rename to x-pack/plugins/rollup/public/crud_app/services/flatten_panel_tree.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/format_fields.js b/x-pack/plugins/rollup/public/crud_app/services/format_fields.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/format_fields.js rename to x-pack/plugins/rollup/public/crud_app/services/format_fields.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/http_provider.ts b/x-pack/plugins/rollup/public/crud_app/services/http_provider.ts similarity index 91% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/http_provider.ts rename to x-pack/plugins/rollup/public/crud_app/services/http_provider.ts index dd84328084d050..93898610b844ed 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/services/http_provider.ts +++ b/x-pack/plugins/rollup/public/crud_app/services/http_provider.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { HttpStart } from 'src/core/public'; +import { HttpStart } from 'kibana/public'; let _http: HttpStart | null = null; diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/index.js b/x-pack/plugins/rollup/public/crud_app/services/index.js similarity index 95% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/index.js rename to x-pack/plugins/rollup/public/crud_app/services/index.js index 790770b9b6a9f4..0b45b1bdb6b5fb 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/services/index.js +++ b/x-pack/plugins/rollup/public/crud_app/services/index.js @@ -47,4 +47,4 @@ export { sortTable } from './sort_table'; export { retypeMetrics } from './retype_metrics'; -export { trackUiMetric, METRIC_TYPE } from './track_ui_metric'; +export { METRIC_TYPE } from './track_ui_metric'; diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/jobs.js b/x-pack/plugins/rollup/public/crud_app/services/jobs.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/jobs.js rename to x-pack/plugins/rollup/public/crud_app/services/jobs.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/noticeable_delay.js b/x-pack/plugins/rollup/public/crud_app/services/noticeable_delay.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/noticeable_delay.js rename to x-pack/plugins/rollup/public/crud_app/services/noticeable_delay.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/query_params.js b/x-pack/plugins/rollup/public/crud_app/services/query_params.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/query_params.js rename to x-pack/plugins/rollup/public/crud_app/services/query_params.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/retype_metrics.js b/x-pack/plugins/rollup/public/crud_app/services/retype_metrics.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/retype_metrics.js rename to x-pack/plugins/rollup/public/crud_app/services/retype_metrics.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/routing.js b/x-pack/plugins/rollup/public/crud_app/services/routing.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/routing.js rename to x-pack/plugins/rollup/public/crud_app/services/routing.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/sort_table.js b/x-pack/plugins/rollup/public/crud_app/services/sort_table.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/sort_table.js rename to x-pack/plugins/rollup/public/crud_app/services/sort_table.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/track_ui_metric.js b/x-pack/plugins/rollup/public/crud_app/services/track_ui_metric.ts similarity index 70% rename from x-pack/legacy/plugins/rollup/public/crud_app/services/track_ui_metric.js rename to x-pack/plugins/rollup/public/crud_app/services/track_ui_metric.ts index 69a5995386bd74..aa1cc2dfea323d 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/services/track_ui_metric.js +++ b/x-pack/plugins/rollup/public/crud_app/services/track_ui_metric.ts @@ -4,20 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ -import { - createUiStatsReporter, - METRIC_TYPE, -} from '../../../../../../../src/legacy/core_plugins/ui_metric/public'; -import { UIM_APP_NAME } from '../../../common'; +import { METRIC_TYPE } from '@kbn/analytics'; +import { trackUiMetric } from '../../kibana_services'; -export const trackUiMetric = createUiStatsReporter(UIM_APP_NAME); export { METRIC_TYPE }; /** * Transparently return provided request Promise, while allowing us to track * a successful completion of the request. */ -export function trackUserRequest(request, actionType) { +export function trackUserRequest(request: Promise, actionType: string) { // Only track successful actions. return request.then(response => { trackUiMetric(METRIC_TYPE.LOADED, actionType); diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/action_types.js b/x-pack/plugins/rollup/public/crud_app/store/action_types.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/action_types.js rename to x-pack/plugins/rollup/public/crud_app/store/action_types.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/change_job_status.js b/x-pack/plugins/rollup/public/crud_app/store/actions/change_job_status.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/change_job_status.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/change_job_status.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/clone_job.js b/x-pack/plugins/rollup/public/crud_app/store/actions/clone_job.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/clone_job.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/clone_job.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/create_job.js b/x-pack/plugins/rollup/public/crud_app/store/actions/create_job.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/create_job.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/create_job.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/delete_jobs.js b/x-pack/plugins/rollup/public/crud_app/store/actions/delete_jobs.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/delete_jobs.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/delete_jobs.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/detail_panel.js b/x-pack/plugins/rollup/public/crud_app/store/actions/detail_panel.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/detail_panel.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/detail_panel.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/index.js b/x-pack/plugins/rollup/public/crud_app/store/actions/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/index.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/load_jobs.js b/x-pack/plugins/rollup/public/crud_app/store/actions/load_jobs.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/load_jobs.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/load_jobs.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/refresh_jobs.js b/x-pack/plugins/rollup/public/crud_app/store/actions/refresh_jobs.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/refresh_jobs.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/refresh_jobs.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/actions/table_state.js b/x-pack/plugins/rollup/public/crud_app/store/actions/table_state.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/actions/table_state.js rename to x-pack/plugins/rollup/public/crud_app/store/actions/table_state.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/index.js b/x-pack/plugins/rollup/public/crud_app/store/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/index.js rename to x-pack/plugins/rollup/public/crud_app/store/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/middleware/clone_job.js b/x-pack/plugins/rollup/public/crud_app/store/middleware/clone_job.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/middleware/clone_job.js rename to x-pack/plugins/rollup/public/crud_app/store/middleware/clone_job.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/middleware/detail_panel.js b/x-pack/plugins/rollup/public/crud_app/store/middleware/detail_panel.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/middleware/detail_panel.js rename to x-pack/plugins/rollup/public/crud_app/store/middleware/detail_panel.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/middleware/index.js b/x-pack/plugins/rollup/public/crud_app/store/middleware/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/middleware/index.js rename to x-pack/plugins/rollup/public/crud_app/store/middleware/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/clone_job.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/clone_job.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/clone_job.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/clone_job.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/create_job.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/create_job.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/create_job.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/create_job.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/detail_panel.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/detail_panel.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/detail_panel.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/detail_panel.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/index.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/index.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/jobs.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/jobs.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/jobs.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/jobs.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/table_state.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/table_state.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/table_state.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/table_state.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/update_job.js b/x-pack/plugins/rollup/public/crud_app/store/reducers/update_job.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/reducers/update_job.js rename to x-pack/plugins/rollup/public/crud_app/store/reducers/update_job.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/selectors/index.js b/x-pack/plugins/rollup/public/crud_app/store/selectors/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/selectors/index.js rename to x-pack/plugins/rollup/public/crud_app/store/selectors/index.js diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/store/store.js b/x-pack/plugins/rollup/public/crud_app/store/store.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/crud_app/store/store.js rename to x-pack/plugins/rollup/public/crud_app/store/store.js diff --git a/x-pack/legacy/plugins/rollup/public/extend_index_management/index.ts b/x-pack/plugins/rollup/public/extend_index_management/index.ts similarity index 100% rename from x-pack/legacy/plugins/rollup/public/extend_index_management/index.ts rename to x-pack/plugins/rollup/public/extend_index_management/index.ts diff --git a/x-pack/legacy/plugins/rollup/public/index.scss b/x-pack/plugins/rollup/public/index.scss similarity index 67% rename from x-pack/legacy/plugins/rollup/public/index.scss rename to x-pack/plugins/rollup/public/index.scss index 0ad0eac50f7b93..cbbedcebb043e1 100644 --- a/x-pack/legacy/plugins/rollup/public/index.scss +++ b/x-pack/plugins/rollup/public/index.scss @@ -1,6 +1,3 @@ -// Import the EUI global scope so we can use EUI constants -@import 'src/legacy/ui/public/styles/_styling_constants'; - // Index management plugin styles // Prefix all styles with "rollup" to avoid conflicts. diff --git a/x-pack/legacy/plugins/rollup/public/legacy_imports.ts b/x-pack/plugins/rollup/public/index.ts similarity index 72% rename from x-pack/legacy/plugins/rollup/public/legacy_imports.ts rename to x-pack/plugins/rollup/public/index.ts index e82a41f60b1cae..4c965fc38f4e7d 100644 --- a/x-pack/legacy/plugins/rollup/public/legacy_imports.ts +++ b/x-pack/plugins/rollup/public/index.ts @@ -4,4 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -export { PluginsStart } from 'ui/new_platform/new_platform'; +import { RollupPlugin } from './plugin'; + +export const plugin = () => new RollupPlugin(); diff --git a/x-pack/legacy/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/index.js b/x-pack/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/index.js rename to x-pack/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/index.js diff --git a/x-pack/legacy/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/rollup_prompt.js b/x-pack/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/rollup_prompt.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/rollup_prompt.js rename to x-pack/plugins/rollup/public/index_pattern_creation/components/rollup_prompt/rollup_prompt.js diff --git a/x-pack/legacy/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js b/x-pack/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js similarity index 97% rename from x-pack/legacy/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js rename to x-pack/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js index f4de2a30981276..c29fba44285be0 100644 --- a/x-pack/legacy/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js +++ b/x-pack/plugins/rollup/public/index_pattern_creation/rollup_index_pattern_creation_config.js @@ -8,7 +8,7 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; import { RollupPrompt } from './components/rollup_prompt'; -import { IndexPatternCreationConfig } from '../../../../../../src/plugins/index_pattern_management/public'; +import { IndexPatternCreationConfig } from '../../../../../src/plugins/index_pattern_management/public'; const rollupIndexPatternTypeName = i18n.translate( 'xpack.rollupJobs.editRollupIndexPattern.createIndex.defaultTypeName', diff --git a/x-pack/legacy/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js b/x-pack/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js similarity index 93% rename from x-pack/legacy/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js rename to x-pack/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js index 809a76d1868b22..e61287d303643c 100644 --- a/x-pack/legacy/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js +++ b/x-pack/plugins/rollup/public/index_pattern_list/rollup_index_pattern_list_config.js @@ -3,7 +3,7 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { IndexPatternListConfig } from '../../../../../../src/plugins/index_pattern_management/public'; +import { IndexPatternListConfig } from '../../../../../src/plugins/index_pattern_management/public'; function isRollup(indexPattern) { return ( diff --git a/x-pack/legacy/plugins/rollup/public/kibana_services.ts b/x-pack/plugins/rollup/public/kibana_services.ts similarity index 57% rename from x-pack/legacy/plugins/rollup/public/kibana_services.ts rename to x-pack/plugins/rollup/public/kibana_services.ts index 335eeb90282ca9..edbf69568f5e50 100644 --- a/x-pack/legacy/plugins/rollup/public/kibana_services.ts +++ b/x-pack/plugins/rollup/public/kibana_services.ts @@ -4,7 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import { NotificationsStart, FatalErrorsSetup } from 'src/core/public'; +import { NotificationsStart, FatalErrorsSetup } from 'kibana/public'; +import { UiStatsMetricType } from '@kbn/analytics'; +import { createGetterSetter } from '../../../../src/plugins/kibana_utils/common'; let notifications: NotificationsStart | null = null; let fatalErrors: FatalErrorsSetup | null = null; @@ -28,3 +30,18 @@ export function getFatalErrors() { export function setFatalErrors(newFatalErrors: FatalErrorsSetup) { fatalErrors = newFatalErrors; } + +export const [getUiStatsReporter, setUiStatsReporter] = createGetterSetter< + (type: UiStatsMetricType, eventNames: string | string[], count?: number) => void +>('uiMetric'); + +// default value if usageCollection is not available +setUiStatsReporter(() => {}); + +export function trackUiMetric( + type: UiStatsMetricType, + eventNames: string | string[], + count?: number +) { + getUiStatsReporter()(type, eventNames, count); +} diff --git a/x-pack/legacy/plugins/rollup/public/plugin.ts b/x-pack/plugins/rollup/public/plugin.ts similarity index 73% rename from x-pack/legacy/plugins/rollup/public/plugin.ts rename to x-pack/plugins/rollup/public/plugin.ts index 17ec8a5a4aedf1..fd1b90fbc98557 100644 --- a/x-pack/legacy/plugins/rollup/public/plugin.ts +++ b/x-pack/plugins/rollup/public/plugin.ts @@ -6,7 +6,6 @@ import { i18n } from '@kbn/i18n'; import { CoreSetup, CoreStart, Plugin } from 'kibana/public'; -import { PluginsStart } from './legacy_imports'; import { rollupBadgeExtension, rollupToggleExtension } from './extend_index_management'; // @ts-ignore import { RollupIndexPatternCreationConfig } from './index_pattern_creation/rollup_index_pattern_creation_config'; @@ -16,35 +15,49 @@ import { RollupIndexPatternListConfig } from './index_pattern_list/rollup_index_ import { initAggTypeFilter } from './visualize/agg_type_filter'; // @ts-ignore import { initAggTypeFieldFilter } from './visualize/agg_type_field_filter'; -import { CONFIG_ROLLUPS } from '../common'; +import { CONFIG_ROLLUPS, UIM_APP_NAME } from '../common'; import { FeatureCatalogueCategory, HomePublicPluginSetup, -} from '../../../../../src/plugins/home/public'; +} from '../../../../src/plugins/home/public'; // @ts-ignore import { CRUD_APP_BASE_PATH } from './crud_app/constants'; -import { ManagementSetup } from '../../../../../src/plugins/management/public'; -import { IndexManagementPluginSetup } from '../../../../plugins/index_management/public'; -import { IndexPatternManagementSetup } from '../../../../../src/plugins/index_pattern_management/public'; -import { search } from '../../../../../src/plugins/data/public'; +import { ManagementSetup } from '../../../../src/plugins/management/public'; +import { IndexManagementPluginSetup } from '../../index_management/public'; +import { IndexPatternManagementSetup } from '../../../../src/plugins/index_pattern_management/public'; +import { DataPublicPluginStart, search } from '../../../../src/plugins/data/public'; // @ts-ignore -import { setEsBaseAndXPackBase, setHttp } from './crud_app/services'; -import { setNotifications, setFatalErrors } from './kibana_services'; -import { renderApp } from './application'; +import { setEsBaseAndXPackBase, setHttp } from './crud_app/services/index'; +import { setNotifications, setFatalErrors, setUiStatsReporter } from './kibana_services'; +import { UsageCollectionSetup } from '../../../../src/plugins/usage_collection/public'; export interface RollupPluginSetupDependencies { home?: HomePublicPluginSetup; management: ManagementSetup; indexManagement?: IndexManagementPluginSetup; indexPatternManagement: IndexPatternManagementSetup; + usageCollection?: UsageCollectionSetup; +} + +export interface RollupPluginStartDependencies { + data: DataPublicPluginStart; } export class RollupPlugin implements Plugin { setup( core: CoreSetup, - { home, management, indexManagement, indexPatternManagement }: RollupPluginSetupDependencies + { + home, + management, + indexManagement, + indexPatternManagement, + usageCollection, + }: RollupPluginSetupDependencies ) { setFatalErrors(core.fatalErrors); + if (usageCollection) { + setUiStatsReporter(usageCollection.reportUiStats.bind(usageCollection, UIM_APP_NAME)); + } if (indexManagement) { indexManagement.extensionsService.addBadge(rollupBadgeExtension); @@ -79,7 +92,7 @@ export class RollupPlugin implements Plugin { id: 'rollup_jobs', title: i18n.translate('xpack.rollupJobs.appTitle', { defaultMessage: 'Rollup Jobs' }), order: 3, - mount(params) { + async mount(params) { params.setBreadcrumbs([ { text: i18n.translate('xpack.rollupJobs.breadcrumbsTitle', { @@ -87,6 +100,7 @@ export class RollupPlugin implements Plugin { }), }, ]); + const { renderApp } = await import('./application'); return renderApp(core, params); }, @@ -94,7 +108,7 @@ export class RollupPlugin implements Plugin { } } - start(core: CoreStart, plugins: PluginsStart) { + start(core: CoreStart, plugins: RollupPluginStartDependencies) { setHttp(core.http); setNotifications(core.notifications); setEsBaseAndXPackBase(core.docLinks.ELASTIC_WEBSITE_URL, core.docLinks.DOC_LINK_VERSION); diff --git a/x-pack/legacy/plugins/rollup/public/search/rollup_search_strategy.ts b/x-pack/plugins/rollup/public/search/rollup_search_strategy.ts similarity index 96% rename from x-pack/legacy/plugins/rollup/public/search/rollup_search_strategy.ts rename to x-pack/plugins/rollup/public/search/rollup_search_strategy.ts index 4709c0aa498f81..d1c3b9cba5f9de 100644 --- a/x-pack/legacy/plugins/rollup/public/search/rollup_search_strategy.ts +++ b/x-pack/plugins/rollup/public/search/rollup_search_strategy.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { HttpSetup } from 'src/core/public'; +import { HttpSetup } from 'kibana/public'; import { SearchError, getSearchErrorType, @@ -12,7 +12,7 @@ import { SearchStrategyProvider, SearchResponse, SearchRequest, -} from '../../../../../../src/plugins/data/public'; +} from '../../../../../src/plugins/data/public'; function serializeFetchParams(searchRequests: SearchRequest[]) { return JSON.stringify( diff --git a/x-pack/legacy/plugins/rollup/public/shared_imports.ts b/x-pack/plugins/rollup/public/shared_imports.ts similarity index 76% rename from x-pack/legacy/plugins/rollup/public/shared_imports.ts rename to x-pack/plugins/rollup/public/shared_imports.ts index 6bf74da6db6fe5..1ac25a1a0e5f8e 100644 --- a/x-pack/legacy/plugins/rollup/public/shared_imports.ts +++ b/x-pack/plugins/rollup/public/shared_imports.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { indices } from '../../../../../src/plugins/es_ui_shared/public'; +export { indices } from '../../../../src/plugins/es_ui_shared/public'; diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/constants.js b/x-pack/plugins/rollup/public/test/client_integration/helpers/constants.js similarity index 100% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/constants.js rename to x-pack/plugins/rollup/public/test/client_integration/helpers/constants.js diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/index.js b/x-pack/plugins/rollup/public/test/client_integration/helpers/index.js similarity index 100% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/index.js rename to x-pack/plugins/rollup/public/test/client_integration/helpers/index.js diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_clone.helpers.js b/x-pack/plugins/rollup/public/test/client_integration/helpers/job_clone.helpers.js similarity index 83% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_clone.helpers.js rename to x-pack/plugins/rollup/public/test/client_integration/helpers/job_clone.helpers.js index a8376bb31b23ff..fa9929a2076158 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_clone.helpers.js +++ b/x-pack/plugins/rollup/public/test/client_integration/helpers/job_clone.helpers.js @@ -5,10 +5,10 @@ */ import { registerTestBed } from '../../../../../../test_utils'; -import { createRollupJobsStore } from '../../../public/crud_app/store'; -import { JobCreate } from '../../../public/crud_app/sections'; +import { createRollupJobsStore } from '../../../crud_app/store'; +import { JobCreate } from '../../../crud_app/sections'; import { JOB_TO_CLONE } from './constants'; -import { deserializeJob } from '../../../public/crud_app/services'; +import { deserializeJob } from '../../../crud_app/services'; import { wrapComponent } from './setup_context'; diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_create.helpers.js b/x-pack/plugins/rollup/public/test/client_integration/helpers/job_create.helpers.js similarity index 96% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_create.helpers.js rename to x-pack/plugins/rollup/public/test/client_integration/helpers/job_create.helpers.js index 2395fd014dd1e5..7ddcfa9eb83ff5 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_create.helpers.js +++ b/x-pack/plugins/rollup/public/test/client_integration/helpers/job_create.helpers.js @@ -5,8 +5,8 @@ */ import { registerTestBed } from '../../../../../../test_utils'; -import { rollupJobsStore } from '../../../public/crud_app/store'; -import { JobCreate } from '../../../public/crud_app/sections'; +import { rollupJobsStore } from '../../../crud_app/store'; +import { JobCreate } from '../../../crud_app/sections'; import { JOB_TO_CREATE } from './constants'; diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_list.helpers.js b/x-pack/plugins/rollup/public/test/client_integration/helpers/job_list.helpers.js similarity index 74% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_list.helpers.js rename to x-pack/plugins/rollup/public/test/client_integration/helpers/job_list.helpers.js index bcad8c29c87c03..fda1ec8cfed22d 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/job_list.helpers.js +++ b/x-pack/plugins/rollup/public/test/client_integration/helpers/job_list.helpers.js @@ -5,9 +5,9 @@ */ import { registerTestBed } from '../../../../../../test_utils'; -import { registerRouter } from '../../../public/crud_app/services'; -import { createRollupJobsStore } from '../../../public/crud_app/store'; -import { JobList } from '../../../public/crud_app/sections/job_list'; +import { registerRouter } from '../../../crud_app/services'; +import { createRollupJobsStore } from '../../../crud_app/store'; +import { JobList } from '../../../crud_app/sections/job_list'; import { wrapComponent } from './setup_context'; diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/setup_context.tsx b/x-pack/plugins/rollup/public/test/client_integration/helpers/setup_context.tsx similarity index 100% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/setup_context.tsx rename to x-pack/plugins/rollup/public/test/client_integration/helpers/setup_context.tsx diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/setup_environment.ts b/x-pack/plugins/rollup/public/test/client_integration/helpers/setup_environment.ts similarity index 100% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/helpers/setup_environment.ts rename to x-pack/plugins/rollup/public/test/client_integration/helpers/setup_environment.ts diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_clone.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_clone.test.js similarity index 93% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_clone.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_clone.test.js index b7c98ed179c7ab..7b61a03dcde456 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_clone.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_clone.test.js @@ -4,11 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { mockHttpRequest, pageHelpers, nextTick } from './helpers'; import { JOB_TO_CLONE, JOB_CLONE_INDEX_PATTERN_CHECK } from './helpers/constants'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); @@ -23,23 +22,23 @@ describe('Cloning a rollup job through create job wizard', () => { let form; let table; let actions; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: JOB_CLONE_INDEX_PATTERN_CHECK }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: JOB_CLONE_INDEX_PATTERN_CHECK }); ({ exists, find, form, actions, table } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); - npStart.core.http.post.mockClear(); - npStart.core.http.put.mockClear(); + startMock.http.get.mockClear(); + startMock.http.post.mockClear(); + startMock.http.put.mockClear(); }); it('should have fields correctly pre-populated', async () => { diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_date_histogram.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_date_histogram.test.js similarity index 88% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_date_histogram.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_date_histogram.test.js index b8ec7d9f85d009..095609ac2b2d77 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_date_histogram.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_date_histogram.test.js @@ -6,10 +6,9 @@ import moment from 'moment-timezone'; -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { mockHttpRequest, pageHelpers } from './helpers'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); @@ -22,23 +21,23 @@ describe('Create Rollup Job, step 2: Date histogram', () => { let goToStep; let form; let getEuiStepsHorizontalActive; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { // Set "default" mock responses by not providing any arguments - mockHttpRequest(npStart.core.http); + mockHttpRequest(startMock.http); ({ find, exists, actions, form, getEuiStepsHorizontalActive, goToStep } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); - npStart.core.http.post.mockClear(); - npStart.core.http.put.mockClear(); + startMock.http.get.mockClear(); + startMock.http.post.mockClear(); + startMock.http.put.mockClear(); }); describe('layout', () => { @@ -73,7 +72,7 @@ describe('Create Rollup Job, step 2: Date histogram', () => { describe('Date field select', () => { it('should set the options value from the index pattern', async () => { const dateFields = ['field1', 'field2', 'field3']; - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { dateFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { dateFields } }); await goToStep(2); @@ -85,7 +84,7 @@ describe('Create Rollup Job, step 2: Date histogram', () => { it('should sort the options in ascending order', async () => { const dateFields = ['field3', 'field2', 'field1']; - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { dateFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { dateFields } }); await goToStep(2); diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_histogram.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_histogram.test.js similarity index 91% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_histogram.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_histogram.test.js index c4b5d753f1a262..141aa068435567 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_histogram.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_histogram.test.js @@ -4,10 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { mockHttpRequest, pageHelpers } from './helpers'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); @@ -21,24 +20,24 @@ describe('Create Rollup Job, step 4: Histogram', () => { let goToStep; let table; let form; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { // Set "default" mock responses by not providing any arguments - mockHttpRequest(npStart.core.http); + mockHttpRequest(startMock.http); ({ find, exists, actions, getEuiStepsHorizontalActive, goToStep, table, form } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); - npStart.core.http.post.mockClear(); - npStart.core.http.put.mockClear(); + startMock.http.get.mockClear(); + startMock.http.post.mockClear(); + startMock.http.put.mockClear(); }); const numericFields = ['a-numericField', 'b-numericField']; @@ -111,7 +110,7 @@ describe('Create Rollup Job, step 4: Histogram', () => { describe('when no histogram fields are availalbe', () => { it('should indicate it to the user', async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields: [] } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields: [] } }); await goToStepAndOpenFieldChooser(); const { tableCellsValues } = table.getMetaData('rollupJobHistogramFieldChooser-table'); @@ -122,7 +121,7 @@ describe('Create Rollup Job, step 4: Histogram', () => { describe('when histogram fields are available', () => { beforeEach(async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields } }); await goToStepAndOpenFieldChooser(); }); @@ -156,7 +155,7 @@ describe('Create Rollup Job, step 4: Histogram', () => { it('should have a delete button on each row to remove an histogram field', async () => { // First let's add a term to the list - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields } }); await goToStepAndOpenFieldChooser(); const { rows: fieldChooserRows } = table.getMetaData('rollupJobHistogramFieldChooser-table'); fieldChooserRows[0].reactWrapper.simulate('click'); @@ -183,7 +182,7 @@ describe('Create Rollup Job, step 4: Histogram', () => { }; beforeEach(async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields } }); await goToStep(4); addHistogramFieldToList(); }); diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_logistics.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_logistics.test.js similarity index 96% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_logistics.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_logistics.test.js index ebc03e40cc2b9a..7b89244bb52a9c 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_logistics.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_logistics.test.js @@ -13,10 +13,9 @@ import { YEAR, } from '../../../../../../src/plugins/es_ui_shared/public'; import { indexPatterns } from '../../../../../../src/plugins/data/public'; -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { mockHttpRequest, pageHelpers } from './helpers'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); @@ -28,24 +27,24 @@ describe('Create Rollup Job, step 1: Logistics', () => { let actions; let form; let getEuiStepsHorizontalActive; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { // Set "default" mock responses by not providing any arguments - mockHttpRequest(npStart.core.http); + mockHttpRequest(startMock.http); ({ find, exists, actions, form, getEuiStepsHorizontalActive } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); - npStart.core.http.post.mockClear(); - npStart.core.http.put.mockClear(); + startMock.http.get.mockClear(); + startMock.http.post.mockClear(); + startMock.http.put.mockClear(); }); it('should have the horizontal step active on "Logistics"', () => { @@ -97,14 +96,14 @@ describe('Create Rollup Job, step 1: Logistics', () => { }); it('should not allow an unknown index pattern', async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { doesMatchIndices: false } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { doesMatchIndices: false } }); await form.setInputValue('rollupIndexPattern', 'unknown', true); actions.clickNextStep(); expect(form.getErrorsMessages()).toContain("Index pattern doesn't match any indices."); }); it('should not allow an index pattern without time fields', async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { dateFields: [] } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { dateFields: [] } }); await form.setInputValue('rollupIndexPattern', 'abc', true); actions.clickNextStep(); expect(form.getErrorsMessages()).toContain( @@ -113,7 +112,7 @@ describe('Create Rollup Job, step 1: Logistics', () => { }); it('should not allow an index pattern that matches a rollup index', async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { indxPatternVldtResp: { doesMatchRollupIndices: true }, }); await form.setInputValue('rollupIndexPattern', 'abc', true); diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_metrics.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_metrics.test.js similarity index 95% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_metrics.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_metrics.test.js index a72dc8b25c0839..1e9dd88648da65 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_metrics.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_metrics.test.js @@ -4,10 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { mockHttpRequest, pageHelpers } from './helpers'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); @@ -21,24 +20,24 @@ describe('Create Rollup Job, step 5: Metrics', () => { let goToStep; let table; let metrics; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { // Set "default" mock responses by not providing any arguments - mockHttpRequest(npStart.core.http); + mockHttpRequest(startMock.http); ({ find, exists, actions, getEuiStepsHorizontalActive, goToStep, table, metrics } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); - npStart.core.http.post.mockClear(); - npStart.core.http.put.mockClear(); + startMock.http.get.mockClear(); + startMock.http.post.mockClear(); + startMock.http.put.mockClear(); }); const numericFields = ['a-numericField', 'c-numericField']; @@ -112,7 +111,7 @@ describe('Create Rollup Job, step 5: Metrics', () => { describe('table', () => { beforeEach(async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields, dateFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields, dateFields } }); await goToStepAndOpenFieldChooser(); }); @@ -169,7 +168,7 @@ describe('Create Rollup Job, step 5: Metrics', () => { describe('when fields are added', () => { beforeEach(async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields, dateFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields, dateFields } }); await goToStepAndOpenFieldChooser(); }); @@ -260,7 +259,7 @@ describe('Create Rollup Job, step 5: Metrics', () => { let getFieldListTableRows; beforeEach(async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields, dateFields } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields, dateFields } }); await goToStep(5); await addFieldToList('numeric'); diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_review.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_review.test.js similarity index 71% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_review.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_review.test.js index 0fa9509368d3f7..d625b8f11208f7 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_review.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_review.test.js @@ -6,13 +6,20 @@ import { pageHelpers, mockHttpRequest } from './helpers'; import { first } from 'lodash'; -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { JOBS } from './helpers/constants'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); +jest.mock('../../kibana_services', () => { + const services = require.requireActual('../../kibana_services'); + return { + ...services, + getUiStatsReporter: jest.fn(() => () => {}), + }; +}); + const { setup } = pageHelpers.jobCreate; describe('Create Rollup Job, step 6: Review', () => { @@ -23,23 +30,23 @@ describe('Create Rollup Job, step 6: Review', () => { let goToStep; let table; let form; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { // Set "default" mock responses by not providing any arguments - mockHttpRequest(npStart.core.http); + mockHttpRequest(startMock.http); ({ find, exists, actions, getEuiStepsHorizontalActive, goToStep, table, form } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); - npStart.core.http.post.mockClear(); - npStart.core.http.put.mockClear(); + startMock.http.get.mockClear(); + startMock.http.post.mockClear(); + startMock.http.put.mockClear(); }); describe('layout', () => { @@ -84,7 +91,7 @@ describe('Create Rollup Job, step 6: Review', () => { }); it('should have a "Summary", "Terms" & "Request" tab if a term aggregation was added', async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields: ['my-field'] } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields: ['my-field'] } }); await goToStep(3); selectFirstField('Terms'); @@ -96,7 +103,7 @@ describe('Create Rollup Job, step 6: Review', () => { }); it('should have a "Summary", "Histogram" & "Request" tab if a histogram field was added', async () => { - mockHttpRequest(npStart.core.http, { indxPatternVldtResp: { numericFields: ['a-field'] } }); + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields: ['a-field'] } }); await goToStep(4); selectFirstField('Histogram'); form.setInputValue('rollupJobCreateHistogramInterval', 3); // set an interval @@ -108,7 +115,7 @@ describe('Create Rollup Job, step 6: Review', () => { }); it('should have a "Summary", "Metrics" & "Request" tab if a histogram field was added', async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields: ['a-field'], dateFields: ['b-field'], @@ -130,28 +137,28 @@ describe('Create Rollup Job, step 6: Review', () => { describe('without starting job after creation', () => { it('should call the "create" Api server endpoint', async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { createdJob: first(JOBS.jobs), }); await goToStep(6); - expect(npStart.core.http.put).not.toHaveBeenCalledWith(jobCreateApiPath); // make sure it hasn't been called - expect(npStart.core.http.get).not.toHaveBeenCalledWith(jobStartApiPath); // make sure it hasn't been called + expect(startMock.http.put).not.toHaveBeenCalledWith(jobCreateApiPath); // make sure it hasn't been called + expect(startMock.http.get).not.toHaveBeenCalledWith(jobStartApiPath); // make sure it hasn't been called actions.clickSave(); - // Given the following anti-jitter sleep x-pack/legacy/plugins/rollup/public/crud_app/store/actions/create_job.js + // Given the following anti-jitter sleep x-pack/plugins/rollup/public/crud_app/store/actions/create_job.js // we add a longer sleep here :( await new Promise(res => setTimeout(res, 750)); - expect(npStart.core.http.put).toHaveBeenCalledWith(jobCreateApiPath, expect.anything()); // It has been called! - expect(npStart.core.http.get).not.toHaveBeenCalledWith(jobStartApiPath); // It has still not been called! + expect(startMock.http.put).toHaveBeenCalledWith(jobCreateApiPath, expect.anything()); // It has been called! + expect(startMock.http.get).not.toHaveBeenCalledWith(jobStartApiPath); // It has still not been called! }); }); describe('with starting job after creation', () => { it('should call the "create" and "start" Api server endpoints', async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { createdJob: first(JOBS.jobs), }); @@ -161,14 +168,14 @@ describe('Create Rollup Job, step 6: Review', () => { target: { checked: true }, }); - expect(npStart.core.http.post).not.toHaveBeenCalledWith(jobStartApiPath); // make sure it hasn't been called + expect(startMock.http.post).not.toHaveBeenCalledWith(jobStartApiPath); // make sure it hasn't been called actions.clickSave(); - // Given the following anti-jitter sleep x-pack/legacy/plugins/rollup/public/crud_app/store/actions/create_job.js + // Given the following anti-jitter sleep x-pack/plugins/rollup/public/crud_app/store/actions/create_job.js // we add a longer sleep here :( await new Promise(res => setTimeout(res, 750)); - expect(npStart.core.http.post).toHaveBeenCalledWith(jobStartApiPath, expect.anything()); // It has been called! + expect(startMock.http.post).toHaveBeenCalledWith(jobStartApiPath, expect.anything()); // It has been called! }); }); }); diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_terms.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_create_terms.test.js similarity index 93% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_terms.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_create_terms.test.js index f111a7df2c2501..61993f30928400 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_create_terms.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_create_terms.test.js @@ -4,10 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import { setHttp } from '../../public/crud_app/services'; +import { setHttp } from '../../crud_app/services'; import { pageHelpers, mockHttpRequest } from './helpers'; - -jest.mock('ui/new_platform'); +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); @@ -20,22 +19,22 @@ describe('Create Rollup Job, step 3: Terms', () => { let getEuiStepsHorizontalActive; let goToStep; let table; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(() => { // Set "default" mock responses by not providing any arguments - mockHttpRequest(npStart.core.http); + mockHttpRequest(startMock.http); ({ find, exists, actions, getEuiStepsHorizontalActive, goToStep, table } = setup()); }); afterEach(() => { - npStart.core.http.get.mockClear(); + startMock.http.get.mockClear(); }); const numericFields = ['a-numericField', 'c-numericField']; @@ -109,7 +108,7 @@ describe('Create Rollup Job, step 3: Terms', () => { describe('when no terms are available', () => { it('should indicate it to the user', async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields: [], keywordFields: [], @@ -125,7 +124,7 @@ describe('Create Rollup Job, step 3: Terms', () => { describe('when terms are available', () => { beforeEach(async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields, keywordFields, @@ -171,7 +170,7 @@ describe('Create Rollup Job, step 3: Terms', () => { it('should have a delete button on each row to remove a term', async () => { // First let's add a term to the list - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { indxPatternVldtResp: { numericFields, keywordFields, diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_list.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_list.test.js similarity index 77% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_list.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_list.test.js index a9e474cf0b5598..c6988236d6b7c9 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_list.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_list.test.js @@ -4,20 +4,27 @@ * you may not use this file except in compliance with the Elastic License. */ -import { getRouter, setHttp } from '../../public/crud_app/services'; +import { getRouter, setHttp } from '../../crud_app/services'; import { mockHttpRequest, pageHelpers, nextTick } from './helpers'; import { JOBS } from './helpers/constants'; +import { coreMock } from '../../../../../../src/core/public/mocks'; -jest.mock('ui/new_platform'); - -jest.mock('../../public/crud_app/services', () => { - const services = require.requireActual('../../public/crud_app/services'); +jest.mock('../../crud_app/services', () => { + const services = require.requireActual('../../crud_app/services'); return { ...services, getRouterLinkProps: link => ({ href: link }), }; }); +jest.mock('../../kibana_services', () => { + const services = require.requireActual('../../kibana_services'); + return { + ...services, + getUiStatsReporter: jest.fn(() => () => {}), + }; +}); + const { setup } = pageHelpers.jobList; describe('', () => { @@ -25,15 +32,15 @@ describe('', () => { let component; let table; let exists; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(async () => { - mockHttpRequest(npStart.core.http, { jobs: JOBS }); + mockHttpRequest(startMock.http, { jobs: JOBS }); ({ component, exists, table } = setup()); @@ -42,7 +49,7 @@ describe('', () => { }); afterEach(() => { - npStart.core.http.get.mockClear(); + startMock.http.get.mockClear(); }); test('should open the detail panel when clicking on a job in the table', () => { diff --git a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_list_clone.test.js b/x-pack/plugins/rollup/public/test/client_integration/job_list_clone.test.js similarity index 74% rename from x-pack/legacy/plugins/rollup/__jest__/client_integration/job_list_clone.test.js rename to x-pack/plugins/rollup/public/test/client_integration/job_list_clone.test.js index 8a36af83def4c8..bdf57a555cdad6 100644 --- a/x-pack/legacy/plugins/rollup/__jest__/client_integration/job_list_clone.test.js +++ b/x-pack/plugins/rollup/public/test/client_integration/job_list_clone.test.js @@ -6,14 +6,21 @@ import { mockHttpRequest, pageHelpers, nextTick } from './helpers'; import { JOB_TO_CLONE, JOB_CLONE_INDEX_PATTERN_CHECK } from './helpers/constants'; -import { getRouter } from '../../public/crud_app/services/routing'; -import { setHttp } from '../../public/crud_app/services'; -import { CRUD_APP_BASE_PATH } from '../../public/crud_app/constants'; - -jest.mock('ui/new_platform'); +import { getRouter } from '../../crud_app/services/routing'; +import { setHttp } from '../../crud_app/services'; +import { CRUD_APP_BASE_PATH } from '../../crud_app/constants'; +import { coreMock } from '../../../../../../src/core/public/mocks'; jest.mock('lodash/function/debounce', () => fn => fn); +jest.mock('../../kibana_services', () => { + const services = require.requireActual('../../kibana_services'); + return { + ...services, + getUiStatsReporter: jest.fn(() => () => {}), + }; +}); + const { setup } = pageHelpers.jobList; describe('Smoke test cloning an existing rollup job from job list', () => { @@ -21,15 +28,15 @@ describe('Smoke test cloning an existing rollup job from job list', () => { let find; let component; let exists; - let npStart; + let startMock; beforeAll(() => { - npStart = require('ui/new_platform').npStart; // eslint-disable-line - setHttp(npStart.core.http); + startMock = coreMock.createStart(); + setHttp(startMock.http); }); beforeEach(async () => { - mockHttpRequest(npStart.core.http, { + mockHttpRequest(startMock.http, { jobs: JOB_TO_CLONE, indxPatternVldtResp: JOB_CLONE_INDEX_PATTERN_CHECK, }); @@ -41,7 +48,7 @@ describe('Smoke test cloning an existing rollup job from job list', () => { }); afterEach(() => { - npStart.core.http.get.mockClear(); + startMock.http.get.mockClear(); }); it('should navigate to create view with default values set', async () => { diff --git a/x-pack/legacy/plugins/rollup/public/visualize/agg_type_field_filter.js b/x-pack/plugins/rollup/public/visualize/agg_type_field_filter.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/visualize/agg_type_field_filter.js rename to x-pack/plugins/rollup/public/visualize/agg_type_field_filter.js diff --git a/x-pack/legacy/plugins/rollup/public/visualize/agg_type_filter.js b/x-pack/plugins/rollup/public/visualize/agg_type_filter.js similarity index 100% rename from x-pack/legacy/plugins/rollup/public/visualize/agg_type_filter.js rename to x-pack/plugins/rollup/public/visualize/agg_type_filter.js diff --git a/x-pack/plugins/rollup/server/plugin.ts b/x-pack/plugins/rollup/server/plugin.ts index fa05b8d1307d61..ea6d197e22029d 100644 --- a/x-pack/plugins/rollup/server/plugin.ts +++ b/x-pack/plugins/rollup/server/plugin.ts @@ -4,7 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Plugin, PluginInitializerContext } from 'src/core/server'; +import { CoreSetup, Plugin, PluginInitializerContext } from 'src/core/server'; +import { i18n } from '@kbn/i18n'; +import { schema } from '@kbn/config-schema'; +import { CONFIG_ROLLUPS } from '../common'; export class RollupPlugin implements Plugin { private readonly initContext: PluginInitializerContext; @@ -13,7 +16,23 @@ export class RollupPlugin implements Plugin { this.initContext = initContext; } - public setup() { + public setup(core: CoreSetup) { + core.uiSettings.register({ + [CONFIG_ROLLUPS]: { + name: i18n.translate('xpack.rollupJobs.rollupIndexPatternsTitle', { + defaultMessage: 'Enable rollup index patterns', + }), + value: true, + description: i18n.translate('xpack.rollupJobs.rollupIndexPatternsDescription', { + defaultMessage: `Enable the creation of index patterns which capture rollup indices, + which in turn enable visualizations based on rollup data. Refresh + the page to apply the changes.`, + }), + category: ['rollups'], + schema: schema.boolean(), + }, + }); + return { __legacy: { config: this.initContext.config, From fb1ff02ed33ca423970eb62ad4746df8f8544366 Mon Sep 17 00:00:00 2001 From: Wylie Conlon Date: Fri, 17 Apr 2020 12:07:51 -0400 Subject: [PATCH 28/59] Fix task manager cancel warning (#63756) Co-authored-by: Elastic Machine --- x-pack/plugins/apm/server/lib/apm_telemetry/index.ts | 3 ++- x-pack/plugins/lens/server/usage/task.ts | 1 + x-pack/plugins/oss_telemetry/server/lib/tasks/index.ts | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/apm/server/lib/apm_telemetry/index.ts b/x-pack/plugins/apm/server/lib/apm_telemetry/index.ts index a78b2b93a250d1..3eb61bb1307258 100644 --- a/x-pack/plugins/apm/server/lib/apm_telemetry/index.ts +++ b/x-pack/plugins/apm/server/lib/apm_telemetry/index.ts @@ -87,7 +87,8 @@ export async function createApmTelemetry({ return { run: async () => { await collectAndStore(); - } + }, + cancel: async () => {} }; } } diff --git a/x-pack/plugins/lens/server/usage/task.ts b/x-pack/plugins/lens/server/usage/task.ts index 469457f973b62b..e1a0bf20f7b484 100644 --- a/x-pack/plugins/lens/server/usage/task.ts +++ b/x-pack/plugins/lens/server/usage/task.ts @@ -210,6 +210,7 @@ export function telemetryTaskRunner( }) .catch(errMsg => logger.warn(`Error executing lens telemetry task: ${errMsg}`)); }, + async cancel() {}, }; }; } diff --git a/x-pack/plugins/oss_telemetry/server/lib/tasks/index.ts b/x-pack/plugins/oss_telemetry/server/lib/tasks/index.ts index 9342c2574beddb..415aeb2791d9eb 100644 --- a/x-pack/plugins/oss_telemetry/server/lib/tasks/index.ts +++ b/x-pack/plugins/oss_telemetry/server/lib/tasks/index.ts @@ -41,6 +41,7 @@ export function registerTasks({ createTaskRunner({ taskInstance }: { taskInstance: TaskInstance }) { return { run: visualizationsTaskRunner(taskInstance, config, esClientPromise), + cancel: async () => {}, }; }, }, From 199271608687936b75651d3f341739278ccb335d Mon Sep 17 00:00:00 2001 From: Robert Oskamp Date: Fri, 17 Apr 2020 18:10:46 +0200 Subject: [PATCH 29/59] [ML] Functional tests - refactor test resources (#63724) This PR changes the way how test resources like indices and saved objects are used in ML and Transform functional tests. No actual test logic is changed. --- .../apis/ml/bucket_span_estimator.ts | 15 +- .../apis/ml/calculate_model_memory_limit.ts | 15 +- .../apis/ml/categorization_field_examples.ts | 9 +- .../api_integration/apis/ml/get_module.ts | 4 + x-pack/test/api_integration/apis/ml/index.ts | 9 + .../apis/ml/recognize_module.ts | 13 +- .../api_integration/apis/ml/setup_module.ts | 25 +- x-pack/test/api_integration/services/ml.ts | 3 + .../anomaly_detection/advanced_job.ts | 22 +- .../anomaly_detection/anomaly_explorer.ts | 11 +- .../anomaly_detection/categorization_job.ts | 20 +- .../anomaly_detection/date_nanos_job.ts | 12 +- .../anomaly_detection/multi_metric_job.ts | 16 +- .../anomaly_detection/population_job.ts | 16 +- .../anomaly_detection/saved_search_job.ts | 21 +- .../anomaly_detection/single_metric_job.ts | 16 +- .../anomaly_detection/single_metric_viewer.ts | 8 +- .../classification_creation.ts | 11 +- .../data_frame_analytics/cloning.ts | 21 +- .../outlier_detection_creation.ts | 9 +- .../regression_creation.ts | 9 +- .../data_visualizer/file_data_visualizer.ts | 2 + .../data_visualizer/index_data_visualizer.ts | 17 +- .../feature_controls/ml_security.ts | 4 - .../feature_controls/ml_spaces.ts | 9 - .../functional/apps/machine_learning/index.ts | 21 + .../functional/apps/machine_learning/pages.ts | 7 +- .../test/functional/apps/transform/cloning.ts | 9 +- .../apps/transform/creation_index_pattern.ts | 11 +- .../apps/transform/creation_saved_search.ts | 12 +- .../test/functional/apps/transform/index.ts | 11 + .../ml/bm_classification/data.json.gz | Bin 169485 -> 168183 bytes .../ml/bm_classification/mappings.json | 1454 +------- .../ml/categorization/data.json.gz | Bin 331971 -> 330822 bytes .../ml/categorization/mappings.json | 834 +---- .../es_archives/ml/ecommerce/data.json.gz | Bin 1007039 -> 1006034 bytes .../es_archives/ml/ecommerce/mappings.json | 1017 +----- .../ml/egs_regression/data.json.gz | Bin 279698 -> 279119 bytes .../ml/egs_regression/mappings.json | 1394 +------- .../ml/event_rate_nanos/data.json.gz | Bin 1656445 -> 1653388 bytes .../ml/event_rate_nanos/mappings.json | 1454 +------- .../es_archives/ml/farequote/data.json.gz | Bin 1359631 -> 1367398 bytes .../es_archives/ml/farequote/mappings.json | 1041 +----- .../es_archives/ml/ihp_outlier/data.json.gz | Bin 70805 -> 69988 bytes .../es_archives/ml/ihp_outlier/mappings.json | 1394 +------- .../es_archives/ml/sample_logs/data.json.gz | Bin 1643792 -> 1642819 bytes .../es_archives/ml/sample_logs/mappings.json | 2995 ----------------- .../services/machine_learning/index.ts | 1 + .../machine_learning/test_resources.ts | 219 ++ .../machine_learning/test_resources_data.ts | 249 ++ x-pack/test/functional/services/ml.ts | 3 + x-pack/test/functional/services/transform.ts | 4 + 52 files changed, 727 insertions(+), 11720 deletions(-) create mode 100644 x-pack/test/functional/services/machine_learning/test_resources.ts create mode 100644 x-pack/test/functional/services/machine_learning/test_resources_data.ts diff --git a/x-pack/test/api_integration/apis/ml/bucket_span_estimator.ts b/x-pack/test/api_integration/apis/ml/bucket_span_estimator.ts index 3f56fb927d1318..bc0dc3019d7c99 100644 --- a/x-pack/test/api_integration/apis/ml/bucket_span_estimator.ts +++ b/x-pack/test/api_integration/apis/ml/bucket_span_estimator.ts @@ -28,7 +28,7 @@ export default ({ getService }: FtrProviderContext) => { aggTypes: ['avg'], duration: { start: 1560297859000, end: 1562975136000 }, fields: ['taxless_total_price'], - index: 'ecommerce', + index: 'ft_ecommerce', query: { bool: { must: [{ match_all: {} }] } }, timeField: 'order_date', }, @@ -44,7 +44,7 @@ export default ({ getService }: FtrProviderContext) => { aggTypes: ['avg', 'sum'], duration: { start: 1560297859000, end: 1562975136000 }, fields: ['products.base_price', 'products.base_unit_price'], - index: 'ecommerce', + index: 'ft_ecommerce', query: { bool: { must: [{ match_all: {} }] } }, timeField: 'order_date', }, @@ -60,7 +60,7 @@ export default ({ getService }: FtrProviderContext) => { aggTypes: ['avg'], duration: { start: 1560297859000, end: 1562975136000 }, fields: ['taxless_total_price'], - index: 'ecommerce', + index: 'ft_ecommerce', query: { bool: { must: [{ match_all: {} }] } }, splitField: 'customer_first_name.keyword', timeField: 'order_date', @@ -78,7 +78,7 @@ export default ({ getService }: FtrProviderContext) => { duration: { start: 1560297859000, end: 1562975136000 }, fields: ['taxless_total_price'], filters: [], - index: 'ecommerce', + index: 'ft_ecommerce', query: { bool: { must: [{ match_all: {} }] } }, timeField: 'order_date', }, @@ -91,11 +91,8 @@ export default ({ getService }: FtrProviderContext) => { describe('bucket span estimator', function() { before(async () => { - await esArchiver.load('ml/ecommerce'); - }); - - after(async () => { - await esArchiver.unload('ml/ecommerce'); + await esArchiver.loadIfNeeded('ml/ecommerce'); + await ml.testResources.setKibanaTimeZoneToUTC(); }); describe('with default settings', function() { diff --git a/x-pack/test/api_integration/apis/ml/calculate_model_memory_limit.ts b/x-pack/test/api_integration/apis/ml/calculate_model_memory_limit.ts index 975a10c2aed2a1..59e3dfcca00f9c 100644 --- a/x-pack/test/api_integration/apis/ml/calculate_model_memory_limit.ts +++ b/x-pack/test/api_integration/apis/ml/calculate_model_memory_limit.ts @@ -22,7 +22,7 @@ export default ({ getService }: FtrProviderContext) => { testTitleSuffix: 'when no partition field is provided with regular function', user: USER.ML_POWERUSER, requestBody: { - indexPattern: 'ecommerce', + indexPattern: 'ft_ecommerce', analysisConfig: { bucket_span: '15m', detectors: [ @@ -51,7 +51,7 @@ export default ({ getService }: FtrProviderContext) => { testTitleSuffix: 'with 1 metric and 1 influencer same as split field', user: USER.ML_POWERUSER, requestBody: { - indexPattern: 'ecommerce', + indexPattern: 'ft_ecommerce', analysisConfig: { bucket_span: '15m', detectors: [ @@ -77,7 +77,7 @@ export default ({ getService }: FtrProviderContext) => { testTitleSuffix: 'with 3 influencers, split by city', user: USER.ML_POWERUSER, requestBody: { - indexPattern: 'ecommerce', + indexPattern: 'ft_ecommerce', analysisConfig: { bucket_span: '15m', detectors: [ @@ -104,7 +104,7 @@ export default ({ getService }: FtrProviderContext) => { '2 detectors split by city and manufacturer, 4 influencers, filtering by country code', user: USER.ML_POWERUSER, requestBody: { - indexPattern: 'ecommerce', + indexPattern: 'ft_ecommerce', analysisConfig: { bucket_span: '2d', detectors: [ @@ -148,11 +148,8 @@ export default ({ getService }: FtrProviderContext) => { describe('calculate model memory limit', function() { before(async () => { - await esArchiver.load('ml/ecommerce'); - }); - - after(async () => { - await esArchiver.unload('ml/ecommerce'); + await esArchiver.loadIfNeeded('ml/ecommerce'); + await ml.testResources.setKibanaTimeZoneToUTC(); }); for (const testData of testDataList) { diff --git a/x-pack/test/api_integration/apis/ml/categorization_field_examples.ts b/x-pack/test/api_integration/apis/ml/categorization_field_examples.ts index b8ee2e7f6562cb..df0153f9659421 100644 --- a/x-pack/test/api_integration/apis/ml/categorization_field_examples.ts +++ b/x-pack/test/api_integration/apis/ml/categorization_field_examples.ts @@ -66,7 +66,7 @@ const analyzer = { ], }; const defaultRequestBody = { - indexPatternTitle: 'categorization_functional_test', + indexPatternTitle: 'ft_categorization', query: { bool: { must: [{ match_all: {} }] } }, size: 5, timeField: '@timestamp', @@ -289,11 +289,8 @@ export default ({ getService }: FtrProviderContext) => { describe('Categorization example endpoint - ', function() { before(async () => { - await esArchiver.load('ml/categorization'); - }); - - after(async () => { - await esArchiver.unload('ml/categorization'); + await esArchiver.loadIfNeeded('ml/categorization'); + await ml.testResources.setKibanaTimeZoneToUTC(); }); for (const testData of testDataList) { diff --git a/x-pack/test/api_integration/apis/ml/get_module.ts b/x-pack/test/api_integration/apis/ml/get_module.ts index 6dcd9594fc9aac..a50d3c0abe4300 100644 --- a/x-pack/test/api_integration/apis/ml/get_module.ts +++ b/x-pack/test/api_integration/apis/ml/get_module.ts @@ -50,6 +50,10 @@ export default ({ getService }: FtrProviderContext) => { } describe('get_module', function() { + before(async () => { + await ml.testResources.setKibanaTimeZoneToUTC(); + }); + it('lists all modules', async () => { const rspBody = await executeGetModuleRequest('', USER.ML_POWERUSER, 200); expect(rspBody).to.be.an(Array); diff --git a/x-pack/test/api_integration/apis/ml/index.ts b/x-pack/test/api_integration/apis/ml/index.ts index 4e21faa610bfe2..f012883c46ca3a 100644 --- a/x-pack/test/api_integration/apis/ml/index.ts +++ b/x-pack/test/api_integration/apis/ml/index.ts @@ -7,6 +7,7 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function({ getService, loadTestFile }: FtrProviderContext) { + const esArchiver = getService('esArchiver'); const ml = getService('ml'); describe('Machine Learning', function() { @@ -20,6 +21,14 @@ export default function({ getService, loadTestFile }: FtrProviderContext) { after(async () => { await ml.securityCommon.cleanMlUsers(); await ml.securityCommon.cleanMlRoles(); + + await ml.testResources.deleteIndexPattern('kibana_sample_data_logs'); + + await esArchiver.unload('ml/ecommerce'); + await esArchiver.unload('ml/categorization'); + await esArchiver.unload('ml/sample_logs'); + + await ml.testResources.resetKibanaTimeZone(); }); loadTestFile(require.resolve('./bucket_span_estimator')); diff --git a/x-pack/test/api_integration/apis/ml/recognize_module.ts b/x-pack/test/api_integration/apis/ml/recognize_module.ts index 2110bded7394cc..8e360579c1459f 100644 --- a/x-pack/test/api_integration/apis/ml/recognize_module.ts +++ b/x-pack/test/api_integration/apis/ml/recognize_module.ts @@ -32,7 +32,6 @@ export default ({ getService }: FtrProviderContext) => { }, { testTitleSuffix: 'for non existent index pattern', - sourceDataArchive: 'empty_kibana', indexPattern: 'non-existent-index-pattern', user: USER.ML_POWERUSER, expected: { @@ -53,14 +52,16 @@ export default ({ getService }: FtrProviderContext) => { } describe('module recognizer', function() { + before(async () => { + await ml.testResources.setKibanaTimeZoneToUTC(); + }); + for (const testData of testDataList) { describe('lists matching modules', function() { before(async () => { - await esArchiver.load(testData.sourceDataArchive); - }); - - after(async () => { - await esArchiver.unload(testData.sourceDataArchive); + if (testData.hasOwnProperty('sourceDataArchive')) { + await esArchiver.loadIfNeeded(testData.sourceDataArchive!); + } }); it(testData.testTitleSuffix, async () => { diff --git a/x-pack/test/api_integration/apis/ml/setup_module.ts b/x-pack/test/api_integration/apis/ml/setup_module.ts index 71f3910cd4e937..e603782b25717a 100644 --- a/x-pack/test/api_integration/apis/ml/setup_module.ts +++ b/x-pack/test/api_integration/apis/ml/setup_module.ts @@ -25,6 +25,7 @@ export default ({ getService }: FtrProviderContext) => { { testTitleSuffix: 'for sample logs dataset with prefix and startDatafeed false', sourceDataArchive: 'ml/sample_logs', + indexPattern: { name: 'kibana_sample_data_logs', timeField: '@timestamp' }, module: 'sample_data_weblogs', user: USER.ML_POWERUSER, requestBody: { @@ -58,7 +59,6 @@ export default ({ getService }: FtrProviderContext) => { const testDataListNegative = [ { testTitleSuffix: 'for non existent index pattern', - sourceDataArchive: 'empty_kibana', module: 'sample_data_weblogs', user: USER.ML_POWERUSER, requestBody: { @@ -75,6 +75,7 @@ export default ({ getService }: FtrProviderContext) => { { testTitleSuffix: 'for unauthorized user', sourceDataArchive: 'ml/sample_logs', + indexPattern: { name: 'kibana_sample_data_logs', timeField: '@timestamp' }, module: 'sample_data_weblogs', user: USER.ML_UNAUTHORIZED, requestBody: { @@ -118,14 +119,21 @@ export default ({ getService }: FtrProviderContext) => { } describe('module setup', function() { + before(async () => { + await ml.testResources.setKibanaTimeZoneToUTC(); + }); + for (const testData of testDataListPositive) { describe('sets up module data', function() { before(async () => { - await esArchiver.load(testData.sourceDataArchive); + await esArchiver.loadIfNeeded(testData.sourceDataArchive); + await ml.testResources.createIndexPatternIfNeeded( + testData.indexPattern.name, + testData.indexPattern.timeField + ); }); after(async () => { - await esArchiver.unload(testData.sourceDataArchive); await ml.api.cleanMlIndices(); }); @@ -199,11 +207,18 @@ export default ({ getService }: FtrProviderContext) => { for (const testData of testDataListNegative) { describe('rejects request', function() { before(async () => { - await esArchiver.load(testData.sourceDataArchive); + if (testData.hasOwnProperty('sourceDataArchive')) { + await esArchiver.loadIfNeeded(testData.sourceDataArchive!); + } + if (testData.hasOwnProperty('indexPattern')) { + await ml.testResources.createIndexPatternIfNeeded( + testData.indexPattern!.name as string, + testData.indexPattern!.timeField as string + ); + } }); after(async () => { - await esArchiver.unload(testData.sourceDataArchive); await ml.api.cleanMlIndices(); }); diff --git a/x-pack/test/api_integration/services/ml.ts b/x-pack/test/api_integration/services/ml.ts index 841b200b870801..c295af7dc73ab4 100644 --- a/x-pack/test/api_integration/services/ml.ts +++ b/x-pack/test/api_integration/services/ml.ts @@ -9,14 +9,17 @@ import { FtrProviderContext } from '../../functional/ftr_provider_context'; import { MachineLearningAPIProvider, MachineLearningSecurityCommonProvider, + MachineLearningTestResourcesProvider, } from '../../functional/services/machine_learning'; export function MachineLearningProvider(context: FtrProviderContext) { const api = MachineLearningAPIProvider(context); const securityCommon = MachineLearningSecurityCommonProvider(context); + const testResources = MachineLearningTestResourcesProvider(context); return { api, securityCommon, + testResources, }; } diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/advanced_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/advanced_job.ts index 53b1cb83c524ba..a5faf325aa6cb9 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/advanced_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/advanced_job.ts @@ -110,13 +110,13 @@ export default function({ getService }: FtrProviderContext) { const testDataList = [ { suiteTitle: 'with multiple metric detectors and custom datafeed settings', - jobSource: 'ecommerce', + jobSource: 'ft_ecommerce', jobId: `ec_advanced_1_${Date.now()}`, get jobIdClone(): string { return `${this.jobId}_clone`; }, jobDescription: - 'Create advanced job from ecommerce dataset with multiple metric detectors and custom datafeed settings', + 'Create advanced job from ft_ecommerce dataset with multiple metric detectors and custom datafeed settings', jobGroups: ['automated', 'ecommerce', 'advanced'], get jobGroupsClone(): string[] { return [...this.jobGroups, 'clone']; @@ -207,13 +207,13 @@ export default function({ getService }: FtrProviderContext) { }, { suiteTitle: 'with categorization detector and default datafeed settings', - jobSource: 'ecommerce', + jobSource: 'ft_ecommerce', jobId: `ec_advanced_2_${Date.now()}`, get jobIdClone(): string { return `${this.jobId}_clone`; }, jobDescription: - 'Create advanced job from ecommerce dataset with a categorization detector and default datafeed settings', + 'Create advanced job from ft_ecommerce dataset with a categorization detector and default datafeed settings', jobGroups: ['automated', 'ecommerce', 'advanced'], get jobGroupsClone(): string[] { return [...this.jobGroups, 'clone']; @@ -274,16 +274,20 @@ export default function({ getService }: FtrProviderContext) { }, ]; + const calendarId = `wizard-test-calendar_${Date.now()}`; + describe('advanced job', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/ecommerce'); - await ml.api.createCalendar('wizard-test-calendar'); + await esArchiver.loadIfNeeded('ml/ecommerce'); + await ml.testResources.createIndexPatternIfNeeded('ft_ecommerce', 'order_date'); + await ml.testResources.setKibanaTimeZoneToUTC(); + + await ml.api.createCalendar(calendarId); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/ecommerce'); await ml.api.cleanMlIndices(); }); @@ -475,7 +479,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation assigns calendars', async () => { - await ml.jobWizardCommon.addCalendar('wizard-test-calendar'); + await ml.jobWizardCommon.addCalendar(calendarId); }); it('job creation displays the model plot switch', async () => { @@ -734,7 +738,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job cloning persists assigned calendars', async () => { - await ml.jobWizardCommon.assertCalendarsSelection(['wizard-test-calendar']); + await ml.jobWizardCommon.assertCalendarsSelection([calendarId]); }); it('job cloning pre-fills the model plot switch', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/anomaly_explorer.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/anomaly_explorer.ts index 83e9c01a463197..8827559a5f4709 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/anomaly_explorer.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/anomaly_explorer.ts @@ -29,7 +29,7 @@ const JOB_CONFIG: Job = { const DATAFEED_CONFIG: Datafeed = { datafeed_id: 'datafeed-fq_multi_1_se', - indices: ['farequote'], + indices: ['ft_farequote'], job_id: 'fq_multi_1_ae', query: { bool: { must: [{ match_all: {} }] } }, }; @@ -59,12 +59,11 @@ export default function({ getService }: FtrProviderContext) { describe('anomaly explorer', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/farequote'); - await ml.securityUI.loginAsMlPowerUser(); - }); + await esArchiver.loadIfNeeded('ml/farequote'); + await ml.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); - after(async () => { - await esArchiver.unload('ml/farequote'); + await ml.securityUI.loginAsMlPowerUser(); }); for (const testData of testDataList) { diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/categorization_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/categorization_job.ts index 6408c6de1f9280..9b5ae171d41159 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/categorization_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/categorization_job.ts @@ -16,7 +16,7 @@ export default function({ getService }: FtrProviderContext) { const jobId = `categorization_${Date.now()}`; const jobIdClone = `${jobId}_clone`; const jobDescription = - 'Create categorization job based on the categorization_functional_test dataset with a count rare'; + 'Create categorization job based on the ft_categorization dataset with a count rare'; const jobGroups = ['automated', 'categorization']; const jobGroupsClone = [...jobGroups, 'clone']; const detectorTypeIdentifier = 'Rare'; @@ -74,16 +74,20 @@ export default function({ getService }: FtrProviderContext) { }; } + const calendarId = `wizard-test-calendar_${Date.now()}`; + describe('categorization', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/categorization'); - await ml.api.createCalendar('wizard-test-calendar'); + await esArchiver.loadIfNeeded('ml/categorization'); + await ml.testResources.createIndexPatternIfNeeded('ft_categorization', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + + await ml.api.createCalendar(calendarId); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/categorization'); await ml.api.cleanMlIndices(); }); @@ -97,9 +101,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation loads the job type selection page', async () => { - await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob( - 'categorization_functional_test' - ); + await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('ft_categorization'); }); it('job creation loads the categorization job wizard page', async () => { @@ -178,7 +180,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation assigns calendars', async () => { - await ml.jobWizardCommon.addCalendar('wizard-test-calendar'); + await ml.jobWizardCommon.addCalendar(calendarId); }); it('job creation opens the advanced section', async () => { @@ -310,7 +312,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job cloning persists assigned calendars', async () => { - await ml.jobWizardCommon.assertCalendarsSelection(['wizard-test-calendar']); + await ml.jobWizardCommon.assertCalendarsSelection([calendarId]); }); it('job cloning opens the advanced section', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/date_nanos_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/date_nanos_job.ts index 2a9824f46778da..570deee01c6843 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/date_nanos_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/date_nanos_job.ts @@ -104,7 +104,7 @@ export default function({ getService }: FtrProviderContext) { const testDataList = [ { suiteTitle: 'with count detector and model plot disabled', - jobSource: 'event_rate_gen_trend_nanos', + jobSource: 'ft_event_rate_gen_trend_nanos', jobId: `event_rate_nanos_count_1_${Date.now()}`, jobDescription: 'Create advanced job based on the event rate dataset with a date_nanos time field, 30m bucketspan and count', @@ -168,12 +168,18 @@ export default function({ getService }: FtrProviderContext) { describe('job on data set with date_nanos time field', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/event_rate_nanos'); + await esArchiver.loadIfNeeded('ml/event_rate_nanos'); + await ml.testResources.createIndexPatternIfNeeded( + 'ft_event_rate_gen_trend_nanos', + '@timestamp' + ); + await ml.testResources.setKibanaTimeZoneToUTC(); + + await esArchiver.loadIfNeeded('ml/event_rate_nanos'); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/event_rate_nanos'); await ml.api.cleanMlIndices(); }); diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/multi_metric_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/multi_metric_job.ts index 08175b79462597..4739f987541d6b 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/multi_metric_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/multi_metric_job.ts @@ -71,16 +71,20 @@ export default function({ getService }: FtrProviderContext) { }; } + const calendarId = `wizard-test-calendar_${Date.now()}`; + describe('multi metric', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/farequote'); - await ml.api.createCalendar('wizard-test-calendar'); + await esArchiver.loadIfNeeded('ml/farequote'); + await ml.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + + await ml.api.createCalendar(calendarId); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/farequote'); await ml.api.cleanMlIndices(); }); @@ -94,7 +98,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation loads the job type selection page', async () => { - await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('farequote'); + await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('ft_farequote'); }); it('job creation loads the multi metric job wizard page', async () => { @@ -181,7 +185,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation assigns calendars', async () => { - await ml.jobWizardCommon.addCalendar('wizard-test-calendar'); + await ml.jobWizardCommon.addCalendar(calendarId); }); it('job creation opens the advanced section', async () => { @@ -329,7 +333,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job cloning persists assigned calendars', async () => { - await ml.jobWizardCommon.assertCalendarsSelection(['wizard-test-calendar']); + await ml.jobWizardCommon.assertCalendarsSelection([calendarId]); }); it('job cloning opens the advanced section', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/population_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/population_job.ts index 512d13307ea052..0279c70bb73a92 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/population_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/population_job.ts @@ -85,16 +85,20 @@ export default function({ getService }: FtrProviderContext) { }; } + const calendarId = `wizard-test-calendar_${Date.now()}`; + describe('population', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/ecommerce'); - await ml.api.createCalendar('wizard-test-calendar'); + await esArchiver.loadIfNeeded('ml/ecommerce'); + await ml.testResources.createIndexPatternIfNeeded('ft_ecommerce', 'order_date'); + await ml.testResources.setKibanaTimeZoneToUTC(); + + await ml.api.createCalendar(calendarId); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/farequote'); await ml.api.cleanMlIndices(); }); @@ -108,7 +112,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation loads the job type selection page', async () => { - await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('ecommerce'); + await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('ft_ecommerce'); }); it('job creation loads the population job wizard page', async () => { @@ -208,7 +212,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation assigns calendars', async () => { - await ml.jobWizardCommon.addCalendar('wizard-test-calendar'); + await ml.jobWizardCommon.addCalendar(calendarId); }); it('job creation opens the advanced section', async () => { @@ -367,7 +371,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job cloning persists assigned calendars', async () => { - await ml.jobWizardCommon.assertCalendarsSelection(['wizard-test-calendar']); + await ml.jobWizardCommon.assertCalendarsSelection([calendarId]); }); it('job cloning opens the advanced section', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/saved_search_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/saved_search_job.ts index a13cf3d61128e7..a5652d76358eb4 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/saved_search_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/saved_search_job.ts @@ -15,7 +15,7 @@ export default function({ getService }: FtrProviderContext) { const testDataList = [ { suiteTitle: 'with filter', - jobSource: 'farequote_filter', + jobSource: 'ft_farequote_filter', jobId: `fq_saved_search_1_${Date.now()}`, jobDescription: 'Create multi metric job based on a saved search with filter', jobGroups: ['automated', 'farequote', 'multi-metric', 'saved-search'], @@ -66,7 +66,7 @@ export default function({ getService }: FtrProviderContext) { }, { suiteTitle: 'with lucene query', - jobSource: 'farequote_lucene', + jobSource: 'ft_farequote_lucene', jobId: `fq_saved_search_2_${Date.now()}`, jobDescription: 'Create multi metric job based on a saved search with lucene query', jobGroups: ['automated', 'farequote', 'multi-metric', 'saved-search'], @@ -117,7 +117,7 @@ export default function({ getService }: FtrProviderContext) { }, { suiteTitle: 'with kuery query', - jobSource: 'farequote_kuery', + jobSource: 'ft_farequote_kuery', jobId: `fq_saved_search_3_${Date.now()}`, jobDescription: 'Create multi metric job based on a saved search with kuery query', jobGroups: ['automated', 'farequote', 'multi-metric', 'saved-search'], @@ -168,7 +168,7 @@ export default function({ getService }: FtrProviderContext) { }, { suiteTitle: 'with filter and lucene query', - jobSource: 'farequote_filter_and_lucene', + jobSource: 'ft_farequote_filter_and_lucene', jobId: `fq_saved_search_4_${Date.now()}`, jobDescription: 'Create multi metric job based on a saved search with filter and lucene query', @@ -220,7 +220,7 @@ export default function({ getService }: FtrProviderContext) { }, { suiteTitle: 'with filter and kuery query', - jobSource: 'farequote_filter_and_kuery', + jobSource: 'ft_farequote_filter_and_kuery', jobId: `fq_saved_search_5_${Date.now()}`, jobDescription: 'Create multi metric job based on a saved search with filter and kuery query', jobGroups: ['automated', 'farequote', 'multi-metric', 'saved-search'], @@ -274,12 +274,19 @@ export default function({ getService }: FtrProviderContext) { describe('saved search', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/farequote'); + await esArchiver.loadIfNeeded('ml/farequote'); + await ml.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await ml.testResources.createSavedSearchFarequoteFilterIfNeeded(); + await ml.testResources.createSavedSearchFarequoteLuceneIfNeeded(); + await ml.testResources.createSavedSearchFarequoteKueryIfNeeded(); + await ml.testResources.createSavedSearchFarequoteFilterAndLuceneIfNeeded(); + await ml.testResources.createSavedSearchFarequoteFilterAndKueryIfNeeded(); + await ml.testResources.setKibanaTimeZoneToUTC(); + await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/farequote'); await ml.api.cleanMlIndices(); }); diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_job.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_job.ts index 4e6d480c12d82a..43053decb39247 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_job.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_job.ts @@ -70,16 +70,20 @@ export default function({ getService }: FtrProviderContext) { }; } + const calendarId = `wizard-test-calendar_${Date.now()}`; + describe('single metric', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/farequote'); - await ml.api.createCalendar('wizard-test-calendar'); + await esArchiver.loadIfNeeded('ml/farequote'); + await ml.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + + await ml.api.createCalendar(calendarId); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/farequote'); await ml.api.cleanMlIndices(); }); @@ -93,7 +97,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation loads the job type selection page', async () => { - await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('farequote'); + await ml.jobSourceSelection.selectSourceForAnomalyDetectionJob('ft_farequote'); }); it('job creation loads the single metric job wizard page', async () => { @@ -162,7 +166,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job creation assigns calendars', async () => { - await ml.jobWizardCommon.addCalendar('wizard-test-calendar'); + await ml.jobWizardCommon.addCalendar(calendarId); }); it('job creation opens the advanced section', async () => { @@ -294,7 +298,7 @@ export default function({ getService }: FtrProviderContext) { }); it('job cloning persists assigned calendars', async () => { - await ml.jobWizardCommon.assertCalendarsSelection(['wizard-test-calendar']); + await ml.jobWizardCommon.assertCalendarsSelection([calendarId]); }); it('job cloning opens the advanced section', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_viewer.ts b/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_viewer.ts index 62b801daa3479b..cc7c9828ce87d7 100644 --- a/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_viewer.ts +++ b/x-pack/test/functional/apps/machine_learning/anomaly_detection/single_metric_viewer.ts @@ -29,7 +29,7 @@ const JOB_CONFIG: Job = { const DATAFEED_CONFIG: Datafeed = { datafeed_id: 'datafeed-fq_single_1_smv', - indices: ['farequote'], + indices: ['ft_farequote'], job_id: 'fq_single_1_smv', query: { bool: { must: [{ match_all: {} }] } }, }; @@ -42,13 +42,15 @@ export default function({ getService }: FtrProviderContext) { describe('single metric viewer', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/farequote'); + await esArchiver.loadIfNeeded('ml/farequote'); + await ml.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + await ml.api.createAndRunAnomalyDetectionLookbackJob(JOB_CONFIG, DATAFEED_CONFIG); await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { - await esArchiver.unload('ml/farequote'); await ml.api.cleanMlIndices(); }); diff --git a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/classification_creation.ts b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/classification_creation.ts index a7c92cac2072f8..8a6741bd88daac 100644 --- a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/classification_creation.ts +++ b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/classification_creation.ts @@ -14,13 +14,15 @@ export default function({ getService }: FtrProviderContext) { describe('classification creation', function() { this.tags(['smoke']); before(async () => { - await esArchiver.load('ml/bm_classification'); + await esArchiver.loadIfNeeded('ml/bm_classification'); + await ml.testResources.createIndexPatternIfNeeded('ft_bank_marketing', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { await ml.api.cleanMlIndices(); - await esArchiver.unload('ml/bm_classification'); }); const testDataList = [ @@ -29,8 +31,8 @@ export default function({ getService }: FtrProviderContext) { jobType: 'classification', jobId: `bm_1_${Date.now()}`, jobDescription: - "Classification job based on 'bank-marketing' dataset with dependentVariable 'y' and trainingPercent '20'", - source: 'bank-marketing*', + "Classification job based on 'ft_bank_marketing' dataset with dependentVariable 'y' and trainingPercent '20'", + source: 'ft_bank_marketing', get destinationIndex(): string { return `user-${this.jobId}`; }, @@ -51,6 +53,7 @@ export default function({ getService }: FtrProviderContext) { describe(`${testData.suiteTitle}`, function() { after(async () => { await ml.api.deleteIndices(testData.destinationIndex); + await ml.testResources.deleteIndexPattern(testData.destinationIndex); }); it('loads the data frame analytics page', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/cloning.ts b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/cloning.ts index caf382b532273c..d98d8feaaf4fed 100644 --- a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/cloning.ts +++ b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/cloning.ts @@ -19,6 +19,7 @@ export default function({ getService }: FtrProviderContext) { const testDataList: Array<{ suiteTitle: string; archive: string; + indexPattern: { name: string; timeField: string }; job: DeepPartial; }> = (() => { const timestamp = Date.now(); @@ -27,12 +28,13 @@ export default function({ getService }: FtrProviderContext) { { suiteTitle: 'classification job supported by the form', archive: 'ml/bm_classification', + indexPattern: { name: 'ft_bank_marketing', timeField: '@timestamp' }, job: { id: `bm_1_${timestamp}`, description: - "Classification job based on 'bank-marketing' dataset with dependentVariable 'y' and trainingPercent '20'", + "Classification job based on 'ft_bank_marketing' dataset with dependentVariable 'y' and trainingPercent '20'", source: { - index: ['bank-marketing*'], + index: ['ft_bank_marketing'], query: { match_all: {}, }, @@ -60,11 +62,12 @@ export default function({ getService }: FtrProviderContext) { { suiteTitle: 'outlier detection job supported by the form', archive: 'ml/ihp_outlier', + indexPattern: { name: 'ft_ihp_outlier', timeField: '@timestamp' }, job: { id: `ihp_1_${timestamp}`, description: 'This is the job description', source: { - index: ['ihp_outlier'], + index: ['ft_ihp_outlier'], query: { match_all: {}, }, @@ -88,11 +91,12 @@ export default function({ getService }: FtrProviderContext) { { suiteTitle: 'regression job supported by the form', archive: 'ml/egs_regression', + indexPattern: { name: 'ft_egs_regression', timeField: '@timestamp' }, job: { id: `egs_1_${timestamp}`, description: 'This is the job description', source: { - index: ['egs_regression'], + index: ['ft_egs_regression'], query: { match_all: {}, }, @@ -120,6 +124,7 @@ export default function({ getService }: FtrProviderContext) { })(); before(async () => { + await ml.testResources.setKibanaTimeZoneToUTC(); await ml.securityUI.loginAsMlPowerUser(); }); @@ -133,7 +138,11 @@ export default function({ getService }: FtrProviderContext) { const cloneDestIndex = `${testData.job!.dest!.index}_clone`; before(async () => { - await esArchiver.load(testData.archive); + await esArchiver.loadIfNeeded(testData.archive); + await ml.testResources.createIndexPatternIfNeeded( + testData.indexPattern.name, + testData.indexPattern.timeField + ); await ml.api.createDataFrameAnalyticsJob(testData.job as DataFrameAnalyticsConfig); await ml.navigation.navigateToMl(); @@ -146,7 +155,7 @@ export default function({ getService }: FtrProviderContext) { after(async () => { await ml.api.deleteIndices(cloneDestIndex); await ml.api.deleteIndices(testData.job.dest!.index as string); - await esArchiver.unload(testData.archive); + await ml.testResources.deleteIndexPattern(testData.job.dest!.index as string); }); it('should open the flyout with a proper header', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/outlier_detection_creation.ts b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/outlier_detection_creation.ts index 5481977351d8b8..8dfe058cf6885e 100644 --- a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/outlier_detection_creation.ts +++ b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/outlier_detection_creation.ts @@ -14,13 +14,15 @@ export default function({ getService }: FtrProviderContext) { describe('outlier detection creation', function() { this.tags(['smoke']); before(async () => { - await esArchiver.load('ml/ihp_outlier'); + await esArchiver.loadIfNeeded('ml/ihp_outlier'); + await ml.testResources.createIndexPatternIfNeeded('ft_ihp_outlier', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { await ml.api.cleanMlIndices(); - await esArchiver.unload('ml/ihp_outlier'); }); const testDataList = [ @@ -29,7 +31,7 @@ export default function({ getService }: FtrProviderContext) { jobType: 'outlier_detection', jobId: `ihp_1_${Date.now()}`, jobDescription: 'This is the job description', - source: 'ihp_outlier', + source: 'ft_ihp_outlier', get destinationIndex(): string { return `user-${this.jobId}`; }, @@ -49,6 +51,7 @@ export default function({ getService }: FtrProviderContext) { describe(`${testData.suiteTitle}`, function() { after(async () => { await ml.api.deleteIndices(testData.destinationIndex); + await ml.testResources.deleteIndexPattern(testData.destinationIndex); }); it('loads the data frame analytics page', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/regression_creation.ts b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/regression_creation.ts index aa1a133c81187a..271f3e2018dad8 100644 --- a/x-pack/test/functional/apps/machine_learning/data_frame_analytics/regression_creation.ts +++ b/x-pack/test/functional/apps/machine_learning/data_frame_analytics/regression_creation.ts @@ -14,13 +14,15 @@ export default function({ getService }: FtrProviderContext) { describe('regression creation', function() { this.tags(['smoke']); before(async () => { - await esArchiver.load('ml/egs_regression'); + await esArchiver.loadIfNeeded('ml/egs_regression'); + await ml.testResources.createIndexPatternIfNeeded('ft_egs_regression', '@timestamp'); + await ml.testResources.setKibanaTimeZoneToUTC(); + await ml.securityUI.loginAsMlPowerUser(); }); after(async () => { await ml.api.cleanMlIndices(); - await esArchiver.unload('ml/egs_regression'); }); const testDataList = [ @@ -29,7 +31,7 @@ export default function({ getService }: FtrProviderContext) { jobType: 'regression', jobId: `egs_1_${Date.now()}`, jobDescription: 'This is the job description', - source: 'egs_regression', + source: 'ft_egs_regression', get destinationIndex(): string { return `user-${this.jobId}`; }, @@ -51,6 +53,7 @@ export default function({ getService }: FtrProviderContext) { describe(`${testData.suiteTitle}`, function() { after(async () => { await ml.api.deleteIndices(testData.destinationIndex); + await ml.testResources.deleteIndexPattern(testData.destinationIndex); }); it('loads the data frame analytics page', async () => { diff --git a/x-pack/test/functional/apps/machine_learning/data_visualizer/file_data_visualizer.ts b/x-pack/test/functional/apps/machine_learning/data_visualizer/file_data_visualizer.ts index 94b28e5035edfe..ae958ad7f570fc 100644 --- a/x-pack/test/functional/apps/machine_learning/data_visualizer/file_data_visualizer.ts +++ b/x-pack/test/functional/apps/machine_learning/data_visualizer/file_data_visualizer.ts @@ -36,6 +36,8 @@ export default function({ getService }: FtrProviderContext) { describe('file based', function() { this.tags(['smoke', 'mlqa']); before(async () => { + await ml.testResources.setKibanaTimeZoneToUTC(); + await ml.securityUI.loginAsMlPowerUser(); await ml.navigation.navigateToMl(); }); diff --git a/x-pack/test/functional/apps/machine_learning/data_visualizer/index_data_visualizer.ts b/x-pack/test/functional/apps/machine_learning/data_visualizer/index_data_visualizer.ts index 1ee74368c72fa3..e71b57a4562e77 100644 --- a/x-pack/test/functional/apps/machine_learning/data_visualizer/index_data_visualizer.ts +++ b/x-pack/test/functional/apps/machine_learning/data_visualizer/index_data_visualizer.ts @@ -45,7 +45,7 @@ export default function({ getService }: FtrProviderContext) { const farequoteIndexPatternTestData: TestData = { suiteTitle: 'index pattern', - sourceIndexOrSavedSearch: 'farequote', + sourceIndexOrSavedSearch: 'ft_farequote', advancedJobWizardDatafeedQuery: `{ "bool": { "must": [ @@ -128,7 +128,7 @@ export default function({ getService }: FtrProviderContext) { const farequoteKQLSearchTestData: TestData = { suiteTitle: 'KQL saved search', - sourceIndexOrSavedSearch: 'farequote_kuery', + sourceIndexOrSavedSearch: 'ft_farequote_kuery', advancedJobWizardDatafeedQuery: `{ "bool": { "must": [ @@ -211,7 +211,7 @@ export default function({ getService }: FtrProviderContext) { const farequoteLuceneSearchTestData: TestData = { suiteTitle: 'lucene saved search', - sourceIndexOrSavedSearch: 'farequote_lucene', + sourceIndexOrSavedSearch: 'ft_farequote_lucene', advancedJobWizardDatafeedQuery: `{ "bool": { "must": [ @@ -378,12 +378,13 @@ export default function({ getService }: FtrProviderContext) { describe('index based', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('ml/farequote'); - await ml.securityUI.loginAsMlPowerUser(); - }); + await esArchiver.loadIfNeeded('ml/farequote'); + await ml.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await ml.testResources.createSavedSearchFarequoteLuceneIfNeeded(); + await ml.testResources.createSavedSearchFarequoteKueryIfNeeded(); + await ml.testResources.setKibanaTimeZoneToUTC(); - after(async () => { - await esArchiver.unload('ml/farequote'); + await ml.securityUI.loginAsMlPowerUser(); }); // TODO - add tests for diff --git a/x-pack/test/functional/apps/machine_learning/feature_controls/ml_security.ts b/x-pack/test/functional/apps/machine_learning/feature_controls/ml_security.ts index f3731f46a5bcee..ec4b708152a4c1 100644 --- a/x-pack/test/functional/apps/machine_learning/feature_controls/ml_security.ts +++ b/x-pack/test/functional/apps/machine_learning/feature_controls/ml_security.ts @@ -7,15 +7,12 @@ import expect from '@kbn/expect'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function({ getPageObjects, getService }: FtrProviderContext) { - const esArchiver = getService('esArchiver'); const security = getService('security'); const appsMenu = getService('appsMenu'); const PageObjects = getPageObjects(['common', 'security']); describe('security', function() { before(async () => { - await esArchiver.load('empty_kibana'); - await security.role.create('global_all_role', { elasticsearch: { indices: [{ names: ['logstash-*'], privileges: ['read', 'view_index_metadata'] }], @@ -33,7 +30,6 @@ export default function({ getPageObjects, getService }: FtrProviderContext) { }); after(async () => { - await esArchiver.unload('empty_kibana'); await security.role.delete('global_all_role'); // logout, so the other tests don't accidentally run as the custom users we're testing below diff --git a/x-pack/test/functional/apps/machine_learning/feature_controls/ml_spaces.ts b/x-pack/test/functional/apps/machine_learning/feature_controls/ml_spaces.ts index fc94688e98811b..828d7bcc0ae2f3 100644 --- a/x-pack/test/functional/apps/machine_learning/feature_controls/ml_spaces.ts +++ b/x-pack/test/functional/apps/machine_learning/feature_controls/ml_spaces.ts @@ -7,21 +7,12 @@ import expect from '@kbn/expect'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function({ getPageObjects, getService }: FtrProviderContext) { - const esArchiver = getService('esArchiver'); const spacesService = getService('spaces'); const PageObjects = getPageObjects(['common', 'dashboard', 'security', 'error']); const appsMenu = getService('appsMenu'); const testSubjects = getService('testSubjects'); describe('spaces', () => { - before(async () => { - await esArchiver.load('empty_kibana'); - }); - - after(async () => { - await esArchiver.unload('empty_kibana'); - }); - describe('space with no features disabled', () => { before(async () => { await spacesService.create({ diff --git a/x-pack/test/functional/apps/machine_learning/index.ts b/x-pack/test/functional/apps/machine_learning/index.ts index 47c699e3094916..3e1991120d2d27 100644 --- a/x-pack/test/functional/apps/machine_learning/index.ts +++ b/x-pack/test/functional/apps/machine_learning/index.ts @@ -6,6 +6,7 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function({ getService, loadTestFile }: FtrProviderContext) { + const esArchiver = getService('esArchiver'); const ml = getService('ml'); describe('machine learning', function() { @@ -19,6 +20,26 @@ export default function({ getService, loadTestFile }: FtrProviderContext) { after(async () => { await ml.securityCommon.cleanMlUsers(); await ml.securityCommon.cleanMlRoles(); + + await ml.testResources.deleteSavedSearches(); + + await ml.testResources.deleteIndexPattern('ft_farequote'); + await ml.testResources.deleteIndexPattern('ft_ecommerce'); + await ml.testResources.deleteIndexPattern('ft_categorization'); + await ml.testResources.deleteIndexPattern('ft_event_rate_gen_trend_nanos'); + await ml.testResources.deleteIndexPattern('ft_bank_marketing'); + await ml.testResources.deleteIndexPattern('ft_ihp_outlier'); + await ml.testResources.deleteIndexPattern('ft_egs_regression'); + + await esArchiver.unload('ml/farequote'); + await esArchiver.unload('ml/ecommerce'); + await esArchiver.unload('ml/categorization'); + await esArchiver.unload('ml/event_rate_nanos'); + await esArchiver.unload('ml/bm_classification'); + await esArchiver.unload('ml/ihp_outlier'); + await esArchiver.unload('ml/egs_regression'); + + await ml.testResources.resetKibanaTimeZone(); }); loadTestFile(require.resolve('./feature_controls')); diff --git a/x-pack/test/functional/apps/machine_learning/pages.ts b/x-pack/test/functional/apps/machine_learning/pages.ts index 78c6ec4f1b2fff..95930f18061fab 100644 --- a/x-pack/test/functional/apps/machine_learning/pages.ts +++ b/x-pack/test/functional/apps/machine_learning/pages.ts @@ -7,20 +7,15 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function({ getService }: FtrProviderContext) { - const esArchiver = getService('esArchiver'); const ml = getService('ml'); describe('page navigation', function() { this.tags(['smoke', 'mlqa']); before(async () => { - await esArchiver.load('empty_kibana'); + await ml.api.cleanMlIndices(); await ml.securityUI.loginAsMlPowerUser(); }); - after(async () => { - await esArchiver.unload('empty_kibana'); - }); - it('loads the home page', async () => { await ml.navigation.navigateToMl(); }); diff --git a/x-pack/test/functional/apps/transform/cloning.ts b/x-pack/test/functional/apps/transform/cloning.ts index 5f05fdb093d101..e6e12f60f0bcca 100644 --- a/x-pack/test/functional/apps/transform/cloning.ts +++ b/x-pack/test/functional/apps/transform/cloning.ts @@ -11,7 +11,7 @@ function getTransformConfig(): TransformPivotConfig { const date = Date.now(); return { id: `ec_2_${date}`, - source: { index: ['ecommerce'] }, + source: { index: ['ft_ecommerce'] }, pivot: { group_by: { category: { terms: { field: 'category.keyword' } } }, aggregations: { 'products.base_price.avg': { avg: { field: 'products.base_price' } } }, @@ -31,13 +31,16 @@ export default function({ getService }: FtrProviderContext) { const transformConfig = getTransformConfig(); before(async () => { - await esArchiver.load('ml/ecommerce'); + await esArchiver.loadIfNeeded('ml/ecommerce'); + await transform.testResources.createIndexPatternIfNeeded('ft_ecommerce', 'order_date'); await transform.api.createAndRunTransform(transformConfig); + await transform.testResources.setKibanaTimeZoneToUTC(); + await transform.securityUI.loginAsTransformPowerUser(); }); after(async () => { - await esArchiver.unload('ml/ecommerce'); + await transform.testResources.deleteIndexPattern(transformConfig.dest.index); await transform.api.deleteIndices(transformConfig.dest.index); await transform.api.cleanTransformIndices(); }); diff --git a/x-pack/test/functional/apps/transform/creation_index_pattern.ts b/x-pack/test/functional/apps/transform/creation_index_pattern.ts index f3cc4ab8d76011..bea6b814ee8a3a 100644 --- a/x-pack/test/functional/apps/transform/creation_index_pattern.ts +++ b/x-pack/test/functional/apps/transform/creation_index_pattern.ts @@ -20,19 +20,21 @@ export default function({ getService }: FtrProviderContext) { describe('creation_index_pattern', function() { this.tags(['smoke']); before(async () => { - await esArchiver.load('ml/ecommerce'); + await esArchiver.loadIfNeeded('ml/ecommerce'); + await transform.testResources.createIndexPatternIfNeeded('ft_ecommerce', 'order_date'); + await transform.testResources.setKibanaTimeZoneToUTC(); + await transform.securityUI.loginAsTransformPowerUser(); }); after(async () => { - await esArchiver.unload('ml/ecommerce'); await transform.api.cleanTransformIndices(); }); const testDataList = [ { suiteTitle: 'batch transform with terms+date_histogram groups and avg agg', - source: 'ecommerce', + source: 'ft_ecommerce', groupByEntries: [ { identifier: 'terms(category.keyword)', @@ -96,7 +98,7 @@ export default function({ getService }: FtrProviderContext) { }, { suiteTitle: 'batch transform with terms group and percentiles agg', - source: 'ecommerce', + source: 'ft_ecommerce', groupByEntries: [ { identifier: 'terms(geoip.country_iso_code)', @@ -154,6 +156,7 @@ export default function({ getService }: FtrProviderContext) { describe(`${testData.suiteTitle}`, function() { after(async () => { await transform.api.deleteIndices(testData.destinationIndex); + await transform.testResources.deleteIndexPattern(testData.destinationIndex); }); it('loads the home page', async () => { diff --git a/x-pack/test/functional/apps/transform/creation_saved_search.ts b/x-pack/test/functional/apps/transform/creation_saved_search.ts index bf501c65bc79b4..993bd3a79abbc1 100644 --- a/x-pack/test/functional/apps/transform/creation_saved_search.ts +++ b/x-pack/test/functional/apps/transform/creation_saved_search.ts @@ -20,19 +20,22 @@ export default function({ getService }: FtrProviderContext) { describe('creation_saved_search', function() { this.tags(['smoke']); before(async () => { - await esArchiver.load('ml/farequote'); + await esArchiver.loadIfNeeded('ml/farequote'); + await transform.testResources.createIndexPatternIfNeeded('ft_farequote', '@timestamp'); + await transform.testResources.createSavedSearchFarequoteFilterIfNeeded(); + await transform.testResources.setKibanaTimeZoneToUTC(); + await transform.securityUI.loginAsTransformPowerUser(); }); after(async () => { - await esArchiver.unload('ml/farequote'); await transform.api.cleanTransformIndices(); }); const testDataList = [ { suiteTitle: 'batch transform with terms groups and avg agg with saved search filter', - source: 'farequote_filter', + source: 'ft_farequote_filter', groupByEntries: [ { identifier: 'terms(airline)', @@ -61,7 +64,7 @@ export default function({ getService }: FtrProviderContext) { mode: 'batch', progress: '100', }, - sourceIndex: 'farequote', + sourceIndex: 'ft_farequote', sourcePreview: { column: 2, values: ['ASA'], @@ -74,6 +77,7 @@ export default function({ getService }: FtrProviderContext) { describe(`${testData.suiteTitle}`, function() { after(async () => { await transform.api.deleteIndices(testData.destinationIndex); + await transform.testResources.deleteIndexPattern(testData.destinationIndex); }); it('loads the home page', async () => { diff --git a/x-pack/test/functional/apps/transform/index.ts b/x-pack/test/functional/apps/transform/index.ts index 60b72f122f1131..bf720ce85d8242 100644 --- a/x-pack/test/functional/apps/transform/index.ts +++ b/x-pack/test/functional/apps/transform/index.ts @@ -6,6 +6,7 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function({ getService, loadTestFile }: FtrProviderContext) { + const esArchiver = getService('esArchiver'); const transform = getService('transform'); describe('transform', function() { @@ -19,6 +20,16 @@ export default function({ getService, loadTestFile }: FtrProviderContext) { after(async () => { await transform.securityCommon.cleanTransformUsers(); await transform.securityCommon.cleanTransformRoles(); + + await transform.testResources.deleteSavedSearches(); + + await transform.testResources.deleteIndexPattern('ft_farequote'); + await transform.testResources.deleteIndexPattern('ft_ecommerce'); + + await esArchiver.unload('ml/farequote'); + await esArchiver.unload('ml/ecommerce'); + + await transform.testResources.resetKibanaTimeZone(); }); loadTestFile(require.resolve('./creation_index_pattern')); diff --git a/x-pack/test/functional/es_archives/ml/bm_classification/data.json.gz b/x-pack/test/functional/es_archives/ml/bm_classification/data.json.gz index 12ccf6ae605124649f58c89acdfa5ea0a8f2bf62..8c0dc38d3dedbf17d308949c55f54eddb9d21fd8 100644 GIT binary patch literal 168183 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 D`se~5 literal 169485 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

    =2iFoBH#wW@ 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 z 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�tEZ|cWNRtHh~UQ$ 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%0Ac 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 SdewG-0C9Kma;`r@PWuB`P{3dS literal 278119 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 diff --git a/docs/uptime/images/settings.png b/docs/uptime/images/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..dd36f0a6d702b3d4b16f4c5e47d9f155a8217091 GIT binary patch literal 66781 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 z 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 X;MuhHv*AyFDOQkGeN+1S{g?j(o{0KS literal 0 HcmV?d00001 diff --git a/docs/uptime/images/snapshot-view.png b/docs/uptime/images/snapshot-view.png index 020396d0f3e4cfc64adbcaec66a7fc4c616a274f..1fce2e9592c14c0ff5bb1a0cc9bf32632c0f9180 100644 GIT binary patch literal 55576 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˭u8G0>@2^97 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 Y_|NZTA6DcFk{{Lhm+r5*DrbKCKS}mNC;$Ke literal 95561 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�H<_Cxff7DWXl)Lp*eh(dW;coJHSV`cdGu(S7*m3KFkWjf5F4MyU*F8khzM9gk zG{a(gD5(2wXPSv2lj8Y^>~02mw1Nx^^ZwZvXcaBK(;3Pxxyr1T_4IQjXZ>XPSfKtQ zXl%fu`_T5s@Dk;M!*)#|E|p0n4BXZA(Io?!s3+BeCGdEB98GF4&>YIS3Zy>p@<(zG zNrkC?4%!Wb;LguYaFGw9iWPSTR|iP!ADj=KIO=Hz7*u+odLlazLmlX{IqBuFVTmPP6(A)w-;Rwe z%DU3K4HQ*-4mV2Qw$f|dy0%x?1*T3u%UK1E+Tgu4sK<&+oEf@)3mgyfQ=pJ_9q}!@ z^KYvCtMNdcN^5+{@gpk!5GLcU#`!!}wU}p8wddMVvL^Tu$g6uxhD>$j5w?Pv`>aw- zb^72}#Q~5Rb!-;f3mB|0P8#+I?F{Vo0}!{JlLSH;Bs}bwoP978r?>&I(gy@ojh>yC z4k~ZTe!?+FY?k=;@{cq8)mbt#?@=-%y5|8Cm#;>-DBP*iE43(LJFA;Avnj12CTUgm z;WKu=<8F05fco5Wi%Iq_{yzRZ%Fc0fr*as93Xc4%2{g5haO5pip#>{Z<;dB&@zr%# z%j;Cbc@B~QWT0ck3|pE^uYXdTO7UrL<ahwttRiqjyt1x zUny6>F4g*i)+(g29qp>IfJ@i^7=htAU3oW+?HvSdG2%Pd%-57_5p#DBH+{b zAwVYlB5XBl5C(JZ6X_8Y+wR7l>u#pr&}5Tnr;)0RLe;6P^XPX#mdI?Vyy4jCXtht( z=8e000J+s9v@_Sfa7sJ9LG(yjgh^>&8<*R+wPww9PcBcpqBTYWHJ>J^5K$L*TwM*I zs}2M>T)(DJT9B_w_UQX=kK$m_pzhB5|6L~j{txD0#NY;Sbmt4oLiY6wUIo?Z7!=Z< zuO9lr)<)di*6b;lWdD^%mHLi=<@ibGxzW>49YhPRNq^<1g}Xe zjSTV9W8(HQUG6>CKPLCv=>k-f%0`T-Z$e$nDNIa@ac(49i+%#g8cP~h1)Oxe61*0+ zR{&sU3k6NDj6u*Am&Ss@6?M4Q_=0RhOkxxAzFoO9+x$pg-gBOf;&m9Ajd&aYP2xrO zDgI;J>I2_= z&ymVIxkfx(KYl{Ig8`^fmrP>U-MDK)PO;GbLw!TIBBZT$n*ON!qF)CXPwMZYoU z9li~bFRxif_+(n5Z$Ct4fQg0H0rm!YN?kYs)C-b8$nu-#p%C}MaY)R`hcn%|`h~bt z>|c&vH7(!;pPib|TVQ_iBf0-VwO~g8wktH%47+7he*D;GNQGp>M6GV@mGrzMS14eS z=I)hBl(4L3*{+(ttE8N&bxp%aHvo||Hz;Q{}mum-YXpFq#&O* zKB`?fK$`E#@p&Jp^@pYVm77!_Pu;&)-3?ASNk4~VPFIBv^BhG>*ZJcUFfeKc=vIm{ zL<+t&`HVwuJU5Djs`Bkxd!@Ik`|^ZhYW3Ba5;23+4@gL&+&gjsX8=Xh8;g|Oi$@s6 zd$V<8C9s7N{lI!vviZ?~N-+;3Pi&e;9mN!6;FpEY7}b23?u1#4FKukCOzj1K)2}y@ zmCcGDN00#7P6VRA!SY3ywgeNFqo;4B?PxubA4O2Z7DuWLk>$?hHXz;U2vq0YwnC8o zyD0oVGqvX47TDMF9>b4!L@O@Qv+;Nh0u=h(fE^J0y#lIk9vrm)6SE_nr5^n<$a{a6 zK7Stjd-814BWhfI;M$;JP-~KGK!6geF^eI&8cek~cw$Rm#<}$lv7gnFT=_+cXK;*z z^jz^@-vv+^oS1ExIHp9c7gF#@!7ua{tT%M3QA2j1r$81RDx%gFV0BfmTL`q7GH@oL zA0_hk(=t$z{%{0z!!HPWd1rE1tZ(UxOXdKMXISjoOB{WWYA}&^jFznIn|9G5#%fSy1`;TS#$1?m| zBK{GEe}v&5Vfe>Q{7MG=Uo68TZMD$d2ks-Av5v@83l^?+fwJCkdPX48P8Qm52FiN1 zM1bt9Gv}WU-TYhJ{v7Y=?WGZ!|7XnjNLxT|0c6n-)G!Sk0bE}kI^&qPG9}hl<|MAU z(D8Jvp-$)JiJ^}7>NB9=%@#YCM!}t$`amDu z+L!-$#JDZ;!E=LDr89Yk)OgF&Cqt1Bp1(}1prl?BX69Le#E?fmpPm#r9~?n}h&zzh z4?}>ezT23>1R)!x=OnvHph2i2E+D5aQiX*Liw1)fqr||NZ!o!>IvxwJyinSEL=_UYu&b+yHEAN zW-la_&$?Ah$pNP@6b<>|QwFX#2?mK1iI{`m!-fRfj-@pE;f#EQ3}3QNce6nBih8PR z4)8(<(F)j(IB-?kw(>`G^i|e}-ZKeegyNGBP6U#3Yjvk%byKYT|FQQTP))Aux+qm_ zh!rLxMG+AZQ4tU##RdWb0xF#-2uKM?7ZM19SWv)9hoFE+FQG_F1Vlti=q-fM69}Ot zBqSlp{h4#kb>>=ooq6sVcds$`9b=6lj^xkZzV_DVc|T{$B6zf>&+f}?*#-@NH9OjF z@oc+ot&JW`(=_nVwRHpWMPBa8rMZvI({p*MSyp34qo$g3ZP}}flTl^dIBs=7ZuJA# z6_1%=cU8HnHToOmOQt94CAh|Fm!#JG&FuNXgX*}GP9Of9$Vjs0CMs7$;o1OenVDswJb`qihqBcMx2E9$oWRR_<8Ln?8G= zyRc^6dzCxpvZwmAhnkx?>SL&I&&s;bk`xKAC*2k;U3vaiE_1DChw_`2Li~;XH|o{9 z^5G*VygO3lBmzByfYHBL993R$^Ojfbqs-YCOD10xq6mH!A#S2L~1wNG{clAVWr$C;yJgILTH%&x*!^UYVs2@;p*Rjv&3=b=d>(YPLGhHcp zl-n%URuqXgAag=5Rp!vPr(JXjd@3fFa=^=uPBC3wU#>C-8T=p&@|GDuuviuH$N?! zA)Nysu~{o;y@Bxd*f)_3^|SY_zzL$Vcv0aWB@YG1?vGygQVM(@I^}^=cMz?A{<>N5 z^oIbD!W;QwNzo#>3j_k+}`?Z)^xaE+M1W0pp!m{m+LPkb)2r3^1Kh)iHvv|vXB3Tr7r(K zh)Th!dTr(nmj_PiVn1vwqyu`gJ8GM@-Nx=6<3h79?o)sVY^z;ucvSqul=bDqPsO8W zD`!-EXXFxoHZ(mgAnAq9{8(|~*qgJN1vK3Br04JqORF|(!nQakL`3Inlr{1vHPC(` zhp5C2ds{B4(t|e21EZNe8>@?NO|iRF3c|yRbN5-)KbOwfP?ej0&oo|eX9vCJu%0z5 zW(;1Y)?72R-Hd`00AS$%K9q^Lx`Yi1-=JYHD%g~l>_26v>(ZVm|C)~o8S#JBJCJ!F z{P07}{^JjZhxI0{j)Y4|Qcie$|8mB(@;!c+GU=vYjB_4Tw8v^po{0yu2x~n4ffEDIwVqMMwX)}3&V;Q$g5cxZAz5aM^h={ znc#@_Sp$c=NuubXmJp_aUT|a0-TT7oJEK&YWrTd1aXKB<^EM^7Y3tn10l$Kjs5omC zL_DecOuN+0_sEF;VjEtM(1=0)0b|C=4}6^hzkqE`+dMSfuMv0kT{9)QBpMDFpJCqn zxd^CCt4o4~c++8jcfQLV^MQmC`My2aC9<}4iJX%98Bw5t_=od$mzhJLD#FPQ*| zYx?^S{aPU;+rHL|_K3}_KW>domqxwzE5OxbK`FabGM+|=wx(GgD|d6%i3XHq{bk?< z-ADbA{<-#X)=B%;m57-*=^FB`By?DeKjVQNAN13hG5#hbHh@o1>7_h` zRC$V1IAA&3`TDZU1^lgDhnSc1)=00T<&MCq(Q-uz+9Fzx9Y5b-wJ;)zga(&4Fu zQzp%OU+XYmiq#k{E@))2*UyyQpJM(1eVSByQM2~?q`1mY*+_7LQf*N7=KXNnGVsGl zWD zfPP_P#ntW!E1Bok~rV;S$@t#B%Ey-ix z&K=p2mr9Hf=*k4D{Kk0!`T80FsYKM_-F3vKmh5QZJ<5>aQSOL_8DfnL6!a{ zw6tLB|FJoP1;a7`h)NiqaVte}u(=1t?tP=-_vsnyTiGMvDRO+oZs6hn>#?%GANZ{a zmH%Iw@b`QD-X>WB(}}9})+=t)ptatktFC(dpQ{k=mIqLC0RVivdy@-cUvuf$^+ZQ$ zs{*S%Kn;z_H>d1F7>l(XWnpZ+T27A<#h^B@Q10>*>I7cqi4B~mey-NLt<@suh}5Pb zyQeBiqRhF|u}JTvblC_?adH4DF^P9@$zM6=ikG=$fGK{kSa|KaMNN^ zN64tJCt0#W+nZ`y5SifSsDXC64Rz&&M`5=POs)`&7JS zIlivb@cz`ado@|LlaLel&e&rk{qorIQnZ!MlFsnha*M6u2fN_u!eHd|RIz13bpu4zNK5km5rz%LT@wnQ8mUt0O0 zk2r5BcgyaTpyGZ>zZ3B7zVZj25XTX}PPtJJ--@6L@;Iq!n zXEg?C8)~JM3B$}Vm2b=JWBSm8x|sJ$wf=~WM<;QxS(^y1pC+jk0p3EQ=%IJLUd4j$ zvN zXB;%hh^@{_$(dH*T52!(kmx}tKjFb4B>I~Mwa;){4L9=-9}6~CpmVDe=i`hVM=0mU zZM$_Om?^Q9M1(Ng7f4WY1dQT^2>D?g$T`$wc`~sX;yyi|(UG2jU+;PG+5WW~dzt?_LT+Grd=`Jb@iS76;bC&zaZ4!NU|*!)JsnjRJC} zyM0tmv?IIWEm;NKqLLWDA{{-fxk***)55D1?mS* z?zQ-OhC_x3OI-8s#0ST$ZJ-#z`TOh62leqVV+IJuVwW>4urK6vA38m1+{16&>Do2; zu&RnlfSeIb_A2Sb>^z5q1)s?cGO}j4af??6My(eWipK6%0M~uPr(?s5OTN1+$A=rX zZbUh5zw!-Tk63syiR!Ji?BHQeI~zG_qANgQ(F!sT>eqsu#KXb0z3$3Sc)LgxvGS1@ z+T(ltpb6IG=F@kEGhl+%6+^eo_=$tSfwMd{UIbd=mYYsqOJe!;zicUYgm~BYJDlV{ zKImZcRZ`b2$XlrudeJ0_+3%~UTi!~sFuD#+-vU#V2xDk`;*Hunz;L^-G_sdY3$!M< zMxAEA&KXJq0!&Zz|Up(>5RKhQg+NlrLKUdzX?bB96u z9_D{vi_`H@R_O3kI83=<-`lJ@cK!Xcmr?ID6nw5e+1)K?aZ@bn`nKw4JFhkdbR50x zb}HKdImd3%Y{=B`t|Lv?hcqacQk^JLwf+0H=Osy`rOj|Z^= z$I7eID!CWc{3iH7OOK!sgJ_s-HB8lU^{NEry$84k7GsCX>$dlc-;uUN3ik6{iJsBG zE7q*6I*p9%0WEnUIug^5w`6rxIkWX{Bcrv)${99aE`F}a^E?Fc?Oat~d?=QEevHbP zt%0>g&<*!?_0FbTfEOv*IlNOQ@NQK4>usGyB5A*tJN6zbiGj{eFyBmg!^>j9N zA1oz|!7<-MSCWjAxM@mOsGF#z*`m+@^K$Q>^i%kx0um zOeTvD$2lc?;Ol_?>YK?&oWR2pyr0AHeGJhWn9jRX;D?aDHiOa$t#1E>rP}?Bk_LYiHT)yf(cmr#4V*wuNtApQJigi%f{fcV;|9z$64ztIK@Clsd}ilvfz zD~gYUi=D96g?SR#<&~+0$XpA{EZ&$7qaR+Sv&5b@#$isC}3__fQWjE&A zP3(4YOb!^tL~SLS9ej6~hj*(k58v)^9s!x(J_;Urg^AJR3-KZv>SF3Gy9a8Qq$XW1 zbARqSe+LYjc&uh{YoF6FAM?GbPV)K7Qwb&y4OFHo#e6@i+-p&7+@b8|a*uY&Bw0MV zm*DZv@D-i0;o0QAg<5zpt3zG>y$m|LEkW--ozM8-hx&0w>iE92hCno=5*aIW=#c-> zG3tUvQXD9NRkrH9_uc_uI$Scj`3htB)_Se+MzXj`FCj%jaamuGDg=hh*|SnlztbD1 zH+CT`+8;2DM__AqsQoJEL+&2$2oF~pMSnP_ax~pZx z*}B2G8=5T6Z$a<_Zp_Qu4IBKji*>BXFJRqvY5}Nvm|Q3G{se-Qx{S2Tm4j&G#oxN< zhKnWlwDTlrlk@V+lU_Cb((jl}*96C9 zj#!a!^s=~Ast>(Q`I{PYob1;)QnsI8yRIbO|d zRcyzw;Py1kjtBh~J0Gm@*(LKT#Nc@9?D)+$)P+55icwlCoew1_t@@7^==!V9D#>Jl zFX#BpH}A;vTx=Y;qryFHI-SQ=?gAi4dEHTG>G%T>S zSz!w`tCR3pQ|FG}Hljn9k;>QRwpO<-o`x2k>e9;bET!U#)Nj2+Ei=fFz9|PHYOLSWCfPIOykIIR-Q;jv~$fTAdIPUbb^c)#YRWQlUCWIMu-bE|r| z9n`_0fYIs)&zz`>>fra+5ZoNFjMzL0sC zqCLxeXUPeFZMf26@rVAhZx!Aq(X?C`z1lmMia$Nh_>z1rcHz$vYtW{V=K?`spC?{aHv3} z(HutVsQG^KM22+W<)r}fvW4UlY7yJ%Md~uxPRxCCtIN>!3+bcZ=vw#V;$zlTcQ2nH znsG{-eu{Q+ttz9dtE8{jTOeoE9<;wO*DX#Ipqgp*vbTFoZ%LtrP40oty%ky8MYxuiPVH~UUUCM|s^8MO9U76>OU;YPWv8gw< zUy(sb1PD+^yWR>=tNqYOIis)=%>Z{>T#X#s(0}>|9P3eBe;4aj`#udGmNV-8%2AQ8 z=E>vmBJsl+9(r4e$$R)}Tz>z0S7O(c{i176G7X3Y4srrOITPN#FxAGt5r&Ped!qhYJFdS0}f*}7gf)?*p}Zft$;vZ zO2U>oNmeL90e|D2|N7yLyJUb?+}=uD@q`KRY9+@#{k8QWXJrMb_q4U6|8nx4j$Y}?0qI~<%D za{>#n4bGB)@|GoOfg{>Thh#p!nom#ub+7%unn?ea_XfB!25Jw+*|+m=8vBcsTO~dW+g{lt3QTB?|JqfX(|tQAe0SHB_2G;bO-+j z#ZRDkny2u=J|s|`fEy>jp~TNuqxbxOR%h=J2o=t{s5^M$UkHiK`L@6V%raMC!C=1Y z|9J<=1H#30b}I9qdhHKiqcG9|9cB5iP0@knxBd^t^P`O7N9VQ@51#nf;}IpP3y6gR zU~q@mxBlsxq22=oKQF+VDQrwjw=k_DJ{b!x{Q+H=g|6$M{|H?tiAMtvVj-(j$}M@%azk{RiE! zKagj04QvkOl|)E|w6xEhz?{vUu3G;%_KdR+MD?{D*WKj;zP zo*x7~N#1(hu0h>{0{+4W{%1*ev8~L5*CNA})B!X#wQ#{&Nd}?;@Dr4G?EH|8?*GRpQJ+hUg(94454M8~yrM zX^Q^{FV+7W>+Cp#M4)A;|paQTn$0{n^p2(Nz(TmHxL`u~yTH52hwB{RJ$2+#KJ zidQWD(wBF;@CbHoP2FOFBP6wbUeeFs2pfc`pVq#)8KAzgm9N|Hb|5O|gk|LxVUlem zbIp^E3oQL)tlnDGs0sM>kG5aDvo_x!*b$)qo@up9V_g?SeT9A>!Yv#1`QC0Fi1~WB z!8W~*^APLSLT+0n2N!eC{N^<$;6=oE?cr*Fi3JMugHDLOM{%8|+Woe+Ohl!Ps>jd3 zdX2CM`<_h88^x}1MFWfLYQEAZHf_}70*{CqMl+PXAp|67#H)6(AaCzepnH~euHI>m zJ`gzGp#Q$6BMlT#jsyi9U*k-~q9pOxIciprzRw@}^KIpK9#~k*jMJ$=*4pi#u4U%6 zEf6zpL{F+eKOyy-@7=aUhzl>$k@&l){VnYByGi(ObxUV_FUp+oJCc#`BJQys(A;eT z9|;8=>K!;wSU>09XB(kBPH-Uf$ z`0?_|l;3=kVd_teCSMKbqi{H(!3%Iq&;AvTsc*H+D`014)#Z+reG6}->LX5@yB?CO1VV})5xOIO z1Ik{v$AzR|-xmFjgnW7V5S9q3aqE5X-f}Zgao`OP5cJ)!()j%Dw_u&=wg9D@mvslb z{u0+87@zX9uH~f$e8BDnJ0L?%af1DEUukhbEdb?%23IcL)Tqg>7;^N35^&rRpq8=w zKJ+>eNi2Q?RDti?luMfeDAP@0Go1QLU{%W%$HaihEAo0dYYR zr(!XdDy{-qnUwPy7~j&MvG7B77qTXRv>)pYVE5J5!IvW;w%+}Xu@@$n9evPcFvfO? zbJGoXpcOIdl_sufQty!PQFS7(ZK-cIq@-a>Ag4MlVp$#$=2eVRJ9Qj^ojJ(@LOcty zK~n7T$hb&9xB8F(NSkPiZN5`%`FwxAbIv_UzTH+&x4qNTMF3^A>X#?m)PjFj(QrYO z!rO((Kn?6;f$I}b1qjKWsodbDP^d>^?JONS(_eb=VT)uXQW9QUiFKrOj56k)E#M;j zaK!H7p+WrhN^7J`tsj$IXDQ%`;y(aeB25H^T~a@jJna2M$kv6!MIzwBGX z_cIrElQu&NzI%VrQ)h&l%P-7-xn5K?_E2GWy^4h0#2^@6;lUa`^dq60-0fRQU8i7l zu!o;kRUS~hZN+A;EilYXujC8Ota#Tu;cB?DNOlxFt|Y|z2rE^?udu&VUNB(Sg*!SF zf-!o17`s#*bnQkMGgrUBqpA(Uq>49$Q1v15&mG{nTa|?L+Nnk&HBN=%|FZbzHio%N>S?I{Z|M4i_5KL9=#Y4X0^Z5lkdiNXqpa zc`-itUsjq#jL1!K+S@8wez$r*8Aq&+LCJ0{(u0~7@P#3Da!(u7bs)3>lQ@=fF_eN| zA9ppUzd$>{?hW0^w?^ufEW%|nTyNaCcJa3a&l}zP>tXD*sx5c{`z*Q(^*!vVNZq zbT#o)RhZ1AQ1+y&Fzr&WoK}eQ6{=A!_?~<@NUfk#adV`tHb+{E+t>!!jiHgL^_*_p zNV&G=TkdmtM5Qegzo$SQklJ2cSFlHo!E4<)^;l_cWdOL%aW0 z3rS+H?*rW{Vs*~>ev-sjR`h>1)A~%Aiqjbp4rRG+p{^(OvUko;M1)Jd8CMnl%@Tym z19lX8Xu8z`GE~w6h+utRARDi}grx^kkci@{v5>{&`+oU06?vf?M%JD1RQv#vaJ91a zSPb0MA$l(mbo)!vGk~0ar#IUUr1avSHAaT9(zruc#lWHk14Xxb_0Xrw?tq7-P(sB( z%A;BKMzUW#BCU#|VbA{y!C$+nQtyA&gyIqj?+w>w?_r}k``YxklfBW!z|6oLdnuFg^ynmb50JZf3?!vq zUD;3s@&zfUH>b@r_*EcAzfbSi)aR>ft(F4RH`hPfZibD06M&SS-*YeEgq|Pvz^in~ z)f@oQv9dwpyjtoB#M?k9K4#PzNF&=d7H%aTe!dP|{7~&KkU2fNha3H8Pu{By-#OUU z5bC9AWuhrz4-dG&X%}m4PUS3ygc7U_jEJ+W(Yp4M(#S5AQySzWo zTID#{-^UcnN~1@tra0-lx*UhQPam(%#X}lsq@wD^5U`)qjj;Pf8LSIQDRNavI?U6) zv;O>X@PjZ{(t{C$i^JS!+llJ9hcS}A%a4+*%9rV~vBJ|dC0ozCP0~_(h0Qi~w;7+? zW@4Q%d26>GH9ciRfiXE2o31sI?CZ13uZT|;pE>3hJ**JmC_h~1%& zEp=r)k@ok)*t1nC_H?NnKb|G?n;Wp_23Po2f}JlQy(>$}U#0>peP>Pprc9jSRw9=W zZXd>|n02NM6vmY|?PA%Mn%?^)0SoFi=8u33IzX%Yb1iDEE+7s7+I+`fkr@HB`SF#Ky1CSEkkDKAlf^k@KG zMuORuc`>-_D{m#K2qZXTr}Hsjsh*&Q4Xv_|aR1#xI*!*E7sW!0wIX~0O*`^MeeA4q z;I1!Z7tnZyYy?@%zN^^;R1tau1s&fFeL$4G$mrJRI4e~ST{zB?HsjUuatQ=0r#1{> z$~ZkQOj*V!0p+b}A`=s?%_$5ju%&+#kHY{`I4$72TWR01I(AV2IWTzlk}pksV6Nb! z_v>W|L&c0@hx!qhj$|i%M~YY-N_9e#0$DYpsb7-G5VBf-{pN4h*9UFJG*ZoL)K*S_ z>WxnGVzclE7W%5ZmvpT#oeyT-s}D^!8vzc!NL9Sji!JZ(4H_V0!;2LDkY4*8dI5w! z{>`bQgdKd@uQhtN6LGcncgUs}PSMV1BDsO}%ZET~?>;7-cM94Zy#k7Wp@-9?llQM?3sDj9O)Mi6a5W1xoIdXceTojB_V z`~ePEIeXVSw1nJ9sU4cjsi=DJ$zQn$`Us~ipYH#}m=T!QUkt{iORrriQQFvZpi4jY z;ZU+y&(WO+pjw1FuTASqoG;|e$pYOwX~$ma=}NDSz8D}p3FFNPQ@3{&VneuAF5Q&T z6^Jd?S?dL=x?$;6TsWs=T0t#@sz_sgSy2mRz8s=o){VP*Sw`?TRqDqdv#*O?Koq%f zdKB=gJS@RD6+)-!g_ZL9mG9U}`WSR1H>a}ATE0UMSXkTsqJ{PBXKEPDPWepUOpLm` z72OCb*dIb8x|3tQ-ww-Z8aW4^w3w@EOaO;Ma?-~%tUxUt*I@A}Nr{309z}OA5SSv( zbeq~1CNoplidj#G>m#MM_KZzlX+yJ***rnMV|~R=wG1IR)SRKJ*iIhUt>W~7`NWUn z9qe85h>=zl$E8fwt!F4bc>cBSR=VRCu#}YAkIFH3Bj{vn4mq9^B!K;nV%8~vQKPZ$ z0hdaoqDc)uy>)(1Ofq&~lg-fKOkb<5;HF(1VQm@nswLO>E!dv4tsLE@NhQks%@z~u zNL^IVI?#nUwDNMTHbA$NzC4%?TKp2aT(}3-7z^@rrHfR9EYw3F!E3h?hP(AE+P@vw zmHB&YD0*N@fNJR=?t!^LiGY+gy9^X!t2Khc=CTJDstJ170o$sQ9m*$bFm2Xmo>z3m z!tH+fiw5)y=ezB~u$i&|q?*vl*>nk81BDrbr)#|*ylziY;=3yM0SFV8bf#&3pMBA3 z2n)t|1=?Y6mj-Oxj5RI`tRCpHEOvktj+9qLy$}`R0SC`n=bL4Q+&}?pj@I|X>>{JJ z<*5zDIAv3qN`-npW>aWK4zB_m;FhB~0f_4r4VRycWE>XRLc&~79R(_Y2UGZ}6Hb6( zVOfP$4st1)keUim>E#=QN=_&cchtb92%#o@5Uv#K6l=ef`^jPPcbibB@m|?zKx-#zwk$Qwsd6tQ(O_g{yq&!*W0q4g6vj{uVtwRe z+ADLg1K_2gFuAyl`$py{qPB28C`_<@@aqh#*XBo%TfP$nQCL~=6o1Gg2t{2Y9u`$p z|Lo9I;mvl$`WC_n+HnXc?YR5w3IN^j0p4J!c{-JcvQ0rv$pg9G+z_@ibZ$zd=|lr5 zNGGe!62HRoI~ZnUk9v$2nn)Qeo?R_OOj3?NKn0(|n`(?CC}jZeZHHPu-!yoMkZ)O7 z11SmH;9)O^_Estzqx4TLcmc}jt4ZCIXo?!#VO>-M3=k4PonU4pd%X>#;de#7r~=jo z5ED$gQ875e#IfrSHzwO6@)K#X-NhQ6vJ{Kie9|f;@igz{A1>sX{MivYp+vm27+*VO zFF7G5pD~C#4?$%EFH^cCw&f=jrMdV}v1J(xZG$Yl$+W>vFU^h&M=lu#)EO`?9peNv ztY%lv%XbuyGxBPt*ho&O0T%Tl?!GgbHi8*T*?5mz9qsMDeDbzQN^xL+3?x&>`-Ugp zPH{)PvfoBn`+*ac5Xg)zainUsiYB*>=!O;Ruw39l-X5?)9awybQ%}vyj%UI0r`KWL znz@mXv5XJG&?!|GU1({zv7C{2v*Lt==jX8j(Q24tPq}yDjP2q`mFCL%y6{Cz4qGp# zoC~Aea>QL#^w&mYd;*Q-<*vV9g1x}4oC?}_7oJXgC|2yxu#--**`Ds5dE$0J)6aQ` z5`^Xc1t#G-1FiEg&7V$hOv z>o7dy$IYJs;J%Pt7FcOU3!!rxuZJ#Yw`mWA;rSPuaxDs$R7^!d<>f6B9hN6A4n(^W z{PMEvX4*u%@^2L_tlu(wde_Jj7`xoKL9T7l>l64B3EojKF#OaSLAT;$00DJrhU7Py zTM2n>r@gbBmgi2wNIoW}rf30>k+NjCB;U$4G+fns) zMB1A|fO`Y!rGdPgxsDFeTngev(4rnz&G%c=fdAWLNf){!5N>R?i1zk-L0lzKz+B}K z0G!Kik}BM!W_pt1)KGsuq(N}%XTRmUg`QDR-ACc+4VOOb{~cp{-b7bgV--&u@$eq%1TEchMTCZQ zrnSVuTcn_#SrT?VUqjaB(~&00fV5>AD{Jpl>|(-}OjA+~GsZ%DJ6>%2=>t)Kp%iij zX3EK|JIwvqa<5Q@jHTIF^%z|;rFq*=Grd|>Z2Pum8{$cSlt>Od#qb%fze4#04>!9x zKCp2NE-Y0!rpjcre}J8DnrS=y%;m(!?H`>9k|KjTz6{@OId?C>aM^Bt^4~ZY<}&xBxuzD|6*~g7T5wde&FkKxDkx?=6Ndcf#a#p-auoH*|(#hac1LW8Jtjo=1KMtDNIQtpv(*Kw?v-q4#e&gxDm)H;7w<^KF(`RbPhr)^h*}@4DQ%><)U=CO2nfpaK(=j1QR?Z&(V(Oo(Xm)=z(}r81Jg zz-%&-&INticfWibX`Fd1R{&w)=bF9Ox6+Ncn!OuV2J}7AjS@OHlA!l+xaRKE%}WLi zlu&ihd!DiY{z23)AMO#1Q?PC<>3b?-r%EVNU)0~1l)eX^d4ut@LOF(~>{g`SDTJuN z_Fu_$hFfzjl{3|>sVygnTPsjvlt3Ru%lqk=L*GVqMzAh{U^quQ^5T^v_x znqz8oJ?R+2v?QrkpB7orw_5ntXG7*##knBHeD)9ZfQGs|UA7BSWv^y6tKFjP1ufV5;n}*H*uOOR0J_YEZ9!G@P=We!r%TAk>hTZB4G3 z71GGhUS^5%qcYHna{+`ePx?J_ z-Q(5p$13I%5mzoMsfa0^*2xXG`7hMEus1s^&gI_19vu8!xcMF?pFI{hmTd*iJM3Aa zdG51<^{4S4KnwSjf`)O&I?~-PJ4je~f)QvHUY}IUl2$PG}yY=FKaq4O~#fE|1T@AB{iTq}ft+;mkseCyI zYooq#R$-OFi{nTcC`ENvxl%-D5jtLWS9SJTKosv?0N{~C*6*<=4rPoL$cfU5sO$s0 zOet}-A@_lo=+;yqofl~H6fd_%^la2NxOsn-ueg%099K5qzt*$^ z@fL8Wtb(>p%Vt2&uz*Y{--qsfwSHffD(Mc;d*h)i%?W`_ae@E|v{W96Q(q3W)oD5D zhIHvDRclE*)Tfx-zoDR>&sak8Gh@-RvF;M77+^!-t1<}IPjz~|TH=iQP&fO_8X{<9 z%Jk*Vdn>o{;X6nASC^hzAv}tA=HGMpHCP1L|G|3!e~L@IlHJ4^J9b`#@#wT{`Y$eP z^YO6bG+@g@Y*JdM3Y<+yke7mXsd=E>K3z5AttUkhhH`UK6Q4rbJ3XMjzB+~xEY z^(mfJI5jmY=i{Tx+WMPmq?DjWI$+oz{>?wW?A{CpoGM@!Z0xf=nFYZVmx0U{!R8<) zgv=m-E5*RD<_+`|r4yv$ns!bCDG2P^sBF@K>FV4`Y))FQ&?{<+6z?+fHApVKa3Vv6 zKg1v~Y==q)Vb*-nRTpfelE>Or1<=$0+TJCMmBTu$-$MA>bI{lVKKY!=OW<_13jE;Z zu=a2cXdl>d3w82BV?~zu_at6+&TfkZMc_ty`_f7;80dmMRN_HNTB#qj=zI1=fJty-r`lcvD-OJCs?4_R+9er~IZyzV`Rz4YZ zk)DEJU$Bey!2Ue7G^}JN?7(I$z3c7l+&V=__lr*(Ug>iT*eIw2LYhO`oN448Xb#e( z>XfTkhvtF8hkj@*q&zA70Z(?;Agy4t1;c?0 zJ~;x|U0T!L1N0~PFPhmuyPir_)GkWx_k?#npTUC8sMegcUX8SWU>5gsIu@YJT-E^d zZ6z}HDq8E9=yHjf7|$QC?l#E0L4`sSM!O;6Y71vr7`S!`;Iw*s;8BoHO*b`{9YpdX z8DT**dYk`oV0g4+%lc`gsGv887q|C*Pmt7*^tJ7jTc!o?ukryg=rA_Z7lFsI+j0SXTEHdvmTD~p7mK-LX zjUIBsh;}(C7BxL;NK-CJOIEFVQ;_ zlX1#jJWNGSCF5B8giy5|o?w_?X4YD4k)%Qgk%%rAMbI%5>y?Ft&TW@FFk3eOkc4OA zKKUj}KbVfidXa-dJFR=<{}%FHkB>L%vjcz`k`KFHCuyRV=YOG-MfwfHSo}cv@p{3g z2;O~7F@t5@r5s2oq;psoU*U|1@(BOB{(MVJyppX82EF`73p5`kGmDmM!5BKIx15}V zq=sv^Jtu~_0g$Jl`oV9NxIhoA6Wu-%((RqHj6dSjxD5iqXa(-j+zMOBeVrMdR<);# z-*e-*+@>hr6kpTlc|(h8U1~T?PJ;=62MMA-Z$>9$L>5ThnN@{>X<XA)jDSrGAi?2_ol9Cp4j(|f>}vZo$PM~sJo-+Fh>7i;QU-#W{Tmvs^Ji$ z+NCjG4Y@$@Fs25@#oM^hK-@Ycj+LHjEwV$*&fm@Dbe!1frRw}^)7z&efJE4}2mq}l z1LkuR^hX5E^*9gYQlgp#mKW$0eqX6Nt`xQ)xYfI5B|sXwp+JJ$t|U3L!_%-#x-d}B zj#M1T7Oood!^Cx(q*;3p6y%0-*%9N(-6G+2@E^D&E9%JVeEun9W*n1kmy&yhmk<3L zPeqGfY@8at=s}RjR>WcTbQ_6o@@}3hI!KQ+-oI;V6+GB4(bg*H=6va1mIQj z5UO_nH4re_alxOPK61>#HJFRq_Hd53X~*vj(xJ>H?MT>wY^>SM~Aa~WIaZ|e2{$jH7s!XqEL-^PkxpmyBee~d~hR! zk<^Y%*f%2S;hGj)!$^X@jZaUYR|0ub@teUwHjdI0Lfd;lm8}b;a;sX4_7(u7$#0E% zz`zMUN@3ze+fOX!$A)nf@-1=#Cmkqh>sk+gMAE1#+*4*4c;uCYPDu!<&@dhI@x4Bp z8jTC4%j`fKw;S?e~(FpP2&n&%daIZG0#D`bfnhLPZgkcRr;EpQ~fsmuxA3}}* zc&v5_RCRc<#-oJ6D-T^L%@0_3XudeDPzBI^Zu~X) z)c9~Qp--4Z@%Ag#Kw><9CaaCPMzYR)(u{V|8sr5G{)v zz-d+ox=L&&SSt+gbWb*`xzg-d&1pjH_OuuY)$N_O9u;PF8k@hLl__zYF-*~d#unOD zpIDDi`5tr7Cgxy2C4?ZjLo^v3SYTNk3wj!Vh-dmL)p}72*mMrkp9fiRx#b;?ba3!C zbl!U9H|C-gub9HIZA6ZCH^!IKt&i9OeaL{Z*9MV@Fs6nTo!=pZ`bB1)E@_Yyw1?MT z_Ah~^6ulCd6rgSoE;+RS*JR~pnEh9Dv)6BJNM|`ooN;^?BMBO#VZD_>b6Hb{H&^)$ z(t~FOQ%+Cd?tG0d9=}Q@S7J328FjuhKjmnxK>#=N*k6ORIJ`|J!}3Sm`^bnt(ED_& z<$p~yGo`ub#grZPwud=Xc|r1T=JrUNuG?-A@Q>O1m!v~3?bX#SekH9aB=`s3@grZ; z-vCalET1D8Bn&{1{5#Y951^%gFQ2>mfAp&*UYN11Wu+f(D6P;bEo3`maEjADzBhiI zx0}jza|-J+{#H4L!Cd%Qc=7*?^Z01HSy8|@p=pySKMLCbARvE6`u}w({(Cv*|6$<$ zhk^Hp6%H`O|3e@CH)23I(mXs|?#5YF@b5e3Eu;y-_Ft8Fir>HY(sACsG9OOV(|1Mi z^<*h*KeF}6)hweuS@f~1(dW!=?0z){U8<*#8Oa`}>;CbTE}nFA*c*k7&EMqG$a z*Vk8cEJCe@<(;Ft)^_@X*7x)u)cDcwb6*M`)7bpkHBFgF>~HIX&0~@wc3MNFHcENm zypx5Xz{HSFR@3Hr+{9vZw)wDck2F@T_pxf5D)vjr123$}JBq6@=w^XJdS z!EaS*zdPcycm6!|Ao&8+1{sqtRJA5)=#ZXHZT>RhKa;+y`L%!8Dh^Kn`ub?`eWSHS z!|utkJ<)G;^X|3Yw@z@Nj=OEWB{5=Z{akg&qwT?~z2nRnVqXlY?_Q79jc%E)Jo8)b z=0$uEjo{Rp&a~`qz7HS3VaC$4o%)nONKUt+DF3r9kMK4D8He0@yT9COyT2H#bWmxx z%|L}%wqf$iuvC@=L_2t=?zyd=i&}}Wy1LKZ-@5&218qw+=aQ@a@6*Hg#4oY54|PR0 z9ywx{95v7&Z<6>*je6*sX?m1d_Qm=NAi+>@bKuaqPd+L&4+x^FiKlZDe=A=A{}tk(DC9W!$^XONTZcutu6@JOpwcbU z-6GxH-5r9IG!oJ%k`mI*&>hm!C?H68hvLvZjB*V{CO4{ z$Vom)nVsGxBvKwm~fZ2baFn1936W!H4k87Cbe`@XaFR`j6l;tr7q5G6rEI zy7`IJ5WowJp#I6#cX>m-0vW1zUT<%3sG`VT81H84W!5x1nRVxI7svn;EX{r<-vi&obUedsstYE-!CE4`sK}StP^zI zfbX^GLW3^WsDrH;F{0Rm|M{at^`$kP&cFXVcRS-EhaXzL2dVE#HPsJ0Vwm-Z_u)9pIh$ntC+407QMq)y zE54k96sCkk@%$%$Hjk5U7>y&=rzHkosN62s-Ctb~=vk07>6I}KwHLvsE*Cizsj6*= zS~bs(kq9mZleVZgC*0PVji@}SwvVj_zHjQ141pm$22F+9o5`gg`C2@lz0BqY{)Sm^SkbIiWP=9yYCM3iHhvMpHtG76m$g`L-M;Q> zk@(f!Le>2n-A%685*R7CS%p6(Bj0eY+`m!z+#kHLquAkSq&U$nipTwS4>+U<9#i$n zXB#qB!OyBoojufyIP`_uOP2-=b*UV|XU0Mst5TDpAVFi~v?F6d#h#+P(9x(+%*iMt zA&oLQm&=l~jT4sVaWEItr1iRHwx@&vb49@A%hc8R=5cjbLZV(R77=Ybh?Tm%NZ5G` z-cQsIr`QJTB5w#Yfm<1?LcllhlI=n>4@rXAe^>cdK5pE}kY}8IM+YA8d@KAyK6<`G zywAc>Zr)i%T_OVWG|B z!WH$~$OHW+l~}xaS0B>H8LH6oRn}#3k@8L?A`;im9nv>9xS36OJ8{;O(gAdOT`McKq|KM8Y|2fcW? z`*Q;86)TZ3o;h{D9lR(iWkVL0g(ZK$20?umN9sFCNmJks=-0WF+Woqn5)!x3_1GIg z6cKpcVhX-tNy>iOO@YFh-AeZn2u23#$F52=4BtVV+OHR4AZcPrTyMG5jY#Afb&|sE zbi>3Y(_znxKN1)9jo0=lqWi%S@k{>hSzRHp#1wpRiPI9hX^+5QmQ2fVmVbRTQf^g$ zLXn5INOkr{1oM0$-}Pzq>}twUokLp&zVEJU%f>D@eEN^ez0LJ|1K82}Ryd(obOSj9 zgsd|$V;mgp%tsx;ouBE3N~Dr@lh)9CW5!hjhLDL#;N|^r^edxkkdXCr0}htOsgv(4 zCg4A$!fWUg!5)=yM|UD}Xb0|Fh*-|~^A88p263S+EwlnJzr!1}IyEXkV$tb03`Cx` zyLk9MV^LfM5(q4{EzWW?bi1DQ?WaCefDYk1x&YzgEaQlwH)$-cVu{zwn>vToz_yI$ z4HIhBI&&z3XX}|Ky)R!zgn2sxx6gaRjgJuGdb1&R?OWOC??3cT%hzQNrhG!6lzI~R?#_54}5vtAUz!Es*wR4GQhs@ zNs+Bcl~^qCm{5!K>Km>sCFUJSfq=tK32Nk}6{!89@XKS2DdG=S3 zXwlTWu^TKoDF|I#>kB7RHA_nx>6_Eum{DAzrJzvBdU;dWG}r766kw1hKq4bmorq&PFOSZ87I zadfy;7L)@A8LZS^81hgA&Rm=VeBk(vxrwB)_4wY+>pjB;%4Fl=3;}e%6hYATh3*Hq z$eEt2h5FFIv?_ckeCcZ|%3uRv^^UM@f#$G)RDkt>q)4KJ!pL#90~YFM2qi zTv4R*@tWnG#7P#>wE?B7KYm2LEM{zmHhFM2BITC6O5h7au;&bOcl}sq@0W%b$wo=% zDPT{T;2uxe23qhOr-9EdmazBbB+qW#09yC?m2{8TPoq_%8rH_(><)b+5@GZJD-w_I zYwuT`Qt?LCI!o`&U0_k<9pzs|krpU^`-@0*uQyDVqEOJc<-f~*~%ysE;bKaavk zJ^lgfu#_GqiNT1Fxwi1d9{Xy4^9DW77UEIz5BegYP$7ayyrN{q$~R%>pTJF!(r95l zAv!)LE-ie|p1`6D(&LFY_FL2(ioR}qR%Ce8MSY5c#pzmu5-$zSsi+w*2Ib>KjoVRW zAP4$59O;P;UTjukepJh~re^D}jzacSL`ud#IvK37fFMr(DW7?~-_8-U&d9Wz7goLZ z;M5OZ`YiLpbFE%Ia&K!bZotvJVK)E3ItS65PH_Rp6-p)DN3ZkaJ3W}qN-92J0<5|K z(Hn#?uEckS^+^haGd6wOUH-BvudSYw;-!|wo7LV9PNr_$V|=OaPh%AxLr}}r?28?6 zzILVd{OBd-0uJ@sFv zpWnp+d}!p1t9mBKQW>?Ig>fw58*7%PVK#H0;* zB2V_q$zCIRiJACm@^1A&>0-Z$*ot8zRl8E1ICwubuwN-nnz1L(*|Mqmnp|M?jy|10 zFTs>932HfA#%?k)oFzl=Ploi22Qfd;#A@}iOCEJNt+)N|GXYW0B*2aoG8#uKM5kUq z?7m$#-kjfFtD3GBOQ>GA)+*lUOlIgNpWbsw8*lS#c?;O0Gdfm=nR8NBY_DVMtMir7 z_zxTQ24);9n4;?Imr*PfVDxT>72X`Vqhhm!8N>*Tr_x&@l~!nr3ymKd8XYg2aTE#Q zAqW0qv8zdIc6LbxH2B>`taU7^~NZkUF>157{! znO8TF%mplb=^I-n;h)^NP+}>60&y>83csl|t^Acwx^FW{4MsCF7fdQF-ZI#A6($rd z4V-VvadcXQUZm5ZY~-}kQ9$KXYTlz#dbE7zdD!83?vB8s{)t6dk(pD^=fdn2^&44yM04F1=ZL zpqO-Ey>?z#BP8T8>*|0PCH^>qGY`BepHQgeCB576X%z+#-b&mD#>v#qqF^-A7LQ=Z z59z49Y4B%|zOpcgMw* z|E4xmxyK-hyk?(KJy5(1U^i*ue%(5e#_A>cDSiyI?coDe)^~-pYp73#FKZ zLIPwzYms_%+zms38%@Qfg2eWWd%Gj0vIuPT`nwnu;KRoeHP#B)oyMIUZt;crT-D|t z*nv$yp(bWRT7tW`x7SQXh>?x(5Njsy(jd2^nfZrJx#nonq&g-z45Mx2ZMqwe26nSZ z+RM>co**iyrl^!eBj~4sVX69dPAdGF;Zd{bBlM%5}5=P{?m!{{`#@28t%I~&r$n1B%yY*vdnO*{mIU| zKy8~=PcwE0rzs*OE>vHx4e}$zgr{x}QyTLt8?sRZsM^L&+K$(9O$VB9Go1lXm1S2sV8FlSt#b3Y)0SoMUL=6cUtL zkDEv0r&v(CQCFFE#%a)pX4o?{2sIBt>G`D@m2lpZC%u!%q?mY&Peb0)OZH@r%mD_` zcG|Vuw-B8xdT zZG~?1@j*bJhD7}H`BQghThkboYh<=riQzyt6yJ<1KLJwEvvDM}!%(B2BeV%zuX#TB zveCNXal4XMK~Q>*@B!Elj4^k$j}VWe&tmH&-8hIwnfm+;>H zyiQs8KyL&lsjN7;pAzBvjf$)+x(7^lM6Mm+plgH5z2Cy=9}lG#z$6HAW6I?u!G#6(5S_bHEwfGo`P88!Hp{IyypfTR0J-A6A_Q%Yw!-|)Mo zI#aEyeVrZ7Qq8)2CbHyC7mfue<|^Hi#ZmFcSv*Wn&+T(BgwljYF?*g~o_qCX4L`EK zSh!?7|1ksqSwjzVDrjvi9WwA350-j)Gl3|P6`}!po5x5+rBS_e?e$vyL!l{?xm9^a zi*u@fCX_xnKUb9v)HTY&mz#PqGx%EeLp3B$DpCOzrIBoa=q*uAm*E|w-dkW z5sMe}+*kh=xy7KGm64z?G}QU)F6ODb$kh%jMRtePPa8D&X6olvzpzG4Yn|%={1-cQ z#szh=N}taFz*@rwclZ!bW>}uG0=U1_y8Bc3OFIGsMXb^KVg?JW(L|xTX<(eSy81VY zY-TSTpcrB%H#bsTOcye00L*QcmL>-N1;6M(hFi)C^9DeCKn)|pHw$B*0vQKx+$&T> zHy^5PAU*Pm?hG4s^Gs@T2WxanX_p#n6e)I5KWMkfj1)10&iUpi!lmmqYD8p&hJ#&0 z;O#48X%JT>)ggJVtz3Z#Vh^suiV{EAIV{GwQRhQTnNAi;1j zpW3=y0uIP8yyX?AP%t`1C*=-zTxu_yH}*x{ESqsGv@GK(KEqEBY#|D}aQNk|MPXVw zYai`kl<)xY@88oPL8n1F0k!XIUv{_C~BMgjjf z`J8uwY(zlnO%<nJGnT-hUj+d{{9csZ2w5V{dKzSf0Ho;aw}#) zzEMQx!5h>6WMOq#1nF1QbByAfcYi zAz93=)g{5YlTI@4CuIAdVtQ&{79A<436{$u-P-~2A9HPjb(JcXz$aSp=pjwO9bS?l@5h-P2%3~CTSh^b z@Dls(k|) zVo3nSIlOs<4>fc!#6*bxvR71naK`yg zY1mU9j5{-AbmYhWsL6*OoTk26a7+cd^ic)?fY`nb>`>n`QjUy+noZE~dF6C#c=rlX z%=`Y1<7t5fP!8QXGbfZ6LNG%>vh629nan=FFH>({7w{sPUCr%+bL#ButyJnVVQ+e$ zNVx%K3l&6|^CNp+--ZRvigYZyQa$;VSnl1%mD&7L^)(qoL$1kI6||OBBay3{*(#FZ zCG&P?|AqvEzhWE5ESCJFHLM0pn{39mxqhnJA1G{b;%h7^&Pjwx>3A*B`Eu7 zq|y|>w@lb2VUI_|R=S-A8M1^0eX1mdKjZ5S%>KH_TI7^}zF=&_CdxV6@t(>Qo*L?C zl2=S0!+mZ^qC`Xkq2(SG?ShVn`}#Mud}1No<_^QL_Kjg1z6+|XGL|1%O&Re=`ME06 zeN6x5?8TI~gbSulS-=^37jRf#3_AD`9yG2bhL;DLADBfEEJ}Lkg|{U7c|;`GT=;q# zeXK(^B4t|PYiC_>n!ijG* z!H?vWO&AgE0qMd%?>^f8%r+g>ioULx#(|4Z^6Xt!hNvRRlgS##%1c`=)AyenpF)3R zz4EyV{ONlxE%Niixo1EW-|ItwQTXQoU9hGoQZe+kM4{&iBvEw$DD=gcwCDidz4kdj$z0AtS) z^7cN^C4RjZh7}opa#MBtJ*@1rqx3@W!uQ(4aZFZK6ic3Yh1SDOqFV>Cb+8axp&sB)*TGmw zY2`_rDK?6oX@)#WWHxHYEW8z`+1GWjJEIlmXWdWbkTzMM$D6q@iUr|=t&uBtWNQ?UT2FhY zwkFJJyII!fdE3BV9s9G`PikG!gk2AjY=Gofv35b}Fol>Q%-wsYB-a0sq@#52FvR+- zu!7-rTUFn}{s7wosSqYw4t3YnL_PO_Ls!Ha4z+)w*pYt-Jgk1h3itDyEhgnGkx&WA zQ%mGp#1j-uGWC@&7OWuC-IyNw7ZRnKwa@XH4FYjC=GOViy#ywCqLL)$^h(cZV5B@-c^DPK-KZiy_<`<${hXfS}?u+3% zCsicLNTcrgX$=IztffR5Y540*Gzc@?7x}$?$2%&}&`O$CkHXm1=@Wy>9o5;et}hY{ z&#Ba|@L8B3M_+-S`q+`c!we-bC)G<)0%#=a+|=O z0&`Lb(KD-co3$f^Ag;ZHN{b+N1b}X3CmadhP+?;7%z*CR{iam6c_r2a@x6F6Gk*1`QcWAFAd$r zrYs$%KFtl-0oGFpYZ4iQMHiM+dT9K9iyu4FXspR3-&OqdT@A^`{=y@*s1)_ki#0<4 zXLJo+MiSZ`C_@cz7x%OY9j(DNFhABeymo_!rdtGGHJzI(qaQ9g`u#)#(nHN@nH7!V zkC~qJm-8Q;nNW-XhjJ}Yks7}2$hYV*S`qM3?4Mc~Vq8>V>wD8N}ls7w+AzJrJdqD0=#AQ*M(hj@_x(5zLHCZlvGv(a~X9%ry{%{bKywZ%mXj)kPZP zkdun9AI=}R&BSpyoL9yV1|&CCmw>g&NO|By`WH)*NeI`UeV@O5`q5gd^D!>MW+ZC( zw`1c`Je)mD1&nM?Dw=*cHw|YnqFWcV`vEsKd=BiL&It&UkJoTl^og*a{)!s`wD>_0 zIm6{$kl0!vFYG;sR#FsPqAQkTq9&v92+NVE?_D3Hv}Ichp96kM)XF3;&Gpt=?Rui< z@9+O)DOG$d4;uR@X2S;}%C?faI95(fi#Q`5e7NZSHxds!ib* z7v+(e?@FT-}^G6pwAQfz!_&TL%7!?u9rS;aOr}9uQGO(#xV2t7#akOSNp)CBkKVY zL|D8E?6{B`XZ>Blx=6(g$ql;vbuIqtA>l#6NTtd2LPdcJ#wUgD6IGss070;ih%R^q z1IqiJd3c?9_I0+is>UckM^hI<)E6&^Q`L3)cYJ80E{6FA@EqL_a-LZ|hnu7Cy1|{1 zfTZ;`*r07f<`qnEU8GG6=Qbwhzd4I=q|hrF<+=9k`nm>w%%JH~kG+k>8}+QeNqX1g z2{!r((Qix!3B%O$8z@THt>s#pzQ_PkKRvSLZ<@LuY|U0l!)~DP_>4$ZBpfP__u0s5 zS`a9=^XRyb!ud_m7V)WXQP|Q{eY%q+WfY8%P7KYvkF702UPbJG??!)L0>CT1~vQ=5r2- z8JniY0N%a5NwXPdTUbmHBI7(Q?+t;veZjb`Y|(w znd)yfjC)%>ett{MLv=5|D?EIxq%7?17U3@819u}9KjIer!VoIwRK&hU&D%zo)SO(4 z6p;#-V$KK37&=@-D@q?r^_A}-i~_pjltgN;tQkNV=;K43J1-JI88_orAy+5bB00X9 z{<*UBF=NALtftkCgKW0o(@z8UuKGg82ry)jE5GU;Xz4|}L498w`{e4cGUPkcPlGbA zj=g7R3}=Rh30c8v)T&RP&3EM9gsP{Fuj#=p*}(1wJcaR0CoZ;m{6Uau06kPI1Q%Ck zY^~r?1$)JswLOFpXSU+{{8)JEsq;(rY@e{1u0C8Quzjx#^0ON|=vS$`$3jP6{Y^c+MDC)@xnf4Up+WcXa^WTf*!GjA&Ur$t#U zxiIvYk*pk6<&I~w9a5{Oa%M5&^<)kgZNTaQ78S6ahg3{hU1-+OL$sxKH`ANYgxNt~vk}=0_G?^kb14yO1Rde-cxj~}`mE?xs~>0*GMDs7C+}DNk8azSHqXvjr!|d^ zi=IBU1*1towphPio_l}+ds-VaV|>U7d0(7@`emdu@a6F_E#8eL#zh5PWz=G~=R>1%{zQSEWpEU>gi=NbM(A}oiM^J^RbO}b+jXcfxZ#D4E(B2(d6HIcS^3v0k zjnz}`!)`u)ei>iz)n-gEm>TQ>z1ba#vb%eIqv_tqMo~2tsboW0#SP|$*EI?AJ;OBs z)QQXYqN&hEVbJyM*icvI^mK{Th~p8$G8oLWkDP^CeClm;%$dTj(AthnN5ruRL@D5j z=F-YVi7aHg*fD|jiwJ&LVJ_yqrkLY`cU?c+S&db0?6zpH3>)KN#@H{KKqk{STX_2! zP}J+M`4O7^TkKq)?2UMke5f+L0#j9$ZRAbhOuV!2Y)P z`Z8i{a?N^(Fopt5-el8J;pJ>-D-cxGsbD55!6m}KKYp)s3> zWASb$7q%WG3&>Weo3Gbd3o~1$@`@kf_erjBT`oR<-LxkX#d0v`8D=$NoIh7*k?zE( zxUQ7uj`}W;=C?xPVGw7d(@IWn3`ng%fw6DJ6uN1V>M)kOR_F3dr$3dGq~3995K4L- z@W=Ki)*BdaCDpn9SP3puVzrA*VV%Sww!!(nK2;ef%^T`{(>*V(X=NJ5HEY25YSgP z-F&hPY{!PXVHFwVb8j2YiYI{c1JLD=?mND{UDn0fSlCS!THW~_dYH8A4~ZU%xWD7! zt|W1~@=C|u05ULgI;=hAQ#-bvGYwA1Io*aUr$B?$!j@suMb`?!N7La&H~U2(vuHhS zIDN%CVa%94aK0xj+K`u?KHZj@*>36c6Y->R*Lk&|rM{;gurbMr>{N&+qi^PV7cwSw z#7xzzyYHX*e6m0!Tf?I06TEk;`wvz*`?eTA>kXaxxu2(C3@7oK6+OZ|q!ZqTUyU}h z#fh@NkW zegwA^q@%;8jBO780x0w{Scn1a`*pVIY0?qleFXyheI0v^E#mM>yR_+z5DrBFfSnXD35Wn&^wre+^!x@l7o;)xFsO3BMKz4l=vCFT&*-eW{w_pNaOrPvM_ zYlq$!Fgqj8du&U(V&%r-P)LpWoRc%8ebW}heB>iz?EP2=oWSgAD%?^}t9o=xyztz1 zp4{#F{UxJ_m+J@p(exJtC$p~Z!F#_IJwrLoe}1*Bvz_2kh@;^EPSMol=%X=sOtHV< zNhIuzrv&mh2okw0EX|3l5ALA{9l)4|23Ej>rfz!bhSobmCp$tz8ZxNY+}I9@jyClqgX#wP4r>=6%YN4di<81feQTzQlj z^o^ZD6fy3>eCMPN1$_|>yxl*{Vj(}Q>zBOJPRFQR31b3( zVcBGQ27_Dql+B#ZG2AS=p7a2-g(5WOzSrVc&sOr`EKcZ_h(o#OjA0X1ep>8^@3(eM8qEr|* zroIaz@0fp4s6^ZyxrxuKLSpxR)~ z);M4;wfiJL&sS6=9!F6(OVc7iGs-L3;>^Y*=S;0MYRj3`?!g>T%S=ne2fpfLTQrVL z#GCbVzpri3_^7I}K`%FVLx3#6s{ys__HW+s3HuT$m1v@T3=Ivn6$}N0{6Cys;e!J( zrz=X;;>%CBrKAC-B~Q57&SPQePZ3H`BQ{R6AMwIx;>5wUE|Ez0-*7H7%eCitN1JbR z{ea9e3$GR47rsiMJmkdkaxO37bZR z8TR(EzTfXAyYt!G4ReYi$ip7(Jv)05v8+{F3Ak&xgOlxfFK|V84%PAy@KuapS8#Q*39)SNX(DE z&Ze@ORw&zw-~3VVD8kM5`r1Z*BP)VP=f1px;jN%x;vPLMw6juo;B;`1@-vdD6m>1x6LdWQ@skUM1e<8w5iKk3hUlz!_d{Oc9`FLoN% zLG}gUi-6qhU>A5Rv`xT7Da?>B>h6Aay?r-%cU*`!Q#z4r>?Ws{>>88t)PV1NCw z0?b;vS;=<16#-i3l>WSZ4%S2R*N)C#8y;AO^&eT|XDXeK;cj|95NhS>5>Bc3_!-2A zFluSx^HMwCp0QqTZ>X1Q1$bV>KEFUIUWMtdzz4Es3!bJEH$hi;L;WKevfp2CX#Uqe z)*`xj-ONTFU$uv#aPx^!OqIjo?-o5Xw8@Gpl`KcmY-1|F}?MjXDW? z%K>h)&Yqk1Ktlq(pN#fmq}WR>JU}Rw6JOZ`eLHzk+4|4T)H5i2AT2AykTx~z8z_WJ ztI_?mLMk{|9UR}A@T@?ziC*qUG4blXlvd$9Qxxm)+aNG26yql&Bv)Kcg!>4&vqQO)10en7(eleY<s^5mE62`o6gwr=Ity2*0;!s=afT z9^6f=qL0quY;X!lfbUb0dAwU0Rt!iZCJ$D>M{$a`Ibk;tOcH$DQ)-5Gt?Q)Y8KZS1n$2r|`pb$7#?z|<+K;`OO| z2RktE*0FUR<{M!D4HDQ}X`m3WKU+F$yZo5g*5E@!M9Lg9;4BnETN;_i3HnaRlx?RC zu)FSq8fV1ep;Y6J#>A|*0ov*Gys2;KvQ=nSg+yDIj< zg_SA~fPq{t$UtagD*NXh$gmdhzwSc*>xdmDrH^1L5EqFx68D*;82QDBuYreIm3h(c zl{U=gR#i#{jS*H3bJ=p~K#SVV*g6Uf8vlo(WdRJW^q7*uDt}sIjsq*nSP(S|zPkZ4 zL@^_!Pc9-laKqYG%l+PfiTT3lL(b!kW8CJUIW|N-&qEEA+Hjfm zz40a>t1O-{I67698p#UQR8or6sb|v3Gmr+PDuXE+@Z15$sgz#Z`v3%brksBRl@2%# zJPiVN!_14;Ua#f6Ku==;s3Zq9QrK*uHC6~Pn5|BCK)r9L?!@5}sv|cxI7!Ym&hjwc z^yWbN9vWJ}bUDZA?Y;NV*aXtp#~))NC2Pp5elw_b z^_uBIGeG<4egAzJJIotuLy0Z~GRut3a}~$uCmYwa7}g>qDU=n`6eAx+SZNj0-Y+gL zvMdY`PdF_$OYZPG7U32RGr7)JaoK5r9ka~4)pE-N*fqUN&*$h9M2tT=ydGK$jd^D~7B}U#*@rgd?FrO~&eT#D$n6*D z$55c^0byQa+?$pFpu^l$^l#ugCw>Pi(sp0@>WO)2MYVGScNo104i=OplUUU9l{21E zI&AW*{Zn6g)Y-{+dLH~pQ->INm7KiaN}!O(X{c}r@x@!xWbpvRiF96*=l>wztZrGX*~;=4b{#77D-Q&`cxZN=r$tzsWlTV466rO(5p;ZiSd41l+cY7V6`A9;tU-y1Ok9l^C_!vsNs8 zR-WRr><3SFY+%AXb~D-sa7zlSd$&NK7;y7SIh0)Cp&cMArOThpQ6SdHdTG0rW>zV@YGJf zzUcByp!73uu~>sjF@HUqQ{& zI(%Bp2Y^=oJjNjd=6^ECGy(e7m!Ak}Lp6R&k*F#s0&H4WWPB0=7g?#g{x_0M#H4@x>9re7T;5WC?ZbjdWW&E&=UEs=6?XY z0ldQqfava^{vDn$Z+XsE`ZS|Q8Y2b%kll(lHm6U)$jWQm)7YShx`LXuYz_$m>3dnR zM%}&4!CzW#*MA+~ugIg8+etChJd2Epu`3TW^=LUbt}E@7g73YVKnk;@z+1^iI6Q3Z z67%hy^so@j-O7kw?$Nvz)Q1@UxpMIoZ|S2*_utTYNL!SDehT0z2j3Ji03jj$8=wY1 zpv-{F{}hOy+JuB{4Oento^MnDv0{;viEe&HLe&GH`#$HN@zc}ID{5ooCaozJ+a!Cf z7yCHcLX~fOtyL$!g}7_k{%&g3da!|D>j7LXY6@-k-J~_2us=@jwoWjn;zSX5S@Eh1 zdilcVC<1oFG6ha6J$48Lq5=B^j1K${{w_KUl>C}>A7+_SnK^$dCXaJjylRES6h{0W z6cWlj&dq8XYoNnr>aDSh2=jLjp1#eaMi~o+1{6m#d+v}k82(x>{Y?DUa_y0(mR<^# zcKfg}11ItrLy8&TvUD23JhdC-n7o$r{W5`>3QcAO(C}iBOkZZ7-*>F{KNx>k@Dt;8^iJVy zJ9pmpU}Rep=tR&0Rz?W)1R>+flxhIVBKSE{zRvG_E)1Vca3dWWTH5n1E{|S4?fKd% zPn7!-fUIr}4_8F&A&6dtDMV%z|HF>b02)HX{hN`1>uy4+orUa44q{dojL;ayS7XN; z>JeI}+tb;Y3WWDKUK{|ic>WRsk}@69e}hxOcCKRw7HcMbT0ZN-O$j>3#_{$|0K(#l z;&R{Q!>B#edr%y`!L z^9Y?^xd~KqP{M4tE{;i~FH_ zk8$eu=v zlgjFwf|ec;E3>IyqQbC0o3%I)N&#(f7gT_8HituaczYO3XSr07;(b$n@pXw1ITwtL|#6x7ywSeM+LA|cTH zYtgHcvoqtw;IY29r<^HJUznZE74gPi2MAgw|Kov+5}e<7vo@FA0P@suD36U2`Fej@ zMDK6imG&oCQ-#07ab>@+TOEFEBx|fDCSv@tBfl@XH%-BWRSrL_*!4P|4BOL zN9$av-&M330W7t5OjtFVf;ORLd{sEMp_Q*DqAk?$_Am@}ds6u(KeJB4@uoy^XST4% z2GaWZa3qRz-FwLApj4T*^BZY z_v9aL{=+bPWYM})4B0NoB+e%Rlf4o0hQvjUaNr(;Ptcx5w(E zs0fl1xpx{z$MJWx8QZUO2@)B@cSP}t5Lxc~FT+21?9mxCyCq6E`lepfPkiNI)^j&Z4R-Fv2er603X%#-$|2E$5p zR*y`kD%ick^v~2_>0$~tL^6<|GSCQU zcH{^0wX2rKQQb$$9*BbkqccwPDt9c#7L9~JbAH))=$b;w>M%0U)vJgQT2giQGHXoI zC$_OMxt4KkSsIp%>ma-Y5}=b6hN5vbUKIvY#To^Wh)m-S|DX^IQtR;3otY>g8I@D) zX@vx&Eg${I@k)Zxk;PVV)4S&~Q*ex-cXO4GEKe}irijtrhxdM-A>$4s3k@zwJ1;** znqn|g`kjl+CCzRKrx?Ky=_w$qa8`J}<6jaXh&!70!r0LX3UAXzM#al(J)Xk~iz4}y zJMH0wS$2utw>b1_$zj+UP-bE?O^hZZEvwlfZn60@ueWp^dc2-Xp#1ABt6U+XQ&9Q= zy!UlmMlzdmfqI^Q!>(E1$K?bXdGo1Z@3W^gS<#0nz}f5;r5XjfrOP%C0Lnf58z{Gy zb&vIi>%ZSqd?G5E2AuLqW6k1OC`1Su!>lbDTYj{m^2g)}(locVZc7E&u-K5vRWhEZvppQsE<4$r4|xZ#X{Swz3{L>-;60GybN=yc zD1$#49{##S6;zofm?nBhKHuz4n8=`>@Py~us5UB=0x+a;rqPQhKX;Mvjt=1}$~8h( zI*|-p&u#sfMk_FpK>YIQPyE*3AznxhuN2U?-9dGM=`S+#OHJGzZyz-D z{;dYI^S4nERh9`SH!NNMXpmCr z2}dSEF1cYd9aubp$=(&}oXxd9f_r!?cG<;fc!VqQDB%a++1d5QLXl53c*Wj}T>DW% zEk~q_3YD@aCIaAq=@i$?VT=7n( z?5av&9{5sA-q_cA$z{gtlKE{1JW^~G#Q_302O^AUljZZo^8k=Zi^Psd*=ly8UFd5r zCuRQh#+)mZv+)Ll4n-p=09AGZ@L~M}!4^@u1`{=2@3*~UjntoOs{M$ zAGTHcfs8FUlhK-d=&}t2V{SL1XJD;`nVvvv;mubbisWDr-Cgos_!?o-X-W!FL_~Cs zT_c&nD%L0~(IH44aaB^RgGFRwW)GRESTSCuK43{)Zfi^%rq^1!+tK>)ptRmR)v{}lvo_-Bg+HIab9WvBTyO= zK!i;R28N&Ah5>?L4s@9b;5cXNFHZ{4rd@$*8E_oyoS&dGBLOGNHC%eI^c#yaZp-oNKOnOt0REj!CKH)7}H|2L);`$;T_sfoOf~ zQfY=ckZGeu@+Ma|H?gg228ob=7r>aszapi>Ipp;_UYW#Myl#CvI8bzT zf8P=Vys`JFzc4FxcWGZ)jhCGk@y+^$t8Fjs?RcOSQu1FK%BCMH4Y-Vq@{y>^D$45j z^im}Q9&D$2Oyj==1bjSh(e-ZoXmpaW0h@RIopB`4{^YjdhpVhyk|U=Sq-@Y<7R5Ax zjzRBc3i#h4_wJr0O+M##w;8^mTXHc9*%bLMTbbpqyE@KR#cuQwma5=OuufXqs%Wa~ z+^oj;V(nJB6`}9FH%&}yPN{(y-8}g6rx4Zmjw!6^s6}=sr-xe(7!1@v0snp{ztsI= z>+;aj;>ay|T+4o4TTPp|cbCG0eI)$xerz`5++;(_@_c&pPSvzeg>QGRm9dHC}o#>fq6k^Tfq1%(NT&q%e@wz`l#byVsYQMUn zoi}`|3tD%lLuGgE{mlAxP4f3b$d7ydGY2wnrDAyL4^u=Xe7xB|q@=Fue$J$Oe|B0k z22}@s;w_YDOMNozICJjZ?=W49A=&qD+kgf)`9c$_7JjW<*~;e*%|Y|h2_C>jPXao* z{p3eDk6neFS=B>}!`$vt;Y?)ei=GiCoZSKm#Fy<^6fJhsWWFywd&P6KJpUwhfZ-p# zRQ6b6%Da|0<`9P>(oPg_>F((x164a zHmC3C0a)y?qqyg(pB=>yz%<{1dS5z8&9Li-4Og42VlF_xptrC1Je0eW+!2}aIAbp4 z48t>xj`)ve9n~j4NLZ;Xxu3N&X|J3(#fW`l^xBYiF zA|co;r4-Nt8K|E~Rrq{Nef5Km*Yb@tFc#7ma{q}3a)U(57$3vMSe9m06LlG=qW|cO z4eS*uWKy0a4H><&y+%mKch(P%J|mOH*0GkMm#^SVXhF%uaIe+-2 z&=B5JG%T)x3{4?lL!jfyxhcloPw`t2+lhNCD_{J<||?8DL=u##7Q)7=n@8|Vn8prSv`mliNRr6X(7b|K}n zu5M1F%E+2GTnwp!N%j(yWQ@B>K}mD;R9+W_yLtMifZqkLanAkINr48>HdH#_OTT68 z2I)(Wyq;Xkzs`m!rAafiw2$ODc%`uVm8EnW@04YTSW4$vU&n}kE$go1l z@9~b-BT~kmuO^&+9BUX}rZ&_6F;%2>KU4vAI zMIo*d*P50Y5lgGQ!cPsH?4vXdTX#G^BE>IBC|O=0HWFij*{mk|*$-vtU)_Go0K6qi zHLV&rm3g_qTB0)#xQjZb(6k@Tg&e!3ePjE~2UDbWzmTRnug-Idb%p4De&4Ncxvpg5 zX4}q!O!T)Vx>tB$M-%2Y`DI^T^BT`Ms|Z;I_Y^*sC!O!DQsSem&*Ig9K|7)Jzy6p} zQuQz>c_Hcg^iSt4QMlJYmo-!PV9n#gp>WZ%m{av6(DZFtcVt%x-0JXLY57zIZS6LF zLp9TDiN!2h?Beg<#kJuZmxnwFn{gvdoNUoY+7HK3pUsGqa<)3UUdTi!a(_WKVP)xa zAQq*(x8vHdPySjrR((2&j*$%k4C{a)3D|i!?)=SSF`lP$*`RE-P`oiurNcme+LQHw zQpaI&+4;PiS*A!(**H+n|C>8Hp~O2o>D+g$sV7Ix>WXmDr3#0E=;%`n`+@$pm&K+E z)WtE5>fycc;Iw zP(*f`Ue*x_D$U6jD@7M-TI^2W+-|`+fAtUIehGV}B?GjttZrGJPD}QRVd6OPan7n) zfu2_vM%B(P5~Z;@aRp=X%!IA`{oIDKhs@~hO4)7A;qM>oPd!_@)T{}-F_}sSL@rez zf7&XH9C9Hacg25bvDLZ@wr=hiUTxb#P6tIQG6m|veQa>~GdZOPJk=VxT=H_UR}pFn z3;|(E(Qo87R*oflJzkl7EAB&LE^XniY5mc{6I(F~Y~je~H7+}-3G4|M1uSvlT>w(} z{}U5G|4Xm*gi|SvH{dKIzP)9_UqFJbi(RXmye;s-w5GBjao^BH3UWbMdcq=7kUBM&;w+{_XLa$35RIUn8R4N7M?A&?qa?txW#0O*s$%(^GKYO+5%T3I1Uxp zj>j2{72Mnh>`p11Jzm_STJ!yGa);$grjXG`UB8`ec4N_J7gRAh;n~CU_4v;B?|*O{ z*cdf(h$>M)H`sb#Ff6yjHbK^k(>*ttqhOn3?W5rb1BNj(uQ(wRGJVU{U;)|f>3I|? z8(PnWy7=FX`(LI%AR3irjx*R5padr<<9-&TmR5zmp_ z$QPz1869CV_I*asjd_s;#KdK9yimaZb|=7pPX{PPdpf~`DBKN$B!BfiR~Yy{=m-4_N(i}~PcLu0AMZ|-b`rXD>5_hT)Vbe+B*4S$@XUAr=b3dFk{y40 zCQ2Igk?3-8O~R??OAb-Dez_&yO96bW9#lQ|RRlPHYy1?H&H;SH5l9YAS`A0m$zOne zTZ30aEtz8dT~90RFGKMchYhBO_m_Bua<-V({?~85ck1>%Jpl^PCHGS0UoQAB4p-Q2 z_Z1Uu@BFWa@c+V4g|NnpS;g({u66fSdk7jk*S<<$D?TdSJcoJm6>I4)2%tK~lUNze zuf-AE#VO;`8huIJrmeinI7`1Et}m|_TCz5q=vk|F$2!reG8*`~1HXbl%dfL<(AL&w zRn&Kt;JwE7brj`hh4SD8HX%2#O_4-~Yv!oMeI%=n))n%t;XC0PG5qa)+3nT~MaXMp zv%bCD{F#c!Y6-r;)S7{_X?n$EUDj#R8fOZzu)bt4ge_{FQSe$)D1+&fI`7=Q8|38N z-exN}vI%xQOJHj|v>UgemyGOf_(bGeU={ssK#q2MVx^$|aC?=t(RtFVQC5Gi!LcmK z3mYb4Qht4_cK?>&)}x3Y`cu^&3xx@d5>g)X?#Ae6F4LnP3xhGjm3AyU`+eDWX9^Jf z?VA%iF`Pr{(VB%PR)&LN$bdFYr(sCdH(KRw$;c%0&4J-E|7*+6b>5~Q z3=xoNG%38aRNO6T@CUGf@y=B9yPAp+XhoNaj>AZ~M!#bMRMUpwsCV|Xs|b8hn!Q5% z%QcwOB93%!yJk7(D}SP-1Yus$W9o48)Cq^ZB4;e5J+NyzH2s($IYQB<(0i-DC{wYZ zM|^Mx>ouXpx;KWMDjA&OkUm!L$Fec3$^K(cczuj5Lz8hkxvR6_vAkdmEfdG>MCl^8 z30s9*51r0M##r1CoR%~0FcjKB`fl1xIGsOQ-m?>L4jCz*!|$LhmL0~?#{DhVK(`tQ z@e4H|RajVeiSed)5qoIin>K!lTJJS2>&$TJj2eRh)P$VArtT&`98z$+xUc)Lc(v{GmR z#1vn(@~KR7<-s7Q*hLlrKOwJC7ypiP7X*@442NNx=8p-zp%K({$7L3ZBrJT0*QmxH ze;)UB3k>7j)RAa;eKJV1!Fg%XK5mVgS>b|n?S}S}x^*}+*NCO0QQL8QCr;`5$37dw zaH-cT)eDf5P84pzz=WdFokDnHp}NVHf6oH=&QrU`N8y`#BYA$!X9e1tIi25aa-ZQktKux9o4_k)ar%Q4$lgq628ec|y?~8Hq~gxCVK4$DKE<~REXUUM zXWZC?tW5fOOW55c+++svJEMQ3qBpe_w~dB9u-e|3DgI+;u4zhM7jrQ3-@7I5yVX#L zY;SL$i8Eb_>%MUy4z7+^tXW>3j=FjLL~X*0^QH|?cm^+B#nG0!G4WuOLQ+8F#I&eZSnXUB&$^3Dm}*PX}M^S)0j*&@rS&3w>eu zl*@T+x9@x#3fua)&bGIHrc9I!VSE&?{~;2zyHY@E40#WxbA zh`ZSzyv3ae)YM<7^|54&)f#l4*fAJXQIq?A-}4|8<~>plNJ>M?@x9(wxqynk_d`Yu45Vh;Ab?%BFf^+=pH4&m|N z)v)l}mhzs7#foE^I9f3x1OQIbxYxAt>PJ{oeU|KV1Vn2d{{da^jWKw|dEc#-1$+(= zXUi$6MMUy~Cq_NY;LZNRGrRKz&aE}eekU{#jd~+2XDDa4RqNx#2c@tRF^xg$Z@8`8 zd(z?!ilk$8ZtST@@*2=_m@(ZPyutK19@q+ccZw&nXh~M<0(B2S1q;y!`|7sa21O?E z6L``3-4U9~c~vH}9ty*WZ@X)vVgy%crrucfHpmjJ)5$Rep#!zl%;m_>go@UQ$CQWR zDxI9578S}7^2GAmB)=U7&$k)=8^ggdj?{{2sK!$uAJ0ffdSr`JC$jXR2YJ}g%%x%u zX4%4^guJ?q;5aAez3Sx(1Z%dW-j5XSsZM-1Hl^+#m4)B+Ni;2!{t~l#1u2=dfj4K; z?pOBdaGda4nB+$oCvd8J4cn;8&b*r{o7}kW3p|J;IuhhBqhUodF$b&d-_ufd^>ZTp z$GxAtN0+i$^WAO84fCL!sP-_xcild3Q;3U;E1^|g`1pm*No$z^b&CfvW1wS4*prC9 zr&`S@Ct&?vre8ZJBG^~uo!}mpaA8xCJu>s#OLybmw*mx8u6M4&LqTMH$M`(9HKX3i zrEaR`5bG{)UJkabL*W*ieaiC2Jpu;4tF45DJ#XZgT&spa(Fd8tsHvp%1Xny@<7ZLYFUsFInAE++Dek+9Uat;dv=Qp-o{5KR&yyequyS z*Pdj1p5iHsOEGAw{D5XP0i6$bx_EWj!vh)(8>UT}JK{zpqMdM^$3khTnK`A~Xs%7u ziq5{=ml==eotd#&t(ov>g|;c3pP3=`j}+ljT>JHct>4_@v68p#5VqZ2X*zfe#de~N zr$a1FWm{O`w8GsfdqF+3?~B&Kf>WF0 z053q)T_A_DZ4bp7Ms(4fGI{fny9ekM3rW$=Ts!AI-B`LgZr-^#a=QQ&4Nj{c|0?4; zJy|%urbu24<)tV2%ncUZ9b~x`CuDqq-O{Z0zUh$cb944heIE<|l}7c>tol9T<+)LB zWCzZxrB(vu4xK&5jR=ZI-DSu?ECLu(Y|ac@HMNt*1+ zvP^Hp{TxjRne-8$zXI~qFalca-gpF7CO`}DGOh_HzNOLjxJS`$sB$Ce%Ntj+RXd$U&3ag0x#N|BtmT$z?|E7^^8RX*8RL*UWEi03KFS%V8Z9!}hmj3~bx zu*Fx8(phJ-q~)!}_BveP(OblJzy|8}Jnx(+hX!3q!f4B%ui~$()c}K*KIB@Q06`Yg zJZAZHcqJKGdv8ow6?c=;9Ctnk0-i6%+;jL!!IH`Bw&4RkJ31aH3-Y+3S+607%=mSO z!Hm=;U_xkz4UgZ>AQ;p_lN0BZ)SVw-z*rN*ahDci$9=muAFjm!(UQpTLLC0PNDoQ>$!wSDyy%HEpJX7d`$4$`bKv|`I}Ed`MzKldNI?j zB3;X$(=`|esWDXCnZ1uGOQmg&8K$ z(3K710Qfn>J%#i8LMA&iS~-6VtHY2l z^W2J6{Bzw54di{QcIFp4t%;z`Y9tGw_(e zh-8RFGL@ar12HCzkqUEmsvdKuzF#%nEWW6$3~dVNomp!Z!H1$zc-piZo1=Ggg4tj+ zTT$oX_?d6Cb?b}6V>I{YG%MlsS_IN(8=u|78CbLXqMT0jqs5`%86t8*s@BKcy;l~0 zp;QFGK01S>FqWx)L*hP!0y;8N7@0iy>M7TH^NU;IgA#LX`vCIugbp4*yWwEz>GOy~ z(Kn4Dx@}{2!aq;QY%8;h=}{%zDtU7@lR37QG#_nT7`4hFx6Y9u>*l#q_01}f`=eLa zwAzIPB`r}xp0k8q54~F%OSp@k3OEP5E?(KF`!D&|xAP6%6&VT`K$5p-%grR-|FCJaF@@2oM9p+fl@VsiqgO05JC{~VNP&^A@E08{##m)^5yU0r z7>FTWt5)Im8;(j(cCp7+$^=T=_g$}gRPOar zcwI(@|AkaEm|L0x*2E-p4Hv4-DOc`q;JhuTMTf-t%HN=zWtEQI^WXaB-wMoK3GB~P zYRvkjPkAiq&!UpZDE%?~DEf^Qmp-IeJ<06>XqYy7xugZ+y8B~WN316?da?7f%;>cX zYc3q|`G9+kdAa`V`*Dc*-h1$?+qF;+fSs$;Z@qIdJ4AGZQD=uW)8u;~sypX3`WEjc zutpnlJD>{IZ+_Xq^tBw}&Xku)Dt}h8(kv5SwIvXZvEh9~xqHTiICTsnjIHG^ZpvnHF5^Qx6b#ju?qh))l+G!Chlt%V4I zzk3(2#t1ray@Acyz&q83n9>yoouOU!cd;SZmR6E%_B26k3ry-yQoN%VKi*XLlG1Fs z19i(&ytI{HAkqzWHs{d*VpfwAzmdWcjRNvsNfEb=e7@m;pe}F{)1K zUhASOoy$q2sr7;+S0oXC5MHqCb4b4Hx)z=d)vL2=nTT)Ekg@CG1^aoa`gmbNo8;^e z`PF921PzvCsGZ6wO2_utQ+~r)T>=B3q^_u;X!EfFNGKS9D=T&Bq1voZX2Yt3Kes z{KoS#;K;?H0Tw}z%LDKL7^EpBIIe9cPL#(~doVr!M^gOvS-k=Bsp3QG>QGh5;4qeo(oHo=zxkjcZ7kK5 zx~+a2FW=kpWkHLZiBr1ca{caV!RnBePWz!)Q*7=97p;pwO(V4b7;3aUjxFReb zzT%nQM%6RnMwXeRN7#!FoKFcMcX78|$Pdo@SgDXnrgx1H z>(UhFJgmi$>8TP=AS;p?6LdP4cJ7b2pm$fnjnZrHP>o8F-Ox1w%2{vCbe0UNi>^;1 zMs8(v)gA@G-EJWBaY>1WB{`XGog1&+BJu@roXSmsW|Gb_d7YcImgMR5$HyXE+ArFV z3BedZ6*5wBq?ZZmY}7Jn{0%) zJxPTDGOg)lhQ5J62z@%X^_1^SM&f{%Wd!gU(u~T2Rb`kHms4L>Yop?Bw(r5->HEyU z6ni{pifyynq?gr%((?LJ{DLhz64a51-P<|SKARm4e$1XC}LqZ*Q!V(iPo#r&NGL>1l4`g@!<1s87L^O?`fziKS*xT zHmi0w?vWr-$iLsrXI~RRO{>@gk`Q`xoob>Xph=6lle|Qh?^V|nwLrfB@@pSf7+lyF zF(OZJ7>BL*uNeZDFa)X(mh~34aRAB_G;iPTuPdy*c&G_vG#-GUyOw$Hm^i|Znz^xG z%|eeltz^YS#QH3Kpf_`08=yE_i&FJ5wRz2!*E(~qVo1l(*~1q#dEL_AyHcA`X8M(~UgmFPiT5Eduj3LWeKr*>N6PKF?l=;9cU%_+ zg>Mo{SlES4gn$@QOh>IJQFGmvh4uzzs<`KZ6iSCZbmz3GpZ*oAy-^*-ZK2t>ZUJcW z5*^<5!k$8H$!wT}cG!+x4uO7aDN_*_nCPMJpIecuUyITVcI%SWS~qe^y?&ET~ihd2>|rgUor(Q6*y+B*GQZKt_@`{0N5!m*nZ zsdin6sgaM-FtR0f^boPmxBeDl9UIaVY0Y@(xTR+^8!CdQA!F5F_0+jIr0?3kCk29@ ztqjNLB0j1`!! zSDTn`h#=~A;ug_s5w7zeT7q5emvcsZ9Lz-LJR4Qo?otnl)bCzRd};p_V*v#oeS4aE z-Ut3FtsoPrEwu9l_o42d;H_cJ*gx&sWr2AkhAc^LuDX`KYhV9Ld~n=IJ$$FeJ6dB& z=KAW_Ae-gd8oajc=*ia())kRU5ep@rje#%4A2wWz!R6`Q3=&Z9cX92~8TY^rrKPW5 zTzj=QHZZA5Jfa;m>@hp&)IF)NbRuTZf2l-a(>5?S)lV7VCfOZm=#=hIXHde~H`h*9 zFxQ;c!#$VRc`(9_HAO;LN73HOwv|A9$S#b#7_k+)Sk}EPj*UF{8*WiRU*-0_aDMm#fVf}0@LGOSyS`1L8#X&0qc{`S z?+r-!00oD03|6i2)%YJqq@{Z#t_z{*X!Pi4Ru-tFxZW=_ZOPYu7L$8H;_|ADZ`<`^ z2v;-Q;A{zJ6%1J*50MzOcXyrOGn?&JVlI)JzsMk$>lSN-jT!;J4Ct~vy`28Uv<(z6pR(2lOs{pBTa;!4a&d65&JnvG%!7{?K+j9Z%danb zLsnFSDp4`m?H@qKOoaBgB01}82P4iucxmN1w~lXp6<|V-f+KSRd8x**M{rv?eQjFX z4E?M`(lLHaaH`O_Y$m_pR-y&pdfB=Jagw$;#cTX*UmZ+-jSUE{^H#9{#~9G-DhT8e zh3!5IqGc*I&~}!rA}_s3LAX(;xHo6vZW-XiR7ubGXESwL1rcaAoP3It5V$u3g<|*| zETQ3TAGJMTXz5%!kn&gry>ejPE{ruROqKJf_O=ZAw$4DelSTdNX+Yk@;(OgL6u7Yd z$jjioP0$j94^2X+NAma|lNW18AjMv3Vsrs$&0U7o6BX0SM-h7Td6Tzks z6iy*sr5j1!Sa_78drDdq^XbSR2#y1r*zC58hE9+B@QBwRaGc%%Fc%+*1LEjTmO0mj z@ka}vB*nc8uHr$9@3;iJ-nrjc-&@v}7CdxrbF zguUqo>Vq>^ANtte$wb~~iW<08Gs+z=Wv3rB;yGeZPJ=hIh%YDu9wnnsb@T|i!n}*a zD3?jjhd7`Xp(s~}^(BAFsAM85B7Qn$K#Tl(F;d|X_mR;8!%bZgT&5F8t=P+0xMF3w z|3NywY!m0~%)R5RrFPI3Tfes2aq*)fRUy_(eULAmW%EMxz=IJdOp zyN-CVcA86;Kvpn5Cg;r$4+45)^fje(DJ;u3dGw!8A!t{b*~RTDZ}m=In$q0c$SrL zx+2AM|FLiQNU(Wmo>N1zfKZXlk(8E3cWInR763$Nly09ZykE~$q5OA6@o58;?w&vKJl(G$q@DL>pu!|ba^m+{RJ|JKm7ptdi;r4kk z%XGx^qsJAZvg~HFxI8oB8`U9Ti-9=MOn~tK0PMi#vjxB*qX36Yx^=3P0OYXWIaLmi z*d};a$Xx50Q+buu_u{7qetP3$ev56pSAjB(Ka*ZPxc+9a0eDW?>MRgbDl6%Nxbj(INd z2_(Ba0-FTrl7Lw0NWeD%TFURZ1n)RN%3rP{2b9~Dd~mE7z^Avr)Jl?esy6eU0UA1a zV3}foZS30p_t%O?{STUKM_L7V*cER1)^=osvWs@Ei@TDBb6?XwcB=Enp~pcIjHg{L zECue3h!EH<&xs!FU?mz!-zG4gLzQ};zntA3$Ry1$-`ITssoxuacwm28LDBu;>?$B& zryWM3#;ev)NrYP-88w~SV_?aFJeioCI}38~%S#*{5d zVUKmS#_9>`#wiaYBhh-)26w=3lV z$=QB;I|*~Kmzu*+YIQpft}D|aE4jl$mUU)zKAH_}6m!13~B`XB(|{;qF7Edw+f{mVwhkLVVf)&Uc|(VJ&0Z&6zfv zZe3{bj=C@P#f-|gd2R@m?wL_m5%)y5waX;;2Pl+?OPAipbh}8+J$z>(Pd_U1?U*NS zxU(y3Eb->8h;!$5o3ZVQElc$~%|LP2C7;C-({TmOJToBc14M-b#?6nw%NC-j{hflW ztSml9=^R-q7jmA2=``kxd&1a#Wv53 z7YGhTxR4;b;4?hFD=sS!zD5|!bQ^B$E(9?vM$0ds0~-V#XCLjm9Ty=eFOyqQAzFX1 zAMA=XXO6cjuGFzlL&@90I>$e!`b@>kPgKWi1OD63|Mx21iGi;>K%(%C#b^Nwjb|i> zlq5n7LuAeIKd?~Nab&F(ir^xDMDLMm@Didmg*rW%-YhYLN*?C7c$mg=v=-1FrIE4& z-DM!C!}C~LlkMX!wawf35|J);uSP|p>!A2x=^(cYP`Ys02ivds-h_wC*#{+JjeEMr zXMX-fg=h_VJ{wMwY&EctF!ck4GcXP!`4!iuVVX?Y?vCHq5`9whsj~N0i+xzxRX>CjDy)8I9(+~;Z?LA8L6y8% zXJ*_T?Z>fzH**OutQ4sHH^p70aC}}*{(N-Ld~m{us~qc1>>NEFBj7J!Ve({t`I<^}?Eq+rg)T_8^s;J=9 zPyMdi@%)C^rfo_3O>$!HOVmQTJq}Y_yDhN^YhF9@Jp#2f>VgYW4A%?laa&N=mp$lP z$fKq`Cb8Z3EztB-D+bW-@RgOM8DO$70n+07nBhRr>J!pKFymB{4CUD`;(Yd4Pp$v% zyyYloucXIl6)HWrxbXeU-7K%=_Kwor6e#*IEHmC7Y97FM$}osjliJX^wf=T1FOI{= zq^QG$bvbR*;q1x}+n#}~2HH9@cR(Jl0&Lh8dPR(JW>-*9kez66Ovhx0<-VeQ{hM9y z#-p!nuWKHrddeQGrRucRAM91n0V~qYM^jYR^4`0 z8xpna{N=P^8b7=QM_tWLZi+y8S}yn7`^XZ@Sw<1JpcP7H7YjfU^WkRHbQVI{+1Y1h zoUUVO-MJ)hm)r~{@q?VlsZfih-}s9nLll?M5?Uq)!xINUR!vV^c4n)?U2FD-5oedj zEOz+N4H;0pRWsw|G4zImUbe9w$*TTu4-vW7i5Xr*#hfR*qM)MKasgM+8_&IO2mG~dk z{9vjcx0h2bnSiVZfAdq;bN8+h4dyb;?3x+v7Pd}wg9~u^7dyeeC&A`hQ8GmPJq;u~ z@w~b7oxa4F(MD2rA!dK81vWDowCOd$pRCL4FadPGDlpA8Zzj=>Q#0>o?rwLJQ3a3s zNHQ0fGz`6gJsV#DYIb(W2%B#gDtcFY!Fz2KwKf{rm9-IHOmKiY4uUP9ENwupKiNA~ zwOq-AE0VF+&$fHn!*Zimn{AKyO#O)O=1iW`d5C4@Ol+27&Vse`<=zSK-k2xdSZc+1 zHemuvjTryhu8TTUxy|JuKC>8tt1-YRwwY@2@6RVJ^ei+T;PP$vtheTCM|>o)MdY2v|f7I zUN@QKUUYK=_o}s={@@F-orNDQx;eHPrFU4!WIX}f6b~1%gh?3#)p^qQX=|27S`|ic zefACQ0OfyEw^ZwePjsD)OY0ae%(D`-){#hbDCum9+^#RddZ$545;4O z8f&7KX*uw+;u1xaO6tRO>Ts7==X>h`5xf!zS)H(n_vJiC4d$^30f{GFY z)|K;FVbX{^e1CsrwHlC>HLZ4`3sT1-#^6srkHMbR?~&s6NDH=p2#>LHx?Nc}{Ck1q zV;t@pwr5WP>ugAm4l_az39Yc&)wW(d{%-A+2b+kzM*s-|sy8Lw*7B0OA$0OfRmn*% z%^?YDKxNU~!&I1*L^0FsNEC#Qs;B711o**2)uleY!|Wzp#PaK5M(B^pqk#K4x4zCG z=jP4^r(;)$%;?jg$yU{|PK?0%2Rg4YDQUL|g=bIe3v=(;Ee{=vJ8yEp*sdI`Z`%h4 zK>o@}1piD4`2i8;42obO&4cg|*xSRpQ7}PwR+@BFgZL^Sl~@b&>Df$F09H6RuYB40 z5x{gjy7UJo=0-hI{*?gpRxuI@YkB7Jvm(IYtA}_b!nnT-NM^g>RQl`8>|l=HKkEd- zNQ(DGb`r<3+n4Yr8->O@l(5;nrO;}+bW6xT93zyrN(DzC@A{q}off#eI zu~zrjkKlsqyLaK3#7`9pO_1xQ+iUXzCk#Cy$H8Dr&s4b_nau^J6yk`!S>~X?m)foG zTazJH2T}z&l=D#Y8lzW$hEvS&H#8iu5k~#B!^ap>RZft_Wl>Q}dk$F--`wO%8Om!A zQLG%u;VI{|dkRo{m|($9+~t^tPQRtY^$r~*=HJ~bcD-2Ram&l214KKLLAlzGM7wid~&%Q?MRWd z7dATa99XhqCi(o;c@qHT65%erHUzS^mZ+6e!@zTyO)v9q=5-@0x>`ytXWcc>jgRfD z?O>bmLO{yQv7;{F8lAW!MeLnADCOuT`aVJcm+}^jsBKkv^r>zcpF39v6YcO34~Oxg z%$q@R;A)*z#?`ozH8wJMRMF81s8U??B@HmWkOd}?EEw67RD{OLjBiCMY)xj`9&pOK zenbUyaQnMa_lzYrNoMZv`LyOF7JI*s0_9>7PaFrWH=w&8t5hlh0=azdp+Jt9%TH;) zG=_J*k@_Q_F0JJ(Fl}z)ktXfNbemqlW&=^c?hPQRgtO4~S-8hyC;Dwnk3g^8^V2tH zfC3a-8;^xNohw;k8?6#n&7;vC$Gjq2c8o_PJU5q~Sf@N@-PqPdoLB+MYKPfewF-9R zlM{I;XHggSrv|(a3$zkIxup{qyeyB`XxkEIq%0e}EJ_okSY3(Nqe z+i08b{Jwh|GUAZY%)>=13B%V;Pt#F6#q+%^UV z25jqB$GXw5je(#nIX=PY|p|Ut726KNHx{5U28l?%~w8W2-`0aksWqz$4{)JnmKz%hWrK`EB^JS~o zY+H+E2W>#Pwmr0TfZM6*6;QvT%k8r`S2$(Y9+&u@yVtbbj=S>qv?Nh~J3W}2W$Xqq zoSNfUZ}He5e_n}k8NYY?y!gn%JfO8j%N}5?nh(j<;J52*?lI_>@egUP;(|T+Q=J-S z`dyy^0jH+!{MWaJpHuu7WX%r?HolWIXm+frKybY)kzqS8IAG$vm*8em8{<_j z2k&Gik{)*TGRsasFWfxS%KmKntw3OI3;O)dX7Ayv%E;MIttlWMBPTY2~8ae1$MvsH=%N~w?rUDR`(v*g3F@GJIb!HQ6( zTd4-=Is&~7hVrwrp1IocU%v(Od}i`z`!Y4)#j`QY_DQk$YCQ(EZNJ=sobW?PI@g69 zJJTb$>C|jRlTSXZBPj!_NWS=XX85)L1oNkBj2|NBoEre*E20D1FvIhU72ULFZlmK` z7g$bw-87hcCU=|L4TcQ9)|AzPr=)(BkQ>uW_Kvq*wXd^5R&LtV$|?tq16j4V9w0y# z_xXI1?g)9^ptXJx;rkQVhL?T^><{#_YU?OBLZU@a#d&mo5Uq4)3P>F&+=^F^G+>qZ zG6Uofo#GR3_&@5g8xfjysp$u64NIfr^Ce@(&!mAEq?|^sOTX?U+&n5QS{q{BmE_%* z@g)cE^@UItF94KxTqan9J4Q8*IH;TjUwgNIX**eG2NdePuM&~zV&R#{z$nLTs@=_4 zzDdl!3qMki?JV%^peG;8IsaVAm9j=O*F^-ri!siSJ2IGL>U_FCCT5J+BzZw?e2(F? zNppLgFmrKhhlCCyA4qFL1y!{NE;KB=S9~1I(*&qt9BCUCu3}7QnA5Y`H}PC8lr3~z zHK}|p&LgU%**{w)vQuh5v?TCsfXb!~2q^qaUcyGDBwk3pk;%iw;k!}*J)mg7{1 z$u&)2HR69;ef2YdV)}Kh)SplN9C^63O6LCWw1c2uDCb`sP6{8c3G00Ky9(^TxSwCI z>lx!=fGF`>jQ#q#zc}?jL-j{o@Xt`u|AVSSMO<$9FRbKObo?_^{|wc?F!7ID|Dy)> zpBeD^KV;z#Vfr6lMM3osulk2q{VTlqhb;VGK^8Eol(REHZBH9e+p`@(G^yVHQ+o*t zN_C(q1n4S7GPH{N&Z)oX1My2g2VVWd4iigsEWfGH|Nm993VK8y{I-V17rJ*ts@LxP zTmbX;Cx1yv3iBsM`n@|&7E&nJnLAfRfmS)TT{7)nj@Z7=;6Jr5p}$UL%(^jBkp*Ng zPrXPD1`07B_cw7VME^?3|AMs-h(wi}xl=E$iT(68+|{@imU;ObF6Cu}7T;pFq;vf^l09QDpIs1ouS`q$o1CoV;O$U`~` zRooSXDs3_G@8oB}DCzUGlovMJVwIP{0Q`3rkKAKJLxyt_B=Zbg@J)XjQ2IhPqf*D0 zz7jSOfHbPV7H&wFM%PG4;6zC!cg8X(VO#r~%3RL;olDSv*xHw7?&DDE=~P1{MmZ}N zN`yISQS6K!xzV0+sXcqHIXuf7!{n&=r-6Uo;1DqE<{yn>^n1I((I1-=j)nJ`9HIzV zj^XiW{+pxf-vN-Q?(LdNbHQ#3_qVYH2Jc(^MNLXI@g3wZLOP1$IMltiz5h@IQ;)zX;-_Xlcs2Q|_H7_+>1^XPvJ^)H=e{y5~-3Q)mS5am<> z#2;Ilsy8g^r&!m&2W(#N#=d`Hga{pz%kHaIv$EGkM07^}=}O)hC<)GCY`fqyf^FH# zdvbm5nYZrMc-pHi6O=_~FBRB)qUzZwYFqeL5d__8?r#e9WSk29wNufb`yA=B8ft5AxB2p>bW-nosI}Vg9oXIXkkQ-HM)d*x2vhml&Q9svMC8_C zU$+0#LL20S)0C&~!r`qtH$)lc+gNpu72K~e&^5HsneYD~oSh96Kk6D5v(lvD&gU;V z0-eni=f4?*{^>UV4B~)%`WHwroR&Dk#DWAbKp&g}Z1jP`zWnU2SvmXq>T2vg0}Hlw zyaE4>eRTi&e2$yg|9N3Quk(3)?n|dCzrD$d%6^dniuE+Y8t)d`0PjbPp2QQMe&CG* zoyiLhUbx2kH=ZL?0Mz47P*)2h7(3V<2~^>pE%mW9wShhq#PF{3Qoz)CW`IffQUK1!{vv^H<*df`Gp`jJlo1fvXS%hKRM(d3W&Pnm#{0%*Gq#Eo^CQanhHY zCYkR1ytFOMV|HgAahH8Aq%Aq&mm7A7YMAGBWs;K#(x6esH-a@*5akB;J&e$67S%f* z9uJ|>lWvJp8&3rr|LnK^bI^fj@EqA-;(#R`Rl>$rMp7WdCo2WkS08@LU*+Y6>8t5N zzmS0;vrXSZfbk)zFTH-bloMO2^ww0JO^UFMMCA!W#)cQrh3iyS5XE}m!$9J;8TmFM zZvuz?*zqY>kD1x)(bZoc`!6T}4wYUu9ORqhQ;Y~o7x%m-_JsM4;m_;;IOB06)eC!)K(onftuP@Ca9(vnlyC$hmp|p zt_ZSxe2Xuj?(G~Q&?XWh*!NjK1hYe0eoqyYT#i1ltnpN)oUJ@@m7~EUjMokP=@)<~ zl`v+pKT8qR04W&0aQWTrsYDSlO{EXU7T=?&t|^ra{Br}bH+RzXJwWaf%^|9<-T^^y-wZXv3{gi(ngHo4Ga&}8^G8le5^ zizos(F6!PZB^g`-T(y)kzF=@%W-{hiL-^CD{@Qh4pt+iX!5qDZxJLn1YmjZkpS<+N z`u9)!FHV+5%kb{DK6NkSaV5)&oSHR-6D-jw?C=zs^UkvTfATedZ>&#W)$PThjOA|2 zS;?Md<9?lTodQ&dU6Z0D3@hWoIfO#d%)c7qzwz4K(ZY!9-OLJz*SDAxQ_9uX59so* WQk$4;=AEVhel*myRf|;~2L6Ajvtbti diff --git a/docs/uptime/images/status-bar.png b/docs/uptime/images/status-bar.png index e0e9b27555900a5a5d7de1da847868fcdf4000e6..8d242789cdccd7f2474eda53a6aba788c64e0dfd 100644 GIT binary patch literal 86423 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�z9$~u)fS7I$cBj1zTvO0LnhJ*wpyVJZfs{ z-tSkKO$T zwaO31x6slUOZb?ti0?#?){kx`I*uze!m3S3Da#WMJMV566g6ABCv4ED%AvviibvJh znuIeA-0bX$g(=0Y11Sa`dXTabr?~a0v5+8fhl>@y!U1H?Jtg$NM=3K**|8r2ZUCWJKzY zs1`R%fO^ol(;VAud;X^ov04jS0$}H}MvGZ)^H=3#894P~c;}yXKH-pPj+d630F)HG zg8WUQmPg6>E?J3uGvh{GSz%LpDs8p{i%U7`3I@l=B`z<^=nqcJt3AC5uFy!JM zm{?sQ$-Hv!+gLRLj!h@fMdVjO^FwEWd6w#is=S5(drZ#yRff2UJIg6KBVIr3ybl)D zkmGDLE`YNF|By~usGGbc`C0s*jzzle#SoxU#u&K?ANfu(>sqa_&-$svd?9qARCzV^#+7j1$=RB%zMBy9O87F(3Q7 zK3=F9HxYccn0hhiwJkyJIeUsDyD#a08hF1ts?iS5QDdJDhe21^e^!J>{05E0^Ksu$=BrDhI*-1lLqCgDr5I#qULpc^Cc<+(i z{mJsxT5a~}2k<5<$8E9?l|^lN<8tsbq0&Ka3~-_Gvn9Os2ui8VE<&Ux3UXMX*wu#< zBiemhs38g-6QH9wP6>j}Bv& zsOs=HfkzM$l?VDV>nGJ45*e@8CMQ$5j;?YPnL}|N*_L9vy7E4_#0@;rFE@7dtKr4JCon$2q!tqY+uHo z;E1Koyhk+G(^L*&FqOoV_PIIsbq#x~Cu^*G{fR$^s(^s!v$MSC)Z}7`Nm6gliH|e} znQh;XTQV64M+2FCz{!%@YAvn68jm-)?O>d>=^*0`owhd*mqopUAqwzM9(yTL`kT%g zCgQE3S&BIi1DMUZ1y8#OR_^NZSzt%nE3S4?7tRgp(m=YItkj6;9a5sUfrh^Me{f zpzeM@xrhz={SSi-&5MjQ9)}|OWctE)NH`jVrI^AWo1QR`u=lUF>K1*axp5(b3S)1j!qDBFMfgcut~C$U;7HTum9}K;R_(p2ZVpR3q9;70qK632q!tM z{kAel-{3|rOxa@y$G_0NHoiWX>9rs<=s+H4;<`Qzp2C)tuk&dP-3R>9RRf8j{p>)W zM&!JS_&`KSY_&tg00QS#^uE$cfW0wJcywD4T=C+*7An62Z96TAekY|oX}QUo`_TeK zM&-~vFob@|f4yRNDyS)-*!;kkvlDBKVd%7~yKlQbZSB7P8<{>WI-{pO+cnnbxF>RXOjP8M zWLq)bfU!rtiF~k!6RTd5Zw}3ekL5QdFXJY8tj;Ct1eKYa&c{^50Of#D^8sY5m=EGm zbJ}BnfbM5e!@Mi0yY}_1^xUWvWNk)+nySMMcfNAQ_UY-iEd$Ok9F?Myg~NoWw^^Qi z2t2UCUQ+%+L{}?>-?!Jgm~)&|e)8Vo*hNLHE>gMmBD-SqdG)hNJ|ks(PVs>-&N@uE zR+F8$yhfq9af^*yn|&Z>jc*n8D4E?T_lHw!y^CZ{_c&&-)z=5I8+;#l0K^e#H7nJ% zu-x{!MmwPkJ}@_Uup+-+nF+S&mozHd|D~mH=k&n?;9!w;Ck;+bWoRX(4&Y3vX~pHd zt(At|#|G~ha?N~kx1I%8>dDgMncQ3+Lu7Ep+pxn3X3JV0rCHx(@u>A!PIr@Ni20%o zi{abeScxvVxvQjfp@DXnG!n>W)9o1#Yw}OE&)Bg!8@OLI?$FW5>G+eKPoIV3&4DX2fEs!~_-PwqM!76+1em z$82hEYb-WjpuvJq-fs}7G}ukJKF1|dNbm10X>6HDrBx;RpgbC{8$S{0R~^0_FHZfA zHohohK(n)Q1?a;TKtk^(zWt{7>2*sZmji6FBc_cI>OIt~B?M(LX3#W$d4O482JhRN4CrS^2N5w25f(ZY`V)liMWY~Ed^8@fp>`z(u9h70 zM-=(LxGNfNK(p93k7#R_fOIBc;^<7MzvS+!H3-RSmqCP0B^nwh(1S$!i+ZmPYC6cj z|C&-0$+!H$Tg4N4`{$41v>qCMZ)AP>K1DqaC>s3>F>NoY>D4xW?&bwF?d!YSdYfa* z=|aDw;Sah2Wj(IOZ;GAF0wG|%uwx}m{?$!ET=r3JUte<`?m>c_`Z zmEek*PBgzeh+*M128~~j!5E@ie|qFM67!lsN2zh~v&vpB@sPM*QxADn;^mtNfDFO-leM%m8Tp`Vt2o$v&`>i2Jv z%qhXuylq)z7HRQpifn#`$AS|H@~O#2#sS&N8$ZO4JlXTH;r(6cK@+=m89ZAz-O(v!7Ilnrna1-u~Fs!ui$QD>XWz5NV2ftiRdk zcUxs&c6opaeB((O2`MS%UvkUR5zrBQy>?t<(yTK2U#I?JZ%&QG-QODejqhfm@sC&k z_8|2=&OZ!(TQ9pj;;)$flhkSApD6j&#()S0``;Y#yGA40o&NyMF9}7q$$nw`AL9Oh zs)XO;IOIm!oc}PpS;&~@-@?dWT(bU@SC_6*O{ZP751*MVCfbWsN6e*eE|AXVvnX_A#JI{G=mF?x&y0-xf5ry01t6LJcw-zH75phYEIa@yW+~xg>8Eyd zuksvC8D5zpH-i3)xXjWO#-=CEGV45KILe2ShKq*5J&B2nEuH=?Z^6B7K$^?CvZ<*= zvd1l0(u;R6KZc+@4t6OKi{1KLTKzxHB2kZn=kqtDL3Hl6pXtyuAN5Gy@ozyY>r01% z+7enEM~GCt6I&A%nf%d1q%)Ixresf?+uet&l7jin{#9qiSlOJ{eo}rwRFseCsOUYm znEuZ`N@HPUPInp7DR0{`N?N^qi4)a@LZ`J*T4r=81ycAIHIa#UQ(5vzd5?#pMvMSg z1%u9k4!LD_W|&u!pHkbghKNp?WPw%~X)GR>H~=fI_W!2TTjL>5a>@5KSzYuYz`^(! z3n9e8z+Wh~v5K<{gn5xun|=KEbg|5e8XIgBRk^L@mW{yQebsOHSQ~{-kfD{X$bSWaeDjk&G5u~>uB}fY@3L+{^K)Q74(n}zrNbfbY zBvM03sFDyu$jx)k|Gw`T<9>MV_2V6H#@KtW?7ixobImp9Z_O3^)KH6oj+2gpf`UOu zTho|=g1(lV2GLNF?*(s$S1Bmy20b)1p6Y05@ICbhxO#ZIP*7;crle7unrtz@Mj`$r zj9c+xy+!gr`n4m)N+3;)I*8n`-{7*ev_-_VewBzux*hLr17x zzZPUCGWYaIY@Y_amyJV&1dL{pzyYY-bW#op>IR~aPZvya&EKZ5O0u;w{iz~+>p|?} zZ7SA#-)XI%_pPF|=Mxi`Uk_}a1mpdv6Y>s<;ZG|fBS{XAHTZ^?Dftp_l+gH}Sl!_5 zsm~QpS-qQ`B0O3MfmEfmPXdYE}}-3 z`>mtj-{c!jbUoZ4<>szN>X{dZOUGO;mQED8OUG5ynh?ej(DhYBC!O=bpi}2hl0@9v zt(t=2vE{p;YhSZpEzZi6lL`N7(xYbUl4a{Ve2+fhVu6;`LqXkiVY6PxcuAv&sTMic z%Io9a*}9yCKhrt!y~YOdL!mvk>r1xJ z^gsAx+Gvo5*#Ty#|Z{mrOi(jjA~dYFIYlj$kFR8$H!tIeI9+gszy$Y)bf zcc8ud+C7a&mni9-Zn5~QQ7O_~e4wrRO*l)oUh9pNmb`<2A7$?1nLnpC{7q;7oBGXFx@%V{Vh8-Nu6c)ebm!f0FX_fYwPnRjL+@?`i-=v|Oc>L*Vz_05s)t9dE z-n~kzm7kz_mqSP6?uVOJA4Ift6O0Ql&c89e6O-_wpJR=A^39S~Yl8Bc=;7s_JZV#U z8CB8o*dGdmPrAo%1PWwCyB6TxZ?$rYYL$-@-6=z<+TS9cC`_bnQZV`nJrWqb;T99n z_tNiL^IcmZ!)TjN!o4ZWWqu9KuC`pe0#z(HIvj`5FR6WzHf{tx@7wsEql5XAo)fbZ zx-&PC4D+*I8>9i#9=|(!xA=~yi~4qA|6OZl z_=j7+G@ayMUUJoI08h$U?1sH%V+Dbcr%J=0iz;ju2ivE1s$)O;P(<$u|?l``1`6xG1|YxUd(c`+uI);3)KbDq4z| zzTqh!biX0XT2IL+LNlTyKi?^TB~Q}eafR`B<0}8B>-oBAgKilDBhkHiBi{!+%00r| zMe7Om!GZGdx4T+K`KU>Ysq!tiEu+m`Q;srhnXTEIZRQ!>8LAnsvg(<8o*SOt4OX6b zPZv+E>8jFpPL&oQH854WuJtL-;MBI|6Z})kSFoipA8wum8VpheC;P&!Dg87m3-Y7RS_At}wi1 zD5T0{80Bn}bmlzeDCY8&P;{Ad`z3MsfSJojLf+@k+oBPtI!UYbihv5xi-^^$FIo;5 zSAnZ)EPBb7$u0sx0`Uf=#k<9&#a#L}285AM!^Pi3rOO|LJvV$1EX$q_kOWAP+#Nlx z0cyJPCstaDzVO2&k+r>tiEQven9yR`;C8Ca!~$HtJGA^bh-|(*eI}LIqlZ}2*u*NukhXAJ zm#T)U2wzv<0biS?-Bzy_t=4LP=%(8KKF)IGW!Gw5Nx54U%5hAk9o;6`h7D25^_H`G z6ariG1+V~eaEyC~ys1XDV`IwMkY0!)QV3ZBDh6GI!a?ocUO@RU6+#0v3OWo$knZ#) z*L|2`eoarqc#qMYY5K}1h6g?}x=nLLIjxl?u#Lz^W_FmRVt>m4dmCE{r=}~D?>E~-#J3m|U9z2?qlvFr8kzT3q z_ehz_c`Wxt^pj_ttLE4j1UvCouZpX|aJOZ-Wr(*|mi5x7=I!SAg9`^m2ideNEZ6yM zb*A-L1t0P!Caoj^1sU|2vLG)*$F8JtJeJxWuFsMKY!q3A)=9c$XH`DTlqG0O-jY)e zaX7TFzf}EEHlfR4K523cwJ&?%KzDYD>r#X|z_IkF?2JN#^l?Z=@WN@ma$@xl{Xe?H z*DO9D3u6iaMx<}o5^DrC5;=0M(jJfMj>-#6e0A0y9eI!?1u%@6Hn+Zu8O9DHzQM)m zlQE-e{;nI+>zB$Wn+FEJhkeATtVFVs<{*l-P^xXV3hdN*|kbs<$N)vagAt48Z8_svVH zd>vL>T^FratOphpcEVv8(V2TA;uw1smxykv+2|F9J=syjt5R>{d91;-!J$F+`trI# z=E%cp_*sLx=}Yh=wAMH7JT=8e*_X|`y=DYpg8@ci_!psPBIkI-m*3nBX4lPJ6k-*Q zfXa((P30JNoI_dg4n}OA=o9a3ghKpiN0q_L%5htJHYQQC{a&ZovAIa1YR8*mYw!Yh z&~R%~l;2a(eox+-MlfRxx3AI)s1W-DKOuVj>2!sv&=I5&S@5H#?tV?_s^w70Pt)ed^I$nZ|#eTY&amR zg~RWtOLVtVxTyrO+sqP%LclqK74~R%m7uvHq>-pL>L@09o@+d8D&~>4SWS}73}6;I z6VwXKLDOxvo=Tr?b^C&FL&yLSX~E>=(|JV&>_^jS%hVA|gjxj5K|gZh$oSNM-)w@H zGtxW6=lFCp7ZhoaG1}Y+StssxGWvM^->(BAE#1+KEL^wL>Hke!{Q2Sq%&>zXDUg&Y|h(2&LKnlb91~nUEOP zA<-GRk_ZX2w7uY2!)oMKtXYx|DWrEj`7`n3W^Ik9;TLomInIrF91Gbj?Mrl7qM49e&pN~6pF9p z$w?oVKu5k;KHk0o@~@O`|5pxqa{8aw; zpyMl1-+(*+UCIAlkETn&3x5y4Ko5W~-#_&_Ist+Lm2Thur=kD#`|p0byz=x7kwc4@PC&4A7B1cQc?V$5&Vx4{WrP(>n)jH%5;k2|BLp@bXUMB@?>`0^w2ai zB|k6z!yEEXg?!!n&y$>1%-$JDXCps7bTrjWUtK`MFK4ltarGU05VM1X8o1N&y{5SM7q?#ts)}#X5AKdQUR9;IaOwa1P2|E`v?9%4 zwERzp9|)-?C_QPByYV+&Cs&{b%=w!>lSldH1{+^LPr=g7D}PtPYd(dszalu_Yt>J5 zSDoXZ`7%cTT?MKM*=~Qus;jDePcAzdBoG%GZnXbx^Gnw*9<200hCWU3g;`o=Pluwz zSRdW_3&FYCd~`|OWcL9#5L&8+9sez#cdW4IxbgAYU&!HaEXxPM2W;+84>hcp<2tMx zZ!>}Q!(;vEyL|dC{!Qn|62iqsQwj0)@e!~K$l*qusfLY5q0h^H#$1L)bZcf29po(bvZ%2w1pQMRMC7LON-!>X*Qx((G2${ZsGUP}YUi&LC+^5NcJ};}?le-wdNE6gg8bQ*s%EEi*KW`NYl=`H!n<2em=b^Qe5kN0@LQT-a`lw|e4)21IRf5$^{ zHr%ytI)Jz6gOPeLGdN6sg?P!D>oZ@N`v<$=ir6rdPj>26(fy+lm*y!Q>u&xP4V$?y zq4~lZ3F=YkyvOqfF2M4hw|rnWHy9tdw3o+e60Lyat~31n5e?hBCjM6f(cvTT`_jBr zNu5w_pR5k{)d8AZ_1JC(BvCI8_!yY%C@U)651M&5AB<7(&8AkvaV*O zT7;(7LF#z!u{yc$J(uR0o+c`B;xY~XW`Uu2Vnd)lJox`vDY;Fj*8)O z?(3XlRWfFT;U)FXV@^}}qoVXgn0F_nxct6)`JoGPCf9eS=s4|IxW#~;Ouk}XdU zom}N?#b>q6_-aerHrp!N|Cg)!ZvlF;ni=RoEAP^}e?P69huW}XwHu`;%ZzuMgA;2u zKN{vjMfh98eX^f@ER1!=^p{=Bv6}(uIl~gA%yTaja}z~4k{-|HrZky9KZ9ku9OWd> z>eN@~Snv#HZO`UBz4`^>-fh42(51bh#5tJ%>$-;U0DL25!{K>PG3BIVm%NwDd^m?o zV0kn9hjt()!~4u7c{p9c;rt{Z4vlEn+Jz8&2a*Z51~O%vOkWj$S_{2b63GWMhL8Qu z0}M2H-Kr|OW|RslGcCOJg5fUdESXjiFfRlpLFVQA)&`PwQVEhn$wj)_Js;QkeKMx6 z@qTD{Y5#n*4KL}w|G^JtRrkbfYo<=Gd0j;Hw=3-#5vL*<(JSJGyG*~9JeZQxVin^A zrQy3ued*6$7Qdc(|HqVa=RF9~f902s7vC(=s!qFy&Skw+P;byK7|upr^;Pd*R@>iL zR`R+KhL9aSy-s&lkNF`TCR`u7-(H$LnAFKu5b;nTb5q(RP_b)cx19UV4)5})Z&Zrj z!`NC9{MuKaB9sWhIdqTvk zxZB1x;}JEhzs|DW6WZA)2%`}Ot(g}-)9a3`;0W_~;!MAj>OV^c92?RXL>9a~^p0(I zVPj^#O-aR=T+J@hSoL5$epWP7Z%SZHuj}0#YNea9o#k{Xo|hNiBiDTv+wP7GgD4wD zGMjWuMyo&WDm4Ns^C0zK*bb^KYx7tkG*e!bqLV*h^EsIW_D$lqcZ}i$?i16hu5__*JF; zJAXt zttW3EFn(~$_a1xie}bf+om|%t(up?JQB?9pS}}Mqa4A1=9nIh>itESC-H|-UBqlw2 z=>#Rp0`Phn(q8MqcHiG~FEk|ee%>b75s%LvPeyiRF3)=S5tmv5l!t=me+6sl?b;?< ze8J5pq(8bfUS|<$)#_aoB#K)~R^yzm7JX08mJmhFs5_9 zLMKhk#}sJ5`)}qJO+MLz;B)HjwHry7bpV|>Mg@7cJM0JyB*D42Jhn;83hPlu6`+|i z^RLW3aZg%DvZvqhg$*MxlSl%zX%hL>Bokix_Vwl6nwaesN>y{edH6Y{TPOt4ljvV!j9b z_?w_51(x+yBjw;!w)?hEx2LP_zo%Po5~?Ph9aSIB!027@ANR79$7FxpsSfmB9R>@U zgTU6U$D1!iC&$CmEEZZU2-y%78}k+gk4e9sheT{l{j2-lgnAESJ)Cd$-AIU5 zts3Lkd|?%BqFJmLpI!eD%SVV!7A)GRW5`C@$72HVq#IXh)DUPS>gdvoZn zoq}~9SX;I=N}h}bwq&-GPUK3*!)k&$^gZ@cdnko9U+pv7K~kqs;x-ZHOx3qblknA^ zHa1|I@r56^_{ zLO({UHF&U1HuZhJ%1{@!IBEwjGHfp%T>(XeYR?FAJ`aQjMo z?2AgZ2(042q8NThm&xu`_^M6lrMKu#RJ=$(Xx;O}uQ+xivcJb(6eUhNejS)~gHvEQ z!a*qg!1|Y&AvFjar|;0vy%2nKC|49vsg)mi6Hr15%|T!=__(xc-IaH=!!nC{Z*lTO zFh+9!$f1&3*+Cxsry^7Q_h>M$oUqwx#EVL(iiSVFH4;xY99|w>I^PKhDp14Hr&SHw z#pdIdwpw~+nS9UgK`exiiBGURN?yzD$OGE@8N%V?k6LR(?R1z0KkWM6hT9{Xw%Or8 zL>6GuJqr*+yW>n=k!L;Hi2g4_wkN_0!gOm~39-dpD1wP{{; zZLX~S43D~APSO*9n35{~kUm(np!ZXnNAAea)Fz*!Bx$e1@Mh&_R(_ZTnfrE)WhQT= zYyD2g9Shcmtd1(|VC960K+KY|P|VBI&0~JuujA=V(s^dT8+5lnKdii21&v(oi;pY- zH)EQ>{_DD%NIu$p(s|>9HZ|<=j`>`9{#oeOB)?A9quncF^u2Z0nf(m{Ri1?aG^rxC z4qbGz?mcsc-?rn0Q3vJ)lU%MB&?cB9`}u=w#ftbcouLnFaN&E zZb7eIevC?w*GZ_yKMSD@`sJ_0Y;uwTIekjhJv7vj7+ z12ihTdpJkwQM4EkuUi}#9JBcBvux^M3%$h}x<}ZM?Ik7ZvhBVUeRR0Ve&D!f5Y8()E<&E4`z8|W*Fj>^B_Yu{iwO}?RoKCc@ zo*6hB4`?P-y-N~vS##`pxL1*47J0MwVfJ{{yRX9pl`z?5dlkEb_$%2p1J;N_bW|#M z^z7&Hhd<|=f?h3D?@(A_xA$q4m#cVh3HX^6kc=nzY8nOBdA|0#@B|*yWM(;1G3#45 z&scv4YGkmb#?m+S51T1ey2NL`KKfq#zU!f%0kL7v!Gkc08%;_SSMpU79K8tB6c0eC zWE{b;PCYS&h~)XA<7Sz|u{Tq*wW%roI@!idmQx7c-2nY>5|H5?o6&c6T`>ynFr`sN zjh1Q^4MYT0hQkr+R(jis_SJ=v2Q1!W=B#?A?SyG2sQmZfq`W}^TBT_fJ`?VpGC)GgV%TQ-BDm!9L2DVh} z$#ehY`(DeaJy@?d6W90<3^m+&nVgQY%%oa|Bd`Ak?X8a`nnyRiTG~eK^~FlDuNM?8 zIxk1J`}b$X+o$c~CcHiFLSL2xc0)`N!sl3wJrJ+^VHgie)3<4{!;;4ZGTeI3#jRL? zD+#TsNIcy-|B?&2XOad;#_x2GTBPj|#T@wRq@|*~b`4mt9K}1gJ>M&g1}Kk#ZkUan zdVlyq!qku29h|kel@FD}9b)(Ylo%4!dp||Mwv%N6zIb=t&HAu{-D+$Ko3Mpd92I23 zMo7_Qwq1U3it{1icY#s%IRn>p3fVrFJ3`PhjCp;qw`r*@a_RpLQnqUZ$fg_{n1%Ql zr3&5W{DnLj60mAG4YPVt1_2;zO#D%U_xbf$lS^{N_*-}eJ&tFdude`72P)&Vg3fx|3Z@MWTIQOnnV{Ole z^r-xg{eq}jndu>RZW&u~6iW8N(iMUsB6jDM=%toLPU$?<*CB74LO-=qo03$d8oiY3 zXkv(i=ud0`(rLW(1(#dyE-kS)3K2p5DDD)ydrK~0!*2u5QZQ0Sm>Ppx#&Kr2l1!_Ik=@e~qf3N-Xplzkmdi%C z>log;@w{Oq1W1>G%A02CDe^CJs{kaAk6HQ{eH9TXc*0my+^+IA2-!wB9?g9eGPwks zH+RSG`7CCusfPlFQbGphQ9qWL+Ob7?7M37v!%oddcH!G&U&UWUa79DMZ1(VTM`2iW z3WvjJ3NL8x_Yza3e&tvus4jYUiXeIm+xT+1VT)c|?*oTOlC+2MPJmFp8XM4|eK&UR zOC!R_KI&U&PFr6Cin4t#K>3>;&%-^!6NVj~Xc|N{7WDQwY_;P}RPFN#=J~de@-yrr z?zs(8WxW_ts}W06FJ@2!H66tHv>_)mx_R>0nGyA z0%7sIh>l4ohLee4<03jm5j0d&zW$SzO>6oI z?wifpB|j5(q94rMso*0{ew(S?4c%O{6D2sX)JNtohNC2SgF_|(KTp#zeMJW!0NEfW z7v1{~SS&BI&m-?5?}d=AZ5!C70fKbDxL)MEc(wj%r*-iKM~4ye-@Cf5v0qkFS2c2}7rTtuy`GUB=^_i_S<=E7 zsDRlya_Y*{Z=O^_nzNy>F}L?b;;}-+d2OKd3=~F+m_~ZKrBn5Vr4#3T24y1$e#k}6 z)m?Ci9YLV@Q_Xn`WP^FW$R|7MK+SRr#{a zw}-_CfugAX)Le|ZmW|$v^iJIn?NSGqn~Tx0ON2uv;tapPntb=bn2+@08b;E6=gGI9 z+kq^Qnc4A6!)?n>m3OOesrqmVMIbJ%F4pgOj}QnCe72ogzK)2k3bu*!hTpjU1Baa{ z`@{JW2OG^+5TvAHXnKo2pIscX_ny$SZl7Mt`D{{+1T{UOV&ZUoPkpCVf?Io{z@~&` z+W_Ofc%?p)p+wyN(W2WiZU^+0F+21`y*t&HucWk6qr)Xa z+QPATeY~sACaM)0F$-#p4wQwl|9JbSGb*OYC#LF}eWvml|3~%|F?gs|3=OL@Q*Xpk zFayFRc|;bVFM;g1W)+79x!-HH>)X9%A11@1Ty0fXR{yFrJE&O|RyDS`c0afO7w)#Q zcm(MSx709)E$h6@lJ8C&YuJL^`nnz@iS>Sx!Vx02|Fn1dXiZ5xOu1~2;A&qA*~L__{p*N`stGLak)Y!{9Qiv1?QjhBE2-5w!X(ll9XI9 z8_O{PS|^yRfX|@5)3eD@%tGVW;?G=~xP9;Vf5SpZYGf=VvZFPzid#9{2sGCyqnmks zC|$2tI^w==M8U#+GC*Qbys#i?VrQ~ARB8Q>AAzJF9s`6$y7hMs;b=fC}y#e5dB z`w=aw|I=33U{3*PXn&(YS6#os6$iOf*1xN41TO(6fq4W?7QmH9jbnCc9sw3oOm@tt zCgnama*LgwVcAqq#nU~!3yZ zDz-(L=YXaG?%b=D9lLhBj8lsd#|>2+3E$bkm{d&8+TqO3ayetwqQ9kmtNnWiLKUx_ zU44F=xjVp7odB#$TRb`~i(-?$wCBs9hf1*6iDqht$m|5;pKl?}VI*b&Wx!3(3;^3) zYkxz7N5jU7l}{56v|K0UK)s|3s8ViT}yuTpB?JwZNz|&cjIeCs4?Uhy@F% zni^6TL15jKOK%A+`IFl?fszO%p3eJEhewBuHQ6;Nk^y1g+;c=a&VY^dAV7nfR`cP{ z9xw(Y;ZUs>P;$}N^evi8);B3tJUCFy=d_-w%ghu=joBE@5J(euNF1?g{AgY>`+KFG zgXCuR0wkdYbW@qge&oOQW4a19O`C(KZ)lA|TSwqOmDZQ#srbzE_6rCaG&oh>@R7xs z%$wQ}_g6h;Z<9stGOR!=UXHB?1IZ1S9w^)J9os24{|Z>DPg(V{y_x8MynbI1Hyp%)lO9zrjlQZw?1*;HG! zG?l}5AWJC$$9s^Pf|xC*a*q^02HDU|^Aki9>GhHA+)fEdaX?VB9A$qvK!^2AKSL}Y z&J`?E&v_(-VQ_g-ef4#W+vA`}hT)Kajm&HH^LtxS0$F4M*lAVGjp_TsordCSpn*B$%EDua zK9sFYP2?#P{Bt*xM>zlCUio`hRfD;s>WDhmk=yA~aACn=IWSVT)fc@fYY=qY7c^PI z{UA5uGbi*$kr&L(4tk)T3H5@l0~mQlr40Ci!Bd@gLgPsfmhEw<0&HxBbwij+(^Nen z*fo$GwRfy|xt8G%1m=eMgvZkFg^7$4WGtbwe=NrNn8GJv4DL2 z7cb36UD-y!$6FjSbkRsK`(t@-^dP#EvDRzdwDNnI&+Krilzkuo#WTz1vPyGm8NQ{3MeSZ`K4s?Q@NAkh8&rsDi? z1rsa#O#7(ljnzyGANjeCsuPU()$q}G$#Iawlo=TDMM~-0-AZ%iwKxZtg+YvY(`~t_ zp|2LYR#TkXVrz65=zky}I5>GG@@7&R(rTwppK>yeI{G~&CdG^(nrNprYFWo^Aal+> z@;mm2G%nx=(Mu(9q%1l|I6&wqhutgT7ni_E+h$3`=q{Da{kt=9EXG8SMSO;#GCJQ#6X2}Oz$?KmW z+T6Za9dVAI`&zF1jky*GifIoqs~2HX(NOm=^Vp(lz#OX#lYU1C~ExB zB?P9?$(>&(S29*fm@uN6F-U~G9JQd{X`65R@HKQT(l9sovt9iCod~My!<+c}wb7)7 zt<~&tfa*9vef;4}xcOS#lbMh`$cyeah2Nz!&l+w6H8I2iUV`b^G1V)hYH7ySbxckRS0B=#hKd=biLF2Kd}<~< zJeu9q(PCVgRdt=zuyvrDQnl&b2!hkOEhy!wt-0+;1G{25pQ8~CQEOwkA8g*Uo!2=# zFjIg87TsCZ!#-X^3Cg!!RG(W&z+?7b*qrzX#`Cvjd+nq|{ZNudc^uSj0P%3#OCqO% z7e>14vltx2_-s3td9uw)TGEoXtH+<;cw?uzzMVB+C=4)FXOMn|m1@vgk{Ip#PE zMO@MOdJmnm(-?8e@bz(A+E(FAy^uc{^pl4H&rWDLl>IA?AdLh(eE{_;WS+qEr}agj zSn1;T^g3&e9!mY=)3%WAb9;Ex-s`qm6vM=rw$EvsQ6}f<-aR)Bsb$bcPza&1vd}l% z+7affe$cJ;DRz>qOf?!pBVb|}{-KDxsIxzSC^lhevg|N)8LbMI^+qc}d`m>s>$+1^^Boh)eE;k0X$Pd3&CbP!faB4!ocH(~0YZxA4;q%xbnnLuh5- z?!u5Yx^i=atd*a3GrGF-_XloG4xTbV*rH{AOcfu;AvBg|k9HHv?6t9BCjDq-7k)@_ zu#!R452W`MhC@#poC1p_w(;AQS_1u#9lZN%o2Vt=k%bcY8}0MOJZpwEFA3zL^zg!; z%DoC9*x0wSxoTOV-%~~1?}BQbrY?9{mFu23-v?K%&{jJQXI^nxPyO~z z@f8Wp@J`H$ZLIfl7WKDIMh9D7^m9N#HRAQ*KcL>guH&sfJTdnr)r;n)Bf~v8|5>_+ zi$l5M*><6`4D=oIL&r1R{jk?38Q09RI+&K(JSZh2xrN!SK78M=P&my~+0X#+QA($1yAW6VZ(bWAR{=hLP+ zNX($)(&-3M8P`(-@9+7~?r8pei_SLi3m@nu&O&CK&G%|Sa0?M4Po^%B$I}Z|T`p zMLOt{(3H7ioIkUb1pi2ZA0PEjw$9Ki?*u(D*vX_Tx8{cYF){i;wP8}E%Ta~IG^+}` z#&gSd(l&hIl>1dSjBZcWOB2_FpN?dqbg3`7eIs?OL)9tQraxEo8k_N1xgtN_u|X4%gXrW7PwRi_T|6j~NUpN4(9U0Pt8n4cyxE&&}T+`JUZ&~+#?Q|(wG=OLCCHf1szRdA< z1Ls^_{)MxqCs+J8g1WezBaz`7Yhfa1O^8=}^TS)bLquE*5xzEB70QfqBr4|1K1bF{JCIw%xEy!~rBn^2E{-_NL2jQ5 zL+wQ2p?_XttNW&3^c7vN;0x1NGZ@v_$9h=$&_mBxzM}C zN?f1Hz)}#na-OqTvPH?R=BX=(uh8kDfiTeP=bSHs;`CwwNJ*KdvN1!f$FBBpWDsbv zGZRs{yAx9IOs&-Hws*p?Vt`otu$;${#lVvFGO7=J)YN~1&#aUQ(eJ^C>#t)}4a&#U zLW1(7Xu52Q6v*aeyAgx7Lks6^IY}zUyjE)KSCmN6zN*B%rkjnx60@1=R<=vVMc@pNV@3rLLBfP zs4`>5?>vk<_ov1Cuo*YUL)l2HA^J=J#n0|@c7vY|(8nFh$W*of@;*aIw+}%4O10EEUt;n~BeaPVAj+24#jKq$B~OkACkYMvd9HRL|Adp}h*&kNwg+5n!oRae zLfQ%ZMme?@s(*1?&u+ty4ZiO~8-I|`8rZftK^}aMK05mcaZ^0>n|pm@?}6LMxo&hD zKDFT_{m{jE{Pj;&3^|x#J^f=tmO)#}S|3E|nR5DROM^XS47T3SF^B`Kn!9Lf1N5~ zkE{h3tx(yPHU263B&XB{OW~EpD5XF@4LqGpHeq_;T^iSutM;?Fbj~@St(6vKO7$f* zAi!@H(F>}CeQ)tb)=Xt^OL_iqFY*JoKoiwfnv_qUzcu;1wEF_;`4~Sq({&MskZ8ij z?MBqav!z%toH;zWdq*v6rjlr0xSi|$n^DhoV4o|^I9QR^V>Jx@;^)&=!@qAv4 zfwS@F^&Qkm(-0~QYzbvAI11}lka#hgHgz{(V;|ZV^t&g$&Mga|dyu2;O%`dA?}2eS z;~}mwvSMoL4X;D^c^>l36U31l&%Xr%z7-~)cWcfWMQncpnE-hi7KU=)Pk7@Tc6FKeOGu)6Glw=NZZGUqw?900+v6r?%fO>k%xAe8jmI2 zs-HaSWI+{$SC3yk(?~bgZCZ#Q)D!5h9I;VD*m-~*w{9MK!uu*fiNx`3qIHjh4O1QI zi3`ssKbA`M>Y2?3h6gjK^4793E&hI<<-Ec*`$Q5B~7gQPvz_o>(uQ-JfvULt81asxm zic>z8Ta=5ur(b8U%sK52m1=g`4KH!3pPJBjXY;Il;v>r-3V^p7FmlV^bsNi0mNZgX zH<^L$%I;>z9v%qh-Ey$IZq+=EFm#~2JRg)DZ3qT>?8#PaF&cTk^6ixQFE zsCwUdTkE!~<{a{6iqB|k0ZYvTH_Hne^eTHH?wul16r%PW8su$Q%d*)YZk4d#wN2Zg zp;_)qUD$$}#x5tYDHGgWaYIv@Dl=KJ;H49W4v; zO4WUPi8d=Fl7&rZhPg7o+GoE5VhpjJ`z;fkpj7)2L3R_Ran9)txj9PmLv;;Z=er)K zT|=V*+m(C(pWpap#_M6-OA9isxRHQn_mS4zAo#>T;d`AI@mUeAP#INfr_I-&J}hui zA_9db!>Zv*e5xvSK^>}^KGpc^SBbz&V9^uLXy^U}L{2-#A&Sj8e)p*G%~tFl9#p5z zw?y8pmP7vfp1W+MXg0AW@3mnHg+^sFy5<+R-GO2l3hJgJL$iafKtP z#=7e7L|hmWndfT-Vv}xzlf2okxv;An>pGX4LUpk+nymA?$0QJ>Z#Y{Dl?C<_$DKkU z@ea7*bo^*mI%-%Bx0H*+NtGJre3ZXK>+Oc-d^0opP4HAvUf$YJ>+#SRC2Gv9uULlo z8=Ll@@S*l;v;1M@Ts^&H`G$&3h2OU33|1vtW6HH_M=rqg{P$ApgWmJ%rzdVAq|o<) z+e=fUy9+Jt)8#fp7|G>!rgcnk?*dB3OHo7|GTvjik^LxWyMDTC>M0hpD4u2qOc%j> zHx}xp%`Woy7*-QkUrTefE$v2PML3-2xtRJwMfexT5?M;}y>pESigzyu*z-(BZZU-w z5;s$Th|l=ygm{NneC{ozfpQZ_TIo>J-28|zTZ&=)bzE@GSUaIq3iPTxwa_p{$lJlq zbtdilz$m2_W~wR(kSM@pixNqSAMwJiEOqCpnDWkSv z#piq`kR@-}-pucZAr)sb*P4!d;=>Bz3KyUsn>JGNjM5kugNen^wOBQWc^8h!qQn^u zuMgeN8dq(}Cmibwb+UD5uaw`~6FV_@GD4cc9?OUC<9Q|hPN@_~sp=MkYrbsgdR(8) z(YfGWmK`p~sl~-~(I0q#C2AE}?>z>#YAy?}cUQ3$PP}$GT%FYbB8J(82ZQjn3tMha z!tWr@01nSjm$`}zjx)*iXm!h`4n+IB2?D1F%$%TGGEQe)Lyil0yd0Fv0Meou*IfQr(-tXcWDpL&Tp+mKlpV8fafF;zAtiG6nl^#=_Fp!|8@3U>aqLtk|j*mJiD(Q3ebjax3dp55=jgAqY;$T1tiL;pYDEOG$@8c+PP3a`{A9@JNJSuIOJaKe?L22 ze6om}lAF3~QMC`V^yZp^g$L}@q+<{Cn-<;ZT?fr9dWi%Qf%jp5&5OP@a!_?`*qFT) z^jyp87|t22a7sAKZlW48kcIyqor-k;;mtCX=NCr72hsVG2gKm0R0Sg}nrPxVUACu~ zG9wK2DL2;ZD)lJdUQ>P>=FWrkjyV6IZq{LX4qAmKm}$){x!U2g8hg z8#5!z491M#bl>;)e(u-rx$dXybv^$+{u*BAoagDY9mnxL-tXhMh4UaJhch|$O&%i) z$8jMa5sM$Hji%sg{8M@|WpU)1LQk=aYI5t8XApIB_|9ZlZrzVW6N|1MTlZrl> z4xr*tG+`%l7-vm2uZyE4p4HDKE^En|jdj)n@zA?ci(c zwvSs&B8)5bJGIllZHj_#nMJ<|Za2jF11&GgT=UWI(+!t`!iHgI4(K4$O3x{0Yz)S6 z31M5>9v1CAQEsL{|JFG!LA@0^{IF(@Y&{i1QGM7OPF#Im^??0@u`mFb@*@4AR>kn5 zI=P{^?y|qSt!s)rgBUeY>E@ItMC+$KN%P~HYMX0s5Uxr^q4d6lK;m!Ms#ugdc3%3~ z?|=t2poiEu8xXctzO87oWbhXwqkQ9C4P_5BLX}K%a|uZwm1v{QwWY0q_IHvj$s_<& z)w@Sq%vWz2c+)mWtx?fV;O5<2RO;t+-}LaxWC;^p@A`^r8w5DE74$fQ zL@V-F3=aBaghM-F_fh+0TA6r?Fb#VSmWxZW1A$9=KB}S!SfqtwzMaG(B?I}4^>?PH zTJVTEVA9Jz?=iMeKm2M%?_JkQ*<{Z3_oluyf43rPS}cQWt@eaFm!S){iQodf3@5+t zOq8<6mb9l2I{!Ft%m%!H?I*RJDD`j!wq>o(1WCEtv2cDpm^_NFkO!4~Rk24_BW)s4 zw(StnlW3yf(ynON$H#ycYH>1EF9TPD*q?PNrA|vDcTslm8@q_wo&#gzrW(U<6}1Oc zpr~>UTJ9<0^OBo}chi}!O+7&au*uCgAI5WQ>(W) zF0Shc9>onD1;OMF<9^14r(7-zuPm%A4k;@y3ae+!z>RxXf`^aE>NnLdk3T~ag2^$8 zrlhF{faCP1oQVwsQD3atX;$X61_laoiDD#j2lu#1M%jpoh+_j^?TcWau;c@H$#x@v zlIle9%m???Kq<%q#jQ({9f)E@k2Zzf(uAa~+@ zF2tJ)4LYv{sncodol$KOS$<}m69SLFQ*{Q+X_fX??9>VGy{_(|ZVRSD=umes1q~ry z@#?2$7TMK4+X9@wq`i+hrF{*zFtmxS(k_NgEL*` zD|H}{)$3)#gM~nK9QKEbgxLmrzSV+8zO!ck(%GFiM3T$W>Jwn_7ECp3X(b zgU7QEWM<(5z68zIg|b{D1&z5>5<8}nkWd@XqDkR-ec;e(1L9xmvlax~vqd58m+5sX zR)w`a8S<#8vn=CYK+?n`h9u$gqeqW6o`rBMH=Xi=>C^6<;JW@ek8^J>3{erpSKC!3 zZXvoQ>;>Tq`xN=Ge5JV8FZOP-qX=(%}WoW+u$tdHB5bne&x%{8nzqCyr8R@|u z!+(U3XdGUR(QKo1y5!>#MrDL>-iBcwe)5zAF}B(Ka$ANnswRwW~p}qKUE()*?@+ z+wXnZ)ej%{?uM*k@o*y&|Ax;<%brHeBTyaG-#)~Jmdt9rhgt0sk9eEoKD#|7`Q zpiIh6CL%Pl9GsK-+IA=XRQhI|Ew<$nK+At}V&81Sz+6Y}F|mB?2$}LRfq0p7bc7t9 z2U>WGFHOHrw@=fZia5QWk;4DpW5e;CM6Pl0o3iBZ(CY*b1^$FZtq+*MrzZtH`t6wx zCgg4wb1iQFd|P&Tr&~5BIa!PUTX($~Lsk)#RE`Mxd`huh<;Nvt<#nK)1e5jq${}A` zKl0@A^lN{wzQ>1MXk*XULb>0*B_R@>c*#mrTKs_tKYEXqb?S0X23b`LA|;0e_rDrJ zxZtw_`EJQuKp0Zl^98x}cxj_|!8eF&L8(XKqui`5k5HE!+uOyv_G#C5ys-39Z=sYB zqcCqQ@6uo$)w&{w6{~&`xE|jB8a7`q98uC>UN5j^x?WN7xYtnjn#k$3BJ+Z0by$^K z%i)sLw6mkTxP$Pd+agg&-#HO$Y3oQkw2jG_sU6(4Fx7o*f_2c%htmBeqU4~4-#RH5 zKDkPS!XSqH#THZ>MW+^bc%~Z(q26WcBo*SKKQbN15Q9K}Q9t$5lvKYK6d;paM9T+h z;$V=SAJ;^MJEgFgZA$<_wJDZ@AEF~`uv^4i6Nxe%YC)4MGNJm@$}l7+Yig>(g6d}Y zwR7e7q3xMBlNW$vAp-ir?O4_(YW*l{BdGAave^Vgp?T8Tg>=?Otr_4F)3#jd?=tFbc*wKz#*KMgZ4c^uxENxO~-?48&itTo8nDLP*nFFV$5nVQOAdF-JH zy&3Xo8e*pIEk$}T@B&T{iCvf`X~op1pHha7PVP#m0XcU%!d&{57j7A_Xl*Z#cAB&` zTYeY%ol4$Do1vG`$)WwoSdp1S-g$X5Tj~*V%XScc9~y-?U)iX*&I$90@}4hT5TDW8B?p}QQFV@fJY6j;7O?UWO(x`_mxAEb-iz(_(B;3KVKm+Yt6Uf;~ zGt9yZ3VOm)zWe-p3)ss`TT>7QZ}#!?wTW5IQQNxklmMPhC;?KR@256pstnlqAv0b= zNPsS}<$<(FbNb2Tq`XgGwyniI)#0a$!9wzYd+u;g9OAyT*vON&@KPejuj@RbM-rZt zLC(Oj2slyo#TQ^pYRT7w?Yd@$xGL-egERru-%BCJTF!Q#acNB0aNQqasuD7wjBi@d_W^zY2t!o!; z4}LL^@=b&0b=S3XGK>SQoKM-;YBWvb7%puc$vjO<#%^B%-_Ek?AZVWz>QEz=;hdJ& zV1)2V^ZDy(W4mg~&@uI`RDNZU#o?)-Fzmq$xf$7LRT1u796M8ctalU3B{=ykm7fHE z7lJ$XJ)h?_`k9J>BO^g)jI`s_%Z_XfC>h%=XMic)`^VzeM9zMm_*&%-s6z1NcoRMn ziMB<8$TB8F?e!Qo^;hNz6pQ<#f}5fyxJJk4?%37Iw-K4~)&L2~dvSK+A)E8(*)%*h z*{|z&2~xK%`p<74)>`wxhFi0)45-p)x`*?P^&*b!YB4v4h(}bpO&RkjhT2?LGaWLw zq{Ix>XHx(lq!M2xsU-sM$5&B@irj<-wmClwZ&_`Ia{wlCB1{XOe#q;EAoN+Xpx9;EbhjO6Ws3^iccK|DzjFg zbXOj#D;)g zPKLC5NuM;?F%64c%QJ#~KoVbF)IVdftSW}c^BGQ80KD5{g9UIKP?uGKN@|>pv3vLW zqU;z#XBVW!!s)fM;<7sv1Dh`_wy2KG%K(SbDpJ18GBx9XbG(kg%6Avy=>>aAu5%*| zQXesAb9G+#ma+ZLPrt>%*waf9+?WF1AkU-^pP4Qb$M#-WE09-~=06;1HWO>vjzg)y zNApJp%j;Dg65d}Ae2`HXQYcR*ju;eJ6wV^%*h=Y+cD-o@#msojiE6C=_NnNUK>q;pOQQBBybKe zMa7vd!-_b}ijTVaJ^-eoI?Idv`mnEOuyDp}&~FS)u2Ijx4MmZcQr8E9xKIl$>{c7Udv(*#%z8){r2Pm}wBLLWzsrlC?Ywd+3@YdZA@HBB?u-n5 z8?A9W?AAKAc7LPWb9&JB!jtd3&LciK(O02C-y+xg!f(a@l7Fz~#%}dkZf01@gv|cI zyAkA)GtEi@O2c*c@N58=CB<3|Eh46A(@kF)Bmh z_~iBP*U3*D6^DF7G5G0X!rnFGhN9&7YJ_}oBl9?>(k;*snMFdgh_|2OPXiQuXx~md zOMFomX;#mLYuOH53{lq$ZRodjANjg?L$_QINs-@&SrFqwM3~umB!|>8-IjJ*CNsUy zh|Vbi&RA^S2(Bb-mWCQkD=*Wyy1MnGf*8dRq$pc2)3*3w>K#PBtMdYPE|tAV6$AV+ z1zFSTrP5l;NWgkbyExeHwWV~=Fb*Q{LD$S7ycpuiynjye+yROHL?NxnIV5t;-x=)4 zvKxibpcMs|I`IM@*=Ph+&5gfmtDK%OXJt?C#tCm;v3oi*O6fyBY*Z{a zrgC?Ghzlp*1~Ls$V$7W>l_&We4}unegMI$(%JtUWO^1uCBMs`PKjeOE#Djksao2E3 zvvJNc9wh%nH7n;-?E9Z={lQFJpRqhQgh{XSj}vGQ)(!b4v?KQdg-*EdXlrRtda!n&CkW zS{F*Z{dD3bKJY^QAe#UOB)4eN{tBSAq3?NauETDv0c1SSjMO7_a+Fv;6ra*~-_G;2 z$qVE7ZDL=>J&c662bh!0G+F4mMyc~-gCm_M+u4oV>? zt*w-9G{L2*HN#PPnDn{+TElx1s%HKD2WR1=ffraKl(hkC^}q6m2}eTsDv`3opHEog+wH`RZCjs~PvE z{N(FO*Ik<_76v$l+g`Rwpv|wi4usP^CPE@y{rkF9)lv22%mTkicn;|X`T-z;2CZC} zCpy&B$4$ABKt`zUS+v8EEIRlNzLw_KVprv`-+Qe1{YG0$V=i?zlNFFvN3Xw^<3h7m z)r%DU1z>y#YsB=`$@qtcOm3koQIl@jvnQn^`O7yTHR)G45IccOPx2`f#z+KxXUz1V zabWUTlN*L2knCR1WcEEUp}kHmIpbc+`;CS|I#Z?(fRCximBMv z8O;K$;4Y`ZYPY|agJvE5&0fo^mY9aiz+?$R5C|1jS20ncz@~}%NY6&z7`)r^L&9lJ zAbrgNGPdDxbo>_&Glre-EZ^1Bh-p;2`Y;C{xDuF1s_Nn&E7 z0Ry9!1tYY*x<|b>{-8M%XWdM&Ngjw-7d_Me;2OtWxM`}Ec4h|(u^2a&@$BF|L(0lR z_qN0j`xl>tq+-U$H*W*_6t1YQR#=jW&+^G>H;G zBVb~N+nJV%e*zlnGoHHp?L@wZpU`w0PV8HPs)7sgNXQr5A*3qUi#FviW|l|B=0Eu- zz^Q}oQ=Xwgzizf18&BE@-5|z6CP1fX)a~=|EBw|&cmvdzMqx7P4b!5my55JL#LHUD z2YTa6p${(5u(RcWM!OqsLqGNnmS{b1NmG|Iyo9#~)E{c7Z*GNlycc__sdx|aJ5NLV z%CCdxDBiP@Mt$nI@B^2T_f74CL}=tGk3G{O@Y&jaYJ4jXd2c;ZI#B|{bw+U$58(Zx zGnDH7j((_Cu>*lgm-W{jYl@@@yyh&FacPA%G@W!fnIDZwP9!XixnpbBhSWH8nlqY5 zc;u@miO@RS)Z6T76s zMfScLL}E_vsm%>xIxFn{ntM|gD)Fzw$cThp z>_wNpmy;u6B0HoTClv+1TMJ`X^5Rwb#V@mo+u#}Zm2WCCLjyLV5}=0m2m5*D;T|tG zO|f`WJ7S$=ScgqyxBT9XO0b?i%wz(6Lqw6gcFtikJ_n zcfj79MHEFaPHlhi%D6{gjRN1abk;qwDr=~PdJ4{<-!|RuAWr`tge1tC_c>F1>aFaw z5a`3H(zQ1+&^Gb_l|H1*7XarC7c}hG72E2p-B#}yf-6^p4hG|F7v8O!O)d3BF(asr z(yeS*cWr|fcY5wfZpCW30$aX;4A+kqGeUU}WRgT3_`Gpc*4@4)km8c)iK8!g?$ z#qfS!TFl#35gkos{V?oJgd~^(ed0&;5}tg^Ez^NW2G}cRqq%U1(qeVc568|FDQBMq zq>1w<+Zcp*YSp%^#C)gooBBADwJklVMv;@}nbmmh!t-NHLAMqu6_l(xuHL|Kh7Bc< zVT5Z8-~j;4-dA04Tu-O11yl?4@g0w4Q0k=HD0x}mJJQ?A%q%K_5X1V01c2q11{l>ISLiN8|VVEq(^2Zpfa;h`7z3G?|T zgGC`8z(aA&Kl2RJP7h0bd%h-a0e`nN0rah!`fM$lPg@ou`jc97IP$tm&XB6h_MZ@2 zZvluug!D6{?Trgk4yU{3M3W^Ns{v61&lHG&lNLc~2DRtVM&Y8ke^_o36v32)11r#G%PYZTrUWoPe zoZB8Ba#~ykJS8NLC67V5hqCU`qKC9DZI;B`v#z3Ar!VoKmfM$T+ya{Jzr+ZZH+ z9OL>wfGgrNr)?%V1t)S+Gz9UQwTxd;gMok0dk@IB zr*e$ulyib=Qk&Ll)#-`3k&S*SF(-H3j}g4*&>f$)k(1$iREy*cksV^WXv~e25nhh5 zycx|RlGOM$z{jS#%EjbZ-Mk0?h|J_p+vnM5ZEXHeZr!FTA%uQnXhMU}f&+e;?nCdW zY3x`&*39&%Al-imm+`rJ;$O%Pb0D(qXtgM?@U)x}OfKwcn&(*1HCMWa0qOmNu5+h8 zauappDWe^Aq@be`p|z`QgXDJ(8k=%OMa@3&^CU02e@^#(sU5TXeKZ&$2;5M#p@WLm zXa>XW>^`H;Dh@+0+w!bXTA{|{rkNB4xO?$sS5ZND_hRauJ^9Q#p*ey`@-{njHOBNX zq|l%yp^5VHc4G(fWF+bx!z3{slUpNQsXuhi(w7|f z&iy_U>ex^Q>h@xtyLg6pnZ7iJ71(}=1d_5zuq`aA;^W#>)}XlQBSBZw^P`AzQ=}hE zA8HQ!)!z?1eK!J^xhs_nSF;+ zwZ?YaDYb^_IdJ-=c^zq&&O_;As)eTTPDut5C5w{0J>>U!cgg4`m)S3v5Fz`L=D;z)PS)dXL2Wc|D9F*yCp%B$A zrOiO_Zk5e*P-M> z3>$FoG#qMn6R1;E`f9cDf}t8HM0;#6W=Gm{!Qnk@FtP^EW&Xauq0 z6x}!8Qz^0DRNBwacUhEz)6Kmo;ruHykW}Swed(0I76TBArHak=<$-2htbYOCbs4x^ zQWa@VVHppcY0_wkEF#s-DKN@eh$xn6`5Px;~K zZ-D1>$v96`j$^M4Mu05_NX!#k)L87B@0cx~uo6E5;AmC^?Kv~C`effz2ND)MSiU<% zq}-$(X#9x3C}v^HC7VT7Q9u>^u3AsRONPLO^Nehzf!A1rftqdO{Za2-tsuVr?x6a; zf;HpPj=+s|g7CtJBhuM3W0n4r-Id-LNv}-&rE}rcI8(PF$Z=G-8}`*oi=#i z*W&EvlJMfXd2?TXJG6i!de^MbG%-fML>SLy>6D!Rbtk_jxth}f4Y@fAxoZSd6Ukcf z6#t_3gUfhZz=9FE6YRIY+^d|ZDMOg68l{U=1W1p>3e-tdfBzgENg}GCR@?>h69}NlId+Sk#DHw~1&wS5FVRa60=1mdYIs&cYr?V0zhhqsy z4t{^C+qFuYZ#Kp~TR70NI&Uu7J1>@1p2PFe1mR$4RBN#5sDHhIcseMu37ZA-G;0Xt zeX35ijqat7dn3$}dFN|*nwz~y_?^7^!D2-Y{-dWE zNLf;Gl`gCkKV@(WO=J_Mq7VwOZavFnqZ@bi};#RM3|IJL)%fHfOBI;{A zzq*9|en~sqf(HxyD!t}nR5q>7D}M!zJ+d@Ol1pCaMocZ3e@3erh}(%m@sqOwDLa{Y`65~L)d$jt!Bb7Wi}K#$ ziMF2%rXR&mDfbK7$U|(GcBOI0*o+5g@BolnP1hf^r)o)zm|A(+X43hslfx1I%|hNwdXC@i-)VA7?5 zcYlq!sXU%;DB!F)_u|Acj>_5uji9OcDlESc34GI1)N4rN$O7@YmzVrno|#((PtB0r zse;Q&kd9%?%t3zn9xM2dry5B3NHn14OX@ywP2Kw2I7GsADTloj@3Dnf@2E#UQ$sU~ zbNSUf2a&K(#pkIl)&4F9$tod!Zj^-FrOgJGf@8gC%F70eeXqUOw{xuy60*kaC27M% zt^S^)Dmt${3|QXEx$Ol!)V9{j{i2JNT?KsD4<&3-SL zYHLSb#<4Nkk?;XP0Z#D_1n((I$Zivj(q*7%Cj~hG|1o+{(#-Z_)#cr0)&1(5K!*%P zilC7G4XZlSP;zLS?P?giEs!8z>Oz8*Iuj^FwOVM;T}B#}-97Y&=^XHRBbH8gt0!+; zq0bY?Xvtd@F!npO-C_5gZ$jevZu#7FZHkg4{gZ~MCn}Yn`(%YDUg3BsVCC>CRgZ<` z7Gd;kTV%Kk!~dLE(zG$^Yls4!qBNi>^A(F$L#Ta{exN_;=duFxM~cU>p?0@d3{4=* zu!`xzBbPGrqvGOHCp|qx#%)IonNKEg;&s+SXv)QUZk1$5lc$9zS_~8EB)$*EO4JKKB8)O%2$TesvR3-TbF`Yep8FRsqH+Y4(c~l z)3H!6{5YmY50wSE@pfy_>Y@n~8{K-s1H#Z~F=83VVdc3iUianB$@;ZsWnE7=qnwv@ z>?dn}D2J#TgLr;t)UwgA=KF@<90r<4oD(#u*jF{FpTsd&+>qdyI`cJ_fJ5z3xZY*| z!qvAkmUtXS4()QK#IUQ3(a_TQ)QQ2Yl7h0#gGYrm6nCF=wmIeQ{bm=o!yXB$CVO&~ zanaT!6<)s)Cl7;;5rL~gm0#iwu=~ahxUl}dkB&#msyeVvvK3w^dK>l{uS!lUI`mq#`OchO9R zH6-2x5a6eWS%yJ%JkMQ{oOALG*^%)%ccYI;&Va9GD$5xn^C~MYFT$N$M;I|bvd*gj z3lfJbL|my|inpw%L*k+}iVjomb$z&d%n(kmu_KsSEaG>V*5h93@ND|PM;dI7A2 zHuP%*!Ou^XS=jG7jBg}>f1>&$LcsRKi$RSvu*sl59# zCwG;)XQ`=wpeO7hd~(S!P#Ydp9jzIYri+1_&=yTWP zmgH|8ye?WnVk5#7j@Mx(dN1WYJTM){mgqBNqgh@Si{GP3@6^AzY7-`{rY`c z+2S!c3B0lR%)+bMe5&Gwau5`j&`6y~Ke6zJR~1oco7f8hvL9%yX1!#c!=5klZ(w3pAj?tFL)GyD8=)b=$ za_IA67RbrZ3-7!=l3V}h=r_=HZ%dPAkUkak{6jn0@%!u>nXwEZFDqL{AojrBs(vb8 z60!6Uz@@Lid1wfxy zOD|omZ&Ni__ki)%okhu*?{=J_RnJB_aM$ABi(NR^8Z-(}*b%q3w1qKd+z{rQyGOs~ zKNZ4q?p8OC`89{)T@gUI@B!w`jtwt*hF=T}He`T;!#Am|sDlLGxNsn}o^MO?xS8H! z6(*KoHCQmKbm4Jy$Uz9jrKm=-D;2M09i}c6kk#4)s2Zodr+BmUg>!W#-OH2?sWZg7Zz(hSN!{@6|jvGL!)k zltYyBZno+#4_a-+E}nEp9GwK!stk==~G^gKGgf~S!^r@sVV$sht( zE=lM3Uy|LTKHWVb&E)5x4Cu=ZXli>Ouf_^8aD$0{98PJ+k5qDXLIba;_A$t==Ar0? zP{t?vlN^L`p`j2Zba{Mk_m9S*`;#vL8V5 z5t|JP-CCOqM+jf-;1_c(EG~ut=6)ERQhxYFcOiBW!3A|pufdoOiCSZ(-ke)BEZSU@ zXH`^vx@dEeM%+ngd{GW4{Lq`@HWWSh#Y4*SC*eABZ|56e9O>`^^Pz93YkUu>$>O~1 z;v8|rqMHrPT>;GKaJz1Y=M$YhQHl?eyHK3H^Gd*wtyVlmawyl^C>3uINlpnJ@^GI{ zZ;32G;HB}~Tl$6P7yX5cbE0s!LoYFS)DG(C7N{&3r|7+tIvHRxPqO&s&ybcC+y+h4 z6xA0=CtP3w34?r9DG5sxDiZf%&jmThfQJcN5U@{w&A?&Tmfpvin{G<|IcrlKnVTZ! z;bl>=YfDA#vA>A~ui7x`G=J|k-scG|BoIWNg-e8QK2iu9Ne1Dx;5Uh=bV>qYg6o zfw1-BR%Iin;5Ks$ErMzQdYf88z>(!od~_e>NqqxI_5~ZTt$X7jrscXw=1za7?rT=P zs+EUI5P1eI6SeV-$cH!8mz)>9(VjkCRk`HBo#M=KpWP4QqKT2v54N_}Y*`2r4sR9n zS!;D0ILtItuo+`*S^Ub2O6OwhKJe)C#TH6(vVB{sk=bv0Mx)C^3-qfyGVtrHH4Mp}&%h%1zThj*L$#Gwo2@$zd@e9G4WBbo@Tz)dvqH zkBw3!O{(~)2gzWFKozN-_oU4k<9aLxmu9#eqO^lzrKl{(HE+(oK%5GZQo_6?Ji<{i zC?bGdbg{?9$XV=hAJFr5FrUh&NbPd41M{QF)6S>wc@~F=-57eD96bSKgbU9L(ymtR zP8BvnPMahoPS`>tc zaf$qB6|ue1EtTTIAlRI`C}Wd=He#3hgj-PXo^<3pajrv(Q9oUdeTK!wc9}LJNQ6O% zNwh`fyy!Cjr7ox9{P)4(XYp1;gtaN81(~2O7}G{A!-CogenK=)CRZ_s016e7|G%7bC{X|R2aB% z)upg~VpI2i~qYO0M?6O1YQg=xOcDBRthoL%xWq+x7UCk5A+im)@3I{Bxt)9F2g5 z(_xO%8q=CDPPFc=GO@6wxCx-j!M{=q^_!YS;w7hlr-A*|e9=*op@U6>WzAQDj*cf` zF21T$7ZdBClYS2QS>)a6*xoqh=CqLT;EF)1rExvQVcfYu!-HCm(lYKhMdV$6c4vcY zhmjh0Q(m=3Mlyg6@fMg^dKmD7s@6YH`ROC9%h0Po8WnXIRdR9WtO8Wx%a_2;Jp$#; z;La;^VrC$ILSuClv7+X3fY=`{fv*u~!*)&FQenj^>XHpK|9ZRcsWb@L}JOMG5U z#qm!m>-1e3m)hX}x$%xss^LN66Se=Ku5>cGhG27IzWiesA7Og7b2WVD#riZmGZ0r}K_6qwc+t zu5IPt>mVg~`U+!>MMeFkVg8d=uR3CkuZsnaEBwdE{*|Ho*RAfnWKi}`pLPC|JO7ot zT>ZlMdd{#D=C54*C(pRdzURyh2ov{O3kT<#if;Ih|k+l}AxnEuN@J1=?qoTE{?m2sY- zgvgJ~Q;};fjCP_7I`MqC#y7~{SqjhY*c_n?f_OL`Q|7rG(OS2J9vR*vPnkN#<8w;? zUe8eNz9ZfVs<@9?5ZyzEj=%U-3&1QQv6RW!e1Fh871KB&$wDjTv>&8|f7fO`RIE&?o!UdoL0+c16a*p+JN z=h)3)2j;SxK2UA zj7kXdVqq>66#p@fzcR0XvK+YY-HA&VP!F+syT1wRe0JbLxeR43UaH=ZVRXoX=jc3T ztU9L5iKFAt4;RwbH;WjG(z9Q?ykoy%3Vt1teoCw5Iy0~jEeDsX+`?R9LVm~I`7gtz z-Ef3apF#RwkF0Jer-M=Y{m8Z4vq;u&c|rKJJejs$6yyNKNLEP|vxeo}OP52MJFCN= zFdEyca|PFuVA4?YgN>6-;@s`QSxmmQ|$9RG%YBCMNWtC%w~#uQJ^vrbd(>QU!( zdQNaTGDE(jXp*Md-;3Z}dGI*y-3J+g|1$S~ZVdi?v0%nC-aq1BhhDBt8@5v#vUp{?H1wbQ?k{Z3 z|G6a5blUU#l-ihpNK>Yj+@QB6eh-%4<(&y?!AmoE{{YlkdB$eo`dUpib>UFCkB_wV zQE1{%@^N|t7uR3@`D1^(kWG)|8w-zo;H;dA<8d?^Lk#l%t(UqpZOq^vhKps~dwckA z-9TI8NT*0g_@e#^> * <> +* <> -- include::overview.asciidoc[] include::monitor.asciidoc[] +include::settings.asciidoc[] diff --git a/docs/uptime/monitor.asciidoc b/docs/uptime/monitor.asciidoc index d54fd02c7c0691..8a4be1f11a7219 100644 --- a/docs/uptime/monitor.asciidoc +++ b/docs/uptime/monitor.asciidoc @@ -5,21 +5,24 @@ The Monitor page will help you get further insight into the performance of a specific network endpoint. You'll see a detailed visualization of the monitor's request duration over time, as well as the `up`/`down` -status over time. +status over time. You can also also detect anomalies in response time data +by configuring Machine Learning jobs on this page. [float] -=== Status bar +=== Status panel [role="screenshot"] image::uptime/images/status-bar.png[Status bar] -The Status bar displays a quick summary of the latest information +The Status panel displays a quick summary of the latest information regarding your monitor. You can view its latest status, click a link to visit the targeted URL, see its most recent request duration, and determine the amount of time that has elapsed since the last check. -You can use the Status bar to get a quick summary of current performance, -beyond simply knowing if the monitor is `up` or `down`. +When two Heartbeat instances are configured in different geographic locations +the map will show each location as a pinpoint on the map, along with the +amount of time elapsed since data was last received from that location. + [float] === Monitor charts @@ -32,12 +35,14 @@ date range. These charts can help you gain insight into how quickly requests are by the targeted endpoint, and give you a sense of how frequently a host or endpoint was down in your selected timespan. -The first chart displays request duration information for your monitor. +The Monitor duration chart displays request duration information for your monitor. The area surrounding the line is the range of request time for the corresponding -bucket. The line is the average time. +bucket. The line is the average time. Anomaly detection using Machine Learning +can be configured in the upper right hand of this panel. When response times change +in an unexpected way the time range in which they occurred will be given filled with a color. -Next, is a graphical representation of the check statuses over time. Hover over -the charts to display crosshairs with more specific numeric data. +The pings over time chart is a graphical representation of the check statuses over time. +Hover over the charts to display crosshairs with more specific numeric data. [role="screenshot"] image::uptime/images/crosshair-example.png[Chart crosshair] @@ -49,6 +54,6 @@ image::uptime/images/crosshair-example.png[Chart crosshair] image::uptime/images/check-history.png[Check history view] The Check history displays the total count of this monitor's checks for the selected -date range. You can additionally filter the checks by `status` to help find recent problems +date range. You can additionally filter the checks by status and location to help find recent problems on a per-check basis. This table can help you gain some insight into more granular details about recent individual data points Heartbeat is logging about your host or endpoint. diff --git a/docs/uptime/overview.asciidoc b/docs/uptime/overview.asciidoc index 098ce12a569911..71c09c968e5124 100644 --- a/docs/uptime/overview.asciidoc +++ b/docs/uptime/overview.asciidoc @@ -21,12 +21,12 @@ This control allows you to use automated filter options, as well as input custom text to select specific monitors by field, URL, ID, and other attributes. [float] -=== Snapshot view +=== Snapshot panel [role="screenshot"] image::uptime/images/snapshot-view.png[Snapshot view] -This view is intended to quickly give you a sense of the overall +This panel is intended to quickly give you a sense of the overall status of the environment you're monitoring, or a subset of those monitors. Here, you can see the total number of detected monitors within the selected Uptime date range. In addition to the total, the counts for the number of monitors @@ -49,6 +49,17 @@ way to navigate to a more in-depth visualization for interesting hosts or endpoi This table includes information like the most recent status, when the monitor was last checked, its ID and URL, its IP address, and a dedicated sparkline showing its check status over time. +[float] +=== Creating and managing alerts + +[role="screenshot"] +image::uptime/images/alert-flyout.png[Create alert flyout] + +To receive alerts when a monitor goes down, use the alerting menu at the top of the +overview page. Use a query in the alert flyout to determine which monitors to check +with your alert. If you already have a query in the overview page search bar it will +be carried over into this box. + [float] === Observability integrations @@ -60,14 +71,3 @@ Docker related host information, it will provide links to open the Metrics app o for this host. Additionally, this feature supplies links to simply filter the other views on the host's IP address, to help you quickly determine if these other solutions contain data relevant to your current interest. - -[float] -=== Error list - -[role="screenshot"] -image::uptime/images/error-list.png[Error list] - -The Error list displays aggregations of errors that Heartbeat has logged. Errors are -displayed by Error type, monitor ID, and message. Clicking a monitor's ID will take you -to the corresponding Monitor view, which can provide you richer information about the individual -data points that are resulting in the displayed errors. diff --git a/docs/uptime/settings.asciidoc b/docs/uptime/settings.asciidoc new file mode 100644 index 00000000000000..55da6e802bec60 --- /dev/null +++ b/docs/uptime/settings.asciidoc @@ -0,0 +1,27 @@ +[role="xpack"] +[[uptime-settings]] + +== Settings + +[role="screenshot"] +image::uptime/images/settings.png[Filter bar] + +The Uptime settings page lets you change which Heartbeat indices are displayed +by the uptime app. Users must have the 'all' permission to modify items on this page. +Uptime settings apply to the current space only. Use different settings in different +spaces to segment different uptime use cases and domains. + +As an example, imagine your organization has one team for internal IT services, and another +for public services. Each team operates independently and is only responsible for its +own services. In this scenario, you might set up separate Heartbeat instances for each team, +writing out to index patterns named `it-heartbeat-\*`, and `external-heartbeat-\*`. You would +create separate roles and users for each in Elasticsearch, each with access to their own spaces, +named `it` and `external` respectively. Within each space you would navigate to the settings page +and set the correct index pattern to match only the indices that space is allowed to access. + +Note that the pattern set here only restricts what the Uptime app shows. Users may still be able +to manually query Elasticsearch for data outside this pattern! + +See the <> +and {heartbeat-ref}/securing-heartbeat.html[Heartbeat security] +docs for more information. From 5413cee2946932f729ec343f651065754dd017c0 Mon Sep 17 00:00:00 2001 From: Dario Gieselaar Date: Thu, 16 Apr 2020 22:50:16 +0200 Subject: [PATCH 06/59] [APM] Encode spaces when creating ML job (#63683) Closes #62370. Per https://github.com/elastic/elasticsearch/blob/95a7eed9aa35f47b228e402508709b5bd6703cf4/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/utils/MlStrings.java#L20-L26, spaces are not supported in job and group ids. --- .../MachineLearningFlyout/index.tsx | 3 ++- x-pack/legacy/plugins/apm/public/services/rest/ml.ts | 10 +++++++--- x-pack/plugins/apm/common/ml_job_constants.test.ts | 6 ++++++ x-pack/plugins/apm/common/ml_job_constants.ts | 6 +++++- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceDetails/ServiceIntegrations/MachineLearningFlyout/index.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceDetails/ServiceIntegrations/MachineLearningFlyout/index.tsx index a1462c7637358d..cc5c62e25b4911 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceDetails/ServiceIntegrations/MachineLearningFlyout/index.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceDetails/ServiceIntegrations/MachineLearningFlyout/index.tsx @@ -57,7 +57,8 @@ export class MachineLearningFlyout extends Component { }; public addErrorToast = () => { - const core = this.context; + const { core } = this.context; + const { urlParams } = this.props; const { serviceName } = urlParams; diff --git a/x-pack/legacy/plugins/apm/public/services/rest/ml.ts b/x-pack/legacy/plugins/apm/public/services/rest/ml.ts index 1c618098b36e3e..0cd1bdf9075314 100644 --- a/x-pack/legacy/plugins/apm/public/services/rest/ml.ts +++ b/x-pack/legacy/plugins/apm/public/services/rest/ml.ts @@ -12,7 +12,8 @@ import { } from '../../../../../../plugins/apm/common/elasticsearch_fieldnames'; import { getMlJobId, - getMlPrefix + getMlPrefix, + encodeForMlApi } from '../../../../../../plugins/apm/common/ml_job_constants'; import { callApi } from './callApi'; import { ESFilter } from '../../../../../../plugins/apm/typings/elasticsearch'; @@ -53,13 +54,16 @@ export async function startMLJob({ http: HttpSetup; }) { const transactionIndices = await getTransactionIndices(http); - const groups = ['apm', serviceName.toLowerCase()]; + const groups = [ + 'apm', + encodeForMlApi(serviceName), + encodeForMlApi(transactionType) + ]; const filter: ESFilter[] = [ { term: { [SERVICE_NAME]: serviceName } }, { term: { [PROCESSOR_EVENT]: 'transaction' } }, { term: { [TRANSACTION_TYPE]: transactionType } } ]; - groups.push(transactionType.toLowerCase()); return callApi(http, { method: 'POST', pathname: `/api/ml/modules/setup/apm_transaction`, diff --git a/x-pack/plugins/apm/common/ml_job_constants.test.ts b/x-pack/plugins/apm/common/ml_job_constants.test.ts index cea66f31303be9..2aa50a305f7c85 100644 --- a/x-pack/plugins/apm/common/ml_job_constants.test.ts +++ b/x-pack/plugins/apm/common/ml_job_constants.test.ts @@ -21,6 +21,12 @@ describe('ml_job_constants', () => { expect(getMlJobId('myServiceName', 'myTransactionType')).toBe( 'myservicename-mytransactiontype-high_mean_response_time' ); + expect(getMlJobId('my service name')).toBe( + 'my_service_name-high_mean_response_time' + ); + expect(getMlJobId('my service name', 'my transaction type')).toBe( + 'my_service_name-my_transaction_type-high_mean_response_time' + ); }); it('getMlIndex', () => { diff --git a/x-pack/plugins/apm/common/ml_job_constants.ts b/x-pack/plugins/apm/common/ml_job_constants.ts index 37487d09e4f4cd..01f5762e2dc4b7 100644 --- a/x-pack/plugins/apm/common/ml_job_constants.ts +++ b/x-pack/plugins/apm/common/ml_job_constants.ts @@ -6,7 +6,7 @@ export function getMlPrefix(serviceName: string, transactionType?: string) { const maybeTransactionType = transactionType ? `${transactionType}-` : ''; - return `${serviceName}-${maybeTransactionType}`.toLowerCase(); + return encodeForMlApi(`${serviceName}-${maybeTransactionType}`); } export function getMlJobId(serviceName: string, transactionType?: string) { @@ -16,3 +16,7 @@ export function getMlJobId(serviceName: string, transactionType?: string) { export function getMlIndex(serviceName: string, transactionType?: string) { return `.ml-anomalies-${getMlJobId(serviceName, transactionType)}`; } + +export function encodeForMlApi(value: string) { + return value.replace(/\s+/g, '_').toLowerCase(); +} From 239f73b040d1bd973e2d91357db1efde373d5be7 Mon Sep 17 00:00:00 2001 From: Vadim Dalecky Date: Thu, 16 Apr 2020 23:13:00 +0200 Subject: [PATCH 07/59] Start services (#63720) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: 🎸 add createStartServicesGetter() to /public kibana_util * test: 💍 add createStartServicesGetter() tests --- .../core/create_start_service_getter.test.ts | 78 +++++++++++++++++++ .../core/create_start_service_getter.ts | 56 +++++++++++++ src/plugins/kibana_utils/public/core/index.ts | 1 + 3 files changed, 135 insertions(+) create mode 100644 src/plugins/kibana_utils/public/core/create_start_service_getter.test.ts create mode 100644 src/plugins/kibana_utils/public/core/create_start_service_getter.ts diff --git a/src/plugins/kibana_utils/public/core/create_start_service_getter.test.ts b/src/plugins/kibana_utils/public/core/create_start_service_getter.test.ts new file mode 100644 index 00000000000000..9d9b21269e1024 --- /dev/null +++ b/src/plugins/kibana_utils/public/core/create_start_service_getter.test.ts @@ -0,0 +1,78 @@ +/* + * 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 { StartServicesAccessor } from '../../../../core/public'; +import { createStartServicesGetter } from './create_start_service_getter'; +import { Defer } from '../../common/defer'; + +describe('createStartServicesGetter', () => { + test('throws if services are accessed before accessor resolves', async () => { + const future = new Defer(); + const accessor: StartServicesAccessor = async () => await future.promise; + const start = createStartServicesGetter(accessor); + + await new Promise(r => setTimeout(r, 1)); + + expect(() => start()).toThrowErrorMatchingInlineSnapshot( + `"Trying to access start services before start."` + ); + }); + + test('returns services after accessor resolves even if first time called before it resolved', async () => { + const future = new Defer(); + const core = {}; + const plugins = {}; + const self = {}; + const accessor: StartServicesAccessor = async () => await future.promise; + const start = createStartServicesGetter(accessor); + + await new Promise(r => setTimeout(r, 1)); + + expect(() => start()).toThrow(); + + await new Promise(r => setTimeout(r, 1)); + future.resolve([core, plugins, self]); + await future.promise; + + expect(start()).toEqual({ + core, + plugins, + self, + }); + }); + + test('returns services if called after accessor resolves', async () => { + const future = new Defer(); + const core = {}; + const plugins = {}; + const self = {}; + const accessor: StartServicesAccessor = async () => await future.promise; + const start = createStartServicesGetter(accessor); + + await new Promise(r => setTimeout(r, 1)); + future.resolve([core, plugins, self]); + await future.promise; + + expect(start()).toEqual({ + core, + plugins, + self, + }); + }); +}); diff --git a/src/plugins/kibana_utils/public/core/create_start_service_getter.ts b/src/plugins/kibana_utils/public/core/create_start_service_getter.ts new file mode 100644 index 00000000000000..e507d1ae778e59 --- /dev/null +++ b/src/plugins/kibana_utils/public/core/create_start_service_getter.ts @@ -0,0 +1,56 @@ +/* + * 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 { CoreStart, StartServicesAccessor } from '../../../../core/public'; + +export interface StartServices { + plugins: Plugins; + self: OwnContract; + core: CoreStart; +} + +export type StartServicesGetter = () => StartServices< + Plugins, + OwnContract +>; + +export const createStartServicesGetter = ( + accessor: StartServicesAccessor +): StartServicesGetter => { + let services: StartServices | undefined; + + accessor().then( + ([core, plugins, self]) => { + services = { + core, + plugins, + self, + }; + }, + error => { + // eslint-disable-next-line no-console + console.error('Could not access start services.', error); + } + ); + + return () => { + if (!services) throw new Error('Trying to access start services before start.'); + return services; + }; +}; diff --git a/src/plugins/kibana_utils/public/core/index.ts b/src/plugins/kibana_utils/public/core/index.ts index 3f08d591300a2e..8bbb2129071f5e 100644 --- a/src/plugins/kibana_utils/public/core/index.ts +++ b/src/plugins/kibana_utils/public/core/index.ts @@ -18,3 +18,4 @@ */ export * from './create_kibana_utils_core'; +export * from './create_start_service_getter'; From 4e8ff57355df48837b15f9a41ef3601ac1de6d35 Mon Sep 17 00:00:00 2001 From: Nick Partridge Date: Thu, 16 Apr 2020 17:00:36 -0500 Subject: [PATCH 08/59] update elastic charts to 18.3.0 (#63732) --- package.json | 2 +- packages/kbn-ui-shared-deps/package.json | 2 +- .../components/functional/charts/duration_chart.tsx | 3 +-- yarn.lock | 8 ++++---- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index fe672ef1304566..8a45ea27d3168b 100644 --- a/package.json +++ b/package.json @@ -120,7 +120,7 @@ "@babel/core": "^7.9.0", "@babel/register": "^7.9.0", "@elastic/apm-rum": "^4.6.0", - "@elastic/charts": "18.2.2", + "@elastic/charts": "18.3.0", "@elastic/datemath": "5.0.3", "@elastic/ems-client": "7.8.0", "@elastic/eui": "21.0.1", diff --git a/packages/kbn-ui-shared-deps/package.json b/packages/kbn-ui-shared-deps/package.json index 7c5d6a62a11caa..c8614b1df9d5d6 100644 --- a/packages/kbn-ui-shared-deps/package.json +++ b/packages/kbn-ui-shared-deps/package.json @@ -9,7 +9,7 @@ "kbn:watch": "node scripts/build --watch" }, "dependencies": { - "@elastic/charts": "18.2.2", + "@elastic/charts": "18.3.0", "@elastic/eui": "21.0.1", "@kbn/i18n": "1.0.0", "abortcontroller-polyfill": "^1.4.0", diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx index d149e7a6deb5ae..ec2081d7155542 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx @@ -9,8 +9,7 @@ import { i18n } from '@kbn/i18n'; import moment from 'moment'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiFlexGroup, EuiFlexItem, EuiPanel, EuiTitle } from '@elastic/eui'; -import { Axis, Chart, Position, timeFormatter, Settings } from '@elastic/charts'; -import { SeriesIdentifier } from '@elastic/charts/dist/chart_types/xy_chart/utils/series'; +import { Axis, Chart, Position, timeFormatter, Settings, SeriesIdentifier } from '@elastic/charts'; import { getChartDateLabel } from '../../../lib/helper'; import { LocationDurationLine } from '../../../../common/types'; import { DurationLineSeriesList } from './duration_line_series_list'; diff --git a/yarn.lock b/yarn.lock index 9b319ef4370378..34ee6f393f25a0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1245,10 +1245,10 @@ dependencies: "@elastic/apm-rum-core" "^4.7.0" -"@elastic/charts@18.2.2": - version "18.2.2" - resolved "https://registry.yarnpkg.com/@elastic/charts/-/charts-18.2.2.tgz#f59d6ee597d553d193314d8598561c65da787e8d" - integrity sha512-ss8AqLj9wHa2C+9ULUKbXw8ZCQmEjLuaVU5AkqE2j3hOVtAN75HO2p7nMIsxcSldfmqy+4jSptybJLNAfizegQ== +"@elastic/charts@18.3.0": + version "18.3.0" + resolved "https://registry.yarnpkg.com/@elastic/charts/-/charts-18.3.0.tgz#cbdeec1860af274edc7a5f5b9dd26ec48c64bb64" + integrity sha512-4kSlSwdDRsVKVX8vRUkwxOu1IT6WIepgLnP0OZT7cFjgrC1SV/16c3YLw2NZDaVe0M/H4rpeNWW30VyrzZVhyw== dependencies: classnames "^2.2.6" d3-array "^1.2.4" From dacc95fa85788bf0a3cd77074159b7512b6f61fb Mon Sep 17 00:00:00 2001 From: igoristic Date: Thu, 16 Apr 2020 20:07:24 -0400 Subject: [PATCH 09/59] [Monitoring] Fixed server response errors (#63181) * Fixed server response errors * Fixed async error Co-authored-by: Elastic Machine --- .../server/lib/errors/known_errors.js | 4 +- x-pack/plugins/monitoring/server/plugin.ts | 40 +++++++++++++------ .../server/routes/api/v1/cluster/cluster.js | 10 +++-- 3 files changed, 38 insertions(+), 16 deletions(-) diff --git a/x-pack/plugins/monitoring/server/lib/errors/known_errors.js b/x-pack/plugins/monitoring/server/lib/errors/known_errors.js index 6f02d0b0b26c0e..17bcdd0414adfc 100644 --- a/x-pack/plugins/monitoring/server/lib/errors/known_errors.js +++ b/x-pack/plugins/monitoring/server/lib/errors/known_errors.js @@ -47,5 +47,7 @@ export function isKnownError(err) { export function handleKnownError(err) { err.message = err.message + ': ' + (err.description || mapTypeMessage[err.constructor.name]); - return boomify(err, { statusCode: KNOWN_ERROR_STATUS_CODE }); + let statusCode = err.statusCode || err.status; + statusCode = statusCode !== 500 ? statusCode : KNOWN_ERROR_STATUS_CODE; + return boomify(err, { statusCode }); } diff --git a/x-pack/plugins/monitoring/server/plugin.ts b/x-pack/plugins/monitoring/server/plugin.ts index 0fa1a5bf144ac9..a45e80ac71d655 100644 --- a/x-pack/plugins/monitoring/server/plugin.ts +++ b/x-pack/plugins/monitoring/server/plugin.ts @@ -10,12 +10,6 @@ import { i18n } from '@kbn/i18n'; import { has, get } from 'lodash'; import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; import { TelemetryCollectionManagerPluginSetup } from 'src/plugins/telemetry_collection_manager/server'; -import { - LOGGING_TAG, - KIBANA_MONITORING_LOGGING_TAG, - KIBANA_ALERTING_ENABLED, - KIBANA_STATS_TYPE_MONITORING, -} from '../common/constants'; import { Logger, PluginInitializerContext, @@ -27,7 +21,15 @@ import { CoreStart, IRouter, IClusterClient, -} from '../../../../src/core/server'; + CustomHttpResponseOptions, + ResponseError, +} from 'kibana/server'; +import { + LOGGING_TAG, + KIBANA_MONITORING_LOGGING_TAG, + KIBANA_ALERTING_ENABLED, + KIBANA_STATS_TYPE_MONITORING, +} from '../common/constants'; import { MonitoringConfig } from './config'; // @ts-ignore import { requireUIRoutes } from './routes'; @@ -92,6 +94,16 @@ interface IBulkUploader { // This is used to test the version of kibana const snapshotRegex = /-snapshot/i; +const wrapError = (error: any): CustomHttpResponseOptions => { + const options = { statusCode: error.statusCode ?? 500 }; + const boom = Boom.isBoom(error) ? error : Boom.boomify(error, options); + return { + body: boom, + headers: boom.output.headers, + statusCode: boom.output.statusCode, + }; +}; + export class Plugin { private readonly initializerContext: PluginInitializerContext; private readonly log: Logger; @@ -369,12 +381,16 @@ export class Plugin { }, }, }; - - const result = await options.handler(legacyRequest); - if (Boom.isBoom(result)) { - return res.customError({ statusCode: result.output.statusCode, body: result }); + try { + const result = await options.handler(legacyRequest); + return res.ok({ body: result }); + } catch (err) { + const statusCode: number = err.output?.statusCode || err.statusCode || err.status; + if (Boom.isBoom(err) || statusCode !== 500) { + return res.customError({ statusCode, body: err }); + } + return res.internalError(wrapError(err)); } - return res.ok({ body: result }); }; const validate: any = get(options, 'config.validate', false); diff --git a/x-pack/plugins/monitoring/server/routes/api/v1/cluster/cluster.js b/x-pack/plugins/monitoring/server/routes/api/v1/cluster/cluster.js index 8d6fe04cdb7bd7..240cb84539dbf8 100644 --- a/x-pack/plugins/monitoring/server/routes/api/v1/cluster/cluster.js +++ b/x-pack/plugins/monitoring/server/routes/api/v1/cluster/cluster.js @@ -46,9 +46,13 @@ export function clusterRoute(server) { codePaths: req.payload.codePaths, }; - return getClustersFromRequest(req, indexPatterns, options).catch(err => - handleError(err, req) - ); + let clusters = []; + try { + clusters = await getClustersFromRequest(req, indexPatterns, options); + } catch (err) { + throw handleError(err, req); + } + return clusters; }, }); } From e3eed0baed5f9fd3d396d8f9108f4aece01a1f3f Mon Sep 17 00:00:00 2001 From: Nicolas Chaulet Date: Thu, 16 Apr 2020 21:21:12 -0400 Subject: [PATCH 10/59] [Ingest] Fix agent config key sorting (#63488) --- .../details_page/components/yaml/index.tsx | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/ingest_manager/public/applications/ingest_manager/sections/agent_config/details_page/components/yaml/index.tsx b/x-pack/plugins/ingest_manager/public/applications/ingest_manager/sections/agent_config/details_page/components/yaml/index.tsx index c1cdde730837fe..56b109a9bc062f 100644 --- a/x-pack/plugins/ingest_manager/public/applications/ingest_manager/sections/agent_config/details_page/components/yaml/index.tsx +++ b/x-pack/plugins/ingest_manager/public/applications/ingest_manager/sections/agent_config/details_page/components/yaml/index.tsx @@ -25,7 +25,15 @@ import { import { ShellEnrollmentInstructions } from '../../../../../components/enrollment_instructions'; import { Loading } from '../../../../../components'; -const CONFIG_KEYS_ORDER = ['id', 'revision', 'outputs', 'datasources']; +const CONFIG_KEYS_ORDER = [ + 'id', + 'revision', + 'outputs', + 'datasources', + 'enabled', + 'package', + 'input', +]; export const ConfigYamlView = memo<{ config: AgentConfig }>(({ config }) => { const core = useCore(); @@ -47,7 +55,17 @@ export const ConfigYamlView = memo<{ config: AgentConfig }>(({ config }) => { {dump(fullConfigRequest.data.item, { sortKeys: (keyA: string, keyB: string) => { - return CONFIG_KEYS_ORDER.indexOf(keyA) - CONFIG_KEYS_ORDER.indexOf(keyB); + const indexA = CONFIG_KEYS_ORDER.indexOf(keyA); + const indexB = CONFIG_KEYS_ORDER.indexOf(keyB); + if (indexA >= 0 && indexB < 0) { + return -1; + } + + if (indexA < 0 && indexB >= 0) { + return 1; + } + + return indexA - indexB; }, })} From 420ccffcd63f8f46073cf454592f6ce1b3aba653 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Thu, 16 Apr 2020 19:22:02 -0600 Subject: [PATCH 11/59] [Maps] fix term join agg key collision (#63324) * [Maps] fix term join agg key collision * fix tslint and jest errors * fix join functional test * revert LayerDescriptor union and cast to VectorLayerDescriptor instead * move getJoinKey out of constants and into its own file Co-authored-by: Elastic Machine --- .../plugins/maps/common/get_join_key.ts | 8 + .../common/migrations/join_agg_key.test.ts | 140 ++++++++++++++++++ .../maps/common/migrations/join_agg_key.ts | 121 +++++++++++++++ x-pack/legacy/plugins/maps/migrations.js | 9 ++ x-pack/plugins/maps/common/constants.ts | 8 +- x-pack/plugins/maps/common/get_join_key.ts | 22 +++ .../public/layers/joins/inner_join.test.js | 2 +- .../sources/es_agg_source/es_agg_source.js | 4 +- .../sources/es_term_source/es_term_source.js | 17 +-- .../es_term_source/es_term_source.test.js | 15 +- .../api_integration/apis/maps/migrations.js | 2 +- x-pack/test/functional/apps/maps/joins.js | 2 +- .../functional/apps/maps/mapbox_styles.js | 8 +- 13 files changed, 325 insertions(+), 33 deletions(-) create mode 100644 x-pack/legacy/plugins/maps/common/get_join_key.ts create mode 100644 x-pack/legacy/plugins/maps/common/migrations/join_agg_key.test.ts create mode 100644 x-pack/legacy/plugins/maps/common/migrations/join_agg_key.ts create mode 100644 x-pack/plugins/maps/common/get_join_key.ts diff --git a/x-pack/legacy/plugins/maps/common/get_join_key.ts b/x-pack/legacy/plugins/maps/common/get_join_key.ts new file mode 100644 index 00000000000000..004f12ca08d2ea --- /dev/null +++ b/x-pack/legacy/plugins/maps/common/get_join_key.ts @@ -0,0 +1,8 @@ +/* + * 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 @kbn/eslint/no-restricted-paths +export * from '../../../../plugins/maps/common/get_join_key'; diff --git a/x-pack/legacy/plugins/maps/common/migrations/join_agg_key.test.ts b/x-pack/legacy/plugins/maps/common/migrations/join_agg_key.test.ts new file mode 100644 index 00000000000000..d92bf065414337 --- /dev/null +++ b/x-pack/legacy/plugins/maps/common/migrations/join_agg_key.test.ts @@ -0,0 +1,140 @@ +/* + * 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 { LAYER_TYPE } from '../constants'; +import { migrateJoinAggKey } from './join_agg_key'; + +describe('migrateJoinAggKey', () => { + const joins = [ + { + leftField: 'machine.os', + right: { + id: '9055b4aa-136a-4b6d-90ab-9f94ccfe5eb5', + indexPatternTitle: 'kibana_sample_data_logs', + term: 'machine.os.keyword', + metrics: [ + { + type: 'avg', + field: 'bytes', + }, + { + type: 'count', + }, + ], + whereQuery: { + query: 'bytes > 10000', + language: 'kuery', + }, + indexPatternRefName: 'layer_1_join_0_index_pattern', + }, + }, + { + leftField: 'machine.os', + right: { + id: '9a7f4e71-9500-4512-82f1-b7eaee3d87ff', + indexPatternTitle: 'kibana_sample_data_logs', + term: 'machine.os.keyword', + whereQuery: { + query: 'bytes < 10000', + language: 'kuery', + }, + metrics: [ + { + type: 'avg', + field: 'bytes', + }, + ], + indexPatternRefName: 'layer_1_join_1_index_pattern', + }, + }, + ]; + + test('Should handle missing layerListJSON attribute', () => { + const attributes = { + title: 'my map', + }; + expect(migrateJoinAggKey({ attributes })).toEqual({ + title: 'my map', + }); + }); + + test('Should migrate vector styles from legacy join agg key to new join agg key', () => { + const layerListJSON = JSON.stringify([ + { + type: LAYER_TYPE.VECTOR, + joins, + style: { + properties: { + fillColor: { + type: 'DYNAMIC', + options: { + color: 'Blues', + colorCategory: 'palette_0', + field: { + name: + '__kbnjoin__avg_of_bytes_groupby_kibana_sample_data_logs.machine.os.keyword', + origin: 'join', + }, + fieldMetaOptions: { + isEnabled: true, + sigma: 3, + }, + type: 'ORDINAL', + }, + }, + lineColor: { + type: 'DYNAMIC', + options: { + color: 'Blues', + colorCategory: 'palette_0', + field: { + name: '__kbnjoin__count_groupby_kibana_sample_data_logs.machine.os.keyword', + origin: 'join', + }, + fieldMetaOptions: { + isEnabled: true, + sigma: 3, + }, + type: 'ORDINAL', + }, + }, + lineWidth: { + type: 'DYNAMIC', + options: { + color: 'Blues', + colorCategory: 'palette_0', + field: { + name: 'mySourceField', + origin: 'source', + }, + fieldMetaOptions: { + isEnabled: true, + sigma: 3, + }, + type: 'ORDINAL', + }, + }, + }, + }, + }, + ]); + const attributes = { + title: 'my map', + layerListJSON, + }; + const { layerListJSON: migratedLayerListJSON } = migrateJoinAggKey({ attributes }); + const migratedLayerList = JSON.parse(migratedLayerListJSON!); + expect(migratedLayerList[0].style.properties.fillColor.options.field.name).toBe( + '__kbnjoin__avg_of_bytes__9055b4aa-136a-4b6d-90ab-9f94ccfe5eb5' + ); + expect(migratedLayerList[0].style.properties.lineColor.options.field.name).toBe( + '__kbnjoin__count__9055b4aa-136a-4b6d-90ab-9f94ccfe5eb5' + ); + expect(migratedLayerList[0].style.properties.lineWidth.options.field.name).toBe( + 'mySourceField' + ); + }); +}); diff --git a/x-pack/legacy/plugins/maps/common/migrations/join_agg_key.ts b/x-pack/legacy/plugins/maps/common/migrations/join_agg_key.ts new file mode 100644 index 00000000000000..29661aedb550c5 --- /dev/null +++ b/x-pack/legacy/plugins/maps/common/migrations/join_agg_key.ts @@ -0,0 +1,121 @@ +/* + * 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 _ from 'lodash'; +import { + AGG_DELIMITER, + AGG_TYPE, + FIELD_ORIGIN, + JOIN_FIELD_NAME_PREFIX, + LAYER_TYPE, + VECTOR_STYLES, +} from '../constants'; +import { getJoinAggKey } from '../get_join_key'; +import { + AggDescriptor, + JoinDescriptor, + LayerDescriptor, + VectorLayerDescriptor, +} from '../descriptor_types'; +import { MapSavedObjectAttributes } from '../../../../../plugins/maps/common/map_saved_object_type'; + +const GROUP_BY_DELIMITER = '_groupby_'; + +function getLegacyAggKey({ + aggType, + aggFieldName, + indexPatternTitle, + termFieldName, +}: { + aggType: AGG_TYPE; + aggFieldName?: string; + indexPatternTitle: string; + termFieldName: string; +}): string { + const metricKey = + aggType !== AGG_TYPE.COUNT ? `${aggType}${AGG_DELIMITER}${aggFieldName}` : aggType; + return `${JOIN_FIELD_NAME_PREFIX}${metricKey}${GROUP_BY_DELIMITER}${indexPatternTitle}.${termFieldName}`; +} + +function parseLegacyAggKey(legacyAggKey: string): { aggType: AGG_TYPE; aggFieldName?: string } { + const groupBySplit = legacyAggKey + .substring(JOIN_FIELD_NAME_PREFIX.length) + .split(GROUP_BY_DELIMITER); + const metricKey = groupBySplit[0]; + const metricKeySplit = metricKey.split(AGG_DELIMITER); + return { + aggType: metricKeySplit[0] as AGG_TYPE, + aggFieldName: metricKeySplit.length === 2 ? metricKeySplit[1] : undefined, + }; +} + +export function migrateJoinAggKey({ + attributes, +}: { + attributes: MapSavedObjectAttributes; +}): MapSavedObjectAttributes { + if (!attributes || !attributes.layerListJSON) { + return attributes; + } + + const layerList: LayerDescriptor[] = JSON.parse(attributes.layerListJSON); + layerList.forEach((layerDescriptor: LayerDescriptor) => { + if ( + layerDescriptor.type === LAYER_TYPE.VECTOR || + layerDescriptor.type === LAYER_TYPE.BLENDED_VECTOR + ) { + const vectorLayerDescriptor = layerDescriptor as VectorLayerDescriptor; + + if ( + !vectorLayerDescriptor.style || + !vectorLayerDescriptor.joins || + vectorLayerDescriptor.joins.length === 0 + ) { + return; + } + + const legacyJoinFields = new Map(); + vectorLayerDescriptor.joins.forEach((joinDescriptor: JoinDescriptor) => { + _.get(joinDescriptor, 'right.metrics', []).forEach((aggDescriptor: AggDescriptor) => { + const legacyAggKey = getLegacyAggKey({ + aggType: aggDescriptor.type, + aggFieldName: aggDescriptor.field, + indexPatternTitle: _.get(joinDescriptor, 'right.indexPatternTitle', ''), + termFieldName: _.get(joinDescriptor, 'right.term', ''), + }); + // The legacy getAggKey implemenation has a naming collision bug where + // aggType, aggFieldName, indexPatternTitle, and termFieldName would result in the identical aggKey. + // The VectorStyle implemenation used the first matching join descriptor + // so, in the event of a name collision, the first join descriptor will be used here as well. + if (!legacyJoinFields.has(legacyAggKey)) { + legacyJoinFields.set(legacyAggKey, joinDescriptor); + } + }); + }); + + Object.keys(vectorLayerDescriptor.style.properties).forEach(key => { + const style: any = vectorLayerDescriptor.style!.properties[key as VECTOR_STYLES]; + if (_.get(style, 'options.field.origin') === FIELD_ORIGIN.JOIN) { + const joinDescriptor = legacyJoinFields.get(style.options.field.name); + if (joinDescriptor) { + const { aggType, aggFieldName } = parseLegacyAggKey(style.options.field.name); + // Update legacy join agg key to new join agg key + style.options.field.name = getJoinAggKey({ + aggType, + aggFieldName, + rightSourceId: joinDescriptor.right.id!, + }); + } + } + }); + } + }); + + return { + ...attributes, + layerListJSON: JSON.stringify(layerList), + }; +} diff --git a/x-pack/legacy/plugins/maps/migrations.js b/x-pack/legacy/plugins/maps/migrations.js index 6a1f5bc937497b..a8e69eef7a02fd 100644 --- a/x-pack/legacy/plugins/maps/migrations.js +++ b/x-pack/legacy/plugins/maps/migrations.js @@ -11,6 +11,7 @@ import { moveApplyGlobalQueryToSources } from './common/migrations/move_apply_gl import { addFieldMetaOptions } from './common/migrations/add_field_meta_options'; import { migrateSymbolStyleDescriptor } from './common/migrations/migrate_symbol_style_descriptor'; import { migrateUseTopHitsToScalingType } from './common/migrations/scaling_type'; +import { migrateJoinAggKey } from './common/migrations/join_agg_key'; export const migrations = { map: { @@ -57,5 +58,13 @@ export const migrations = { attributes: attributesPhase2, }; }, + '7.8.0': doc => { + const attributes = migrateJoinAggKey(doc); + + return { + ...doc, + attributes, + }; + }, }, }; diff --git a/x-pack/plugins/maps/common/constants.ts b/x-pack/plugins/maps/common/constants.ts index 9808a62852a944..a4006732224ce3 100644 --- a/x-pack/plugins/maps/common/constants.ts +++ b/x-pack/plugins/maps/common/constants.ts @@ -1,9 +1,3 @@ -/* - * 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. - */ - /* * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one * or more contributor license agreements. Licensed under the Elastic License; @@ -75,6 +69,7 @@ export enum FIELD_ORIGIN { SOURCE = 'source', JOIN = 'join', } +export const JOIN_FIELD_NAME_PREFIX = '__kbnjoin__'; export const SOURCE_DATA_ID_ORIGIN = 'source'; export const META_ID_ORIGIN_SUFFIX = 'meta'; @@ -132,6 +127,7 @@ export enum DRAW_TYPE { POLYGON = 'POLYGON', } +export const AGG_DELIMITER = '_of_'; export enum AGG_TYPE { AVG = 'avg', COUNT = 'count', diff --git a/x-pack/plugins/maps/common/get_join_key.ts b/x-pack/plugins/maps/common/get_join_key.ts new file mode 100644 index 00000000000000..f1ee95126b9a9b --- /dev/null +++ b/x-pack/plugins/maps/common/get_join_key.ts @@ -0,0 +1,22 @@ +/* + * 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 { AGG_DELIMITER, AGG_TYPE, JOIN_FIELD_NAME_PREFIX } from './constants'; + +// function in common since its needed by migration +export function getJoinAggKey({ + aggType, + aggFieldName, + rightSourceId, +}: { + aggType: AGG_TYPE; + aggFieldName?: string; + rightSourceId: string; +}) { + const metricKey = + aggType !== AGG_TYPE.COUNT ? `${aggType}${AGG_DELIMITER}${aggFieldName}` : aggType; + return `${JOIN_FIELD_NAME_PREFIX}${metricKey}__${rightSourceId}`; +} diff --git a/x-pack/plugins/maps/public/layers/joins/inner_join.test.js b/x-pack/plugins/maps/public/layers/joins/inner_join.test.js index 65c37860ffa184..f197a67becfaef 100644 --- a/x-pack/plugins/maps/public/layers/joins/inner_join.test.js +++ b/x-pack/plugins/maps/public/layers/joins/inner_join.test.js @@ -35,7 +35,7 @@ const leftJoin = new InnerJoin( }, mockSource ); -const COUNT_PROPERTY_NAME = '__kbnjoin__count_groupby_kibana_sample_data_logs.geo.dest'; +const COUNT_PROPERTY_NAME = '__kbnjoin__count__d3625663-5b34-4d50-a784-0d743f676a0c'; describe('joinPropertiesToFeature', () => { it('Should add join property to features in feature collection', () => { diff --git a/x-pack/plugins/maps/public/layers/sources/es_agg_source/es_agg_source.js b/x-pack/plugins/maps/public/layers/sources/es_agg_source/es_agg_source.js index c6197f137f2123..58c56fe32f766c 100644 --- a/x-pack/plugins/maps/public/layers/sources/es_agg_source/es_agg_source.js +++ b/x-pack/plugins/maps/public/layers/sources/es_agg_source/es_agg_source.js @@ -7,16 +7,14 @@ import { i18n } from '@kbn/i18n'; import { AbstractESSource } from '../es_source'; import { esAggFieldsFactory } from '../../fields/es_agg_field'; - import { + AGG_DELIMITER, AGG_TYPE, COUNT_PROP_LABEL, COUNT_PROP_NAME, FIELD_ORIGIN, } from '../../../../common/constants'; -export const AGG_DELIMITER = '_of_'; - export class AbstractESAggSource extends AbstractESSource { constructor(descriptor, inspectorAdapters) { super(descriptor, inspectorAdapters); diff --git a/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.js b/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.js index 826197cc4fec7e..cb07bb0e7d2ed7 100644 --- a/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.js +++ b/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.js @@ -7,15 +7,14 @@ import _ from 'lodash'; import { i18n } from '@kbn/i18n'; -import { DEFAULT_MAX_BUCKETS_LIMIT, FIELD_ORIGIN, AGG_TYPE } from '../../../../common/constants'; +import { AGG_TYPE, DEFAULT_MAX_BUCKETS_LIMIT, FIELD_ORIGIN } from '../../../../common/constants'; +import { getJoinAggKey } from '../../../../common/get_join_key'; import { ESDocField } from '../../fields/es_doc_field'; -import { AbstractESAggSource, AGG_DELIMITER } from '../es_agg_source'; +import { AbstractESAggSource } from '../es_agg_source'; import { getField, addFieldToDSL, extractPropertiesFromBucket } from '../../util/es_agg_utils'; const TERMS_AGG_NAME = 'join'; -const FIELD_NAME_PREFIX = '__kbnjoin__'; -const GROUP_BY_DELIMITER = '_groupby_'; const TERMS_BUCKET_KEYS_TO_IGNORE = ['key', 'doc_count']; export function extractPropertiesMap(rawEsData, countPropertyName) { @@ -64,11 +63,11 @@ export class ESTermSource extends AbstractESAggSource { } getAggKey(aggType, fieldName) { - const metricKey = - aggType !== AGG_TYPE.COUNT ? `${aggType}${AGG_DELIMITER}${fieldName}` : aggType; - return `${FIELD_NAME_PREFIX}${metricKey}${GROUP_BY_DELIMITER}${ - this._descriptor.indexPatternTitle - }.${this._termField.getName()}`; + return getJoinAggKey({ + aggType, + aggFieldName: fieldName, + rightSourceId: this._descriptor.id, + }); } getAggLabel(aggType, fieldName) { diff --git a/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.test.js b/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.test.js index b6cd3b670d3ce3..14eb39180a6b8b 100644 --- a/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.test.js +++ b/x-pack/plugins/maps/public/layers/sources/es_term_source/es_term_source.test.js @@ -32,33 +32,32 @@ const metricExamples = [ describe('getMetricFields', () => { it('should override name and label of count metric', async () => { const source = new ESTermSource({ + id: '1234', indexPatternTitle: indexPatternTitle, term: termFieldName, }); const metrics = source.getMetricFields(); - expect(metrics[0].getName()).toEqual('__kbnjoin__count_groupby_myIndex.myTermField'); + expect(metrics[0].getName()).toEqual('__kbnjoin__count__1234'); expect(await metrics[0].getLabel()).toEqual('Count of myIndex'); }); it('should override name and label of sum metric', async () => { const source = new ESTermSource({ + id: '1234', indexPatternTitle: indexPatternTitle, term: termFieldName, metrics: metricExamples, }); const metrics = source.getMetricFields(); - expect(metrics[0].getName()).toEqual( - '__kbnjoin__sum_of_myFieldGettingSummed_groupby_myIndex.myTermField' - ); + expect(metrics[0].getName()).toEqual('__kbnjoin__sum_of_myFieldGettingSummed__1234'); expect(await metrics[0].getLabel()).toEqual('my custom label'); - expect(metrics[1].getName()).toEqual('__kbnjoin__count_groupby_myIndex.myTermField'); + expect(metrics[1].getName()).toEqual('__kbnjoin__count__1234'); expect(await metrics[1].getLabel()).toEqual('Count of myIndex'); }); }); describe('extractPropertiesMap', () => { - const minPropName = - '__kbnjoin__min_of_avlAirTemp_groupby_kibana_sample_data_ky_avl.kytcCountyNmbr'; + const minPropName = '__kbnjoin__min_of_avlAirTemp__1234'; const responseWithNumberTypes = { aggregations: { join: { @@ -81,7 +80,7 @@ describe('extractPropertiesMap', () => { }, }, }; - const countPropName = '__kbnjoin__count_groupby_kibana_sample_data_ky_avl.kytcCountyNmbr'; + const countPropName = '__kbnjoin__count__1234'; let propertiesMap; beforeAll(() => { diff --git a/x-pack/test/api_integration/apis/maps/migrations.js b/x-pack/test/api_integration/apis/maps/migrations.js index c4587530e160ba..cd575899118a30 100644 --- a/x-pack/test/api_integration/apis/maps/migrations.js +++ b/x-pack/test/api_integration/apis/maps/migrations.js @@ -41,7 +41,7 @@ export default function({ getService }) { type: 'index-pattern', }, ]); - expect(resp.body.migrationVersion).to.eql({ map: '7.7.0' }); + expect(resp.body.migrationVersion).to.eql({ map: '7.8.0' }); expect(resp.body.attributes.layerListJSON.includes('indexPatternRefName')).to.be(true); }); }); diff --git a/x-pack/test/functional/apps/maps/joins.js b/x-pack/test/functional/apps/maps/joins.js index 89a6c6ea82e533..4b36109a4de9c7 100644 --- a/x-pack/test/functional/apps/maps/joins.js +++ b/x-pack/test/functional/apps/maps/joins.js @@ -9,7 +9,7 @@ import _ from 'lodash'; import { MAPBOX_STYLES } from './mapbox_styles'; -const JOIN_PROPERTY_NAME = '__kbnjoin__max_of_prop1_groupby_meta_for_geo_shapes*.shape_name'; +const JOIN_PROPERTY_NAME = '__kbnjoin__max_of_prop1__855ccb86-fe42-11e8-8eb2-f2801f1b9fd1'; const EXPECTED_JOIN_VALUES = { alpha: 10, bravo: 3, diff --git a/x-pack/test/functional/apps/maps/mapbox_styles.js b/x-pack/test/functional/apps/maps/mapbox_styles.js index 508a019db17644..63bfc331d88869 100644 --- a/x-pack/test/functional/apps/maps/mapbox_styles.js +++ b/x-pack/test/functional/apps/maps/mapbox_styles.js @@ -27,7 +27,7 @@ export const MAPBOX_STYLES = { 'case', [ '==', - ['feature-state', '__kbnjoin__max_of_prop1_groupby_meta_for_geo_shapes*.shape_name'], + ['feature-state', '__kbnjoin__max_of_prop1__855ccb86-fe42-11e8-8eb2-f2801f1b9fd1'], null, ], 2, @@ -39,7 +39,7 @@ export const MAPBOX_STYLES = { 'to-number', [ 'feature-state', - '__kbnjoin__max_of_prop1_groupby_meta_for_geo_shapes*.shape_name', + '__kbnjoin__max_of_prop1__855ccb86-fe42-11e8-8eb2-f2801f1b9fd1', ], ], 12, @@ -97,7 +97,7 @@ export const MAPBOX_STYLES = { 'case', [ '==', - ['feature-state', '__kbnjoin__max_of_prop1_groupby_meta_for_geo_shapes*.shape_name'], + ['feature-state', '__kbnjoin__max_of_prop1__855ccb86-fe42-11e8-8eb2-f2801f1b9fd1'], null, ], 2, @@ -109,7 +109,7 @@ export const MAPBOX_STYLES = { 'to-number', [ 'feature-state', - '__kbnjoin__max_of_prop1_groupby_meta_for_geo_shapes*.shape_name', + '__kbnjoin__max_of_prop1__855ccb86-fe42-11e8-8eb2-f2801f1b9fd1', ], ], 12, From c2293cb11dfb19e87454e48b604ac4fad27b0efe Mon Sep 17 00:00:00 2001 From: Andrew Goldstein Date: Thu, 16 Apr 2020 22:17:28 -0600 Subject: [PATCH 12/59] [SIEM] Threat hunting enhancements: Filter for/out value, Show top field, Copy to Clipboard, Draggable chart legends (#61207) ## [SIEM] Threat hunting enhancements: Filter for/out value, Show top field, Copy to Clipboard, Draggable chart legends Enhancements to the threat hunting experience ![show-top-field](https://user-images.githubusercontent.com/4459398/79180753-f9bb7f80-7dc7-11ea-9ae2-d4e4fc79208c.gif) ### New draggable context menu A new context menu with the following items has been added to all draggables: - Filter for value - Filter out value - Show top _field name_ - Copy to Clipboard as shown in the following animated gif: ![new-context-menu](https://user-images.githubusercontent.com/4459398/79173935-4dbd6880-7db6-11ea-9253-7746481e1b17.gif) ### Filter for value The _Filter for value_ context menu action adds the draggable to the global filter bar, which is applicable to all pages in the SIEM app, per the following animated gif: ![filter-in-value](https://user-images.githubusercontent.com/4459398/79176624-f91deb80-7dbd-11ea-9b01-799145d776c8.gif) ### Filter out value The _Filter out value_ context menu action adds the draggable to the global filter bar as a _negated_ (`NOT`) filter, per the following animated gif: ![filter-out-value](https://user-images.githubusercontent.com/4459398/79178474-9f6bf000-7dc2-11ea-9423-512ad7f89a18.gif) ### Show top _field_ The _Show top field_ context menu action displays an interactive Top 10 histogram, per the following animated gif: ![show-top-field](https://user-images.githubusercontent.com/4459398/79180753-f9bb7f80-7dc7-11ea-9ae2-d4e4fc79208c.gif) - The contents of the histogram are filtered by the global KQL bar / filters and current date range - Brushing over the bars in the histogram updates the global date range / picker - Select _Events_ or _Signals_ - The _Show top field_ action is also available in the Fields Browser, per the following animated gif: ![in-fields-browser](https://user-images.githubusercontent.com/4459398/79179548-1a360a80-7dc5-11ea-9ad7-cdd7fef0cc64.gif) ### Copy to Clipboard The _Copy to clipboard_ context menu action copies the draggable field and value to the clipboard in KQL format (e.g. `process.name: "nice"`). Per the following animated gifs, it's now possible to copy _any_ draggable to the clipboard, and paste it in KQL format, which addresses [this feature request from a user](https://github.com/elastic/kibana/issues/59472): ![copy-to-clipboard](https://user-images.githubusercontent.com/4459398/79178893-a7785f80-7dc3-11ea-868a-5d7bc2824912.gif) ![pasted-value](https://user-images.githubusercontent.com/4459398/79179126-2c637900-7dc4-11ea-92a7-86c7d6377688.gif) ### Draggable chart legends You may now pivot from chart legends by dragging and dropping them to a timeline, or by selecting the Filter for / out context menu action, per the following animated gif: ![draggable-legend](https://user-images.githubusercontent.com/4459398/79179769-9deff700-7dc5-11ea-9153-b472914f2dfe.gif) #### Desk testing Desk tested in: - Chrome `81.0.4044.92` - Firefox `75.0` - Safari `13.1` --- .../legacy/plugins/siem/common/constants.ts | 17 + .../components/charts/barchart.test.tsx | 116 +++- .../public/components/charts/barchart.tsx | 65 +- .../charts/draggable_legend.test.tsx | 149 +++++ .../components/charts/draggable_legend.tsx | 68 +++ .../charts/draggable_legend_item.test.tsx | 143 +++++ .../charts/draggable_legend_item.tsx | 62 ++ .../public/components/charts/translation.ts | 4 + .../drag_drop_context_wrapper.tsx | 3 + .../drag_and_drop/draggable_wrapper.test.tsx | 65 +- .../drag_and_drop/draggable_wrapper.tsx | 173 ++++-- .../draggable_wrapper_hover_content.test.tsx | 559 ++++++++++++++++++ .../draggable_wrapper_hover_content.tsx | 145 +++++ .../components/drag_and_drop/helpers.test.ts | 95 +++ .../components/drag_and_drop/helpers.ts | 97 ++- .../components/drag_and_drop/translations.ts | 33 ++ .../__snapshots__/index.test.tsx.snap | 1 + .../public/components/draggables/index.tsx | 2 +- .../components/event_details/columns.tsx | 37 +- .../events_viewer/events_viewer.tsx | 7 +- .../fields_browser/category_columns.test.tsx | 24 - .../fields_browser/category_columns.tsx | 52 +- .../fields_browser/field_name.test.tsx | 59 -- .../components/fields_browser/field_name.tsx | 98 +-- .../public/components/header_page/title.tsx | 4 +- .../__snapshots__/index.test.tsx.snap | 7 +- .../components/header_section/index.test.tsx | 4 +- .../components/header_section/index.tsx | 8 +- .../public/components/links/index.test.tsx | 2 + .../__snapshots__/index.test.tsx.snap | 4 +- .../matrix_histogram/index.test.tsx | 11 + .../components/matrix_histogram/index.tsx | 113 ++-- .../components/matrix_histogram/types.ts | 11 + .../components/matrix_histogram/utils.ts | 13 + .../notes/note_card/note_card_body.tsx | 48 +- .../__snapshots__/index.test.tsx.snap | 24 +- .../helpers.test.tsx | 16 + .../helpers.ts | 8 +- .../add_filter_to_global_search_bar/index.tsx | 57 +- .../translations.ts | 7 + .../page/hosts/hosts_table/columns.tsx | 4 +- .../siem/public/components/page/index.tsx | 16 +- .../public/components/page/manage_query.tsx | 2 +- .../components/paginated_table/index.tsx | 12 +- .../source_destination_ip.tsx | 2 +- .../__snapshots__/timeline.test.tsx.snap | 36 ++ .../body/column_headers/actions/index.tsx | 2 +- .../column_headers/header/header_content.tsx | 2 +- .../auditd/generic_row_renderer.test.tsx | 2 + .../renderers/suricata/suricata_signature.tsx | 4 +- .../body/renderers/system/generic_details.tsx | 2 +- .../renderers/system/generic_file_details.tsx | 2 +- .../system/generic_row_renderer.test.tsx | 2 + .../body/renderers/zeek/zeek_signature.tsx | 2 +- .../timeline/data_providers/index.tsx | 2 +- .../data_providers/provider_badge.tsx | 142 +++-- .../data_providers/provider_item_badge.tsx | 2 +- .../data_providers/providers.test.tsx | 21 +- .../timeline/data_providers/translations.ts | 12 + .../header/__snapshots__/index.test.tsx.snap | 36 ++ .../components/timeline/header/index.test.tsx | 7 + .../components/timeline/header/index.tsx | 6 +- .../timeline/query_bar/index.test.tsx | 10 + .../components/timeline/query_bar/index.tsx | 6 +- .../timeline/search_or_filter/index.tsx | 10 +- .../search_or_filter/search_or_filter.tsx | 9 +- .../public/components/timeline/timeline.tsx | 18 +- .../components/timeline/timeline_context.tsx | 39 +- .../public/components/top_n/helpers.test.tsx | 25 + .../siem/public/components/top_n/helpers.ts | 66 +++ .../public/components/top_n/index.test.tsx | 379 ++++++++++++ .../siem/public/components/top_n/index.tsx | 166 ++++++ .../public/components/top_n/top_n.test.tsx | 261 ++++++++ .../siem/public/components/top_n/top_n.tsx | 158 +++++ .../public/components/top_n/translations.ts | 23 + .../components/with_hover_actions/index.tsx | 68 +-- .../containers/matrix_histogram/index.ts | 15 +- .../signals_histogram_panel/helpers.tsx | 73 ++- .../signals_histogram_panel/index.tsx | 116 ++-- .../signals_histogram.test.tsx | 9 +- .../signals_histogram.tsx | 57 +- .../signals_histogram_panel/translations.ts | 6 + .../alerts_by_category/index.test.tsx | 4 +- .../events_by_dataset/__mocks__/index.tsx | 7 + .../overview/events_by_dataset/index.tsx | 89 ++- .../siem/public/pages/overview/overview.tsx | 2 +- .../overview/signals_by_category/index.tsx | 16 +- .../public/pages/overview/translations.ts | 6 + .../pages/timelines/timelines_page.test.tsx | 2 + .../query.events_over_time.dsl.ts | 14 +- .../lib/matrix_histogram/translations.ts | 14 + 91 files changed, 3716 insertions(+), 681 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.test.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.test.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.test.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper_hover_content.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/drag_and_drop/translations.ts create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/helpers.test.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/helpers.ts create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/index.test.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/top_n.test.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/top_n.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/top_n/translations.ts create mode 100644 x-pack/legacy/plugins/siem/public/pages/overview/events_by_dataset/__mocks__/index.tsx create mode 100644 x-pack/legacy/plugins/siem/server/lib/matrix_histogram/translations.ts diff --git a/x-pack/legacy/plugins/siem/common/constants.ts b/x-pack/legacy/plugins/siem/common/constants.ts index 22f1b3beffa35d..e0acc7ecfe0363 100644 --- a/x-pack/legacy/plugins/siem/common/constants.ts +++ b/x-pack/legacy/plugins/siem/common/constants.ts @@ -111,3 +111,20 @@ export const NOTIFICATION_SUPPORTED_ACTION_TYPES_IDS = [ ]; export const NOTIFICATION_THROTTLE_NO_ACTIONS = 'no_actions'; export const NOTIFICATION_THROTTLE_RULE = 'rule'; + +/** + * Histograms for fields named in this list should be displayed with an + * "All others" bucket, to count events that don't specify a value for + * the field being counted + */ +export const showAllOthersBucket: string[] = [ + 'destination.ip', + 'event.action', + 'event.category', + 'event.dataset', + 'event.module', + 'signal.rule.threat.tactic.name', + 'source.ip', + 'destination.ip', + 'user.name', +]; diff --git a/x-pack/legacy/plugins/siem/public/components/charts/barchart.test.tsx b/x-pack/legacy/plugins/siem/public/components/charts/barchart.test.tsx index 272c41833f3685..635d48cca10fc9 100644 --- a/x-pack/legacy/plugins/siem/public/components/charts/barchart.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/charts/barchart.test.tsx @@ -4,15 +4,29 @@ * you may not use this file except in compliance with the Elastic License. */ -import { shallow, ShallowWrapper } from 'enzyme'; +import { Chart, BarSeries, Axis, ScaleType } from '@elastic/charts'; +import euiDarkVars from '@elastic/eui/dist/eui_theme_dark.json'; +import { mount, ReactWrapper, shallow, ShallowWrapper } from 'enzyme'; import React from 'react'; +import { ThemeProvider } from 'styled-components'; + +import { escapeDataProviderId } from '../drag_and_drop/helpers'; +import { TestProviders } from '../../mock'; import { BarChartBaseComponent, BarChartComponent } from './barchart'; import { ChartSeriesData } from './common'; -import { Chart, BarSeries, Axis, ScaleType } from '@elastic/charts'; jest.mock('../../lib/kibana'); +jest.mock('uuid', () => { + return { + v1: jest.fn(() => 'uuid.v1()'), + v4: jest.fn(() => 'uuid.v4()'), + }; +}); + +const theme = () => ({ eui: euiDarkVars, darkMode: true }); + const customHeight = '100px'; const customWidth = '120px'; const chartDataSets = [ @@ -116,6 +130,19 @@ const mockConfig = { customHeight: 324, }; +// Suppress warnings about "react-beautiful-dnd" +/* eslint-disable no-console */ +const originalError = console.error; +const originalWarn = console.warn; +beforeAll(() => { + console.warn = jest.fn(); + console.error = jest.fn(); +}); +afterAll(() => { + console.error = originalError; + console.warn = originalWarn; +}); + describe('BarChartBaseComponent', () => { let shallowWrapper: ShallowWrapper; const mockBarChartData: ChartSeriesData[] = [ @@ -280,6 +307,91 @@ describe.each(chartDataSets)('BarChart with valid data [%o]', data => { expect(shallowWrapper.find('BarChartBase')).toHaveLength(1); expect(shallowWrapper.find('ChartPlaceHolder')).toHaveLength(0); }); + + it('it does NOT render a draggable legend because stackByField is not provided', () => { + expect(shallowWrapper.find('[data-test-subj="draggable-legend"]').exists()).toBe(false); + }); +}); + +describe.each(chartDataSets)('BarChart with stackByField', () => { + let wrapper: ReactWrapper; + + const data = [ + { + key: 'python.exe', + value: [ + { + x: 1586754900000, + y: 9675, + g: 'python.exe', + }, + ], + }, + { + key: 'kernel', + value: [ + { + x: 1586754900000, + y: 8708, + g: 'kernel', + }, + { + x: 1586757600000, + y: 9282, + g: 'kernel', + }, + ], + }, + { + key: 'sshd', + value: [ + { + x: 1586754900000, + y: 5907, + g: 'sshd', + }, + ], + }, + ]; + + const expectedColors = ['#1EA593', '#2B70F7', '#CE0060']; + + const stackByField = 'process.name'; + + beforeAll(() => { + wrapper = mount( + + + + + + ); + }); + + it('it renders a draggable legend', () => { + expect(wrapper.find('[data-test-subj="draggable-legend"]').exists()).toBe(true); + }); + + expectedColors.forEach((color, i) => { + test(`it renders the expected legend color ${color} for legend item ${i}`, () => { + expect(wrapper.find(`div [color="${color}"]`).exists()).toBe(true); + }); + }); + + data.forEach(datum => { + test(`it renders the expected draggable legend text for datum ${datum.key}`, () => { + const dataProviderId = `draggableId.content.draggable-legend-item-uuid_v4()-${escapeDataProviderId( + stackByField + )}-${escapeDataProviderId(datum.key)}`; + + expect( + wrapper + .find(`div [data-rbd-draggable-id="${dataProviderId}"]`) + .first() + .text() + ).toEqual(datum.key); + }); + }); }); describe.each(chartHolderDataSets)('BarChart with invalid data [%o]', data => { diff --git a/x-pack/legacy/plugins/siem/public/components/charts/barchart.tsx b/x-pack/legacy/plugins/siem/public/components/charts/barchart.tsx index 2ae0e05850a373..64d15cd6731cb0 100644 --- a/x-pack/legacy/plugins/siem/public/components/charts/barchart.tsx +++ b/x-pack/legacy/plugins/siem/public/components/charts/barchart.tsx @@ -4,13 +4,19 @@ * you may not use this file except in compliance with the Elastic License. */ -import React from 'react'; +import { EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; +import React, { useMemo } from 'react'; import { Chart, BarSeries, Axis, Position, ScaleType, Settings } from '@elastic/charts'; import { getOr, get, isNumber } from 'lodash/fp'; import deepmerge from 'deepmerge'; +import uuid from 'uuid'; +import styled from 'styled-components'; -import { useThrottledResizeObserver } from '../utils'; +import { escapeDataProviderId } from '../drag_and_drop/helpers'; import { useTimeZone } from '../../lib/kibana'; +import { defaultLegendColors } from '../matrix_histogram/utils'; +import { useThrottledResizeObserver } from '../utils'; + import { ChartPlaceHolder } from './chart_place_holder'; import { chartDefaultSettings, @@ -22,6 +28,12 @@ import { WrappedByAutoSizer, useTheme, } from './common'; +import { DraggableLegend } from './draggable_legend'; +import { LegendItem } from './draggable_legend_item'; + +const LegendFlexItem = styled(EuiFlexItem)` + overview: hidden; +`; const checkIfAllTheDataInTheSeriesAreValid = (series: ChartSeriesData): series is ChartSeriesData => series != null && @@ -38,12 +50,14 @@ const checkIfAnyValidSeriesExist = ( // Bar chart rotation: https://ela.st/chart-rotations export const BarChartBaseComponent = ({ data, + forceHiddenLegend = false, ...chartConfigs }: { data: ChartSeriesData[]; width: string | null | undefined; height: string | null | undefined; configs?: ChartSeriesConfigs | undefined; + forceHiddenLegend?: boolean; }) => { const theme = useTheme(); const timeZone = useTimeZone(); @@ -59,10 +73,10 @@ export const BarChartBaseComponent = ({ return chartConfigs.width && chartConfigs.height ? ( - + {data.map(series => { const barSeriesKey = series.key; - return checkIfAllTheDataInTheSeriesAreValid ? ( + return checkIfAllTheDataInTheSeriesAreValid(series) ? ( = ({ barChart, configs }) => { +const NO_LEGEND_DATA: LegendItem[] = []; + +export const BarChartComponent: React.FC = ({ + barChart, + configs, + stackByField, +}) => { const { ref: measureRef, width, height } = useThrottledResizeObserver(); + const legendItems: LegendItem[] = useMemo( + () => + barChart != null && stackByField != null + ? barChart.map((d, i) => ({ + color: d.color ?? i < defaultLegendColors.length ? defaultLegendColors[i] : undefined, + dataProviderId: escapeDataProviderId( + `draggable-legend-item-${uuid.v4()}-${stackByField}-${d.key}` + ), + field: stackByField, + value: d.key, + })) + : NO_LEGEND_DATA, + [barChart, stackByField] + ); + const customHeight = get('customHeight', configs); const customWidth = get('customWidth', configs); const chartHeight = getChartHeight(customHeight, height); const chartWidth = getChartWidth(customWidth, width); return checkIfAnyValidSeriesExist(barChart) ? ( - - - + + + + + + + + + + ) : ( ); diff --git a/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.test.tsx b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.test.tsx new file mode 100644 index 00000000000000..0da0c2bdc35f2c --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.test.tsx @@ -0,0 +1,149 @@ +/* + * 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 euiDarkVars from '@elastic/eui/dist/eui_theme_dark.json'; +import { mount, ReactWrapper } from 'enzyme'; +import React from 'react'; +import { ThemeProvider } from 'styled-components'; + +import { TestProviders } from '../../mock'; + +import { MIN_LEGEND_HEIGHT, DraggableLegend } from './draggable_legend'; +import { LegendItem } from './draggable_legend_item'; + +const theme = () => ({ eui: euiDarkVars, darkMode: true }); + +const allOthersDataProviderId = + 'draggable-legend-item-527adabe-8e1c-4a1f-965c-2f3d65dda9e1-event_dataset-All others'; + +const legendItems: LegendItem[] = [ + { + color: '#1EA593', + dataProviderId: 'draggable-legend-item-3207fda7-d008-402a-86a0-8ad632081bad-event_dataset-flow', + field: 'event.dataset', + value: 'flow', + }, + { + color: '#2B70F7', + dataProviderId: + 'draggable-legend-item-83f6c824-811d-4ec8-b373-eba2b0de6398-event_dataset-suricata_eve', + field: 'event.dataset', + value: 'suricata.eve', + }, + { + color: '#CE0060', + dataProviderId: + 'draggable-legend-item-ec57bb8f-82cd-4e07-bd38-1d11b3f0ee5f-event_dataset-traefik_access', + field: 'event.dataset', + value: 'traefik.access', + }, + { + color: '#38007E', + dataProviderId: + 'draggable-legend-item-25d5fcd6-87ba-46b5-893e-c655d7d504e3-event_dataset-esensor', + field: 'event.dataset', + value: 'esensor', + }, + { + color: '#F37020', + dataProviderId: allOthersDataProviderId, + field: 'event.dataset', + value: 'All others', + }, +]; + +describe('DraggableLegend', () => { + const height = 400; + + // Suppress warnings about "react-beautiful-dnd" + /* eslint-disable no-console */ + const originalError = console.error; + const originalWarn = console.warn; + beforeAll(() => { + console.warn = jest.fn(); + console.error = jest.fn(); + }); + afterAll(() => { + console.error = originalError; + console.warn = originalWarn; + }); + + describe('rendering', () => { + let wrapper: ReactWrapper; + + beforeEach(() => { + wrapper = mount( + + + + + + ); + }); + + it(`renders a container with the specified non-zero 'height'`, () => { + expect(wrapper.find('[data-test-subj="draggable-legend"]').first()).toHaveStyleRule( + 'height', + `${height}px` + ); + }); + + it('scrolls when necessary', () => { + expect(wrapper.find('[data-test-subj="draggable-legend"]').first()).toHaveStyleRule( + 'overflow', + 'auto' + ); + }); + + it('renders the legend items', () => { + legendItems.forEach(item => + expect( + wrapper + .find( + item.dataProviderId !== allOthersDataProviderId + ? `[data-test-subj="legend-item-${item.dataProviderId}"]` + : '[data-test-subj="all-others-legend-item"]' + ) + .first() + .text() + ).toEqual(item.value) + ); + }); + + it('renders a spacer for every legend item', () => { + expect(wrapper.find('[data-test-subj="draggable-legend-spacer"]').hostNodes().length).toEqual( + legendItems.length + ); + }); + }); + + it('does NOT render the legend when an empty collection of legendItems is provided', () => { + const wrapper = mount( + + + + + + ); + + expect(wrapper.find('[data-test-subj="draggable-legend"]').exists()).toBe(false); + }); + + it(`renders a legend with the minimum height when 'height' is zero`, () => { + const wrapper = mount( + + + + + + ); + + expect(wrapper.find('[data-test-subj="draggable-legend"]').first()).toHaveStyleRule( + 'height', + `${MIN_LEGEND_HEIGHT}px` + ); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.tsx b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.tsx new file mode 100644 index 00000000000000..ef3fbb8780d152 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend.tsx @@ -0,0 +1,68 @@ +/* + * 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 { EuiFlexGroup, EuiFlexItem, EuiSpacer, EuiText } from '@elastic/eui'; +import { rgba } from 'polished'; +import React from 'react'; +import styled from 'styled-components'; + +import { DraggableLegendItem, LegendItem } from './draggable_legend_item'; + +export const MIN_LEGEND_HEIGHT = 175; + +const DraggableLegendContainer = styled.div<{ height: number }>` + height: ${({ height }) => `${height}px`}; + overflow: auto; + scrollbar-width: thin; + width: 165px; + + &::-webkit-scrollbar { + height: ${({ theme }) => theme.eui.euiScrollBar}; + width: ${({ theme }) => theme.eui.euiScrollBar}; + } + + &::-webkit-scrollbar-thumb { + background-clip: content-box; + background-color: ${({ theme }) => rgba(theme.eui.euiColorDarkShade, 0.5)}; + border: ${({ theme }) => theme.eui.euiScrollBarCorner} solid transparent; + } + + &::-webkit-scrollbar-corner, + &::-webkit-scrollbar-track { + background-color: transparent; + } +`; + +const DraggableLegendComponent: React.FC<{ + height: number; + legendItems: LegendItem[]; +}> = ({ height, legendItems }) => { + if (legendItems.length === 0) { + return null; + } + + return ( + + + + {legendItems.map(item => ( + + + + + ))} + + + + ); +}; + +DraggableLegendComponent.displayName = 'DraggableLegendComponent'; + +export const DraggableLegend = React.memo(DraggableLegendComponent); diff --git a/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.test.tsx b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.test.tsx new file mode 100644 index 00000000000000..581952a8415f6a --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.test.tsx @@ -0,0 +1,143 @@ +/* + * 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 euiDarkVars from '@elastic/eui/dist/eui_theme_dark.json'; +import { mount, ReactWrapper } from 'enzyme'; +import React from 'react'; +import { ThemeProvider } from 'styled-components'; + +import { TestProviders } from '../../mock'; + +import { DraggableLegendItem, LegendItem } from './draggable_legend_item'; + +const theme = () => ({ eui: euiDarkVars, darkMode: true }); + +describe('DraggableLegendItem', () => { + // Suppress warnings about "react-beautiful-dnd" + /* eslint-disable no-console */ + const originalError = console.error; + const originalWarn = console.warn; + beforeAll(() => { + console.warn = jest.fn(); + console.error = jest.fn(); + }); + afterAll(() => { + console.error = originalError; + console.warn = originalWarn; + }); + + describe('rendering a regular (non "All others") legend item', () => { + const legendItem: LegendItem = { + color: '#1EA593', + dataProviderId: + 'draggable-legend-item-3207fda7-d008-402a-86a0-8ad632081bad-event_dataset-flow', + field: 'event.dataset', + value: 'flow', + }; + + let wrapper: ReactWrapper; + + beforeEach(() => { + wrapper = mount( + + + + + + ); + }); + + it('renders a colored circle with the expected legend item color', () => { + expect( + wrapper + .find('[data-test-subj="legend-color"]') + .first() + .props().color + ).toEqual(legendItem.color); + }); + + it('renders draggable legend item text', () => { + expect( + wrapper + .find(`[data-test-subj="legend-item-${legendItem.dataProviderId}"]`) + .first() + .text() + ).toEqual(legendItem.value); + }); + + it('does NOT render a non-draggable "All others" legend item', () => { + expect(wrapper.find(`[data-test-subj="all-others-legend-item"]`).exists()).toBe(false); + }); + }); + + describe('rendering an "All others" legend item', () => { + const allOthersLegendItem: LegendItem = { + color: '#F37020', + dataProviderId: + 'draggable-legend-item-527adabe-8e1c-4a1f-965c-2f3d65dda9e1-event_dataset-All others', + field: 'event.dataset', + value: 'All others', + }; + + let wrapper: ReactWrapper; + + beforeEach(() => { + wrapper = mount( + + + + + + ); + }); + + it('renders a colored circle with the expected legend item color', () => { + expect( + wrapper + .find('[data-test-subj="legend-color"]') + .first() + .props().color + ).toEqual(allOthersLegendItem.color); + }); + + it('does NOT render a draggable legend item', () => { + expect( + wrapper + .find(`[data-test-subj="legend-item-${allOthersLegendItem.dataProviderId}"]`) + .exists() + ).toBe(false); + }); + + it('renders NON-draggable `All others` legend item text', () => { + expect( + wrapper + .find(`[data-test-subj="all-others-legend-item"]`) + .first() + .text() + ).toEqual(allOthersLegendItem.value); + }); + }); + + it('does NOT render a colored circle when the legend item has no color', () => { + const noColorLegendItem: LegendItem = { + // no `color` attribute for this `LegendItem`! + dataProviderId: + 'draggable-legend-item-3207fda7-d008-402a-86a0-8ad632081bad-event_dataset-flow', + field: 'event.dataset', + value: 'flow', + }; + + const wrapper = mount( + + + + + + ); + + expect(wrapper.find('[data-test-subj="legend-color"]').exists()).toBe(false); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.tsx b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.tsx new file mode 100644 index 00000000000000..cdda1733932d54 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/charts/draggable_legend_item.tsx @@ -0,0 +1,62 @@ +/* + * 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 { EuiFlexGroup, EuiFlexItem, EuiHealth, EuiText } from '@elastic/eui'; +import React from 'react'; +import styled from 'styled-components'; + +import { DefaultDraggable } from '../draggables'; + +import * as i18n from './translation'; + +// The "All others" legend item is not draggable +const AllOthers = styled.span` + padding-left: 7px; +`; + +export interface LegendItem { + color?: string; + dataProviderId: string; + field: string; + value: string; +} + +const DraggableLegendItemComponent: React.FC<{ + legendItem: LegendItem; +}> = ({ legendItem }) => { + const { color, dataProviderId, field, value } = legendItem; + + return ( + + + {color != null && ( + + + + )} + + + {value !== i18n.ALL_OTHERS ? ( + + ) : ( + <> + {value} + + )} + + + + ); +}; + +DraggableLegendItemComponent.displayName = 'DraggableLegendItemComponent'; + +export const DraggableLegendItem = React.memo(DraggableLegendItemComponent); diff --git a/x-pack/legacy/plugins/siem/public/components/charts/translation.ts b/x-pack/legacy/plugins/siem/public/components/charts/translation.ts index 341cb7782f87cc..891f59fc97bd1a 100644 --- a/x-pack/legacy/plugins/siem/public/components/charts/translation.ts +++ b/x-pack/legacy/plugins/siem/public/components/charts/translation.ts @@ -13,3 +13,7 @@ export const ALL_VALUES_ZEROS_TITLE = i18n.translate('xpack.siem.chart.dataAllVa export const DATA_NOT_AVAILABLE_TITLE = i18n.translate('xpack.siem.chart.dataNotAvailableTitle', { defaultMessage: 'Chart Data Not Available', }); + +export const ALL_OTHERS = i18n.translate('xpack.siem.chart.allOthersGroupingLabel', { + defaultMessage: 'All others', +}); diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/drag_drop_context_wrapper.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/drag_drop_context_wrapper.tsx index 11db33fff6d72b..248ae671550eff 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/drag_drop_context_wrapper.tsx +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/drag_drop_context_wrapper.tsx @@ -27,6 +27,9 @@ import { draggableIsField, } from './helpers'; +// @ts-ignore +window['__react-beautiful-dnd-disable-dev-warnings'] = true; + interface Props { browserFields: BrowserFields; children: React.ReactNode; diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx index 11891afabbf3de..cd9e1dc95ff01a 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx @@ -7,12 +7,13 @@ import { shallow } from 'enzyme'; import React from 'react'; import { MockedProvider } from 'react-apollo/test-utils'; +import { DraggableStateSnapshot, DraggingStyle } from 'react-beautiful-dnd'; import { mockBrowserFields, mocksSource } from '../../containers/source/mock'; import { TestProviders } from '../../mock'; import { mockDataProviders } from '../timeline/data_providers/mock/mock_data_providers'; import { DragDropContextWrapper } from './drag_drop_context_wrapper'; -import { DraggableWrapper, ConditionalPortal } from './draggable_wrapper'; +import { ConditionalPortal, DraggableWrapper, getStyle } from './draggable_wrapper'; import { useMountAppended } from '../../utils/use_mount_appended'; describe('DraggableWrapper', () => { @@ -48,6 +49,36 @@ describe('DraggableWrapper', () => { expect(wrapper.text()).toEqual(message); }); + + test('it does NOT render hover actions when the mouse is NOT over the draggable wrapper', () => { + const wrapper = mount( + + + + message} /> + + + + ); + + expect(wrapper.find('[data-test-subj="copy-to-clipboard"]').exists()).toBe(false); + }); + + test('it renders hover actions when the mouse is over the draggable wrapper', () => { + const wrapper = mount( + + + + message} /> + + + + ); + + wrapper.simulate('mouseenter'); + wrapper.update(); + expect(wrapper.find('[data-test-subj="copy-to-clipboard"]').exists()).toBe(true); + }); }); describe('text truncation styling', () => { @@ -100,4 +131,36 @@ describe('ConditionalPortal', () => { expect(props.registerProvider.mock.calls.length).toEqual(1); }); + + describe('getStyle', () => { + const style: DraggingStyle = { + boxSizing: 'border-box', + height: 10, + left: 1, + pointerEvents: 'none', + position: 'fixed', + transition: 'none', + top: 123, + width: 50, + zIndex: 9999, + }; + + it('returns a style with no transitionDuration when the snapshot is not drop animating', () => { + const snapshot: DraggableStateSnapshot = { + isDragging: true, + isDropAnimating: false, // <-- NOT drop animating + }; + + expect(getStyle(style, snapshot)).not.toHaveProperty('transitionDuration'); + }); + + it('returns a style with a transitionDuration when the snapshot is drop animating', () => { + const snapshot: DraggableStateSnapshot = { + isDragging: true, + isDropAnimating: true, // <-- it is drop animating + }; + + expect(getStyle(style, snapshot)).toHaveProperty('transitionDuration', '0.00000001s'); + }); + }); }); diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx index 3a6a4de7984db3..c7da5b5c589518 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx @@ -4,12 +4,14 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useCallback, useEffect, useState } from 'react'; +import React, { useCallback, useEffect, useMemo, useState } from 'react'; import { Draggable, DraggableProvided, DraggableStateSnapshot, + DraggingStyle, Droppable, + NotDraggingStyle, } from 'react-beautiful-dnd'; import { useDispatch } from 'react-redux'; import styled from 'styled-components'; @@ -18,6 +20,9 @@ import deepEqual from 'fast-deep-equal'; import { dragAndDropActions } from '../../store/drag_and_drop'; import { DataProvider } from '../timeline/data_providers/data_provider'; import { TruncatableText } from '../truncatable_text'; +import { WithHoverActions } from '../with_hover_actions'; + +import { DraggableWrapperHoverContent } from './draggable_wrapper_hover_content'; import { getDraggableId, getDroppableId } from './helpers'; import { ProviderContainer } from './provider_container'; @@ -67,23 +72,42 @@ type RenderFunctionProp = ( state: DraggableStateSnapshot ) => React.ReactNode; -interface OwnProps { +interface Props { dataProvider: DataProvider; inline?: boolean; render: RenderFunctionProp; truncate?: boolean; + onFilterAdded?: () => void; } -type Props = OwnProps; - /** * Wraps a draggable component to handle registration / unregistration of the * data provider associated with the item being dropped */ +export const getStyle = ( + style: DraggingStyle | NotDraggingStyle | undefined, + snapshot: DraggableStateSnapshot +) => { + if (!snapshot.isDropAnimating) { + return style; + } + + return { + ...style, + transitionDuration: '0.00000001s', // cannot be 0, but can be a very short duration + }; +}; + export const DraggableWrapper = React.memo( - ({ dataProvider, render, truncate }) => { + ({ dataProvider, onFilterAdded, render, truncate }) => { + const [showTopN, setShowTopN] = useState(false); + const toggleTopN = useCallback(() => { + setShowTopN(!showTopN); + }, [setShowTopN, showTopN]); + const [providerRegistered, setProviderRegistered] = useState(false); + const dispatch = useDispatch(); const registerProvider = useCallback(() => { @@ -105,65 +129,90 @@ export const DraggableWrapper = React.memo( [] ); - return ( - - - ( - -