# Logstash 400 error: Could not index event to Elasticsearch

**URL:** <https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723>\
**Category:** Вопросы на русском языке\
**Created:** [April 20, 2019, 5:50pm UTC](https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723 "2019-04-20T17:50:35Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![ep4sh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ep4sh/32/40099_2.png) [@ep4sh](https://discuss.elastic.co/u/ep4sh)\
**Post date:** [April 20, 2019, 5:50pm UTC](https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723/1 "2019-04-20T17:50:35Z")

</div>

Схема отправки логов следующая:  
[filebeat =\> logstash1] =\> logstash2 =\> elasticsearch

Суть такая. В документе уже опредено поле [host] с типом `keyword`, затем мы переконфигурили Logstash1 для парсинга логов, которые присылает filebeat, добавив в него:

```auto
mutate {
remove_field => ["tags", "msg", "time", "host"]
}

```

На logstash2 начали сыпаться ошибки:

```auto
Could not index event to Elasticsearch. {:status=>400, :action=>["index" ......

```

Верно ли я понимаю, что ошибка возникает из-за того что маппинг уже есть, а из-за удаленного поля не удаётся понять как проиндексировать документ (прилетает какой-то объект вместо `keyword`?

Log message:  
[https://paste.ubuntu.com/p/r5rqZwf4P8/](https://paste.ubuntu.com/p/r5rqZwf4P8/)

Mapping:  
[https://paste.ubuntu.com/p/ThKgNS2PkN/](https://paste.ubuntu.com/p/ThKgNS2PkN/)

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 22, 2019, 7:50am UTC](https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723/2 "2019-04-22T07:50:00Z")

</div>

> [@ep4sh](#):
>
> Верно ли я понимаю, что ошибка возникает из-за того что маппинг уже есть, а из-за удаленного поля не удаётся понять как проиндексировать документ (прилетает какой-то объект вместо `keyword` ?

Скорее всего - да. Но если добавить [stdout output](https://www.elastic.co/guide/en/logstash/current/plugins-outputs-stdout.html) то можно будет узнать точно. Может быть, это даже вот это - [Can't get text on a START OBJECT (please improve error handling for key=\>{} case) · Issue #41372 · elastic/elasticsearch · GitHub](https://github.com/elastic/elasticsearch/issues/41372)

---

<div class="post-metadata">

**Author:** ![ep4sh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ep4sh/32/40099_2.png) [@ep4sh](https://discuss.elastic.co/u/ep4sh)\
**Post date:** [April 22, 2019, 4:06pm UTC](https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723/3 "2019-04-22T16:06:10Z")

</div>

Спасибо, Игорь, я отловил:  
`"host":{"name":"HOST-01"},`  
Но как же получется, что LS не удалил это поле?..... Мистика?)

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 23, 2019, 1:11pm UTC](https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723/4 "2019-04-23T13:11:47Z")

</div>

Да, я попытался воспроизвести проблему вот так:

`data.json`:

```auto
{"host":{"name":"HOST-01"}, "foo": "bar"}
{"host":{"name":"HOST-01"}, "foo": "baz"}

```

`config/test.conf`:

```auto
input {
  stdin {
    codec => json
  }
}

filter {
  mutate {
    remove_field => ["tags", "msg", "time", "hosts"]
  }
}

output {
  stdout {
  }
}

```

запускаю

```auto
$ bin/logstash -f config/test.conf < data.json

```

получаю

```auto
{
    "@timestamp" => 2019-04-23T13:10:52.781Z,
      "@version" => "1",
           "foo" => "baz"
}
{
    "@timestamp" => 2019-04-23T13:10:52.762Z,
      "@version" => "1",
           "foo" => "bar"
}

```

Думаю, что чего-то в Вашем описании проблемы не хватает или я что-то в нем пропустил.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [May 21, 2019, 1:11pm UTC](https://discuss.elastic.co/t/logstash-400-error-could-not-index-event-to-elasticsearch/177723/5 "2019-05-21T13:11:53Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
