diff --git a/x-pack/plugins/monitoring/public/components/setup_mode/enter_button.tsx b/x-pack/plugins/monitoring/public/components/setup_mode/enter_button.tsx index e06113255c1ef0..26e5aab855f42e 100644 --- a/x-pack/plugins/monitoring/public/components/setup_mode/enter_button.tsx +++ b/x-pack/plugins/monitoring/public/components/setup_mode/enter_button.tsx @@ -8,6 +8,7 @@ import React from 'react'; import { EuiButton } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import './enter_button.scss'; +import { METRIC_TYPE, useUiTracker } from '../../../../observability/public'; export interface SetupModeEnterButtonProps { enabled: boolean; @@ -18,6 +19,7 @@ export const SetupModeEnterButton: React.FC = ( props: SetupModeEnterButtonProps ) => { const [isLoading, setIsLoading] = React.useState(false); + const trackStat = useUiTracker({ app: 'stack_monitoring' }); if (!props.enabled) { return null; @@ -26,6 +28,7 @@ export const SetupModeEnterButton: React.FC = ( async function enterSetupMode() { setIsLoading(true); await props.toggleSetupMode(true); + trackStat({ metric: `btnclick_setupmode`, metricType: METRIC_TYPE.CLICK }); setIsLoading(false); } diff --git a/x-pack/plugins/monitoring/public/lib/setup_mode.tsx b/x-pack/plugins/monitoring/public/lib/setup_mode.tsx index 3425e0ee2a8188..3e555c843a0bb2 100644 --- a/x-pack/plugins/monitoring/public/lib/setup_mode.tsx +++ b/x-pack/plugins/monitoring/public/lib/setup_mode.tsx @@ -8,6 +8,7 @@ import React from 'react'; import { render } from 'react-dom'; import { get, includes } from 'lodash'; import { i18n } from '@kbn/i18n'; +import { KibanaContextProvider } from '../../../../../src/plugins/kibana_react/public'; import { Legacy } from '../legacy_shims'; import { ajaxErrorHandlersProvider } from './ajax_error_handler'; import { SetupModeEnterButton } from '../components/setup_mode/enter_button'; @@ -179,8 +180,17 @@ export const setSetupModeMenuItem = () => { const globalState = angularState.injector.get('globalState'); const enabled = !globalState.inSetupMode; + const services = { + usageCollection: Legacy.shims.usageCollection, + }; + const I18nContext = Legacy.shims.I18nContext; + render( - , + + + + + , document.getElementById('setupModeNav') ); }; diff --git a/x-pack/plugins/monitoring/public/views/elasticsearch/index/advanced/index.js b/x-pack/plugins/monitoring/public/views/elasticsearch/index/advanced/index.js index f4b0f0789bae13..cfc36e360709d8 100644 --- a/x-pack/plugins/monitoring/public/views/elasticsearch/index/advanced/index.js +++ b/x-pack/plugins/monitoring/public/views/elasticsearch/index/advanced/index.js @@ -64,6 +64,7 @@ uiRoutes.when('/elasticsearch/indices/:index/advanced', { indexName, }, }), + telemetryPageViewTitle: 'elasticsearch_index_advanced', defaultData: {}, getPageData, reactNodeId: 'monitoringElasticsearchAdvancedIndexApp', diff --git a/x-pack/plugins/monitoring/public/views/elasticsearch/index/index.js b/x-pack/plugins/monitoring/public/views/elasticsearch/index/index.js index afe16acc0d0010..2593524a5ed4d8 100644 --- a/x-pack/plugins/monitoring/public/views/elasticsearch/index/index.js +++ b/x-pack/plugins/monitoring/public/views/elasticsearch/index/index.js @@ -66,6 +66,7 @@ uiRoutes.when('/elasticsearch/indices/:index', { indexName, }, }), + telemetryPageViewTitle: 'elasticsearch_index', defaultData: {}, getPageData, reactNodeId: 'monitoringElasticsearchIndexApp', diff --git a/x-pack/plugins/monitoring/public/views/elasticsearch/node/advanced/index.js b/x-pack/plugins/monitoring/public/views/elasticsearch/node/advanced/index.js index d75f63d8833152..38e7ca1b1dd222 100644 --- a/x-pack/plugins/monitoring/public/views/elasticsearch/node/advanced/index.js +++ b/x-pack/plugins/monitoring/public/views/elasticsearch/node/advanced/index.js @@ -60,6 +60,7 @@ uiRoutes.when('/elasticsearch/nodes/:node/advanced', { defaultData: {}, getPageData, reactNodeId: 'monitoringElasticsearchAdvancedNodeApp', + telemetryPageViewTitle: 'elasticsearch_node_advanced', $scope, $injector, alerts: { diff --git a/x-pack/plugins/monitoring/public/views/elasticsearch/node/index.js b/x-pack/plugins/monitoring/public/views/elasticsearch/node/index.js index f6f7a016905296..5f876d335ad26d 100644 --- a/x-pack/plugins/monitoring/public/views/elasticsearch/node/index.js +++ b/x-pack/plugins/monitoring/public/views/elasticsearch/node/index.js @@ -42,6 +42,7 @@ uiRoutes.when('/elasticsearch/nodes/:node', { nodeName, }, }), + telemetryPageViewTitle: 'elasticsearch_node', defaultData: {}, getPageData, reactNodeId: 'monitoringElasticsearchNodeApp', diff --git a/x-pack/plugins/observability/typings/common.ts b/x-pack/plugins/observability/typings/common.ts index 19afac0c0d2b84..c48c54941ff78a 100644 --- a/x-pack/plugins/observability/typings/common.ts +++ b/x-pack/plugins/observability/typings/common.ts @@ -4,7 +4,12 @@ * you may not use this file except in compliance with the Elastic License. */ -export type ObservabilityApp = 'infra_metrics' | 'infra_logs' | 'apm' | 'uptime'; +export type ObservabilityApp = + | 'infra_metrics' + | 'infra_logs' + | 'apm' + | 'uptime' + | 'stack_monitoring'; export type PromiseReturnType = Func extends (...args: any[]) => Promise ? Value