mirror of
https://github.com/elastic/kibana.git
synced 2025-04-23 09:19:04 -04:00
[RAM] Makes anomaly detection rule visible in Observability (#170451)
## Summary From the rule management page in observability, user will be able to create an anomaly detection rule. <img width="1789" alt="image" src="9ce84628
-bf1b-44f6-a51b-5bd2ad94d9bd"> <img width="1792" alt="image" src="0add536c
-2e62-4de5-9e06-2beedd0c0fe2">
This commit is contained in:
parent
1a0dcf60fc
commit
80edac1d53
9 changed files with 31 additions and 7 deletions
|
@ -15,4 +15,5 @@ export type RuleCreationValidConsumer =
|
|||
| typeof AlertConsumers.LOGS
|
||||
| typeof AlertConsumers.INFRASTRUCTURE
|
||||
| typeof AlertConsumers.OBSERVABILITY
|
||||
| typeof STACK_ALERTS_FEATURE_ID;
|
||||
| typeof STACK_ALERTS_FEATURE_ID
|
||||
| 'alerts';
|
||||
|
|
|
@ -8,3 +8,4 @@
|
|||
|
||||
export const STACK_ALERTS_FEATURE_ID = 'stackAlerts';
|
||||
export const ES_QUERY_ID = '.es-query';
|
||||
export const ML_ANOMALY_DETECTION_RULE_TYPE_ID = 'xpack.ml.anomaly_detection_alert';
|
||||
|
|
|
@ -8,7 +8,10 @@
|
|||
import { i18n } from '@kbn/i18n';
|
||||
import { DEFAULT_APP_CATEGORIES } from '@kbn/core/server';
|
||||
import { logViewSavedObjectName } from '@kbn/logs-shared-plugin/server';
|
||||
import { OBSERVABILITY_THRESHOLD_RULE_TYPE_ID } from '@kbn/rule-data-utils';
|
||||
import {
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
} from '@kbn/rule-data-utils';
|
||||
import { ES_QUERY_ID } from '@kbn/rule-data-utils';
|
||||
import { metricsDataSourceSavedObjectName } from '@kbn/metrics-data-access-plugin/server';
|
||||
import { LOG_DOCUMENT_COUNT_RULE_TYPE_ID } from '../common/alerting/logs/log_threshold/types';
|
||||
|
@ -24,6 +27,7 @@ const metricRuleTypes = [
|
|||
METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID,
|
||||
ES_QUERY_ID,
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
];
|
||||
|
||||
export const METRICS_FEATURE = {
|
||||
|
@ -89,6 +93,7 @@ const logsRuleTypes = [
|
|||
LOG_DOCUMENT_COUNT_RULE_TYPE_ID,
|
||||
ES_QUERY_ID,
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
];
|
||||
|
||||
export const LOGS_FEATURE = {
|
||||
|
|
|
@ -12,11 +12,12 @@ import {
|
|||
ALERT_RULE_NAME,
|
||||
ALERT_START,
|
||||
ALERT_STATUS,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
} from '@kbn/rule-data-utils';
|
||||
import { JobsHealthTests } from '../types/alerts';
|
||||
|
||||
export const ML_ALERT_TYPES = {
|
||||
ANOMALY_DETECTION: 'xpack.ml.anomaly_detection_alert',
|
||||
ANOMALY_DETECTION: ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
AD_JOBS_HEALTH: 'xpack.ml.anomaly_detection_jobs_health',
|
||||
} as const;
|
||||
|
||||
|
|
|
@ -9,3 +9,4 @@ export { composeValidators, patternValidator } from './util/validators';
|
|||
export { getDefaultCapabilities as getDefaultMlCapabilities } from './types/capabilities';
|
||||
export { DATAFEED_STATE, JOB_STATE } from './constants/states';
|
||||
export type { MlSummaryJob, SummaryJobState } from './types/anomaly_detection_jobs';
|
||||
export { ML_ALERT_TYPES } from './constants/alerts';
|
||||
|
|
|
@ -6,13 +6,17 @@
|
|||
*/
|
||||
|
||||
import { useMemo } from 'react';
|
||||
import { ES_QUERY_ID } from '@kbn/rule-data-utils';
|
||||
import { ES_QUERY_ID, ML_ANOMALY_DETECTION_RULE_TYPE_ID } from '@kbn/rule-data-utils';
|
||||
import { usePluginContext } from './use_plugin_context';
|
||||
|
||||
export function useGetFilteredRuleTypes() {
|
||||
const { observabilityRuleTypeRegistry } = usePluginContext();
|
||||
|
||||
return useMemo(() => {
|
||||
return [ES_QUERY_ID, ...observabilityRuleTypeRegistry.list()];
|
||||
return [
|
||||
ES_QUERY_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
...observabilityRuleTypeRegistry.list(),
|
||||
];
|
||||
}, [observabilityRuleTypeRegistry]);
|
||||
}
|
||||
|
|
|
@ -28,6 +28,7 @@ import { i18n } from '@kbn/i18n';
|
|||
import {
|
||||
ApmRuleType,
|
||||
ES_QUERY_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID,
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
} from '@kbn/rule-data-utils';
|
||||
|
@ -89,6 +90,7 @@ const o11yRuleTypes = [
|
|||
SLO_BURN_RATE_RULE_TYPE_ID,
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
ES_QUERY_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID,
|
||||
...Object.values(ApmRuleType),
|
||||
];
|
||||
|
|
|
@ -6,7 +6,11 @@
|
|||
*/
|
||||
|
||||
import { i18n } from '@kbn/i18n';
|
||||
import { ES_QUERY_ID, OBSERVABILITY_THRESHOLD_RULE_TYPE_ID } from '@kbn/rule-data-utils';
|
||||
import {
|
||||
ES_QUERY_ID,
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
} from '@kbn/rule-data-utils';
|
||||
export {
|
||||
BASE_ALERTING_API_PATH,
|
||||
INTERNAL_BASE_ALERTING_API_PATH,
|
||||
|
@ -120,4 +124,8 @@ export const GLOBAL_CONNECTOR_EXECUTION_DEFAULT_INITIAL_VISIBLE_COLUMNS = [
|
|||
...CONNECTOR_LOCKED_COLUMNS,
|
||||
];
|
||||
|
||||
export const MULTI_CONSUMER_RULE_TYPE_IDS = [OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, ES_QUERY_ID];
|
||||
export const MULTI_CONSUMER_RULE_TYPE_IDS = [
|
||||
OBSERVABILITY_THRESHOLD_RULE_TYPE_ID,
|
||||
ES_QUERY_ID,
|
||||
ML_ANOMALY_DETECTION_RULE_TYPE_ID,
|
||||
];
|
||||
|
|
|
@ -61,6 +61,7 @@ export const VALID_CONSUMERS: RuleCreationValidConsumer[] = [
|
|||
AlertConsumers.LOGS,
|
||||
AlertConsumers.INFRASTRUCTURE,
|
||||
'stackAlerts',
|
||||
'alerts',
|
||||
];
|
||||
|
||||
export interface RuleFormConsumerSelectionProps {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue