Find the structure of a text field
Find the structure of a text field in an Elasticsearch index.
This API provides a starting point for extracting further information from log messages already ingested into Elasticsearch.
For example, if you have ingested data into a very simple index that has just @timestamp
and message fields, you can use this API to see what common structure exists in the message field.
The response from the API contains:
- Sample messages.
- Statistics that reveal the most common values for all fields detected within the text and basic numeric statistics for numeric fields.
- Information about the structure of the text, which is useful when you write ingest configurations to index it or similarly formatted text.
- Appropriate mappings for an Elasticsearch index, which you could use to ingest the text.
All this information can be calculated by the structure finder with no guidance. However, you can optionally override some of the decisions about the text structure by specifying one or more query parameters.
If the structure finder produces unexpected results, specify the explain
query parameter and an explanation will appear in the response.
It helps determine why the returned structure was chosen.
Query parameters
-
column_names
string If
format
is set todelimited
, you can specify the column names in a comma-separated list. If this parameter is not specified, the structure finder uses the column names from the header row of the text. If the text does not have a header row, columns are named "column1", "column2", "column3", for example. -
delimiter
string If you have set
format
todelimited
, you can specify the character used to delimit the values in each row. Only a single character is supported; the delimiter cannot have multiple characters. By default, the API considers the following possibilities: comma, tab, semi-colon, and pipe (|
). In this default scenario, all rows must have the same number of fields for the delimited format to be detected. If you specify a delimiter, up to 10% of the rows can have a different number of columns than the first row. -
documents_to_sample
number The number of documents to include in the structural analysis. The minimum value is 2.
-
ecs_compatibility
string The mode of compatibility with ECS compliant Grok patterns. Use this parameter to specify whether to use ECS Grok patterns instead of legacy ones when the structure finder creates a Grok pattern. This setting primarily has an impact when a whole message Grok pattern such as
%{CATALINALOG}
matches the input. If the structure finder identifies a common structure but has no idea of the meaning then generic field names such aspath
,ipaddress
,field1
, andfield2
are used in thegrok_pattern
output. The intention in that situation is that a user who knows the meanings will rename the fields before using them.Values are
disabled
orv1
. -
explain
boolean If
true
, the response includes a field namedexplanation
, which is an array of strings that indicate how the structure finder produced its result. -
field
string Required The field that should be analyzed.
-
format
string The high level structure of the text. By default, the API chooses the format. In this default scenario, all rows must have the same number of fields for a delimited format to be detected. If the format is set to delimited and the delimiter is not set, however, the API tolerates up to 5% of rows that have a different number of columns than the first row.
Values are
delimited
,ndjson
,semi_structured_text
, orxml
. -
grok_pattern
string If the format is
semi_structured_text
, you can specify a Grok pattern that is used to extract fields from every message in the text. The name of the timestamp field in the Grok pattern must match what is specified in thetimestamp_field
parameter. If that parameter is not specified, the name of the timestamp field in the Grok pattern must match "timestamp". Ifgrok_pattern
is not specified, the structure finder creates a Grok pattern. -
index
string Required The name of the index that contains the analyzed field.
-
quote
string If the format is
delimited
, you can specify the character used to quote the values in each row if they contain newlines or the delimiter character. Only a single character is supported. If this parameter is not specified, the default value is a double quote ("
). If your delimited text format does not use quoting, a workaround is to set this argument to a character that does not appear anywhere in the sample. -
should_trim_fields
boolean If the format is
delimited
, you can specify whether values between delimiters should have whitespace trimmed from them. If this parameter is not specified and the delimiter is pipe (|
), the default value is true. Otherwise, the default value isfalse
. -
timeout
string The maximum amount of time that the structure analysis can take. If the analysis is still running when the timeout expires, it will be stopped.
-
timestamp_field
string The name of the field that contains the primary timestamp of each record in the text. In particular, if the text was ingested into an index, this is the field that would be used to populate the
@timestamp
field.If the format is
semi_structured_text
, this field must match the name of the appropriate extraction in thegrok_pattern
. Therefore, for semi-structured text, it is best not to specify this parameter unlessgrok_pattern
is also specified.For structured text, if you specify this parameter, the field must exist within the text.
If this parameter is not specified, the structure finder makes a decision about which field (if any) is the primary timestamp field. For structured text, it is not compulsory to have a timestamp in the text.
-
timestamp_format
string The Java time format of the timestamp field in the text. Only a subset of Java time format letter groups are supported:
a
d
dd
EEE
EEEE
H
HH
h
M
MM
MMM
MMMM
mm
ss
XX
XXX
yy
yyyy
zzz
Additionally
S
letter groups (fractional seconds) of length one to nine are supported providing they occur afterss
and are separated from thess
by a period (.
), comma (,
), or colon (:
). Spacing and punctuation is also permitted with the exception a question mark (?
), newline, and carriage return, together with literal text enclosed in single quotes. For example,MM/dd HH.mm.ss,SSSSSS 'in' yyyy
is a valid override format.One valuable use case for this parameter is when the format is semi-structured text, there are multiple timestamp formats in the text, and you know which format corresponds to the primary timestamp, but you do not want to specify the full
grok_pattern
. Another is when the timestamp format is one that the structure finder does not consider by default.If this parameter is not specified, the structure finder chooses the best format from a built-in set.
If the special value
null
is specified, the structure finder will not look for a primary timestamp in the text. When the format is semi-structured text, this will result in the structure finder treating the text as single-line messages.
Responses
-
200 application/json
Hide response attributes Show response attributes object
-
charset
string Required -
ecs_compatibility
string Values are
disabled
orv1
. -
field_stats
object Required Hide field_stats attribute Show field_stats attribute object
-
*
object Additional properties Hide * attributes Show * attributes object
-
count
number Required -
cardinality
number Required -
top_hits
array[object] Required -
mean_value
number -
median_value
number -
max_value
number -
min_value
number -
earliest
string -
latest
string
-
-
-
format
string Required Values are
delimited
,ndjson
,semi_structured_text
, orxml
. -
grok_pattern
string -
java_timestamp_formats
array[string] -
joda_timestamp_formats
array[string] -
ingest_pipeline
object Required Hide ingest_pipeline attributes Show ingest_pipeline attributes object
-
description
string Description of the ingest pipeline.
-
version
number -
processors
array[object] Required Processors used to perform transformations on documents before indexing. Processors run sequentially in the order specified.
Hide processors attributes Show processors attributes object
-
append
object Hide append attributes Show append attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
allow_duplicates
boolean If
false
, the processor does not append values already present in the field.
-
-
attachment
object Hide attachment attributes Show attachment attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
and field does not exist, the processor quietly exits without modifying the document. -
indexed_chars
number The number of chars being used for extraction to prevent huge fields. Use
-1
for no limit. -
indexed_chars_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
properties
array[string] Array of properties to select to be stored. Can be
content
,title
,name
,author
,keywords
,date
,content_type
,content_length
,language
. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
remove_binary
boolean If true, the binary field will be removed from the document
-
resource_name
string Field containing the name of the resource to decode. If specified, the processor passes this resource name to the underlying Tika library to enable Resource Name Based Detection.
-
-
bytes
object Hide bytes attributes Show bytes attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
circle
object Hide circle attributes Show circle attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
error_distance
number Required The difference between the resulting inscribed distance from center to side and the circle’s radius (measured in meters for
geo_shape
, unit-less forshape
). -
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
shape_type
string Required Values are
geo_shape
orshape
. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
community_id
object Hide community_id attributes Show community_id attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
source_ip
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
source_port
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
destination_ip
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
destination_port
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
iana_number
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
icmp_type
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
icmp_code
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
transport
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
seed
number Seed for the community ID hash. Must be between 0 and 65535 (inclusive). The seed can prevent hash collisions between network domains, such as a staging and production network that use the same addressing scheme.
-
ignore_missing
boolean If true and any required fields are missing, the processor quietly exits without modifying the document.
-
-
convert
object Hide convert attributes Show convert attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
type
string Required Values are
integer
,long
,double
,float
,boolean
,ip
,string
, orauto
.
-
-
csv
object Hide csv attributes Show csv attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
empty_value
object Value used to fill empty fields. Empty fields are skipped if this is not provided. An empty field is one with no value (2 consecutive separators) or empty quotes (
""
). -
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
quote
string Quote used in CSV, has to be single character string.
-
separator
string Separator used in CSV, has to be single character string.
-
target_fields
string | array[string] Required -
trim
boolean Trim whitespaces in unquoted fields.
-
-
date
object Hide date attributes Show date attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
formats
array[string] Required 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.
-
locale
string The locale to use when parsing the date, relevant when parsing month names or week days. Supports template snippets.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
timezone
string The timezone to use when parsing the date. Supports template snippets.
-
output_format
string The format to use when writing the date to target_field. Must be a valid java time pattern.
-
-
date_index_name
object Hide date_index_name attributes Show date_index_name attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
date_formats
array[string] Required An array of the expected date formats for parsing dates / timestamps in the document being preprocessed. Can be a java time pattern or one of the following formats: ISO8601, UNIX, UNIX_MS, or TAI64N.
-
date_rounding
string Required How to round the date when formatting the date into the index name. Valid values are:
y
(year),M
(month),w
(week),d
(day),h
(hour),m
(minute) ands
(second). Supports template snippets. -
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
index_name_format
string The format to be used when printing the parsed date into the index name. A valid java time pattern is expected here. Supports template snippets.
-
index_name_prefix
string A prefix of the index name to be prepended before the printed date. Supports template snippets.
-
locale
string The locale to use when parsing the date from the document being preprocessed, relevant when parsing month names or week days.
-
timezone
string The timezone to use when parsing the date and when date math index supports resolves expressions into concrete index names.
-
-
dissect
object Hide dissect attributes Show dissect attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
append_separator
string The character(s) that separate the appended fields.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
pattern
string Required The pattern to apply to the field.
-
-
dot_expander
object Hide dot_expander attributes Show dot_expander attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
override
boolean Controls the behavior when there is already an existing nested object that conflicts with the expanded field. When
false
, the processor will merge conflicts by combining the old and the new values into an array. Whentrue
, the value from the expanded field will overwrite the existing value. -
path
string The field that contains the field to expand. Only required if the field to expand is part another object field, because the
field
option can only understand leaf fields.
-
-
drop
object Hide drop attributes Show drop attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
-
enrich
object Hide enrich attributes Show enrich attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
max_matches
number The maximum number of matched documents to include under the configured target field. The
target_field
will be turned into a json array ifmax_matches
is higher than 1, otherwisetarget_field
will become a json object. In order to avoid documents getting too large, the maximum allowed value is 128. -
override
boolean If processor will update fields with pre-existing non-null-valued field. When set to
false
, such fields will not be touched. -
policy_name
string Required The name of the enrich policy to use.
-
shape_relation
string Values are
intersects
,disjoint
,within
, orcontains
. -
target_field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
fail
object Hide fail attributes Show fail attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
message
string Required The error message thrown by the processor. Supports template snippets.
-
-
fingerprint
object Hide fingerprint attributes Show fingerprint attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
fields
string | array[string] Required -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
salt
string Salt value for the hash function.
-
method
string Values are
MD5
,SHA-1
,SHA-256
,SHA-512
, orMurmurHash3
. -
ignore_missing
boolean If true, the processor ignores any missing fields. If all fields are missing, the processor silently exits without modifying the document.
-
-
foreach
object Hide foreach attributes Show foreach attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
, the processor silently exits without changing the document if thefield
isnull
or missing. -
processor
object Required
-
-
ip_location
object Hide ip_location attributes Show ip_location attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
database_file
string The database filename referring to a database the module ships with (GeoLite2-City.mmdb, GeoLite2-Country.mmdb, or GeoLite2-ASN.mmdb) or a custom database in the ingest-geoip config directory.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
first_only
boolean If
true
, only the first found IP location data will be returned, even if the field contains an array. -
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
properties
array[string] Controls what properties are added to the
target_field
based on the IP location lookup. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
If
true
(and ifingest.geoip.downloader.eager.download
isfalse
), the missing database is downloaded when the pipeline is created. Else, the download is triggered by when the pipeline is used as thedefault_pipeline
orfinal_pipeline
in an index.
-
-
geo_grid
object Hide geo_grid attributes Show geo_grid attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required The field to interpret as a geo-tile.= The field format is determined by the
tile_type
. -
tile_type
string Required Values are
geotile
,geohex
, orgeohash
. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
parent_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
children_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
non_children_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
precision_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
target_format
string Values are
geojson
orwkt
.
-
-
geoip
object Hide geoip attributes Show geoip attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
database_file
string The database filename referring to a database the module ships with (GeoLite2-City.mmdb, GeoLite2-Country.mmdb, or GeoLite2-ASN.mmdb) or a custom database in the ingest-geoip config directory.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
first_only
boolean If
true
, only the first found geoip data will be returned, even if the field contains an array. -
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
properties
array[string] Controls what properties are added to the
target_field
based on the geoip lookup. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
If
true
(and ifingest.geoip.downloader.eager.download
isfalse
), the missing database is downloaded when the pipeline is created. Else, the download is triggered by when the pipeline is used as thedefault_pipeline
orfinal_pipeline
in an index.
-
-
grok
object Hide grok attributes Show grok attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
ecs_compatibility
string Must be disabled or v1. If v1, the processor uses patterns with Elastic Common Schema (ECS) field names.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
pattern_definitions
object A map of pattern-name and pattern tuples defining custom patterns to be used by the current processor. Patterns matching existing names will override the pre-existing definition.
-
patterns
array[string] Required An ordered list of grok expression to match and extract named captures with. Returns on the first expression in the list that matches.
-
trace_match
boolean When
true
,_ingest._grok_match_index
will be inserted into your matched document’s metadata with the index into the pattern found inpatterns
that matched.
-
-
gsub
object Hide gsub attributes Show gsub attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
pattern
string Required The pattern to be replaced.
-
replacement
string Required The string to replace the matching patterns with.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
html_strip
object Hide html_strip attributes Show html_strip attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document, -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
inference
object Hide inference attributes Show inference attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
model_id
string Required -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
field_map
object Maps the document field names to the known field names of the model. This mapping takes precedence over any default mappings provided in the model configuration.
-
inference_config
object
-
-
join
object Hide join attributes Show join attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
separator
string Required The separator character.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
json
object Hide json attributes Show json attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
add_to_root
boolean Flag that forces the parsed JSON to be added at the top level of the document.
target_field
must not be set when this option is chosen. -
Values are
replace
ormerge
. -
allow_duplicate_keys
boolean When set to
true
, the JSON parser will not fail if the JSON contains duplicate keys. Instead, the last encountered value for any duplicate key wins. -
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
kv
object Hide kv attributes Show kv attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
exclude_keys
array[string] List of keys to exclude from document.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
field_split
string Required Regex pattern to use for splitting key-value pairs.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
include_keys
array[string] List of keys to filter and insert into document. Defaults to including all keys.
-
prefix
string Prefix to be added to extracted keys.
-
strip_brackets
boolean If
true
. strip brackets()
,<>
,[]
as well as quotes'
and"
from extracted values. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
trim_key
string String of characters to trim from extracted keys.
-
trim_value
string String of characters to trim from extracted values.
-
value_split
string Required Regex pattern to use for splitting the key from the value within a key-value pair.
-
-
lowercase
object Hide lowercase attributes Show lowercase attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
network_direction
object Hide network_direction attributes Show network_direction attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
source_ip
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
destination_ip
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
internal_networks
array[string] List of internal networks. Supports IPv4 and IPv6 addresses and ranges in CIDR notation. Also supports the named ranges listed below. These may be constructed with template snippets. Must specify only one of internal_networks or internal_networks_field.
-
internal_networks_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If true and any required fields are missing, the processor quietly exits without modifying the document.
-
-
pipeline
object Hide pipeline attributes Show pipeline attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
name
string Required -
ignore_missing_pipeline
boolean Whether to ignore missing pipelines instead of failing.
-
-
redact
object Hide redact attributes Show redact attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
patterns
array[string] Required A list of grok expressions to match and redact named captures with
-
pattern_definitions
object -
prefix
string Start a redacted section with this token
-
suffix
string End a redacted section with this token
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
skip_if_unlicensed
boolean If
true
and the current license does not support running redact processors, then the processor quietly exits without modifying the document -
trace_redact
boolean If
true
then ingest metadata_ingest._redact._is_redacted
is set totrue
if the document has been redacted
-
-
registered_domain
object Hide registered_domain attributes Show registered_domain attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If true and any required fields are missing, the processor quietly exits without modifying the document.
-
-
remove
object Hide remove attributes Show remove attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string | array[string] Required -
keep
string | array[string] -
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document.
-
-
rename
object Hide rename attributes Show rename attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
target_field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
reroute
object Hide reroute attributes Show reroute attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
destination
string A static value for the target. Can’t be set when the dataset or namespace option is set.
-
-
script
object Hide script attributes Show script attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
id
string -
lang
string Script language.
-
params
object Object containing parameters for the script.
-
source
string Inline script. If no
id
is specified, this parameter is required.
-
-
set
object Hide set attributes Show set attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
copy_from
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_empty_value
boolean If
true
andvalue
is a template snippet that evaluates tonull
or the empty string, the processor quietly exits without modifying the document. -
media_type
string The media type for encoding
value
. Applies only when value is a template snippet. Must be one ofapplication/json
,text/plain
, orapplication/x-www-form-urlencoded
. -
override
boolean If
true
processor will update fields with pre-existing non-null-valued field. When set tofalse
, such fields will not be touched. -
value
object The value to be set for the field. Supports template snippets. May specify only one of
value
orcopy_from
.
-
-
set_security_user
object Hide set_security_user attributes Show set_security_user attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
properties
array[string] Controls what user related properties are added to the field.
-
-
sort
object Hide sort attributes Show sort attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
order
string Values are
asc
ordesc
. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
split
object Hide split attributes Show split attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
preserve_trailing
boolean Preserves empty trailing fields, if any.
-
separator
string Required A regex which matches the separator, for example,
,
or\s+
. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
terminate
object Hide terminate attributes Show terminate attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
-
trim
object Hide trim attributes Show trim attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
uppercase
object Hide uppercase attributes Show uppercase attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
urldecode
object Hide urldecode attributes Show urldecode attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist or isnull
, the processor quietly exits without modifying the document. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
uri_parts
object Hide uri_parts attributes Show uri_parts attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
keep_original
boolean If
true
, the processor copies the unparsed URI to<target_field>.original
. -
remove_if_successful
boolean If
true
, the processor removes thefield
after parsing the URI string. If parsing fails, the processor does not remove thefield
. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
-
user_agent
object Hide user_agent attributes Show user_agent attributes object
-
description
string Description of the processor. Useful for describing the purpose of the processor or its configuration.
-
if
string Conditionally execute the processor.
-
ignore_failure
boolean Ignore failures for the processor.
-
on_failure
array[object] Handle failures for the processor.
-
tag
string Identifier for the processor. Useful for debugging and metrics.
-
field
string Required Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
ignore_missing
boolean If
true
andfield
does not exist, the processor quietly exits without modifying the document. -
regex_file
string The name of the file in the
config/ingest-user-agent
directory containing the regular expressions for parsing the user agent string. Both the directory and the file have to be created before starting Elasticsearch. If not specified, ingest-user-agent will use theregexes.yaml
from uap-core it ships with. -
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
properties
array[string] Controls what properties are added to
target_field
.Values are
name
,os
,device
,original
, orversion
. -
extract_device_type
boolean Beta Extracts device type from the user agent string on a best-effort basis.
-
-
-
-
mappings
object Required Hide mappings attributes Show mappings attributes object
-
all_field
object Hide all_field attributes Show all_field attributes object
-
analyzer
string Required -
enabled
boolean Required -
omit_norms
boolean Required -
search_analyzer
string Required -
similarity
string Required -
store
boolean Required -
store_term_vector_offsets
boolean Required -
store_term_vector_payloads
boolean Required -
store_term_vector_positions
boolean Required -
store_term_vectors
boolean Required
-
-
date_detection
boolean -
dynamic
string Values are
strict
,runtime
,true
, orfalse
. -
dynamic_date_formats
array[string] -
dynamic_templates
array[object] -
_field_names
object Hide _field_names attribute Show _field_names attribute object
-
enabled
boolean Required
-
-
index_field
object Hide index_field attribute Show index_field attribute object
-
enabled
boolean Required
-
-
_meta
object Hide _meta attribute Show _meta attribute object
-
*
object Additional properties
-
-
numeric_detection
boolean -
properties
object -
_routing
object Hide _routing attribute Show _routing attribute object
-
required
boolean Required
-
-
_size
object Hide _size attribute Show _size attribute object
-
enabled
boolean Required
-
-
_source
object -
runtime
object Hide runtime attribute Show runtime attribute object
-
*
object Additional properties Hide * attributes Show * attributes object
-
fields
object For type
composite
-
fetch_fields
array[object] For type
lookup
-
format
string A custom format for
date
type runtime fields. -
input_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
target_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
target_index
string -
script
object Hide script attributes Show script attributes object
-
source
string The script source.
-
id
string -
params
object Specifies any named parameters that are passed into the script as variables. Use parameters instead of hard-coded values to decrease compile time.
Hide params attribute Show params attribute object
-
*
object Additional properties
-
-
options
object Hide options attribute Show options attribute object
-
*
string Additional properties
-
-
-
type
string Required Values are
boolean
,composite
,date
,double
,geo_point
,geo_shape
,ip
,keyword
,long
, orlookup
.
-
-
-
enabled
boolean -
subobjects
boolean -
_data_stream_timestamp
object Hide _data_stream_timestamp attribute Show _data_stream_timestamp attribute object
-
enabled
boolean Required
-
-
-
multiline_start_pattern
string -
need_client_timezone
boolean Required -
num_lines_analyzed
number Required -
num_messages_analyzed
number Required -
sample_start
string Required -
timestamp_field
string Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.
-
curl \
--request GET http://api.example.com/_text_structure/find_field_structure?field=string&index=string \
--header "Authorization: $API_KEY"
{
"charset": "string",
"ecs_compatibility": "disabled",
"field_stats": {
"additionalProperty1": {
"count": 42.0,
"cardinality": 42.0,
"top_hits": [
{
"count": 42.0,
"value": {}
}
],
"mean_value": 42.0,
"median_value": 42.0,
"max_value": 42.0,
"min_value": 42.0,
"earliest": "string",
"latest": "string"
},
"additionalProperty2": {
"count": 42.0,
"cardinality": 42.0,
"top_hits": [
{
"count": 42.0,
"value": {}
}
],
"mean_value": 42.0,
"median_value": 42.0,
"max_value": 42.0,
"min_value": 42.0,
"earliest": "string",
"latest": "string"
}
},
"format": "delimited",
"grok_pattern": "string",
"java_timestamp_formats": [
"string"
],
"joda_timestamp_formats": [
"string"
],
"ingest_pipeline": {
"description": "string",
"version": 42.0,
"processors": [
{
"": {
"description": "string",
"if": "string",
"ignore_failure": true,
"on_failure": [
{}
],
"tag": "string",
"field": "string",
"ignore_missing": true,
"regex_file": "string",
"target_field": "string",
"properties": [
"name"
],
"extract_device_type": true
}
}
]
},
"mappings": {
"all_field": {
"analyzer": "string",
"enabled": true,
"omit_norms": true,
"search_analyzer": "string",
"similarity": "string",
"store": true,
"store_term_vector_offsets": true,
"store_term_vector_payloads": true,
"store_term_vector_positions": true,
"store_term_vectors": true
},
"date_detection": true,
"dynamic": "strict",
"dynamic_date_formats": [
"string"
],
"dynamic_templates": [
{}
],
"_field_names": {
"enabled": true
},
"index_field": {
"enabled": true
},
"_meta": {
"additionalProperty1": {},
"additionalProperty2": {}
},
"numeric_detection": true,
"properties": {},
"_routing": {
"required": true
},
"_size": {
"enabled": true
},
"_source": {
"compress": true,
"compress_threshold": "string",
"enabled": true,
"excludes": [
"string"
],
"includes": [
"string"
],
"mode": "disabled"
},
"runtime": {
"additionalProperty1": {
"fields": {
"additionalProperty1": {
"type": "boolean"
},
"additionalProperty2": {
"type": "boolean"
}
},
"fetch_fields": [
{
"field": "string",
"format": "string"
}
],
"format": "string",
"input_field": "string",
"target_field": "string",
"target_index": "string",
"script": {
"source": "string",
"id": "string",
"params": {
"additionalProperty1": {},
"additionalProperty2": {}
},
"": "painless",
"options": {
"additionalProperty1": "string",
"additionalProperty2": "string"
}
},
"type": "boolean"
},
"additionalProperty2": {
"fields": {
"additionalProperty1": {
"type": "boolean"
},
"additionalProperty2": {
"type": "boolean"
}
},
"fetch_fields": [
{
"field": "string",
"format": "string"
}
],
"format": "string",
"input_field": "string",
"target_field": "string",
"target_index": "string",
"script": {
"source": "string",
"id": "string",
"params": {
"additionalProperty1": {},
"additionalProperty2": {}
},
"": "painless",
"options": {
"additionalProperty1": "string",
"additionalProperty2": "string"
}
},
"type": "boolean"
}
},
"enabled": true,
"subobjects": true,
"_data_stream_timestamp": {
"enabled": true
}
},
"multiline_start_pattern": "string",
"need_client_timezone": true,
"num_lines_analyzed": 42.0,
"num_messages_analyzed": 42.0,
"sample_start": "string",
"timestamp_field": "string"
}