Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Руководство [8.17] ›REST API ›API Logstash

API создания или обновления конвейера Logstash

Справочник по новым API

Для получения самых последних данных об API, обратитесь к API Logstash.

Этот API создаёт или обновляет конвейер Logstash, используемый для централизованного управления конвейерами Logstash.

Запрос

PUT _logstash/pipeline/<pipeline_id>

Предварительные условия

  • Если в Elasticsearch включены функции безопасности, у вас должна быть manage_logstash_pipelines привилегия кластера, чтобы использовать этот API.

Описание

Создаёт конвейер Logstash. Если указанный конвейер существует, он заменяется.

Параметры пути

<pipeline_id>
(Обязательно, строка) Идентификатор конвейера.

Тело запроса

description
(Необязательно, строка) Описание конвейера. Это описание не используется Elasticsearch или Logstash.
last_modified
(Обязательно, строка) Дата последнего обновления конвейера. Должен быть в формате yyyy-MM-dd'T'HH:mm:ss.SSSZZ strict_date_time.
pipeline
(Обязательно, строка) Настройка конвейера. Для поддерживаемого синтаксиса обратитесь к документации конфигурации Logstash.
pipeline_metadata
(Обязательно, объект) Дополнительные метаданные о конвейере. Может содержать любые данные. Эти метаданные не генерируются и не используются Elasticsearch или Logstash.
pipeline_settings
(Обязательно, объект) Настройки конвейера. Поддерживает только плоские ключи в точечной нотации. Для поддерживаемых настроек обратитесь к документации настроек Logstash.
username
(Обязательно, строка) Пользователь, который последний раз обновил конвейер.

Примеры

Следующий пример создаёт новый конвейер с именем my_pipeline:

resp = client.logstash.put_pipeline(
    id="my_pipeline",
    pipeline={
        "description": "Sample pipeline for illustration purposes",
        "last_modified": "2021-01-02T02:50:51.250Z",
        "pipeline_metadata": {
            "type": "logstash_pipeline",
            "version": "1"
        },
        "username": "elastic",
        "pipeline": "input {}\n filter { grok {} }\n output {}",
        "pipeline_settings": {
            "pipeline.workers": 1,
            "pipeline.batch.size": 125,
            "pipeline.batch.delay": 50,
            "queue.type": "memory",
            "queue.max_bytes": "1gb",
            "queue.checkpoint.writes": 1024
        }
    },
)
print(resp)
response = client.logstash.put_pipeline(
  id: 'my_pipeline',
  body: {
    description: 'Sample pipeline for illustration purposes',
    last_modified: '2021-01-02T02:50:51.250Z',
    pipeline_metadata: {
      type: 'logstash_pipeline',
      version: '1'
    },
    username: 'elastic',
    pipeline: "input {}\n filter { grok {} }\n output {}",
    pipeline_settings: {
      'pipeline.workers' => 1,
      'pipeline.batch.size' => 125,
      'pipeline.batch.delay' => 50,
      'queue.type' => 'memory',
      'queue.max_bytes' => '1gb',
      'queue.checkpoint.writes' => 1024
    }
  }
)
puts response
const response = await client.logstash.putPipeline({
  id: "my_pipeline",
  pipeline: {
    description: "Sample pipeline for illustration purposes",
    last_modified: "2021-01-02T02:50:51.250Z",
    pipeline_metadata: {
      type: "logstash_pipeline",
      version: "1",
    },
    username: "elastic",
    pipeline: "input {}\n filter { grok {} }\n output {}",
    pipeline_settings: {
      "pipeline.workers": 1,
      "pipeline.batch.size": 125,
      "pipeline.batch.delay": 50,
      "queue.type": "memory",
      "queue.max_bytes": "1gb",
      "queue.checkpoint.writes": 1024,
    },
  },
});
console.log(response);
PUT _logstash/pipeline/my_pipeline
{
  "description": "Sample pipeline for illustration purposes",
  "last_modified": "2021-01-02T02:50:51.250Z",
  "pipeline_metadata": {
    "type": "logstash_pipeline",
    "version": "1"
  },
  "username": "elastic",
  "pipeline": "input {}\n filter { grok {} }\n output {}",
  "pipeline_settings": {
    "pipeline.workers": 1,
    "pipeline.batch.size": 125,
    "pipeline.batch.delay": 50,
    "queue.type": "memory",
    "queue.max_bytes": "1gb",
    "queue.checkpoint.writes": 1024
  }
}

Если запрос выполнен успешно, вы получите пустой ответ с соответствующим кодом состояния.

© 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/logstash-api-put-pipeline.html

Spec-Zone.ru

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