2013-05-13 2 views
0

У меня есть следующий конфигурационный файл. Но когда я запускаю это, я получаю временную метку в терминале, но журнал не отправляется в ElasticSearch.Фильтр даты в Logstash не работает

Вот файл конфигурации:

input { 
stdin { 
    type => "stdin-type" 
    } 
} 
filter { 

    grok { 
    type => "stdin-type" 
    patterns_dir=>["./patterns"] 
    pattern => "%{PARSE_ERROR}" 
    add_tag=>"%{type1},%{type2},%{slave},ERR_SYSTEM" 
    } 


mutate 
{ 
    type=>"stdin-type" 
    replace => ["@message", "%{message}" ] 
replace =>["@timestamp","2013-05-09T05:19:16.876Z"] 

} 


} 
output { 
    stdout { debug => true debug_format => "json"} 
    elasticsearch 
{ 
} 
} 

При удалении замены строки, журнал получает погружено. Где я иду не так?

ответ

0

Запустите logstash с подробными флагами, а затем проверьте журнал регистрации журналов для любого вывода. В подробном режиме процесс logstash обычно подтверждает, было ли сообщение отправлено в ES или почему оно не было.

Ваша конфигурация выглядит чистой ... если флагов verbose не дает вам никакого значимого результата, тогда вы должны проверить свою настройку ES.

0

Попробуйте выполнить вторую замену во втором кодовом блоке с мутацией.

mutate 
{ 
    type=>"stdin-type" 
    replace => ["@message", "%{message}" ] 
} 
mutate 
{ 
    type=>"stdin-type" 
    replace =>["@timestamp","2013-05-09T05:19:16.876Z"] 

} 
Смежные вопросы