diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/append.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/append.tsx
index 23425297f3420..52750529684b0 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/append.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/append.tsx
@@ -28,13 +28,13 @@ const fieldsConfig: FieldsConfig = {
defaultMessage: 'Value',
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.appendForm.valueFieldHelpText', {
- defaultMessage: 'The value to be appended by this processor.',
+ defaultMessage: 'Values to append.',
}),
validations: [
{
validator: emptyField(
i18n.translate('xpack.ingestPipelines.pipelineEditor.appendForm.valueRequiredError', {
- defaultMessage: 'A value to set is required.',
+ defaultMessage: 'A value is required.',
})
),
},
@@ -47,7 +47,7 @@ export const Append: FunctionComponent = () => {
<>
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/bytes.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/bytes.tsx
index a76e1a6f3ce9a..6633f9e5de94b 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/bytes.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/bytes.tsx
@@ -17,7 +17,10 @@ export const Bytes: FunctionComponent = () => {
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/circle.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/circle.tsx
index 599d2fdbfd413..70df18acfd0a9 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/circle.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/circle.tsx
@@ -5,7 +5,9 @@
*/
import React, { FunctionComponent } from 'react';
+import { FormattedMessage } from '@kbn/i18n/react';
import { i18n } from '@kbn/i18n';
+import { EuiCode } from '@elastic/eui';
import {
FIELD_TYPES,
@@ -34,12 +36,15 @@ const fieldsConfig: FieldsConfig = {
defaultMessage: 'Error distance',
}
),
- helpText: i18n.translate(
- 'xpack.ingestPipelines.pipelineEditor.circleForm.errorDistanceHelpText',
- {
- defaultMessage:
- 'The difference between the resulting inscribed distance from center to side and the circle’s radius (measured in meters for geo_shape, unit-less for shape).',
- }
+ helpText: () => (
+ {'geo_shape'},
+ shape: {'shape'},
+ }}
+ />
),
validations: [
{
@@ -66,7 +71,7 @@ const fieldsConfig: FieldsConfig = {
}),
helpText: i18n.translate(
'xpack.ingestPipelines.pipelineEditor.circleForm.shapeTypeFieldHelpText',
- { defaultMessage: 'Which field mapping type is to be used.' }
+ { defaultMessage: 'Field mapping type to use when processing the output polygon.' }
),
validations: [
{
@@ -86,7 +91,7 @@ export const Circle: FunctionComponent = () => {
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/common_processor_fields.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/common_processor_fields.tsx
index e1048d627f66c..1777cac2a5615 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/common_processor_fields.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/common_processor_fields.tsx
@@ -40,7 +40,7 @@ const ifConfig: FieldConfig = {
defaultMessage: 'Condition (optional)',
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.commonFields.ifFieldHelpText', {
- defaultMessage: 'Conditionally execute this processor.',
+ defaultMessage: 'Conditionally run this processor.',
}),
type: FIELD_TYPES.TEXT,
};
@@ -50,7 +50,7 @@ const tagConfig: FieldConfig = {
defaultMessage: 'Tag (optional)',
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.commonFields.tagFieldHelpText', {
- defaultMessage: 'An identifier for this processor. Useful for debugging and metrics.',
+ defaultMessage: 'Identifier for the processor. Useful for debugging and metrics.',
}),
type: FIELD_TYPES.TEXT,
};
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/processor_type_field.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/processor_type_field.tsx
index e4ad90f61af0a..3264923442886 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/processor_type_field.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/common_fields/processor_type_field.tsx
@@ -5,7 +5,7 @@
*/
import { EuiComboBox, EuiComboBoxOptionOption, EuiFormRow } from '@elastic/eui';
import { i18n } from '@kbn/i18n';
-import React, { FunctionComponent } from 'react';
+import React, { FunctionComponent, ReactNode } from 'react';
import { flow } from 'fp-ts/lib/function';
import { map } from 'fp-ts/lib/Array';
@@ -68,13 +68,18 @@ export const ProcessorTypeField: FunctionComponent = ({ initialType }) =>
config={typeConfig} defaultValue={initialType} path="type">
{(typeField) => {
let selectedOptions: ProcessorTypeAndLabel[];
+ let description: string | ReactNode = '';
+
if (typeField.value?.length) {
const type = typeField.value;
- const descriptor = getProcessorDescriptor(type);
- selectedOptions = descriptor
- ? [{ label: descriptor.label, value: type }]
- : // If there is no label for this processor type, just use the type as the label
- [{ label: type, value: type }];
+ const processorDescriptor = getProcessorDescriptor(type);
+ if (processorDescriptor) {
+ description = processorDescriptor.description || '';
+ selectedOptions = [{ label: processorDescriptor.label, value: type }];
+ } else {
+ // If there is no label for this processor type, just use the type as the label
+ selectedOptions = [{ label: type, value: type }];
+ }
} else {
selectedOptions = [];
}
@@ -102,9 +107,7 @@ export const ProcessorTypeField: FunctionComponent = ({ initialType }) =>
{
@@ -115,14 +115,7 @@ export const Convert: FunctionComponent = () => {
path="fields.type"
/>
-
+
>
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/csv.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/csv.tsx
index 835177dd861d5..471efaa56dea0 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/csv.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/csv.tsx
@@ -36,7 +36,7 @@ const isStringLengthOne: ValidationFunc = ({ value }) => {
message: i18n.translate(
'xpack.ingestPipelines.pipelineEditor.convertForm.separatorLengthError',
{
- defaultMessage: 'A separator value must be 1 character.',
+ defaultMessage: 'Must be a single character.',
}
),
}
@@ -52,7 +52,7 @@ const fieldsConfig: FieldsConfig = {
defaultMessage: 'Target fields',
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.csvForm.targetFieldsHelpText', {
- defaultMessage: 'The array of fields to assign extracted values to.',
+ defaultMessage: 'Output fields. Extracted values are mapped to these fields.',
}),
validations: [
{
@@ -83,7 +83,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{','} }}
/>
),
@@ -102,7 +102,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{'"'} }}
/>
),
@@ -115,7 +115,7 @@ const fieldsConfig: FieldsConfig = {
defaultMessage: 'Trim',
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.csvForm.trimFieldHelpText', {
- defaultMessage: 'Trim whitespaces in unquoted fields',
+ defaultMessage: 'Remove whitespaces in unquoted CSV data.',
}),
},
empty_value: {
@@ -127,7 +127,7 @@ const fieldsConfig: FieldsConfig = {
'xpack.ingestPipelines.pipelineEditor.convertForm.emptyValueFieldHelpText',
{
defaultMessage:
- 'Value used to fill empty fields, empty fields will be skipped if this is not provided.',
+ 'Used to fill empty fields. If no value is provided, empty fields are skipped.',
}
),
},
@@ -138,7 +138,7 @@ export const CSV: FunctionComponent = () => {
<>
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date.tsx
index 7e3f8e0d7cd70..8d6d88d2b0662 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date.tsx
@@ -33,7 +33,7 @@ const fieldsConfig: FieldsConfig = {
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.dateForm.formatsFieldHelpText', {
defaultMessage:
- 'An array of the expected date formats. Can be a java time pattern or one of the following formats: ISO8601, UNIX, UNIX_MS, or TAI64N.',
+ 'Expected date formats. Provided formats are applied sequentially. Accepts a Java time pattern, ISO8601, UNIX, UNIX_MS, or TAI64N formats.',
}),
validations: [
{
@@ -59,7 +59,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{'UTC'} }}
/>
),
@@ -73,7 +73,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{'ENGLISH'} }}
/>
),
@@ -89,7 +89,7 @@ export const DateProcessor: FunctionComponent = () => {
@@ -99,7 +99,7 @@ export const DateProcessor: FunctionComponent = () => {
helpText={
{'@timestamp'},
}}
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date_index_name.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date_index_name.tsx
index 8cbc064c1c90c..73fa54429734f 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date_index_name.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/date_index_name.tsx
@@ -36,7 +36,8 @@ const fieldsConfig: FieldsConfig = {
helpText: i18n.translate(
'xpack.ingestPipelines.pipelineEditor.dateIndexNameForm.dateRoundingFieldHelpText',
{
- defaultMessage: 'How to round the date when formatting the date into the index name.',
+ defaultMessage:
+ 'Time period used to round the date when formatting the date into the index name.',
}
),
validations: [
@@ -64,7 +65,7 @@ const fieldsConfig: FieldsConfig = {
),
helpText: i18n.translate(
'xpack.ingestPipelines.pipelineEditor.dateIndexNameForm.indexNamePrefixFieldHelpText',
- { defaultMessage: 'A prefix of the index name to be prepended before the printed date.' }
+ { defaultMessage: 'Prefix to add before the printed date in the index name.' }
),
},
index_name_format: {
@@ -79,7 +80,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{'yyyy-MM-dd'} }}
/>
),
@@ -99,7 +100,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{"yyyy-MM-dd'T'HH:mm:ss.SSSXX"} }}
/>
),
@@ -116,7 +117,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{'UTC'} }}
/>
),
@@ -133,7 +134,7 @@ const fieldsConfig: FieldsConfig = {
helpText: (
{'ENGLISH'} }}
/>
),
@@ -149,7 +150,7 @@ export const DateIndexName: FunctionComponent = () => {
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dissect.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dissect.tsx
index 344855304e4fd..51bc54c5b372c 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dissect.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dissect.tsx
@@ -5,7 +5,7 @@
*/
import React, { FunctionComponent } from 'react';
-import { EuiCode } from '@elastic/eui';
+import { EuiCode, EuiLink } from '@elastic/eui';
import { i18n } from '@kbn/i18n';
import { FormattedMessage } from '@kbn/i18n/react';
import { TextEditor } from '../field_components';
@@ -16,6 +16,7 @@ import {
fieldValidators,
UseField,
Field,
+ useKibana,
} from '../../../../../../shared_imports';
import { FieldNameField } from './common_fields/field_name_field';
@@ -24,55 +25,79 @@ import { EDITOR_PX_HEIGHT } from './shared';
const { emptyField } = fieldValidators;
-const fieldsConfig: Record = {
- /* Required field config */
- pattern: {
- type: FIELD_TYPES.TEXT,
- label: i18n.translate('xpack.ingestPipelines.pipelineEditor.dissectForm.patternFieldLabel', {
- defaultMessage: 'Pattern',
- }),
- helpText: i18n.translate(
- 'xpack.ingestPipelines.pipelineEditor.dissectForm.patternFieldHelpText',
- {
- defaultMessage: 'The pattern to apply to the field.',
- }
- ),
- validations: [
- {
- validator: emptyField(
- i18n.translate('xpack.ingestPipelines.pipelineEditor.dissectForm.patternRequiredError', {
- defaultMessage: 'A pattern value is required.',
- })
- ),
- },
- ],
- },
- /* Optional field config */
- append_separator: {
- type: FIELD_TYPES.TEXT,
- label: i18n.translate(
- 'xpack.ingestPipelines.pipelineEditor.dissectForm.appendSeparatorparaotrFieldLabel',
- {
- defaultMessage: 'Append separator (optional)',
- }
- ),
- helpText: (
- {'""'} }}
- />
- ),
- },
+const getFieldsConfig = (esDocUrl: string): Record => {
+ return {
+ /* Required field config */
+ pattern: {
+ type: FIELD_TYPES.TEXT,
+ label: i18n.translate('xpack.ingestPipelines.pipelineEditor.dissectForm.patternFieldLabel', {
+ defaultMessage: 'Pattern',
+ }),
+ helpText: (
+
+ {i18n.translate(
+ 'xpack.ingestPipelines.pipelineEditor.dissectForm.patternFieldHelpText.dissectProcessorLink',
+ {
+ defaultMessage: 'key modifier',
+ }
+ )}
+
+ ),
+ }}
+ />
+ ),
+ validations: [
+ {
+ validator: emptyField(
+ i18n.translate(
+ 'xpack.ingestPipelines.pipelineEditor.dissectForm.patternRequiredError',
+ {
+ defaultMessage: 'A pattern value is required.',
+ }
+ )
+ ),
+ },
+ ],
+ },
+ /* Optional field config */
+ append_separator: {
+ type: FIELD_TYPES.TEXT,
+ label: i18n.translate(
+ 'xpack.ingestPipelines.pipelineEditor.dissectForm.appendSeparatorparaotrFieldLabel',
+ {
+ defaultMessage: 'Append separator (optional)',
+ }
+ ),
+ helpText: (
+ {'""'} }}
+ />
+ ),
+ },
+ };
};
export const Dissect: FunctionComponent = () => {
+ const { services } = useKibana();
+ const fieldsConfig = getFieldsConfig(services.documentation.getEsDocsBasePath());
+
return (
<>
diff --git a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dot_expander.tsx b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dot_expander.tsx
index 4e50c61ac930c..4f2aa2915fdec 100644
--- a/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dot_expander.tsx
+++ b/x-pack/plugins/ingest_pipelines/public/application/components/pipeline_processors_editor/components/manage_processor_form/processors/dot_expander.tsx
@@ -18,7 +18,8 @@ const fieldsConfig: Record = {
defaultMessage: 'Path',
}),
helpText: i18n.translate('xpack.ingestPipelines.pipelineEditor.dotExpanderForm.pathHelpText', {
- defaultMessage: 'Only required if the field to expand is part another object field.',
+ defaultMessage:
+ 'Output field. Only required if the field to expand is part another object field.',
}),
},
};
@@ -29,7 +30,7 @@ export const DotExpander: FunctionComponent = () => {
;
@@ -58,6 +62,10 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.append', {
defaultMessage: 'Append',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.append', {
+ defaultMessage:
+ "Appends values to a field's array. If the field contains a single value, the processor first converts it to an array. If the field doesn't exist, the processor creates an array containing the appended values.",
+ }),
},
bytes: {
FieldsComponent: Bytes,
@@ -65,6 +73,10 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.bytes', {
defaultMessage: 'Bytes',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.bytes', {
+ defaultMessage:
+ 'Converts digital storage units to bytes. For example, 1KB becomes 1024 bytes.',
+ }),
},
circle: {
FieldsComponent: Circle,
@@ -72,6 +84,9 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.circle', {
defaultMessage: 'Circle',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.circle', {
+ defaultMessage: 'Converts a circle definition into an approximate polygon.',
+ }),
},
convert: {
FieldsComponent: Convert,
@@ -79,6 +94,10 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.convert', {
defaultMessage: 'Convert',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.convert', {
+ defaultMessage:
+ 'Converts a field to a different data type. For example, you can convert a string to an long.',
+ }),
},
csv: {
FieldsComponent: CSV,
@@ -86,6 +105,9 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.csv', {
defaultMessage: 'CSV',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.csv', {
+ defaultMessage: 'Extracts fields values from CSV data.',
+ }),
},
date: {
FieldsComponent: DateProcessor,
@@ -93,6 +115,9 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.date', {
defaultMessage: 'Date',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.date', {
+ defaultMessage: 'Converts a date to a document timestamp.',
+ }),
},
date_index_name: {
FieldsComponent: DateIndexName,
@@ -100,6 +125,13 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.dateIndexName', {
defaultMessage: 'Date index name',
}),
+ description: () => (
+ {'my-index-yyyy-MM-dd'} }}
+ />
+ ),
},
dissect: {
FieldsComponent: Dissect,
@@ -107,6 +139,9 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.dissect', {
defaultMessage: 'Dissect',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.dissect', {
+ defaultMessage: 'Uses dissect patterns to extract matches from a field.',
+ }),
},
dot_expander: {
FieldsComponent: DotExpander,
@@ -114,6 +149,10 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.dotExpander', {
defaultMessage: 'Dot expander',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.dotExpander', {
+ defaultMessage:
+ 'Expands a field containing dot notation into an object field. The object field is then accessible by other processors in the pipeline.',
+ }),
},
drop: {
FieldsComponent: Drop,
@@ -121,6 +160,10 @@ export const mapProcessorTypeToDescriptor: MapProcessorTypeToDescriptor = {
label: i18n.translate('xpack.ingestPipelines.processors.label.drop', {
defaultMessage: 'Drop',
}),
+ description: i18n.translate('xpack.ingestPipelines.processors.description.drop', {
+ defaultMessage:
+ 'Drops documents without returning an error. Used to only index documents that meet specified conditions.',
+ }),
},
enrich: {
FieldsComponent: Enrich,