diff --git a/src/plugins/usage_collection/server/collector/types.ts b/src/plugins/usage_collection/server/collector/types.ts index ff5b7135ba5c0..50a04560e384b 100644 --- a/src/plugins/usage_collection/server/collector/types.ts +++ b/src/plugins/usage_collection/server/collector/types.ts @@ -21,7 +21,7 @@ export type { /** * Helper to find out whether to keep recursively looking or if we are on an end value */ -export type RecursiveMakeSchemaFrom = U extends object +export type RecursiveMakeSchemaFrom = U extends object ? Record extends U ? | { @@ -31,19 +31,21 @@ export type RecursiveMakeSchemaFrom = U extends object description: string; // Intentionally enforcing the descriptions here } & SchemaMetaOptional; } - | MakeSchemaFrom // But still allow being explicit in the definition if they want to. - : MakeSchemaFrom + | MakeSchemaFrom // But still allow being explicit in the definition if they want to. + : MakeSchemaFrom + : RequireMeta extends true + ? { type: PossibleSchemaTypes; _meta: { description: string } } : { type: PossibleSchemaTypes; _meta?: { description: string } }; /** * The `schema` property in {@link CollectorOptions} must match the output of * the `fetch` method. This type helps ensure that is correct */ -export type MakeSchemaFrom = { +export type MakeSchemaFrom = { // Using Required to enforce all optional keys in the object [Key in keyof Required]: Required[Key] extends Array - ? { type: 'array'; items: RecursiveMakeSchemaFrom } - : RecursiveMakeSchemaFrom[Key]>; + ? { type: 'array'; items: RecursiveMakeSchemaFrom } + : RecursiveMakeSchemaFrom[Key], RequireMeta>; }; /** diff --git a/x-pack/plugins/apm/common/__snapshots__/apm_telemetry.test.ts.snap b/x-pack/plugins/apm/common/__snapshots__/apm_telemetry.test.ts.snap index 7e0d699fddfc0..2bed81c9c05c3 100644 --- a/x-pack/plugins/apm/common/__snapshots__/apm_telemetry.test.ts.snap +++ b/x-pack/plugins/apm/common/__snapshots__/apm_telemetry.test.ts.snap @@ -14,76 +14,148 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "services_per_agent": { "properties": { "android/java": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the android/java agent within the last day" + } }, "dotnet": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the dotnet (.Net) agent within the last day" + } }, "iOS/swift": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the iOS/swift agent within the last day" + } }, "go": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the go agent within the last day" + } }, "java": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the Java agent within the last day" + } }, "js-base": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the js-base agent within the last day" + } }, "nodejs": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the nodeJS agent within the last day" + } }, "php": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the PHH agent within the last day" + } }, "python": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the Python agent within the last day" + } }, "ruby": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the Ruby agent within the last day" + } }, "rum-js": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the rum-js agent within the last day" + } }, "otlp": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the otlp agent within the last day" + } }, "opentelemetry/cpp": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/cpp agent within the last day" + } }, "opentelemetry/dotnet": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/dotnet agent within the last day" + } }, "opentelemetry/erlang": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/erlang agent within the last day" + } }, "opentelemetry/go": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/go agent within the last day" + } }, "opentelemetry/java": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/java agent within the last day" + } }, "opentelemetry/nodejs": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/nodejs agent within the last day" + } }, "opentelemetry/php": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/php agent within the last day" + } }, "opentelemetry/python": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/python agent within the last day" + } }, "opentelemetry/ruby": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/ruby agent within the last day" + } }, "opentelemetry/rust": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/rust agent within the last day" + } }, "opentelemetry/swift": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/swift agent within the last day" + } }, "opentelemetry/webjs": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/webjs agent within the last day" + } } } }, @@ -1140,60 +1212,96 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "current_implementation": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "no_observer_name": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "no_rum": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "no_rum_no_observer_name": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "only_rum": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "only_rum_no_observer_name": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } } @@ -1366,10 +1474,10 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "services": { "properties": { "1d": { - "type": "long" - }, - "all": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of unique services within the last day" + } } } }, @@ -1552,7 +1660,10 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "shards": { "properties": { "total": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of shards for metric indices" + } } } }, @@ -1563,14 +1674,20 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "docs": { "properties": { "count": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of metric documents overall" + } } } }, "store": { "properties": { "size_in_bytes": { - "type": "long" + "type": "long", + "_meta": { + "description": "Size of the metric indicess in byte units overall." + } } } } @@ -1587,7 +1704,7 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "total": { "type": "long", "_meta": { - "description": "Total number of shards overall" + "description": "Total number of shards for span and trasnaction indices" } } } @@ -1819,7 +1936,10 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "pod": { "properties": { "name": { - "type": "keyword" + "type": "keyword", + "_meta": { + "description": "Kuberneted pod name " + } } } } @@ -1828,7 +1948,10 @@ exports[`APM telemetry helpers getApmTelemetry generates a JSON object with the "container": { "properties": { "id": { - "type": "keyword" + "type": "keyword", + "_meta": { + "description": "Container id" + } } } } diff --git a/x-pack/plugins/apm/server/lib/apm_telemetry/schema.ts b/x-pack/plugins/apm/server/lib/apm_telemetry/schema.ts index 3054c9f5e8bc7..b5d361777b602 100644 --- a/x-pack/plugins/apm/server/lib/apm_telemetry/schema.ts +++ b/x-pack/plugins/apm/server/lib/apm_telemetry/schema.ts @@ -6,164 +6,153 @@ */ import { MakeSchemaFrom } from '@kbn/usage-collection-plugin/server'; -import { - AggregatedTransactionsCounts, - APMUsage, - TimeframeMap, - TimeframeMap1d, - TimeframeMapAll, - APMPerService, -} from './types'; +import { AggregatedTransactionsCounts, APMUsage, APMPerService } from './types'; import { ElasticAgentName } from '../../../typings/es_schemas/ui/fields/agent'; -const long: { type: 'long' } = { type: 'long' }; - -const keyword: { type: 'keyword' } = { type: 'keyword' }; - -const aggregatedTransactionCountSchema: MakeSchemaFrom = - { - expected_metric_document_count: long, - transaction_count: long, - }; - -const timeframeMap1dSchema: MakeSchemaFrom = { - '1d': long, -}; - -const timeframeMapAllSchema: MakeSchemaFrom = { - all: long, -}; - -const timeframeMapSchema: MakeSchemaFrom = { - ...timeframeMap1dSchema, - ...timeframeMapAllSchema, -}; - -const agentSchema: MakeSchemaFrom['agents'][ElasticAgentName] = { - agent: { - version: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 agent versions within the last day', - }, - }, +const aggregatedTransactionCountSchema: MakeSchemaFrom< + AggregatedTransactionsCounts, + true +> = { + expected_metric_document_count: { + type: 'long', + _meta: { + description: '', }, - activation_method: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 agent activation methods within the last day', - }, - }, + }, + transaction_count: { + type: 'long', + _meta: { + description: '', }, }, - service: { - framework: { - name: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 service framework name within the last day', - }, - }, - }, +}; + +const agentSchema: MakeSchemaFrom['agents'][ElasticAgentName] = + { + agent: { version: { type: 'array', items: { type: 'keyword', _meta: { description: - 'An array of the top 3 service framework version within the last day', + 'An array of the top 3 agent versions within the last day', }, }, }, - composite: { + activation_method: { type: 'array', items: { type: 'keyword', _meta: { description: - 'Composite field containing service framework and version sorted by doc count', + 'An array of the top 3 agent activation methods within the last day', }, }, }, }, - language: { - name: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 service language name within the last day', + service: { + framework: { + name: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'An array of the top 3 service framework name within the last day', + }, }, }, - }, - version: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 service language version within the last day', + version: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'An array of the top 3 service framework version within the last day', + }, }, }, - }, - composite: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'Composite field containing service language name and version sorted by doc count.', + composite: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'Composite field containing service framework and version sorted by doc count', + }, }, }, }, - }, - runtime: { - name: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 service runtime name within the last day', + language: { + name: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'An array of the top 3 service language name within the last day', + }, }, }, - }, - version: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'An array of the top 3 service runtime version within the last day', + version: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'An array of the top 3 service language version within the last day', + }, + }, + }, + composite: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'Composite field containing service language name and version sorted by doc count.', + }, }, }, }, - composite: { - type: 'array', - items: { - type: 'keyword', - _meta: { - description: - 'Composite field containing service runtime name and version sorted by doc count.', + runtime: { + name: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'An array of the top 3 service runtime name within the last day', + }, + }, + }, + version: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'An array of the top 3 service runtime version within the last day', + }, + }, + }, + composite: { + type: 'array', + items: { + type: 'keyword', + _meta: { + description: + 'Composite field containing service runtime name and version sorted by doc count.', + }, }, }, }, }, - }, -}; + }; const apmPerAgentSchema: Pick< - MakeSchemaFrom, + MakeSchemaFrom, 'services_per_agent' | 'agents' > = { // services_per_agent: AGENT_NAMES.reduce( @@ -177,30 +166,174 @@ const apmPerAgentSchema: Pick< // TODO: Find a way for `@kbn/telemetry-tools` to understand and evaluate expressions. // In the meanwhile, we'll have to maintain these lists up to date (TS will remind us to update) services_per_agent: { - 'android/java': long, - dotnet: long, - 'iOS/swift': long, - go: long, - java: long, - 'js-base': long, - nodejs: long, - php: long, - python: long, - ruby: long, - 'rum-js': long, - otlp: long, - 'opentelemetry/cpp': long, - 'opentelemetry/dotnet': long, - 'opentelemetry/erlang': long, - 'opentelemetry/go': long, - 'opentelemetry/java': long, - 'opentelemetry/nodejs': long, - 'opentelemetry/php': long, - 'opentelemetry/python': long, - 'opentelemetry/ruby': long, - 'opentelemetry/rust': long, - 'opentelemetry/swift': long, - 'opentelemetry/webjs': long, + 'android/java': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the android/java agent within the last day', + }, + }, + dotnet: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the dotnet (.Net) agent within the last day', + }, + }, + 'iOS/swift': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the iOS/swift agent within the last day', + }, + }, + go: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the go agent within the last day', + }, + }, + java: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the Java agent within the last day', + }, + }, + 'js-base': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the js-base agent within the last day', + }, + }, + nodejs: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the nodeJS agent within the last day', + }, + }, + php: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the PHH agent within the last day', + }, + }, + python: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the Python agent within the last day', + }, + }, + ruby: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the Ruby agent within the last day', + }, + }, + 'rum-js': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the rum-js agent within the last day', + }, + }, + otlp: { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the otlp agent within the last day', + }, + }, + 'opentelemetry/cpp': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/cpp agent within the last day', + }, + }, + 'opentelemetry/dotnet': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/dotnet agent within the last day', + }, + }, + 'opentelemetry/erlang': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/erlang agent within the last day', + }, + }, + 'opentelemetry/go': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/go agent within the last day', + }, + }, + 'opentelemetry/java': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/java agent within the last day', + }, + }, + 'opentelemetry/nodejs': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/nodejs agent within the last day', + }, + }, + 'opentelemetry/php': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/php agent within the last day', + }, + }, + 'opentelemetry/python': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/python agent within the last day', + }, + }, + 'opentelemetry/ruby': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/ruby agent within the last day', + }, + }, + 'opentelemetry/rust': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/rust agent within the last day', + }, + }, + 'opentelemetry/swift': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/swift agent within the last day', + }, + }, + 'opentelemetry/webjs': { + type: 'long', + _meta: { + description: + 'Total number of services utilizing the opentelemetry/webjs agent within the last day', + }, + }, }, agents: { 'android/java': agentSchema, @@ -217,23 +350,23 @@ const apmPerAgentSchema: Pick< }, }; -export const apmPerServiceSchema: MakeSchemaFrom = { +export const apmPerServiceSchema: MakeSchemaFrom = { service_id: { - ...keyword, + type: 'keyword', _meta: { description: 'Unique identifier that combines the SHA256 hashed representation of the service name and environment', }, }, num_service_nodes: { - ...long, + type: 'long', _meta: { description: 'Total number of the unique service instances that served the transaction within an hour', }, }, num_transaction_types: { - ...long, + type: 'long', _meta: { description: 'Total number of the unique transaction types within an hour', @@ -293,21 +426,21 @@ export const apmPerServiceSchema: MakeSchemaFrom = { }, agent: { name: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of agent name for the service from transaction documents within an hour. Sorted by _score', }, }, version: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of agent version for the service from transaction documents within an hour. Sorted by _score', }, }, activation_method: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of agent activation method for the service from transaction documents within an hour. Sorted by _score', @@ -317,14 +450,14 @@ export const apmPerServiceSchema: MakeSchemaFrom = { service: { language: { name: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of language name for the service from transaction documents within an hour. Sorted by _score', }, }, version: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of language version for the service from transaction documents within an hour. Sorted by _score', @@ -333,14 +466,14 @@ export const apmPerServiceSchema: MakeSchemaFrom = { }, framework: { name: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of service framework name from transaction documents within an hour. Sorted by _score. Example AWS Lambda', }, }, version: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of service framework version from transaction documents within an hour. Sorted by _score', @@ -349,14 +482,14 @@ export const apmPerServiceSchema: MakeSchemaFrom = { }, runtime: { name: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of service runtime name from transaction documents within an hour. Sorted by _score', }, }, version: { - ...keyword, + type: 'keyword', _meta: { description: 'The top value of service runtime version version from transaction documents within an hour. Sorted by _score', @@ -367,16 +500,26 @@ export const apmPerServiceSchema: MakeSchemaFrom = { // No data found kubernetes: { pod: { - name: keyword, + name: { + type: 'keyword', + _meta: { + description: 'Kuberneted pod name ', + }, + }, }, }, // No data found container: { - id: keyword, + id: { + type: 'keyword', + _meta: { + description: 'Container id', + }, + }, }, }; -export const apmSchema: MakeSchemaFrom = { +export const apmSchema: MakeSchemaFrom = { ...apmPerAgentSchema, has_any_services: { type: 'boolean', @@ -388,19 +531,19 @@ export const apmSchema: MakeSchemaFrom = { version: { apm_server: { major: { - ...long, + type: 'long', _meta: { description: 'The major version of the APM server. Example: 7', }, }, minor: { - ...long, + type: 'long', _meta: { description: 'The minor version of the APM server. Example: 17', }, }, patch: { - ...long, + type: 'long', _meta: { description: 'The patch version of the APM server. Example 3', }, @@ -409,14 +552,14 @@ export const apmSchema: MakeSchemaFrom = { }, environments: { services_without_environment: { - ...long, + type: 'long', _meta: { description: 'Number of services without an assigned environment within the last day. This is determined by checking the "service.environment" field and counting instances where it is null', }, }, services_with_multiple_environments: { - ...long, + type: 'long', _meta: { description: 'Number of services with more than one assigned environment within the last day', @@ -433,7 +576,6 @@ export const apmSchema: MakeSchemaFrom = { }, }, }, - // #NOTE No task identified for extracting the following information aggregated_transactions: { current_implementation: aggregatedTransactionCountSchema, no_observer_name: aggregatedTransactionCountSchema, @@ -491,14 +633,14 @@ export const apmSchema: MakeSchemaFrom = { counts: { transaction: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of transaction documents within the last day', }, }, all: { - ...long, + type: 'long', _meta: { description: 'Total number of transaction documents overall', }, @@ -506,13 +648,13 @@ export const apmSchema: MakeSchemaFrom = { }, span: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of span documents within the last day', }, }, all: { - ...long, + type: 'long', _meta: { description: 'Total number of span documents overall', }, @@ -520,13 +662,13 @@ export const apmSchema: MakeSchemaFrom = { }, error: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of error documents within the last day', }, }, all: { - ...long, + type: 'long', _meta: { description: 'Total number of error documents overall', }, @@ -534,13 +676,13 @@ export const apmSchema: MakeSchemaFrom = { }, metric: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of metric documents within the last day', }, }, all: { - ...long, + type: 'long', _meta: { description: 'Total number of metric documents overall', }, @@ -548,14 +690,14 @@ export const apmSchema: MakeSchemaFrom = { }, onboarding: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of onboarding documents within the last day', }, }, all: { - ...long, + type: 'long', _meta: { description: 'Total number of onboarding documents overall', }, @@ -563,7 +705,7 @@ export const apmSchema: MakeSchemaFrom = { }, agent_configuration: { all: { - ...long, + type: 'long', _meta: { description: 'Total number of apm-agent-configuration documents overall', @@ -572,7 +714,7 @@ export const apmSchema: MakeSchemaFrom = { }, max_transaction_groups_per_service: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of distinct transaction groups for the top service for the last 24 hours', @@ -581,7 +723,7 @@ export const apmSchema: MakeSchemaFrom = { }, max_error_groups_per_service: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of distinct error groups for the top service for the last 24 hours', @@ -590,23 +732,29 @@ export const apmSchema: MakeSchemaFrom = { }, traces: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of trace documents within the last day', }, }, all: { - ...long, + type: 'long', _meta: { description: 'Total number of trace documents overall', }, }, }, - // No tasks found - services: timeframeMapSchema, + services: { + '1d': { + type: 'long', + _meta: { + description: 'Total number of unique services within the last day', + }, + }, + }, environments: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of unique environments within the last day', @@ -615,7 +763,7 @@ export const apmSchema: MakeSchemaFrom = { }, span_destination_service_resource: { '1d': { - ...long, + type: 'long', _meta: { description: 'Total number of unique values of span.destination.service.resource within the last day', @@ -630,7 +778,7 @@ export const apmSchema: MakeSchemaFrom = { country_iso_code: { rum: { '1d': { - ...long, + type: 'long', _meta: { description: 'Unique country iso code captured for the agents js-base, rum-js and opentelemetry/webjs within the last day', @@ -644,7 +792,7 @@ export const apmSchema: MakeSchemaFrom = { original: { all_agents: { '1d': { - ...long, + type: 'long', _meta: { description: 'Unique user agent for all agents within the last day', @@ -653,7 +801,7 @@ export const apmSchema: MakeSchemaFrom = { }, rum: { '1d': { - ...long, + type: 'long', _meta: { description: 'Unique user agent for rum agent within the last day', @@ -666,7 +814,7 @@ export const apmSchema: MakeSchemaFrom = { name: { all_agents: { '1d': { - ...long, + type: 'long', _meta: { description: 'Unique transaction names for all agents within the last day', @@ -675,7 +823,7 @@ export const apmSchema: MakeSchemaFrom = { }, rum: { '1d': { - ...long, + type: 'long', _meta: { description: 'Unique transaction names for rum agent within the last day', @@ -689,7 +837,7 @@ export const apmSchema: MakeSchemaFrom = { retainment: { span: { ms: { - ...long, + type: 'long', _meta: { description: 'Represent the time difference in milliseconds between the current date and the date when the span document was recorded', @@ -698,7 +846,7 @@ export const apmSchema: MakeSchemaFrom = { }, transaction: { ms: { - ...long, + type: 'long', _meta: { description: 'Represent the time difference in milliseconds between the current date and the date when the transaction document was recorded', @@ -707,7 +855,7 @@ export const apmSchema: MakeSchemaFrom = { }, error: { ms: { - ...long, + type: 'long', _meta: { description: 'Represent the time difference in milliseconds between the current date and the date when the error document was recorded', @@ -716,7 +864,7 @@ export const apmSchema: MakeSchemaFrom = { }, metric: { ms: { - ...long, + type: 'long', _meta: { description: 'Represent the time difference in milliseconds between the current date and the date when the metric document was recorded', @@ -725,7 +873,7 @@ export const apmSchema: MakeSchemaFrom = { }, onboarding: { ms: { - ...long, + type: 'long', _meta: { description: 'Represent the time difference in milliseconds between the current date and the date when the onboarding document was recorded', @@ -736,7 +884,7 @@ export const apmSchema: MakeSchemaFrom = { integrations: { ml: { all_jobs_count: { - ...long, + type: 'long', _meta: { description: 'Total number of anomaly detection jobs associated with the jobs apm-*, *-high_mean_response_time', @@ -746,23 +894,44 @@ export const apmSchema: MakeSchemaFrom = { }, indices: { - // cannot find related data metric: { - shards: { total: long }, + shards: { + total: { + type: 'long', + _meta: { + description: 'Total number of shards for metric indices', + }, + }, + }, all: { total: { - docs: { count: long }, - store: { size_in_bytes: long }, + docs: { + count: { + type: 'long', + _meta: { + description: 'Total number of metric documents overall', + }, + }, + }, + store: { + size_in_bytes: { + type: 'long', + _meta: { + description: + 'Size of the metric indicess in byte units overall.', + }, + }, + }, }, }, }, - // cannot find related data traces: { shards: { total: { - ...long, + type: 'long', _meta: { - description: 'Total number of shards overall', + description: + 'Total number of shards for span and trasnaction indices', }, }, }, @@ -770,7 +939,7 @@ export const apmSchema: MakeSchemaFrom = { total: { docs: { count: { - ...long, + type: 'long', _meta: { description: 'Total number of transaction and span documents overall', @@ -779,7 +948,7 @@ export const apmSchema: MakeSchemaFrom = { }, store: { size_in_bytes: { - ...long, + type: 'long', _meta: { description: 'Size of the index in byte units overall.', }, @@ -790,7 +959,7 @@ export const apmSchema: MakeSchemaFrom = { }, shards: { total: { - ...long, + type: 'long', _meta: { description: 'Total number of shards overall', }, @@ -800,7 +969,7 @@ export const apmSchema: MakeSchemaFrom = { total: { docs: { count: { - ...long, + type: 'long', _meta: { description: 'Total number of all documents overall', }, @@ -808,7 +977,7 @@ export const apmSchema: MakeSchemaFrom = { }, store: { size_in_bytes: { - ...long, + type: 'long', _meta: { description: 'Size of the index in byte units overall.', }, @@ -829,7 +998,7 @@ export const apmSchema: MakeSchemaFrom = { }, }, total: { - ...long, + type: 'long', _meta: { description: 'Total number of service groups retrived from the saved object across all spaces', @@ -841,7 +1010,7 @@ export const apmSchema: MakeSchemaFrom = { aggregated_transactions: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "aggregated_transactions" task', @@ -852,7 +1021,7 @@ export const apmSchema: MakeSchemaFrom = { cloud: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "cloud" task', }, @@ -862,7 +1031,7 @@ export const apmSchema: MakeSchemaFrom = { host: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "host" task', }, @@ -872,7 +1041,7 @@ export const apmSchema: MakeSchemaFrom = { processor_events: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "processor_events" task', @@ -883,7 +1052,7 @@ export const apmSchema: MakeSchemaFrom = { agent_configuration: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "agent_configuration" task', @@ -894,7 +1063,7 @@ export const apmSchema: MakeSchemaFrom = { services: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "services" task', @@ -905,7 +1074,7 @@ export const apmSchema: MakeSchemaFrom = { versions: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "versions" task', @@ -916,7 +1085,7 @@ export const apmSchema: MakeSchemaFrom = { groupings: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "groupings" task', @@ -927,7 +1096,7 @@ export const apmSchema: MakeSchemaFrom = { integrations: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "integrations" task', @@ -938,7 +1107,7 @@ export const apmSchema: MakeSchemaFrom = { agents: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "agents" task', }, @@ -948,7 +1117,7 @@ export const apmSchema: MakeSchemaFrom = { indices_stats: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "indices_stats" task', @@ -959,7 +1128,7 @@ export const apmSchema: MakeSchemaFrom = { cardinality: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "cardinality" task', @@ -970,7 +1139,7 @@ export const apmSchema: MakeSchemaFrom = { environments: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "environments" task', @@ -981,7 +1150,7 @@ export const apmSchema: MakeSchemaFrom = { service_groups: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "service_groups" task', @@ -992,7 +1161,7 @@ export const apmSchema: MakeSchemaFrom = { per_service: { took: { ms: { - ...long, + type: 'long', _meta: { description: 'Execution time in milliseconds for the "per_service" task', diff --git a/x-pack/plugins/apm/server/lib/apm_telemetry/types.ts b/x-pack/plugins/apm/server/lib/apm_telemetry/types.ts index e88e021fbd0cb..9c6c312c284f4 100644 --- a/x-pack/plugins/apm/server/lib/apm_telemetry/types.ts +++ b/x-pack/plugins/apm/server/lib/apm_telemetry/types.ts @@ -107,7 +107,7 @@ export interface APMUsage { max_transaction_groups_per_service: TimeframeMap1d; max_error_groups_per_service: TimeframeMap1d; traces: TimeframeMap; - services: TimeframeMap; + services: TimeframeMap1d; environments: TimeframeMap1d; span_destination_service_resource: TimeframeMap1d; }; diff --git a/x-pack/plugins/serverless_search/public/application/components/overview.scss b/x-pack/plugins/serverless_search/public/application/components/overview.scss index bb7992b3ac51f..72948fb99c1c4 100644 --- a/x-pack/plugins/serverless_search/public/application/components/overview.scss +++ b/x-pack/plugins/serverless_search/public/application/components/overview.scss @@ -7,37 +7,6 @@ padding-top: 0; } -.serverlessSearchFooterCardsSection { - background-color: $euiColorPrimary; - padding-top: $euiSizeXL; - padding-bottom: $euiSizeXL; -} - -.serverlessSearchFooterCard { - &--wrapper { - position: relative; - } - - &--background { - z-index: 1; - } - - &--iconWrapper { - align-items: center; - display: inlineFlex; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - justify-content: center; - padding: 20px; - z-index: 2; - } -} - -.serverlessSearchFooter { - background-color: $euiColorSuccess; - padding-top: $euiSizeXL; - padding-bottom: $euiSizeXL; +.serverlessSearchOverviewFooterSection { + background-color: transparentize($euiColorPrimary, .9); } diff --git a/x-pack/plugins/serverless_search/public/application/components/overview.test.tsx b/x-pack/plugins/serverless_search/public/application/components/overview.test.tsx index 971025125ab94..0d1cf8efa67c8 100644 --- a/x-pack/plugins/serverless_search/public/application/components/overview.test.tsx +++ b/x-pack/plugins/serverless_search/public/application/components/overview.test.tsx @@ -53,6 +53,6 @@ describe('', () => { }); test("what's next?", () => { const { getByRole } = render(); - expect(getByRole('heading', { name: "What's next?" })).toBeDefined(); + expect(getByRole('heading', { name: 'Do more with your data' })).toBeDefined(); }); }); diff --git a/x-pack/plugins/serverless_search/public/application/components/overview.tsx b/x-pack/plugins/serverless_search/public/application/components/overview.tsx index e8ef03a72a1f0..0fb599c770044 100644 --- a/x-pack/plugins/serverless_search/public/application/components/overview.tsx +++ b/x-pack/plugins/serverless_search/public/application/components/overview.tsx @@ -6,17 +6,14 @@ */ import { - EuiButton, + EuiAvatar, + EuiButtonEmpty, EuiCard, EuiFlexGroup, EuiFlexItem, - EuiImage, - EuiLink, EuiPageTemplate, - EuiSpacer, + EuiPanel, EuiText, - EuiTextColor, - EuiTitle, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { @@ -52,7 +49,6 @@ export const ElasticsearchOverview = () => { useState(javascriptDefinition); const [clientApiKey, setClientApiKey] = useState(API_KEY_PLACEHOLDER); const { application, cloud, http, userProfile, share } = useKibanaServices(); - const { navigateToApp } = application; const elasticsearchURL = useMemo(() => { return cloud?.elasticsearchUrl ?? ELASTICSEARCH_URL_PLACEHOLDER; @@ -63,7 +59,7 @@ export const ElasticsearchOverview = () => { apiKey: clientApiKey, }; - const { data } = useQuery({ + const { data: _data } = useQuery({ queryKey: ['fetchConnectors'], queryFn: () => http.fetch<{ connectors: Connector[] }>('/internal/serverless_search/connectors'), @@ -241,203 +237,149 @@ export const ElasticsearchOverview = () => { })} /> - - - - -

- - {i18n.translate('xpack.serverlessSearch.footer.title', { - defaultMessage: "What's next?", - })} - -

-
-
-
- - - - - - navigateToApp('discover')}> - {i18n.translate('xpack.serverlessSearch.footer.discoverCard.buttonText', { - defaultMessage: 'Explore data in Discover', - })} - - - - } - image={ - - } - /> - - - - - - navigateToApp('management', { path: '/ingest/ingest_pipelines' }) - } - > - {i18n.translate('xpack.serverlessSearch.footer.pipelinesCard.buttonText', { - defaultMessage: 'Configure your ingest pipelines', - })} - - - - } - image={ - - } - /> - - - + } + links={[]} + overviewPanelProps={{ color: 'transparent', hasShadow: false }} + /> +
+ + ); +}; + +const OverviewFooter = () => { + const { + application: { navigateToApp }, + cloud, + } = useKibanaServices(); + + return ( + + + + + } + titleSize="xs" + title={i18n.translate('xpack.serverlessSearch.overview.footer.discover.title', { + defaultMessage: 'Discover', + })} + description={i18n.translate( + 'xpack.serverlessSearch.overview.footer.discover.description', + { defaultMessage: - 'Search UI is a free and open source JavaScript library maintained by Elastic for the fast development of modern, engaging search experiences.', - })} - footer={ - - - - {i18n.translate('xpack.serverlessSearch.footer.searchUI.buttonText', { - defaultMessage: 'Build with Search UI', - })} - - - + 'Search and filter your data, learn how your fields are structured, and create visualizations.', } - image={ - - } - /> - - - - - - {cloud.usersAndRolesUrl && ( - - navigateToApp('discover')} + /> + + + - - )} - {cloud.billingUrl && ( - - navigateToApp('management', { path: '/ingest/ingest_pipelines' })} + /> + + + - - )} - - - - - + + + + {cloud.usersAndRolesUrl && ( + + + {i18n.translate('xpack.serverlessSearch.overview.footer.links.inviteUsers', { + defaultMessage: 'Invite more users', })} - /> - - - - + + + )} + + + {i18n.translate('xpack.serverlessSearch.overview.footer.links.community', { + defaultMessage: 'Join our community', + })} + + + + + {i18n.translate('xpack.serverlessSearch.overview.footer.links.feedback', { + defaultMessage: 'Give feedback', + })} + + + + ); }; -const FooterCardImage = ({ - iconSrc, - backgroundSrc, -}: { - iconSrc: string; - backgroundSrc: string; -}) => ( -
- - -
-); - -const FooterIcon = ({ href, imgSrc, title }: { href: string; imgSrc: string; title: string }) => ( - - - - - - - -
{title}
-
-
-
-
+const FooterButtonContainer: React.FC = ({ children }) => ( + + + + {children} + + + ); diff --git a/x-pack/plugins/serverless_search/public/assets/billing_icon.png b/x-pack/plugins/serverless_search/public/assets/billing_icon.png deleted file mode 100644 index 0e315bfb06a3d..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/billing_icon.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/community_icon.png b/x-pack/plugins/serverless_search/public/assets/community_icon.png deleted file mode 100644 index c55e85d1fb208..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/community_icon.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/discover_bg.png b/x-pack/plugins/serverless_search/public/assets/discover_bg.png deleted file mode 100644 index 87ce235b84c7d..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/discover_bg.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/discover_icon.png b/x-pack/plugins/serverless_search/public/assets/discover_icon.png deleted file mode 100644 index 7f2a809a51522..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/discover_icon.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/feedback_icon.png b/x-pack/plugins/serverless_search/public/assets/feedback_icon.png deleted file mode 100644 index 135c6b5910e9f..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/feedback_icon.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/invite_users_icon.png b/x-pack/plugins/serverless_search/public/assets/invite_users_icon.png deleted file mode 100644 index 66bc3ef70f197..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/invite_users_icon.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/searchui_bg.png b/x-pack/plugins/serverless_search/public/assets/searchui_bg.png deleted file mode 100644 index 665b331a1dde5..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/searchui_bg.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/searchui_icon.png b/x-pack/plugins/serverless_search/public/assets/searchui_icon.png deleted file mode 100644 index 9708acc45f53a..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/searchui_icon.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/transform_bg.png b/x-pack/plugins/serverless_search/public/assets/transform_bg.png deleted file mode 100644 index 209921789eb4b..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/transform_bg.png and /dev/null differ diff --git a/x-pack/plugins/serverless_search/public/assets/transform_icon.png b/x-pack/plugins/serverless_search/public/assets/transform_icon.png deleted file mode 100644 index c5980d29bda9d..0000000000000 Binary files a/x-pack/plugins/serverless_search/public/assets/transform_icon.png and /dev/null differ diff --git a/x-pack/plugins/telemetry_collection_xpack/schema/xpack_plugins.json b/x-pack/plugins/telemetry_collection_xpack/schema/xpack_plugins.json index 61ddfa8e00505..8e517ada4ddca 100644 --- a/x-pack/plugins/telemetry_collection_xpack/schema/xpack_plugins.json +++ b/x-pack/plugins/telemetry_collection_xpack/schema/xpack_plugins.json @@ -2728,76 +2728,148 @@ "services_per_agent": { "properties": { "android/java": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the android/java agent within the last day" + } }, "dotnet": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the dotnet (.Net) agent within the last day" + } }, "iOS/swift": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the iOS/swift agent within the last day" + } }, "go": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the go agent within the last day" + } }, "java": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the Java agent within the last day" + } }, "js-base": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the js-base agent within the last day" + } }, "nodejs": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the nodeJS agent within the last day" + } }, "php": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the PHH agent within the last day" + } }, "python": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the Python agent within the last day" + } }, "ruby": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the Ruby agent within the last day" + } }, "rum-js": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the rum-js agent within the last day" + } }, "otlp": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the otlp agent within the last day" + } }, "opentelemetry/cpp": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/cpp agent within the last day" + } }, "opentelemetry/dotnet": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/dotnet agent within the last day" + } }, "opentelemetry/erlang": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/erlang agent within the last day" + } }, "opentelemetry/go": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/go agent within the last day" + } }, "opentelemetry/java": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/java agent within the last day" + } }, "opentelemetry/nodejs": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/nodejs agent within the last day" + } }, "opentelemetry/php": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/php agent within the last day" + } }, "opentelemetry/python": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/python agent within the last day" + } }, "opentelemetry/ruby": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/ruby agent within the last day" + } }, "opentelemetry/rust": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/rust agent within the last day" + } }, "opentelemetry/swift": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/swift agent within the last day" + } }, "opentelemetry/webjs": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of services utilizing the opentelemetry/webjs agent within the last day" + } } } }, @@ -4220,60 +4292,96 @@ "current_implementation": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "no_observer_name": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "no_rum": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "no_rum_no_observer_name": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "only_rum": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } }, "only_rum_no_observer_name": { "properties": { "expected_metric_document_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } }, "transaction_count": { - "type": "long" + "type": "long", + "_meta": { + "description": "" + } } } } @@ -4458,10 +4566,10 @@ "services": { "properties": { "1d": { - "type": "long" - }, - "all": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of unique services within the last day" + } } } }, @@ -4644,7 +4752,10 @@ "shards": { "properties": { "total": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of shards for metric indices" + } } } }, @@ -4655,14 +4766,20 @@ "docs": { "properties": { "count": { - "type": "long" + "type": "long", + "_meta": { + "description": "Total number of metric documents overall" + } } } }, "store": { "properties": { "size_in_bytes": { - "type": "long" + "type": "long", + "_meta": { + "description": "Size of the metric indicess in byte units overall." + } } } } @@ -4679,7 +4796,7 @@ "total": { "type": "long", "_meta": { - "description": "Total number of shards overall" + "description": "Total number of shards for span and trasnaction indices" } } } @@ -4928,7 +5045,10 @@ "pod": { "properties": { "name": { - "type": "keyword" + "type": "keyword", + "_meta": { + "description": "Kuberneted pod name " + } } } } @@ -4937,7 +5057,10 @@ "container": { "properties": { "id": { - "type": "keyword" + "type": "keyword", + "_meta": { + "description": "Container id" + } } } } diff --git a/x-pack/plugins/translations/translations/fr-FR.json b/x-pack/plugins/translations/translations/fr-FR.json index e1f61483a6b20..178d5f003f81c 100644 --- a/x-pack/plugins/translations/translations/fr-FR.json +++ b/x-pack/plugins/translations/translations/fr-FR.json @@ -34673,20 +34673,6 @@ "xpack.serverlessSearch.configureClient.title": "Configurer votre client", "xpack.serverlessSearch.disabled": "Désactivé", "xpack.serverlessSearch.enabled": "Activé", - "xpack.serverlessSearch.footer.billing.title": "Facturation et utilisation", - "xpack.serverlessSearch.footer.community.title": "Rejoindre la communauté", - "xpack.serverlessSearch.footer.discoverCard.buttonText": "Explorer les données dans Discover", - "xpack.serverlessSearch.footer.discoverCard.description": "Avec Discover, vous pouvez rapidement rechercher et filtrer vos données, obtenir des informations sur la structure des champs et afficher vos résultats dans une visualisation.", - "xpack.serverlessSearch.footer.discoverCard.title": "Explorer et visualiser vos données dans Discover", - "xpack.serverlessSearch.footer.feedback.title": "Donner un retour", - "xpack.serverlessSearch.footer.inviteUsers.title": "Inviter d'autres utilisateurs", - "xpack.serverlessSearch.footer.pipelinesCard.buttonText": "Configurer vos pipelines d’ingestion", - "xpack.serverlessSearch.footer.pipelinesCard.description": "Prétraiter vos données avant leur indexation dans Elasticsearch. Supprimez des champs, extrayez des valeurs de textes ou enrichissez vos données avec des modèles de Machine Learning comme ELSER.", - "xpack.serverlessSearch.footer.pipelinesCard.title": "Transformer vos données à l’aide de pipelines", - "xpack.serverlessSearch.footer.searchUI.buttonText": "Créer avec Search UI", - "xpack.serverlessSearch.footer.searchUI.description": "L’interface utilisateur Search est une bibliothèque JavaScript libre et gratuite maintenue par Elastic pour un développement rapide d’expériences de recherche modernes et attrayantes.", - "xpack.serverlessSearch.footer.searchUI.title": "Créer une interface utilisateur avec Search UI", - "xpack.serverlessSearch.footer.title": "Et ensuite ?", "xpack.serverlessSearch.header.title": "Lancez-vous avec Elasticsearch", "xpack.serverlessSearch.invalidJsonError": "JSON non valide", "xpack.serverlessSearch.languages.cURL": "cURL", diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 0afa87b22236a..aca7c6cf736d0 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -34672,20 +34672,6 @@ "xpack.serverlessSearch.configureClient.title": "クライアントを構成", "xpack.serverlessSearch.disabled": "無効", "xpack.serverlessSearch.enabled": "有効", - "xpack.serverlessSearch.footer.billing.title": "請求と使用状況", - "xpack.serverlessSearch.footer.community.title": "コミュニティに参加", - "xpack.serverlessSearch.footer.discoverCard.buttonText": "Discoverでデータを探索", - "xpack.serverlessSearch.footer.discoverCard.description": "Discoverを使えば、データをすばやく検索してフィルタリングし、フィールドの構造に関する情報を取得し、調査結果を可視化して表示できます。", - "xpack.serverlessSearch.footer.discoverCard.title": "Discoverでデータを探索して可視化", - "xpack.serverlessSearch.footer.feedback.title": "フィードバックを作成する", - "xpack.serverlessSearch.footer.inviteUsers.title": "その他のユーザーを招待", - "xpack.serverlessSearch.footer.pipelinesCard.buttonText": "インジェストパイプラインを構成", - "xpack.serverlessSearch.footer.pipelinesCard.description": "Elasticsearchでインデックス化する前にデータを前処理します。ELSERなどの機械学習モデルを使用して、フィールドを削除したり、テキストから値を抽出したり、データを強化したりします。", - "xpack.serverlessSearch.footer.pipelinesCard.title": "パイプラインを使用してデータを変換", - "xpack.serverlessSearch.footer.searchUI.buttonText": "Search UIで構築", - "xpack.serverlessSearch.footer.searchUI.description": "Search UIはElasticが管理している無料のオープンソースJavaScriptライブラリで、モダンで魅力的な検索エクスペリエンスをすばやく開発できます。", - "xpack.serverlessSearch.footer.searchUI.title": "Search UIでユーザーインターフェースを構築", - "xpack.serverlessSearch.footer.title": "次のステップ", "xpack.serverlessSearch.header.title": "Elasticsearchをはじめよう", "xpack.serverlessSearch.invalidJsonError": "無効なJSON", "xpack.serverlessSearch.languages.cURL": "cURL", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 57172509567f9..cf5593d5334e3 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -34668,20 +34668,6 @@ "xpack.serverlessSearch.configureClient.title": "配置客户端", "xpack.serverlessSearch.disabled": "已禁用", "xpack.serverlessSearch.enabled": "已启用", - "xpack.serverlessSearch.footer.billing.title": "帐单和使用情况", - "xpack.serverlessSearch.footer.community.title": "加入社区", - "xpack.serverlessSearch.footer.discoverCard.buttonText": "在 Discover 中浏览数据", - "xpack.serverlessSearch.footer.discoverCard.description": "使用 Discover,您可以快速搜索和筛选数据,获取有关字段结构的信息,并在可视化中显示结果。", - "xpack.serverlessSearch.footer.discoverCard.title": "在 Discover 中浏览您的数据并进行可视化", - "xpack.serverlessSearch.footer.feedback.title": "反馈", - "xpack.serverlessSearch.footer.inviteUsers.title": "邀请更多用户", - "xpack.serverlessSearch.footer.pipelinesCard.buttonText": "配置采集管道", - "xpack.serverlessSearch.footer.pipelinesCard.description": "先预处理数据,然后索引到 Elasticsearch。移除字段,从文本中提取值,或使用 ELSER 等 Machine Learning 模型扩充您的数据。", - "xpack.serverlessSearch.footer.pipelinesCard.title": "使用管道转换数据", - "xpack.serverlessSearch.footer.searchUI.buttonText": "通过搜索 UI 构建", - "xpack.serverlessSearch.footer.searchUI.description": "搜索 UI 是一个由 Elastic 维护的免费开源 JavaScript 库,用于快速打造现代、富于吸引力的搜索体验。", - "xpack.serverlessSearch.footer.searchUI.title": "通过搜索 UI 构建用户界面", - "xpack.serverlessSearch.footer.title": "后续操作", "xpack.serverlessSearch.header.title": "Elasticsearch 入门", "xpack.serverlessSearch.invalidJsonError": "JSON 无效", "xpack.serverlessSearch.languages.cURL": "cURL",