Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›Ingest pipelines ›Ingest processor reference

Обработчик частей URI

Разбирает строку универсального идентификатора ресурса (URI) и извлекает её компоненты в виде объекта. Этот объект URI содержит свойства для домена URI, пути, фрагмента, порта, запроса, схемы, информации о пользователе, имени пользователя и пароля.

Таблица 49. Параметры частей URI

Имя Обязательно По умолчанию Описание

field

да

-

Поле, содержащее строку URI.

target_field

нет

url

Поле вывода для объекта URI.

keep_original

нет

true

Если true, процессор копирует необработанный URI в <target_field>.original.

remove_if_successful

нет

false

Если true, процессор удаляет field после разбора строки URI. Если разбор завершается ошибкой, процессор не удаляет field.

ignore_missing

нет

false

Если true и field не существует, процессор без каких-либо изменений молча завершает работу.

description

нет

-

Описание процессора. Полезно для описания цели процессора или его конфигурации.

if

нет

-

Условное выполнение процессора. См. Условное выполнение процессора.

ignore_failure

нет

false

Игнорировать ошибки для процессора. См. Обработка ошибок конвейера.

on_failure

нет

-

Обработка ошибок для процессора. См. Обработка ошибок конвейера.

tag

нет

-

Идентификатор процессора. Полезно для отладки и метрик.

Вот пример определения процессора URI parts:

{
  "description" : "...",
  "processors" : [
    {
      "uri_parts": {
        "field": "input_field",
        "target_field": "url",
        "keep_original": true,
        "remove_if_successful": false
      }
    }
  ]
}

Когда вышеуказанный процессор выполняется на следующем документе:

{
  "_source": {
    "input_field": "http://myusername:mypassword@www.example.com:80/foo.gif?key1=val1&key2=val2#fragment"
  }
}

Он генерирует такой результат:

"_source" : {
  "input_field" : "http://myusername:mypassword@www.example.com:80/foo.gif?key1=val1&key2=val2#fragment",
  "url" : {
    "path" : "/foo.gif",
    "fragment" : "fragment",
    "extension" : "gif",
    "password" : "mypassword",
    "original" : "http://myusername:mypassword@www.example.com:80/foo.gif?key1=val1&key2=val2#fragment",
    "scheme" : "http",
    "port" : 80,
    "user_info" : "myusername:mypassword",
    "domain" : "www.example.com",
    "query" : "key1=val1&key2=val2",
    "username" : "myusername"
  }
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/uri-parts-processor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API