# Проблема при разборе лога

**URL:** <https://discuss.elastic.co/t/topic/220106>\
**Category:** Вопросы на русском языке\
**Created:** [February 20, 2020, 7:05am UTC](https://discuss.elastic.co/t/topic/220106 "2020-02-20T07:05:00Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![ImMushroom](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/immushroom/32/62992_2.png) [@ImMushroom](https://discuss.elastic.co/u/ImMushroom)\
**Post date:** [February 20, 2020, 7:05am UTC](https://discuss.elastic.co/t/topic/220106/1 "2020-02-20T07:05:00Z")

</div>

Добрый день!

Пытаюсь загнать в ELK технологический журнал от 1С, но при разборе лога не могу занести кириллическое значение в индекс.

Есть сообщение вида

> 49:38.102017-17,CALL,1,p:processName=ut,Context=ОбщийМодуль.Вызов : ОбщийМодуль.прОбщегоНазначенияСервер.Модуль.ПолучитьТекстОповещенийПользователю,MemoryPeak=927719,InBytes=0,OutBytes=0,CpuTime=0

filebeat.yml

> filebeat.inputs:
> 
> - type: log  
> enabled: true  
> paths:
> - C:\1C\calls\rphost\*\*.log  
> fields:  
> type: onec\_call  
> fields\_under\_root: true  
> encoding: utf-8

Создал конфиг для Logstash

> input {  
> stdin {  
> codec =\> json { charset=\>"UTF-8" }  
> }  
> }  
> filter {  
> if [type] == "onec\_call" {  
> grok {  
> match =\> { "message" =\> ["%{NUMBER:num\_min}:%{BASE10NUM:num\_sec}-%{WORD:duration},%{WORD:event1c},%{WORD:level\_event},p:processName=%{WORD:process1c},Context=%{WORD:context}"]}  
> }  
> }  
> }  
> output {  
> stdout { codec =\> rubydebug }  
> elasticsearch {  
> index =\> "onectj-%{+yyyy.MM.dd}"  
> }  
> }

При этом, запись помечается тэгами **beats\_input\_codec\_plain\_applied, \_grokparsefailure** и, соответственно, не разбирается.

Если из **filter** убрать **Context=%{WORD:context}** (то, что и содержит кириллическое значение), всё нормально разбирается.

Пробовал в input указать **codec =\> plain { charset=\>"UTF-8" }** , вообще удалить отовсюду указания кодировки, ничего не помогает. В чём может быть проблема?

---

<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:** [February 20, 2020, 7:49am UTC](https://discuss.elastic.co/t/topic/220106/2 "2020-02-20T07:49:53Z")

</div>

А вы уверены, что у вас лог в UTF-8, а не, скажем, в какой-нибудь 1251?

---

<div class="post-metadata">

**Author:** ![ImMushroom](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/immushroom/32/62992_2.png) [@ImMushroom](https://discuss.elastic.co/u/ImMushroom)\
**Post date:** [February 20, 2020, 7:52am UTC](https://discuss.elastic.co/t/topic/220106/3 "2020-02-20T07:52:01Z")

</div>

Ну, как минимум, Notepad++ распознаёт его как UTF-8 BOM

---

<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:** [February 20, 2020, 12:10pm UTC](https://discuss.elastic.co/t/topic/220106/4 "2020-02-20T12:10:33Z")

</div>

А если hexdump-ом на байтики посмотреть?

---

<div class="post-metadata">

**Author:** ![ImMushroom](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/immushroom/32/62992_2.png) [@ImMushroom](https://discuss.elastic.co/u/ImMushroom)\
**Post date:** [February 20, 2020, 1:53pm UTC](https://discuss.elastic.co/t/topic/220106/5 "2020-02-20T13:53:13Z")

</div>

С hexdump не работал, но в WinHex кодовая страница Unicode UTF-8

---

<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:** [February 21, 2020, 3:02am UTC](https://discuss.elastic.co/t/topic/220106/6 "2020-02-21T03:02:30Z")

</div>

А какая ошибка в логах filebeat?

---

<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:** [February 21, 2020, 3:02am UTC](https://discuss.elastic.co/t/topic/220106/7 "2020-02-21T03:02:34Z")

</div>

А какая ошибка в логах filebeat?

---

<div class="post-metadata">

**Author:** ![ImMushroom](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/immushroom/32/62992_2.png) [@ImMushroom](https://discuss.elastic.co/u/ImMushroom)\
**Post date:** [February 21, 2020, 6:13am UTC](https://discuss.elastic.co/t/topic/220106/8 "2020-02-21T06:13:51Z")

</div>

Иногда появляется ошибка:

> ```
> |2020-02-19T22:06:28.205+0300|ERROR|logstash/async.go:256|Failed to publish events caused by: write tcp 192.168.0.125:57297->192.168.0.204:5044: wsasend: An existing connection was forcibly closed by the remote host.|
> |2020-02-19T22:06:29.568+0300|ERROR|pipeline/output.go:121|Failed to publish events: write tcp 192.168.0.125:57297->192.168.0.204:5044: wsasend: An existing connection was forcibly closed by the remote host.|
> 
> ```

Но не похоже на то, что это проблема с разбором

В логе logstash ошибок нет

---

<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:** [February 21, 2020, 8:35am UTC](https://discuss.elastic.co/t/topic/220106/9 "2020-02-21T08:35:20Z")

</div>

Похоже, что я не там начал копать. Не в кодировке проблема. Проблема, похоже, в том, что `%{WORD:event1c}`, похоже, не работает с киррилицей. Я бы, наверное, воспользовался csv филтром, а потом потом доработал отдельные поля гроком по необходимости.

---

<div class="post-metadata">

**Author:** ![ImMushroom](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/immushroom/32/62992_2.png) [@ImMushroom](https://discuss.elastic.co/u/ImMushroom)\
**Post date:** [February 25, 2020, 2:49pm UTC](https://discuss.elastic.co/t/topic/220106/10 "2020-02-25T14:49:52Z")

</div>

csv не такой удобный, мне кажется. Но да, через него всё работает, спасибо!

---

<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:** [March 24, 2020, 2:49pm UTC](https://discuss.elastic.co/t/topic/220106/11 "2020-03-24T14:49:53Z")

</div>

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