From f9ee1cfa1790a4ef6a6d67ea1b5784cd8347946c Mon Sep 17 00:00:00 2001 From: Georgii Gorbachev Date: Tue, 18 May 2021 21:27:13 +0300 Subject: [PATCH] Rebase on top of Dario's changes --- x-pack/plugins/apm/server/plugin.ts | 19 +++++++++---------- .../server/event_log/event_schema/schema.ts | 16 +++++++--------- .../event_log/event_schema/schema_types.ts | 2 +- .../log/utils/mapping_from_field_map.ts | 2 +- .../server/event_log/test_implementation.ts | 2 +- 5 files changed, 19 insertions(+), 22 deletions(-) diff --git a/x-pack/plugins/apm/server/plugin.ts b/x-pack/plugins/apm/server/plugin.ts index cf5be4369f79e38..8d83f762e2023ec 100644 --- a/x-pack/plugins/apm/server/plugin.ts +++ b/x-pack/plugins/apm/server/plugin.ts @@ -130,19 +130,20 @@ export class APMPlugin registerFeaturesUsage({ licensingPlugin: plugins.licensing }); + const { ruleDataService } = plugins.ruleRegistry; const getCoreStart = () => core.getStartServices().then(([coreStart]) => coreStart); const ready = once(async () => { - const componentTemplateName = plugins.ruleRegistry.getFullAssetName( + const componentTemplateName = ruleDataService.getFullAssetName( 'apm-mappings' ); - if (!plugins.ruleRegistry.isWriteEnabled()) { + if (!ruleDataService.isWriteEnabled()) { return; } - await plugins.ruleRegistry.createOrUpdateComponentTemplate({ + await ruleDataService.createOrUpdateComponentTemplate({ name: componentTemplateName, body: { template: { @@ -167,16 +168,14 @@ export class APMPlugin }, }); - await plugins.ruleRegistry.createOrUpdateIndexTemplate({ - name: plugins.ruleRegistry.getFullAssetName('apm-index-template'), + await ruleDataService.createOrUpdateIndexTemplate({ + name: ruleDataService.getFullAssetName('apm-index-template'), body: { index_patterns: [ - plugins.ruleRegistry.getFullAssetName('observability-apm*'), + ruleDataService.getFullAssetName('observability-apm*'), ], composed_of: [ - plugins.ruleRegistry.getFullAssetName( - TECHNICAL_COMPONENT_TEMPLATE_NAME - ), + ruleDataService.getFullAssetName(TECHNICAL_COMPONENT_TEMPLATE_NAME), componentTemplateName, ], }, @@ -188,7 +187,7 @@ export class APMPlugin }); const ruleDataClient = new RuleDataClient({ - alias: plugins.ruleRegistry.getFullAssetName('observability-apm'), + alias: ruleDataService.getFullAssetName('observability-apm'), getClusterClient: async () => { const coreStart = await getCoreStart(); return coreStart.elasticsearch.client.asInternalUser; diff --git a/x-pack/plugins/rule_registry/server/event_log/event_schema/schema.ts b/x-pack/plugins/rule_registry/server/event_log/event_schema/schema.ts index b2b2431fde78fdc..9b5d94918a83f64 100644 --- a/x-pack/plugins/rule_registry/server/event_log/event_schema/schema.ts +++ b/x-pack/plugins/rule_registry/server/event_log/event_schema/schema.ts @@ -6,15 +6,13 @@ */ import { EventSchema, Event } from './schema_types'; +import { FieldMap, runtimeTypeFromFieldMap, mergeFieldMaps } from '../../../common/field_map'; import { - FieldMap, - BaseRuleFieldMap, - baseRuleFieldMap, - runtimeTypeFromFieldMap, - mergeFieldMaps, -} from '../../../common'; + TechnicalRuleFieldMaps, + technicalRuleFieldMap, +} from '../../../common/assets/field_maps/technical_rule_field_map'; -const baseSchema = createSchema(baseRuleFieldMap); +const baseSchema = createSchema(technicalRuleFieldMap); export abstract class Schema { public static create(fields: TMap): EventSchema { @@ -29,13 +27,13 @@ export abstract class Schema { return createSchema(combinedFields); } - public static getBase(): EventSchema { + public static getBase(): EventSchema { return baseSchema; } public static extendBase( fields: TMap - ): EventSchema { + ): EventSchema { const extensionSchema = createSchema(fields); return this.combine(baseSchema, extensionSchema); } diff --git a/x-pack/plugins/rule_registry/server/event_log/event_schema/schema_types.ts b/x-pack/plugins/rule_registry/server/event_log/event_schema/schema_types.ts index 7e21defcb5f4763..e5c665652fe9741 100644 --- a/x-pack/plugins/rule_registry/server/event_log/event_schema/schema_types.ts +++ b/x-pack/plugins/rule_registry/server/event_log/event_schema/schema_types.ts @@ -5,7 +5,7 @@ * 2.0. */ -import { FieldMap, FieldMapType, TypeOfFieldMap } from '../../../common'; +import { FieldMap, FieldMapType, TypeOfFieldMap } from '../../../common/field_map'; export interface EventSchema { objectFields: TMap; diff --git a/x-pack/plugins/rule_registry/server/event_log/log/utils/mapping_from_field_map.ts b/x-pack/plugins/rule_registry/server/event_log/log/utils/mapping_from_field_map.ts index f813c12914f3c7b..fd5dc3ae0228812 100644 --- a/x-pack/plugins/rule_registry/server/event_log/log/utils/mapping_from_field_map.ts +++ b/x-pack/plugins/rule_registry/server/event_log/log/utils/mapping_from_field_map.ts @@ -6,7 +6,7 @@ */ import { set } from '@elastic/safer-lodash-set'; -import { FieldMap } from '../../../../common'; +import { FieldMap } from '../../../../common/field_map'; import { IndexMappings } from '../../elasticsearch'; export function mappingFromFieldMap(fieldMap: FieldMap): IndexMappings { diff --git a/x-pack/plugins/rule_registry/server/event_log/test_implementation.ts b/x-pack/plugins/rule_registry/server/event_log/test_implementation.ts index 3a77d8dd8e367f3..b34d233d4f4c3ba 100644 --- a/x-pack/plugins/rule_registry/server/event_log/test_implementation.ts +++ b/x-pack/plugins/rule_registry/server/event_log/test_implementation.ts @@ -76,7 +76,7 @@ const testImplementation = async (service: IEventLogService, logger: Logger) => // Log some rule execution events. const baseTemplate = executionLog.getLoggerTemplate({ - 'kibana.rac.producer': 'security', + 'kibana.rac.alert.producer': 'security', }); const ruleTemplate = baseTemplate.getLoggerTemplate({