From 9da19e88c733d95f9f06f0f3274876ad6f9701b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Marcondes?= <55978943+cauemarcondes@users.noreply.github.com> Date: Fri, 18 Sep 2020 09:08:33 +0100 Subject: [PATCH] [APM] Show accurate metrics for containerized applications (#76768) (#77785) * adding cgroup fields * calculate the memory based on the cgroup fields otherwise use the system fields * updating script * adding api tests * using cgroup fields on service map * addressing PR comment * fixing unit test * fixing test * changing api tests to use snapshot * removing inactive_files from calculation * fixing test * refactoring painless script * addressing PR comment * addressing pr comments Co-authored-by: Elastic Machine Co-authored-by: Elastic Machine --- .../elasticsearch_fieldnames.test.ts.snap | 12 + .../apm/common/elasticsearch_fieldnames.ts | 4 + .../__snapshots__/queries.test.ts.snap | 273 +- .../metrics/by_agent/shared/memory/index.ts | 64 +- .../get_service_map_service_node_info.ts | 66 +- .../apm_api_integration/basic/tests/index.ts | 4 + .../tests/metrics_charts/metrics_charts.ts | 440 ++ .../es_archiver/metrics_8.0.0/data.json.gz | Bin 0 -> 177873 bytes .../es_archiver/metrics_8.0.0/mappings.json | 4092 +++++++++++++++++ 9 files changed, 4879 insertions(+), 76 deletions(-) create mode 100644 x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts create mode 100644 x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/data.json.gz create mode 100644 x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/mappings.json diff --git a/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap b/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap index 3524d41646d50a..8c233d3691c7fa 100644 --- a/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap +++ b/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap @@ -52,6 +52,10 @@ exports[`Error LABEL_NAME 1`] = `undefined`; exports[`Error LCP_FIELD 1`] = `undefined`; +exports[`Error METRIC_CGROUP_MEMORY_LIMIT_BYTES 1`] = `undefined`; + +exports[`Error METRIC_CGROUP_MEMORY_USAGE_BYTES 1`] = `undefined`; + exports[`Error METRIC_JAVA_GC_COUNT 1`] = `undefined`; exports[`Error METRIC_JAVA_GC_TIME 1`] = `undefined`; @@ -220,6 +224,10 @@ exports[`Span LABEL_NAME 1`] = `undefined`; exports[`Span LCP_FIELD 1`] = `undefined`; +exports[`Span METRIC_CGROUP_MEMORY_LIMIT_BYTES 1`] = `undefined`; + +exports[`Span METRIC_CGROUP_MEMORY_USAGE_BYTES 1`] = `undefined`; + exports[`Span METRIC_JAVA_GC_COUNT 1`] = `undefined`; exports[`Span METRIC_JAVA_GC_TIME 1`] = `undefined`; @@ -388,6 +396,10 @@ exports[`Transaction LABEL_NAME 1`] = `undefined`; exports[`Transaction LCP_FIELD 1`] = `undefined`; +exports[`Transaction METRIC_CGROUP_MEMORY_LIMIT_BYTES 1`] = `undefined`; + +exports[`Transaction METRIC_CGROUP_MEMORY_USAGE_BYTES 1`] = `undefined`; + exports[`Transaction METRIC_JAVA_GC_COUNT 1`] = `undefined`; exports[`Transaction METRIC_JAVA_GC_TIME 1`] = `undefined`; diff --git a/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts b/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts index 612cb18bbe190b..cc6a1fffb22885 100644 --- a/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts +++ b/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts @@ -79,6 +79,10 @@ export const METRIC_SYSTEM_FREE_MEMORY = 'system.memory.actual.free'; export const METRIC_SYSTEM_TOTAL_MEMORY = 'system.memory.total'; export const METRIC_SYSTEM_CPU_PERCENT = 'system.cpu.total.norm.pct'; export const METRIC_PROCESS_CPU_PERCENT = 'system.process.cpu.total.norm.pct'; +export const METRIC_CGROUP_MEMORY_LIMIT_BYTES = + 'system.process.cgroup.memory.mem.limit.bytes'; +export const METRIC_CGROUP_MEMORY_USAGE_BYTES = + 'system.process.cgroup.memory.mem.usage.bytes'; export const METRIC_JAVA_HEAP_MEMORY_MAX = 'jvm.memory.heap.max'; export const METRIC_JAVA_HEAP_MEMORY_COMMITTED = 'jvm.memory.heap.committed'; diff --git a/x-pack/plugins/apm/server/lib/metrics/__snapshots__/queries.test.ts.snap b/x-pack/plugins/apm/server/lib/metrics/__snapshots__/queries.test.ts.snap index b88c90a213c671..2868dcfda97b6e 100644 --- a/x-pack/plugins/apm/server/lib/metrics/__snapshots__/queries.test.ts.snap +++ b/x-pack/plugins/apm/server/lib/metrics/__snapshots__/queries.test.ts.snap @@ -203,16 +203,50 @@ Object { "memoryUsedAvg": Object { "avg": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, "memoryUsedMax": Object { "max": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, @@ -221,16 +255,50 @@ Object { "memoryUsedAvg": Object { "avg": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, "memoryUsedMax": Object { "max": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, @@ -275,12 +343,7 @@ Object { }, Object { "exists": Object { - "field": "system.memory.actual.free", - }, - }, - Object { - "exists": Object { - "field": "system.memory.total", + "field": "system.process.cgroup.memory.mem.usage.bytes", }, }, ], @@ -682,16 +745,50 @@ Object { "memoryUsedAvg": Object { "avg": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, "memoryUsedMax": Object { "max": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, @@ -700,16 +797,50 @@ Object { "memoryUsedAvg": Object { "avg": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, "memoryUsedMax": Object { "max": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, @@ -760,12 +891,7 @@ Object { }, Object { "exists": Object { - "field": "system.memory.actual.free", - }, - }, - Object { - "exists": Object { - "field": "system.memory.total", + "field": "system.process.cgroup.memory.mem.usage.bytes", }, }, ], @@ -1157,16 +1283,50 @@ Object { "memoryUsedAvg": Object { "avg": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, "memoryUsedMax": Object { "max": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, @@ -1175,16 +1335,50 @@ Object { "memoryUsedAvg": Object { "avg": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, "memoryUsedMax": Object { "max": Object { "script": Object { - "lang": "expression", - "source": "1 - doc['system.memory.actual.free'] / doc['system.memory.total']", + "lang": "painless", + "source": " + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = 'system.process.cgroup.memory.mem.limit.bytes'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['system.memory.total'].value; + + double used = doc['system.process.cgroup.memory.mem.usage.bytes'].value; + + return used / total; + ", }, }, }, @@ -1224,12 +1418,7 @@ Object { }, Object { "exists": Object { - "field": "system.memory.actual.free", - }, - }, - Object { - "exists": Object { - "field": "system.memory.total", + "field": "system.process.cgroup.memory.mem.usage.bytes", }, }, ], diff --git a/x-pack/plugins/apm/server/lib/metrics/by_agent/shared/memory/index.ts b/x-pack/plugins/apm/server/lib/metrics/by_agent/shared/memory/index.ts index 316b0d59d2c5b6..a60576ca0c175e 100644 --- a/x-pack/plugins/apm/server/lib/metrics/by_agent/shared/memory/index.ts +++ b/x-pack/plugins/apm/server/lib/metrics/by_agent/shared/memory/index.ts @@ -6,6 +6,8 @@ import { i18n } from '@kbn/i18n'; import { + METRIC_CGROUP_MEMORY_LIMIT_BYTES, + METRIC_CGROUP_MEMORY_USAGE_BYTES, METRIC_SYSTEM_FREE_MEMORY, METRIC_SYSTEM_TOTAL_MEMORY, } from '../../../../../../common/elasticsearch_fieldnames'; @@ -14,8 +16,8 @@ import { SetupTimeRange, SetupUIFilters, } from '../../../../helpers/setup_request'; -import { ChartBase } from '../../../types'; import { fetchAndTransformMetrics } from '../../../fetch_and_transform_metrics'; +import { ChartBase } from '../../../types'; const series = { memoryUsedMax: { @@ -43,36 +45,68 @@ const chartBase: ChartBase = { series, }; -export const percentMemoryUsedScript = { +export const percentSystemMemoryUsedScript = { lang: 'expression', source: `1 - doc['${METRIC_SYSTEM_FREE_MEMORY}'] / doc['${METRIC_SYSTEM_TOTAL_MEMORY}']`, }; +export const percentCgroupMemoryUsedScript = { + lang: 'painless', + source: ` + /* + When no limit is specified in the container, docker allows the app as much memory / swap memory as it wants. + This number represents the max possible value for the limit field. + */ + double CGROUP_LIMIT_MAX_VALUE = 9223372036854771712L; + + String limitKey = '${METRIC_CGROUP_MEMORY_LIMIT_BYTES}'; + + //Should use cgropLimit when value is not empty and not equals to the max limit value. + boolean useCgroupLimit = doc.containsKey(limitKey) && !doc[limitKey].empty && doc[limitKey].value != CGROUP_LIMIT_MAX_VALUE; + + double total = useCgroupLimit ? doc[limitKey].value : doc['${METRIC_SYSTEM_TOTAL_MEMORY}'].value; + + double used = doc['${METRIC_CGROUP_MEMORY_USAGE_BYTES}'].value; + + return used / total; + `, +}; + export async function getMemoryChartData( setup: Setup & SetupTimeRange & SetupUIFilters, serviceName: string, serviceNodeName?: string ) { - return fetchAndTransformMetrics({ + const cgroupResponse = await fetchAndTransformMetrics({ setup, serviceName, serviceNodeName, chartBase, aggs: { - memoryUsedAvg: { avg: { script: percentMemoryUsedScript } }, - memoryUsedMax: { max: { script: percentMemoryUsedScript } }, + memoryUsedAvg: { avg: { script: percentCgroupMemoryUsedScript } }, + memoryUsedMax: { max: { script: percentCgroupMemoryUsedScript } }, }, additionalFilters: [ - { - exists: { - field: METRIC_SYSTEM_FREE_MEMORY, - }, - }, - { - exists: { - field: METRIC_SYSTEM_TOTAL_MEMORY, - }, - }, + { exists: { field: METRIC_CGROUP_MEMORY_USAGE_BYTES } }, ], }); + + if (cgroupResponse.noHits) { + return await fetchAndTransformMetrics({ + setup, + serviceName, + serviceNodeName, + chartBase, + aggs: { + memoryUsedAvg: { avg: { script: percentSystemMemoryUsedScript } }, + memoryUsedMax: { max: { script: percentSystemMemoryUsedScript } }, + }, + additionalFilters: [ + { exists: { field: METRIC_SYSTEM_FREE_MEMORY } }, + { exists: { field: METRIC_SYSTEM_TOTAL_MEMORY } }, + ], + }); + } + + return cgroupResponse; } diff --git a/x-pack/plugins/apm/server/lib/service_map/get_service_map_service_node_info.ts b/x-pack/plugins/apm/server/lib/service_map/get_service_map_service_node_info.ts index 88cc26608b8508..5c183fd9150dd0 100644 --- a/x-pack/plugins/apm/server/lib/service_map/get_service_map_service_node_info.ts +++ b/x-pack/plugins/apm/server/lib/service_map/get_service_map_service_node_info.ts @@ -14,13 +14,17 @@ import { METRIC_SYSTEM_CPU_PERCENT, METRIC_SYSTEM_FREE_MEMORY, METRIC_SYSTEM_TOTAL_MEMORY, + METRIC_CGROUP_MEMORY_USAGE_BYTES, TRANSACTION_TYPE, } from '../../../common/elasticsearch_fieldnames'; import { ProcessorEvent } from '../../../common/processor_event'; import { rangeFilter } from '../../../common/utils/range_filter'; import { ESFilter } from '../../../typings/elasticsearch'; import { Setup, SetupTimeRange } from '../helpers/setup_request'; -import { percentMemoryUsedScript } from '../metrics/by_agent/shared/memory'; +import { + percentCgroupMemoryUsedScript, + percentSystemMemoryUsedScript, +} from '../metrics/by_agent/shared/memory'; import { getProcessorEventForAggregatedTransactions, getTransactionDurationFieldForAggregatedTransactions, @@ -205,26 +209,50 @@ async function getMemoryStats({ filter, }: TaskParameters): Promise<{ avgMemoryUsage: number | null }> { const { apmEventClient } = setup; - const response = await apmEventClient.search({ - apm: { - events: [ProcessorEvent.metric], - }, - body: { - size: 0, - query: { - bool: { - filter: [ - ...filter, - { exists: { field: METRIC_SYSTEM_FREE_MEMORY } }, - { exists: { field: METRIC_SYSTEM_TOTAL_MEMORY } }, - ], + + const getAvgMemoryUsage = async ({ + additionalFilters, + script, + }: { + additionalFilters: ESFilter[]; + script: typeof percentCgroupMemoryUsedScript; + }) => { + const response = await apmEventClient.search({ + apm: { + events: [ProcessorEvent.metric], + }, + body: { + size: 0, + query: { + bool: { + filter: [...filter, ...additionalFilters], + }, + }, + aggs: { + avgMemoryUsage: { avg: { script } }, }, }, - aggs: { avgMemoryUsage: { avg: { script: percentMemoryUsedScript } } }, - }, - }); + }); - return { - avgMemoryUsage: response.aggregations?.avgMemoryUsage.value ?? null, + return response.aggregations?.avgMemoryUsage.value ?? null; }; + + let avgMemoryUsage = await getAvgMemoryUsage({ + additionalFilters: [ + { exists: { field: METRIC_CGROUP_MEMORY_USAGE_BYTES } }, + ], + script: percentCgroupMemoryUsedScript, + }); + + if (!avgMemoryUsage) { + avgMemoryUsage = await getAvgMemoryUsage({ + additionalFilters: [ + { exists: { field: METRIC_SYSTEM_FREE_MEMORY } }, + { exists: { field: METRIC_SYSTEM_TOTAL_MEMORY } }, + ], + script: percentSystemMemoryUsedScript, + }); + } + + return { avgMemoryUsage }; } diff --git a/x-pack/test/apm_api_integration/basic/tests/index.ts b/x-pack/test/apm_api_integration/basic/tests/index.ts index bae94d89e74573..8aa509b0899ceb 100644 --- a/x-pack/test/apm_api_integration/basic/tests/index.ts +++ b/x-pack/test/apm_api_integration/basic/tests/index.ts @@ -52,5 +52,9 @@ export default function apmApiIntegrationTests({ loadTestFile }: FtrProviderCont loadTestFile(require.resolve('./observability_overview/has_data')); loadTestFile(require.resolve('./observability_overview/observability_overview')); }); + + describe('Metrics', function () { + loadTestFile(require.resolve('./metrics_charts/metrics_charts')); + }); }); } diff --git a/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts b/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts new file mode 100644 index 00000000000000..f82e16e090eaeb --- /dev/null +++ b/x-pack/test/apm_api_integration/basic/tests/metrics_charts/metrics_charts.ts @@ -0,0 +1,440 @@ +/* + * 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 { first } from 'lodash'; +import { MetricsChartsByAgentAPIResponse } from '../../../../../plugins/apm/server/lib/metrics/get_metrics_chart_data_by_agent'; +import { GenericMetricsChart } from '../../../../../plugins/apm/server/lib/metrics/transform_metrics_chart'; +import { FtrProviderContext } from '../../../common/ftr_provider_context'; +import { expectSnapshot } from '../../../common/match_snapshot'; + +interface ChartResponse { + body: MetricsChartsByAgentAPIResponse; + status: number; +} + +export default function ApiTest({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + const esArchiver = getService('esArchiver'); + + describe('when data is loaded', () => { + before(() => esArchiver.load('metrics_8.0.0')); + after(() => esArchiver.unload('metrics_8.0.0')); + + describe('for opbeans-node', () => { + const start = encodeURIComponent('2020-09-08T14:50:00.000Z'); + const end = encodeURIComponent('2020-09-08T14:55:00.000Z'); + const uiFilters = encodeURIComponent(JSON.stringify({})); + const agentName = 'nodejs'; + + describe('returns metrics data', () => { + let chartsResponse: ChartResponse; + before(async () => { + chartsResponse = await supertest.get( + `/api/apm/services/opbeans-node/metrics/charts?start=${start}&end=${end}&uiFilters=${uiFilters}&agentName=${agentName}` + ); + }); + it('contains CPU usage and System memory usage chart data', async () => { + expect(chartsResponse.status).to.be(200); + expectSnapshot(chartsResponse.body.charts.map((chart) => chart.title)).toMatchInline(` + Array [ + "CPU usage", + "System memory usage", + ] + `); + }); + + describe('CPU usage', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find(({ key }) => key === 'cpu_usage_chart'); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "System max", + "System average", + "Process max", + "Process average", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0.714, + 0.38770000000000004, + 0.75, + 0.2543, + ] + `); + }); + }); + + describe("System memory usage (using 'system.memory' fields to calculate the memory usage)", () => { + let systemMemoryUsageChart: GenericMetricsChart | undefined; + before(() => { + systemMemoryUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'memory_usage_chart' + ); + }); + + it('has correct series', () => { + expect(systemMemoryUsageChart).to.not.empty(); + expectSnapshot(systemMemoryUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "Max", + "Average", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(systemMemoryUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0.7220939209255549, + 0.7181735467963479, + ] + `); + }); + }); + }); + }); + + describe('for opbeans-java', () => { + const uiFilters = encodeURIComponent(JSON.stringify({})); + const agentName = 'java'; + + describe('returns metrics data', () => { + const start = encodeURIComponent('2020-09-08T14:55:30.000Z'); + const end = encodeURIComponent('2020-09-08T15:00:00.000Z'); + + let chartsResponse: ChartResponse; + before(async () => { + chartsResponse = await supertest.get( + `/api/apm/services/opbeans-java/metrics/charts?start=${start}&end=${end}&uiFilters=${uiFilters}&agentName=${agentName}` + ); + }); + + it('has correct chart data', async () => { + expect(chartsResponse.status).to.be(200); + expectSnapshot(chartsResponse.body.charts.map((chart) => chart.title)).toMatchInline(` + Array [ + "CPU usage", + "System memory usage", + "Heap Memory", + "Non-Heap Memory", + "Thread Count", + "Garbage collection per minute", + "Garbage collection time spent per minute", + ] + `); + }); + + describe('CPU usage', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find(({ key }) => key === 'cpu_usage_chart'); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "System max", + "System average", + "Process max", + "Process average", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0.203, + 0.17877777777777779, + 0.01, + 0.009000000000000001, + ] + `); + }); + + it('has the correct rate', async () => { + const yValues = cpuUsageChart?.series.map((serie) => first(serie.data)?.y); + expectSnapshot(yValues).toMatchInline(` + Array [ + 0.193, + 0.193, + 0.009000000000000001, + 0.009000000000000001, + ] + `); + }); + }); + + describe("System memory usage (using 'system.process.cgroup' fields to calculate the memory usage)", () => { + let systemMemoryUsageChart: GenericMetricsChart | undefined; + before(() => { + systemMemoryUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'memory_usage_chart' + ); + }); + + it('has correct series', () => { + expect(systemMemoryUsageChart).to.not.empty(); + expectSnapshot(systemMemoryUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "Max", + "Average", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(systemMemoryUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0.7079247035578369, + 0.7053959808411816, + ] + `); + }); + + it('has the correct rate', async () => { + const yValues = systemMemoryUsageChart?.series.map((serie) => first(serie.data)?.y); + expectSnapshot(yValues).toMatchInline(` + Array [ + 0.7079247035578369, + 0.7079247035578369, + ] + `); + }); + }); + + describe('Heap Memory', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'heap_memory_area_chart' + ); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "Avg. used", + "Avg. committed", + "Avg. limit", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 222501617.7777778, + 374341632, + 1560281088, + ] + `); + }); + + it('has the correct rate', async () => { + const yValues = cpuUsageChart?.series.map((serie) => first(serie.data)?.y); + expectSnapshot(yValues).toMatchInline(` + Array [ + 211472896, + 374341632, + 1560281088, + ] + `); + }); + }); + + describe('Non-Heap Memory', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'non_heap_memory_area_chart' + ); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "Avg. used", + "Avg. committed", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 138573397.33333334, + 147677639.1111111, + ] + `); + }); + + it('has the correct rate', async () => { + const yValues = cpuUsageChart?.series.map((serie) => first(serie.data)?.y); + expectSnapshot(yValues).toMatchInline(` + Array [ + 138162752, + 147386368, + ] + `); + }); + }); + + describe('Thread Count', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'thread_count_line_chart' + ); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "Avg. count", + "Max count", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 44.44444444444444, + 45, + ] + `); + }); + + it('has the correct rate', async () => { + const yValues = cpuUsageChart?.series.map((serie) => first(serie.data)?.y); + expectSnapshot(yValues).toMatchInline(` + Array [ + 44, + 44, + ] + `); + }); + }); + + describe('Garbage collection per minute', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'gc_rate_line_chart' + ); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "G1 Old Generation", + "G1 Young Generation", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0, + 15, + ] + `); + }); + }); + + describe('Garbage collection time spent per minute', () => { + let cpuUsageChart: GenericMetricsChart | undefined; + before(() => { + cpuUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'gc_time_line_chart' + ); + }); + + it('has correct series', () => { + expect(cpuUsageChart).to.not.empty(); + expectSnapshot(cpuUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "G1 Old Generation", + "G1 Young Generation", + ] + `); + }); + + it('has correct series overall values', () => { + expectSnapshot(cpuUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0, + 187.5, + ] + `); + }); + }); + }); + + // 9223372036854771712 = memory limit for a c-group when no memory limit is specified + it('calculates system memory usage using system total field when cgroup limit is equal to 9223372036854771712', async () => { + const start = encodeURIComponent('2020-09-08T15:00:30.000Z'); + const end = encodeURIComponent('2020-09-08T15:05:00.000Z'); + + const chartsResponse: ChartResponse = await supertest.get( + `/api/apm/services/opbeans-java/metrics/charts?start=${start}&end=${end}&uiFilters=${uiFilters}&agentName=${agentName}` + ); + + const systemMemoryUsageChart = chartsResponse.body.charts.find( + ({ key }) => key === 'memory_usage_chart' + ); + + expect(systemMemoryUsageChart).to.not.empty(); + expectSnapshot(systemMemoryUsageChart?.series.map(({ title }) => title)).toMatchInline(` + Array [ + "Max", + "Average", + ] + `); + expectSnapshot(systemMemoryUsageChart?.series.map(({ overallValue }) => overallValue)) + .toMatchInline(` + Array [ + 0.11452389642649889, + 0.11400237609041514, + ] + `); + + const yValues = systemMemoryUsageChart?.series.map((serie) => first(serie.data)?.y); + expectSnapshot(yValues).toMatchInline(` + Array [ + 0.11383724014063981, + 0.11383724014063981, + ] + `); + }); + }); + }); +} diff --git a/x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/data.json.gz b/x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/data.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b38da28496a57defd128fae94e0fce1648b3afc GIT binary patch literal 177873 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%0Dy0p_AzSn{1~HTnRdG%q8(v*X)jP1=Si)< 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�(iPjo~nBT+Vr$-8)Rt~v^izq)tnpsL3-Cb1qPUM5)!WTAW0;OxsXY&?H>+$TpUwu!!-oxK##0ikbVZ9tCb#tY zeTQbZ9`8w>&V_WSj#=Lx$KeKa?3UZ+bhM|X=O)SGA)P%vL?L*Vj`oZdJDSO;@+P_T~0t@vL@#k7eDaagh2rh_=PM zvu(b$-PUtkCl}EbFL71zZY|bUJ3XA4asZ1%A%-ajSCmAaeHDq@in%xg-b9;d)VitB zF8k%+OK-KaM@3PghXNs{?5byW~qVb#G#;yPdfz$ zW<@|%|8ND=*l~qBJ$lrHb!#~RiZ#nB(&sMS1*gzggQ)o-JQmc@Yu(0Uu*Xp@d|UaT zeyQ$ugL*(hQs7B=OC9ZUN)I7~sW!3Y=*(#qB+-gOL_VosRT%Q+y%MCyd4$Jltj5JP z4&ABmP+JJko_?#kH`+WauEyw69do`tRs*hx3cg+&b*Wz*^=j4$*SnhX!|e@e1cQ?{ zjdaOss*FD%huiy9Db@E??OZwt2CmVvAUzdxpgrL{p9x328=O)w^54|!AbC*?@o~+o zr|T!rT7w7lET&Dl{8ecWk&UY|L3GFte z?h*3QgHAv$B?)%!@fOQ)z8v2q0(&d_0W7a=DN!ugt@8u40pj@)M)r$n&es=lj%e;% zQX73ZeHu5j`_<^M=`AP}TVru5qFu^ZcqynIhxj;o6?AHCT&65fXK&S6#u(l%gj#Q_ zKBV}tJiiGl%)o;N=Y9plpMupqMaieeOV12i+6#Y9TG{x$w^heW4Ph}UPb}l{;2O`& zw{LAn7`$-(F=Gm1!)i zTeioO=)on;y)92jYB2~evp65;VH+|WwtOu53xh407w%>8X(xFUX0ncR@5ofK6-l{t u@D+C#Z|5m=^HHj?A`abCojDLu;ZIgN_iNJMYMVzsJpY)cywEOJf%q@N&KXJo literal 0 HcmV?d00001 diff --git a/x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/mappings.json b/x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/mappings.json new file mode 100644 index 00000000000000..b3b3281be3cdbb --- /dev/null +++ b/x-pack/test/apm_api_integration/common/fixtures/es_archiver/metrics_8.0.0/mappings.json @@ -0,0 +1,4092 @@ +{ + "type": "index", + "value": { + "aliases": { + "apm-8.0.0-metric": { + "is_write_index": true + } + }, + "index": "apm-8.0.0-metric-000001", + "mappings": { + "_meta": { + "beat": "apm", + "version": "8.0.0" + }, + "date_detection": false, + "dynamic_templates": [ + { + "labels": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "labels.*" + } + }, + { + "container.labels": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "container.labels.*" + } + }, + { + "dns.answers": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "dns.answers.*" + } + }, + { + "log.syslog": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "log.syslog.*" + } + }, + { + "network.inner": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "network.inner.*" + } + }, + { + "observer.egress": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "observer.egress.*" + } + }, + { + "observer.ingress": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "observer.ingress.*" + } + }, + { + "fields": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "fields.*" + } + }, + { + "docker.container.labels": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "docker.container.labels.*" + } + }, + { + "kubernetes.labels.*": { + "mapping": { + "type": "keyword" + }, + "path_match": "kubernetes.labels.*" + } + }, + { + "kubernetes.annotations.*": { + "mapping": { + "type": "keyword" + }, + "path_match": "kubernetes.annotations.*" + } + }, + { + "labels_string": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "labels.*" + } + }, + { + "labels_boolean": { + "mapping": { + "type": "boolean" + }, + "match_mapping_type": "boolean", + "path_match": "labels.*" + } + }, + { + "labels_*": { + "mapping": { + "scaling_factor": 1000000, + "type": "scaled_float" + }, + "path_match": "labels.*" + } + }, + { + "transaction.marks": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "transaction.marks.*" + } + }, + { + "transaction.marks.*.*": { + "mapping": { + "scaling_factor": 1000000, + "type": "scaled_float" + }, + "path_match": "transaction.marks.*.*" + } + }, + { + "strings_as_keyword": { + "mapping": { + "ignore_above": 1024, + "type": "keyword" + }, + "match_mapping_type": "string" + } + } + ], + "properties": { + "@timestamp": { + "type": "date" + }, + "agent": { + "dynamic": "false", + "properties": { + "ephemeral_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "hostname": { + "path": "agent.name", + "type": "alias" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "as": { + "properties": { + "number": { + "type": "long" + }, + "organization": { + "properties": { + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "child": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "client": { + "dynamic": "false", + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "as": { + "properties": { + "number": { + "type": "long" + }, + "organization": { + "properties": { + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "nat": { + "properties": { + "ip": { + "type": "ip" + }, + "port": { + "type": "long" + } + } + }, + "packets": { + "type": "long" + }, + "port": { + "type": "long" + }, + "registered_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "top_level_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "cloud": { + "properties": { + "account": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "availability_zone": { + "ignore_above": 1024, + "type": "keyword" + }, + "image": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "instance": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "machine": { + "dynamic": "false", + "properties": { + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "project": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "provider": { + "ignore_above": 1024, + "type": "keyword" + }, + "region": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "code_signature": { + "properties": { + "exists": { + "type": "boolean" + }, + "status": { + "ignore_above": 1024, + "type": "keyword" + }, + "subject_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "trusted": { + "type": "boolean" + }, + "valid": { + "type": "boolean" + } + } + }, + "container": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "image": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "tag": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "labels": { + "type": "object" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "runtime": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "destination": { + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "as": { + "properties": { + "number": { + "type": "long" + }, + "organization": { + "properties": { + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "nat": { + "properties": { + "ip": { + "type": "ip" + }, + "port": { + "type": "long" + } + } + }, + "packets": { + "type": "long" + }, + "port": { + "type": "long" + }, + "registered_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "top_level_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "dll": { + "properties": { + "code_signature": { + "properties": { + "exists": { + "type": "boolean" + }, + "status": { + "ignore_above": 1024, + "type": "keyword" + }, + "subject_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "trusted": { + "type": "boolean" + }, + "valid": { + "type": "boolean" + } + } + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "pe": { + "properties": { + "company": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "ignore_above": 1024, + "type": "keyword" + }, + "file_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "original_file_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "product": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "dns": { + "properties": { + "answers": { + "properties": { + "class": { + "ignore_above": 1024, + "type": "keyword" + }, + "data": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "ttl": { + "type": "long" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "header_flags": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "op_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "question": { + "properties": { + "class": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "registered_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "subdomain": { + "ignore_above": 1024, + "type": "keyword" + }, + "top_level_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "resolved_ip": { + "type": "ip" + }, + "response_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "docker": { + "properties": { + "container": { + "properties": { + "labels": { + "type": "object" + } + } + } + } + }, + "ecs": { + "properties": { + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "error": { + "dynamic": "false", + "properties": { + "code": { + "ignore_above": 1024, + "type": "keyword" + }, + "culprit": { + "ignore_above": 1024, + "type": "keyword" + }, + "exception": { + "properties": { + "code": { + "ignore_above": 1024, + "type": "keyword" + }, + "handled": { + "type": "boolean" + }, + "message": { + "norms": false, + "type": "text" + }, + "module": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "grouping_key": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "log": { + "properties": { + "level": { + "ignore_above": 1024, + "type": "keyword" + }, + "logger_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "message": { + "norms": false, + "type": "text" + }, + "param_message": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "message": { + "norms": false, + "type": "text" + }, + "stack_trace": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "event": { + "properties": { + "action": { + "ignore_above": 1024, + "type": "keyword" + }, + "category": { + "ignore_above": 1024, + "type": "keyword" + }, + "code": { + "ignore_above": 1024, + "type": "keyword" + }, + "created": { + "type": "date" + }, + "dataset": { + "ignore_above": 1024, + "type": "keyword" + }, + "duration": { + "type": "long" + }, + "end": { + "type": "date" + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "ingested": { + "type": "date" + }, + "kind": { + "ignore_above": 1024, + "type": "keyword" + }, + "module": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "ignore_above": 1024, + "type": "keyword" + }, + "outcome": { + "ignore_above": 1024, + "type": "keyword" + }, + "provider": { + "ignore_above": 1024, + "type": "keyword" + }, + "reference": { + "ignore_above": 1024, + "type": "keyword" + }, + "risk_score": { + "type": "float" + }, + "risk_score_norm": { + "type": "float" + }, + "sequence": { + "type": "long" + }, + "severity": { + "type": "long" + }, + "start": { + "type": "date" + }, + "timezone": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "url": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "experimental": { + "dynamic": "true", + "type": "object" + }, + "fields": { + "type": "object" + }, + "file": { + "properties": { + "accessed": { + "type": "date" + }, + "attributes": { + "ignore_above": 1024, + "type": "keyword" + }, + "code_signature": { + "properties": { + "exists": { + "type": "boolean" + }, + "status": { + "ignore_above": 1024, + "type": "keyword" + }, + "subject_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "trusted": { + "type": "boolean" + }, + "valid": { + "type": "boolean" + } + } + }, + "created": { + "type": "date" + }, + "ctime": { + "type": "date" + }, + "device": { + "ignore_above": 1024, + "type": "keyword" + }, + "directory": { + "ignore_above": 1024, + "type": "keyword" + }, + "drive_letter": { + "ignore_above": 1, + "type": "keyword" + }, + "extension": { + "ignore_above": 1024, + "type": "keyword" + }, + "gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "ignore_above": 1024, + "type": "keyword" + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "inode": { + "ignore_above": 1024, + "type": "keyword" + }, + "mime_type": { + "ignore_above": 1024, + "type": "keyword" + }, + "mode": { + "ignore_above": 1024, + "type": "keyword" + }, + "mtime": { + "type": "date" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "owner": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "pe": { + "properties": { + "company": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "ignore_above": 1024, + "type": "keyword" + }, + "file_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "original_file_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "product": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "size": { + "type": "long" + }, + "target_path": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "golang": { + "properties": { + "goroutines": { + "type": "long" + }, + "heap": { + "properties": { + "allocations": { + "properties": { + "active": { + "type": "float" + }, + "allocated": { + "type": "float" + }, + "frees": { + "type": "long" + }, + "idle": { + "type": "float" + }, + "mallocs": { + "type": "long" + }, + "objects": { + "type": "long" + }, + "total": { + "type": "float" + } + } + }, + "gc": { + "properties": { + "cpu_fraction": { + "type": "float" + }, + "next_gc_limit": { + "type": "float" + }, + "total_count": { + "type": "long" + }, + "total_pause": { + "properties": { + "ns": { + "type": "float" + } + } + } + } + }, + "system": { + "properties": { + "obtained": { + "type": "float" + }, + "released": { + "type": "float" + }, + "stack": { + "type": "long" + }, + "total": { + "type": "float" + } + } + } + } + } + } + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "host": { + "dynamic": "false", + "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, + "containerized": { + "type": "boolean" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "build": { + "ignore_above": 1024, + "type": "keyword" + }, + "codename": { + "ignore_above": 1024, + "type": "keyword" + }, + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "uptime": { + "type": "long" + }, + "user": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "http": { + "dynamic": "false", + "properties": { + "request": { + "properties": { + "body": { + "properties": { + "bytes": { + "type": "long" + }, + "content": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "bytes": { + "type": "long" + }, + "headers": { + "enabled": false, + "type": "object" + }, + "method": { + "ignore_above": 1024, + "type": "keyword" + }, + "referrer": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "response": { + "properties": { + "body": { + "properties": { + "bytes": { + "type": "long" + }, + "content": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "bytes": { + "type": "long" + }, + "finished": { + "type": "boolean" + }, + "headers": { + "enabled": false, + "type": "object" + }, + "status_code": { + "type": "long" + } + } + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "interface": { + "properties": { + "alias": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "jvm": { + "properties": { + "gc": { + "properties": { + "alloc": { + "type": "float" + }, + "count": { + "type": "long" + }, + "time": { + "type": "long" + } + } + }, + "memory": { + "properties": { + "heap": { + "properties": { + "committed": { + "type": "float" + }, + "max": { + "type": "float" + }, + "pool": { + "properties": { + "committed": { + "type": "float" + }, + "max": { + "type": "long" + }, + "used": { + "type": "float" + } + } + }, + "used": { + "type": "float" + } + } + }, + "non_heap": { + "properties": { + "committed": { + "type": "float" + }, + "max": { + "type": "long" + }, + "used": { + "type": "float" + } + } + } + } + }, + "thread": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "kubernetes": { + "dynamic": "false", + "properties": { + "annotations": { + "properties": { + "*": { + "type": "object" + } + } + }, + "container": { + "properties": { + "image": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "deployment": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "labels": { + "properties": { + "*": { + "type": "object" + } + } + }, + "namespace": { + "ignore_above": 1024, + "type": "keyword" + }, + "node": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "pod": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "replicaset": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "statefulset": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "labels": { + "dynamic": "true", + "properties": { + "env": { + "type": "keyword" + }, + "hostname": { + "type": "keyword" + }, + "name": { + "type": "keyword" + } + } + }, + "log": { + "properties": { + "level": { + "ignore_above": 1024, + "type": "keyword" + }, + "logger": { + "ignore_above": 1024, + "type": "keyword" + }, + "origin": { + "properties": { + "file": { + "properties": { + "line": { + "type": "long" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "function": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "original": { + "ignore_above": 1024, + "type": "keyword" + }, + "syslog": { + "properties": { + "facility": { + "properties": { + "code": { + "type": "long" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "priority": { + "type": "long" + }, + "severity": { + "properties": { + "code": { + "type": "long" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + } + } + }, + "message": { + "norms": false, + "type": "text" + }, + "network": { + "properties": { + "application": { + "ignore_above": 1024, + "type": "keyword" + }, + "bytes": { + "type": "long" + }, + "community_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "direction": { + "ignore_above": 1024, + "type": "keyword" + }, + "forwarded_ip": { + "type": "ip" + }, + "iana_number": { + "ignore_above": 1024, + "type": "keyword" + }, + "inner": { + "properties": { + "vlan": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "packets": { + "type": "long" + }, + "protocol": { + "ignore_above": 1024, + "type": "keyword" + }, + "transport": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "vlan": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "nodejs": { + "properties": { + "eventloop": { + "properties": { + "delay": { + "properties": { + "avg": { + "properties": { + "ms": { + "type": "long" + } + } + }, + "ns": { + "type": "long" + } + } + } + } + }, + "handles": { + "properties": { + "active": { + "type": "long" + } + } + }, + "memory": { + "properties": { + "arrayBuffers": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "external": { + "properties": { + "bytes": { + "type": "float" + } + } + }, + "heap": { + "properties": { + "allocated": { + "properties": { + "bytes": { + "type": "float" + } + } + }, + "used": { + "properties": { + "bytes": { + "type": "float" + } + } + } + } + } + } + }, + "requests": { + "properties": { + "active": { + "type": "long" + } + } + } + } + }, + "observer": { + "dynamic": "false", + "properties": { + "egress": { + "properties": { + "interface": { + "properties": { + "alias": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "vlan": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "zone": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "ingress": { + "properties": { + "interface": { + "properties": { + "alias": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "vlan": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "zone": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "listening": { + "ignore_above": 1024, + "type": "keyword" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "product": { + "ignore_above": 1024, + "type": "keyword" + }, + "serial_number": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "vendor": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + }, + "version_major": { + "type": "byte" + } + } + }, + "organization": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "package": { + "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, + "build_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "checksum": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "ignore_above": 1024, + "type": "keyword" + }, + "install_scope": { + "ignore_above": 1024, + "type": "keyword" + }, + "installed": { + "type": "date" + }, + "license": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "reference": { + "ignore_above": 1024, + "type": "keyword" + }, + "size": { + "type": "long" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "parent": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "pe": { + "properties": { + "company": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "ignore_above": 1024, + "type": "keyword" + }, + "file_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "original_file_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "product": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "process": { + "dynamic": "false", + "properties": { + "args": { + "ignore_above": 1024, + "type": "keyword" + }, + "args_count": { + "type": "long" + }, + "code_signature": { + "properties": { + "exists": { + "type": "boolean" + }, + "status": { + "ignore_above": 1024, + "type": "keyword" + }, + "subject_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "trusted": { + "type": "boolean" + }, + "valid": { + "type": "boolean" + } + } + }, + "command_line": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "entity_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "executable": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "exit_code": { + "type": "long" + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "parent": { + "properties": { + "args": { + "ignore_above": 1024, + "type": "keyword" + }, + "args_count": { + "type": "long" + }, + "code_signature": { + "properties": { + "exists": { + "type": "boolean" + }, + "status": { + "ignore_above": 1024, + "type": "keyword" + }, + "subject_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "trusted": { + "type": "boolean" + }, + "valid": { + "type": "boolean" + } + } + }, + "command_line": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "entity_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "executable": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "exit_code": { + "type": "long" + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "pgid": { + "type": "long" + }, + "pid": { + "type": "long" + }, + "ppid": { + "type": "long" + }, + "start": { + "type": "date" + }, + "thread": { + "properties": { + "id": { + "type": "long" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "title": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "uptime": { + "type": "long" + }, + "working_directory": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "pe": { + "properties": { + "company": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "ignore_above": 1024, + "type": "keyword" + }, + "file_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "original_file_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "product": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "pgid": { + "type": "long" + }, + "pid": { + "type": "long" + }, + "ppid": { + "type": "long" + }, + "start": { + "type": "date" + }, + "thread": { + "properties": { + "id": { + "type": "long" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "title": { + "ignore_above": 1024, + "type": "keyword" + }, + "uptime": { + "type": "long" + }, + "working_directory": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "processor": { + "properties": { + "event": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "profile": { + "dynamic": "false", + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "cpu": { + "properties": { + "ns": { + "type": "long" + } + } + }, + "duration": { + "type": "long" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "samples": { + "properties": { + "count": { + "type": "long" + } + } + }, + "stack": { + "dynamic": "false", + "properties": { + "filename": { + "ignore_above": 1024, + "type": "keyword" + }, + "function": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "line": { + "type": "long" + } + } + }, + "top": { + "dynamic": "false", + "properties": { + "filename": { + "ignore_above": 1024, + "type": "keyword" + }, + "function": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "line": { + "type": "long" + } + } + } + } + }, + "registry": { + "properties": { + "data": { + "properties": { + "bytes": { + "ignore_above": 1024, + "type": "keyword" + }, + "strings": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hive": { + "ignore_above": 1024, + "type": "keyword" + }, + "key": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "value": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "related": { + "properties": { + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "ip": { + "type": "ip" + }, + "user": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "rule": { + "properties": { + "author": { + "ignore_above": 1024, + "type": "keyword" + }, + "category": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "license": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "reference": { + "ignore_above": 1024, + "type": "keyword" + }, + "ruleset": { + "ignore_above": 1024, + "type": "keyword" + }, + "uuid": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "server": { + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "as": { + "properties": { + "number": { + "type": "long" + }, + "organization": { + "properties": { + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "nat": { + "properties": { + "ip": { + "type": "ip" + }, + "port": { + "type": "long" + } + } + }, + "packets": { + "type": "long" + }, + "port": { + "type": "long" + }, + "registered_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "top_level_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "service": { + "dynamic": "false", + "properties": { + "environment": { + "ignore_above": 1024, + "type": "keyword" + }, + "ephemeral_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "framework": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "language": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "node": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "runtime": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "state": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "source": { + "dynamic": "false", + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "as": { + "properties": { + "number": { + "type": "long" + }, + "organization": { + "properties": { + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "nat": { + "properties": { + "ip": { + "type": "ip" + }, + "port": { + "type": "long" + } + } + }, + "packets": { + "type": "long" + }, + "port": { + "type": "long" + }, + "registered_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "top_level_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "sourcemap": { + "dynamic": "false", + "properties": { + "bundle_filepath": { + "ignore_above": 1024, + "type": "keyword" + }, + "service": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "span": { + "dynamic": "false", + "properties": { + "action": { + "ignore_above": 1024, + "type": "keyword" + }, + "db": { + "dynamic": "false", + "properties": { + "link": { + "ignore_above": 1024, + "type": "keyword" + }, + "rows_affected": { + "type": "long" + } + } + }, + "destination": { + "dynamic": "false", + "properties": { + "service": { + "dynamic": "false", + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "resource": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "duration": { + "properties": { + "us": { + "type": "long" + } + } + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "message": { + "dynamic": "false", + "properties": { + "age": { + "properties": { + "ms": { + "type": "long" + } + } + }, + "queue": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "self_time": { + "properties": { + "count": { + "type": "long" + }, + "sum": { + "properties": { + "us": { + "type": "long" + } + } + } + } + }, + "start": { + "properties": { + "us": { + "type": "long" + } + } + }, + "subtype": { + "ignore_above": 1024, + "type": "keyword" + }, + "sync": { + "type": "boolean" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "system": { + "properties": { + "cpu": { + "properties": { + "total": { + "properties": { + "norm": { + "properties": { + "pct": { + "scaling_factor": 1000, + "type": "scaled_float" + } + } + } + } + } + } + }, + "memory": { + "properties": { + "actual": { + "properties": { + "free": { + "type": "long" + } + } + }, + "total": { + "type": "long" + } + } + }, + "process": { + "properties": { + "cgroup": { + "properties": { + "memory": { + "properties": { + "mem": { + "properties": { + "limit": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "usage": { + "properties": { + "bytes": { + "type": "long" + } + } + } + } + }, + "stats": { + "properties": { + "inactive_file": { + "properties": { + "bytes": { + "type": "long" + } + } + } + } + } + } + } + } + }, + "cpu": { + "properties": { + "system": { + "properties": { + "norm": { + "properties": { + "pct": { + "type": "float" + } + } + } + } + }, + "total": { + "properties": { + "norm": { + "properties": { + "pct": { + "scaling_factor": 1000, + "type": "scaled_float" + } + } + } + } + }, + "user": { + "properties": { + "norm": { + "properties": { + "pct": { + "type": "float" + } + } + } + } + } + } + }, + "memory": { + "properties": { + "rss": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "size": { + "type": "long" + } + } + } + } + } + } + }, + "tags": { + "ignore_above": 1024, + "type": "keyword" + }, + "threat": { + "properties": { + "framework": { + "ignore_above": 1024, + "type": "keyword" + }, + "tactic": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "reference": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "technique": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "reference": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "timeseries": { + "properties": { + "instance": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "timestamp": { + "properties": { + "us": { + "type": "long" + } + } + }, + "tls": { + "properties": { + "cipher": { + "ignore_above": 1024, + "type": "keyword" + }, + "client": { + "properties": { + "certificate": { + "ignore_above": 1024, + "type": "keyword" + }, + "certificate_chain": { + "ignore_above": 1024, + "type": "keyword" + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "issuer": { + "ignore_above": 1024, + "type": "keyword" + }, + "ja3": { + "ignore_above": 1024, + "type": "keyword" + }, + "not_after": { + "type": "date" + }, + "not_before": { + "type": "date" + }, + "server_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "subject": { + "ignore_above": 1024, + "type": "keyword" + }, + "supported_ciphers": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "curve": { + "ignore_above": 1024, + "type": "keyword" + }, + "established": { + "type": "boolean" + }, + "next_protocol": { + "ignore_above": 1024, + "type": "keyword" + }, + "resumed": { + "type": "boolean" + }, + "server": { + "properties": { + "certificate": { + "ignore_above": 1024, + "type": "keyword" + }, + "certificate_chain": { + "ignore_above": 1024, + "type": "keyword" + }, + "hash": { + "properties": { + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "issuer": { + "ignore_above": 1024, + "type": "keyword" + }, + "ja3s": { + "ignore_above": 1024, + "type": "keyword" + }, + "not_after": { + "type": "date" + }, + "not_before": { + "type": "date" + }, + "subject": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + }, + "version_protocol": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "trace": { + "dynamic": "false", + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "tracing": { + "properties": { + "trace": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "transaction": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "transaction": { + "dynamic": "false", + "properties": { + "breakdown": { + "properties": { + "count": { + "type": "long" + } + } + }, + "duration": { + "properties": { + "count": { + "type": "long" + }, + "histogram": { + "type": "histogram" + }, + "sum": { + "properties": { + "us": { + "type": "long" + } + } + }, + "us": { + "type": "long" + } + } + }, + "experience": { + "properties": { + "cls": { + "scaling_factor": 1000000, + "type": "scaled_float" + }, + "fid": { + "scaling_factor": 1000000, + "type": "scaled_float" + }, + "tbt": { + "scaling_factor": 1000000, + "type": "scaled_float" + } + } + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "marks": { + "dynamic": "true", + "properties": { + "*": { + "properties": { + "*": { + "dynamic": "true", + "type": "object" + } + } + } + } + }, + "message": { + "dynamic": "false", + "properties": { + "age": { + "properties": { + "ms": { + "type": "long" + } + } + }, + "queue": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "result": { + "ignore_above": 1024, + "type": "keyword" + }, + "root": { + "type": "boolean" + }, + "sampled": { + "type": "boolean" + }, + "self_time": { + "properties": { + "count": { + "type": "long" + }, + "sum": { + "properties": { + "us": { + "type": "long" + } + } + } + } + }, + "span_count": { + "properties": { + "dropped": { + "type": "long" + } + } + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "url": { + "dynamic": "false", + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "extension": { + "ignore_above": 1024, + "type": "keyword" + }, + "fragment": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "password": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "port": { + "type": "long" + }, + "query": { + "ignore_above": 1024, + "type": "keyword" + }, + "registered_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "scheme": { + "ignore_above": 1024, + "type": "keyword" + }, + "top_level_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "username": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "user": { + "dynamic": "false", + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "user_agent": { + "dynamic": "false", + "properties": { + "device": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "view spans": { + "ignore_above": 1024, + "type": "keyword" + }, + "vlan": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "vulnerability": { + "properties": { + "category": { + "ignore_above": 1024, + "type": "keyword" + }, + "classification": { + "ignore_above": 1024, + "type": "keyword" + }, + "description": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "enumeration": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "reference": { + "ignore_above": 1024, + "type": "keyword" + }, + "report_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "scanner": { + "properties": { + "vendor": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "score": { + "properties": { + "base": { + "type": "float" + }, + "environmental": { + "type": "float" + }, + "temporal": { + "type": "float" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "severity": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "settings": { + "index": { + "codec": "best_compression", + "lifecycle": { + "name": "apm-rollover-30-days", + "rollover_alias": "apm-8.0.0-metric" + }, + "mapping": { + "total_fields": { + "limit": "2000" + } + }, + "max_docvalue_fields_search": "200", + "number_of_replicas": "0", + "number_of_shards": "1", + "priority": "100", + "refresh_interval": "1ms" + } + } + } +} \ No newline at end of file