【问题标题】:How to forward the logs if all the logs of a file is in single line?如果文件的所有日志都在单行中,如何转发日志?
【发布时间】:2017-05-20 13:13:35
【问题描述】:

我在将日志从 rsyslog 转发到 logstash 时遇到了一些麻烦,我编写了这个 grok 过滤器,但它不起作用。也许问题是,服务器正在将所有日志写在一行中。

(?<AUDIt_LOG>[(0-9A-U]{0,4})(?<DATE>[0-9A-F]{8})%{INT:Log_Code}(?<Type>[a-zA-Z]{0,5})%{NOTSPACE:ServiceName} %{SPACE} %{NOTSPACE:Host} %{SPACE} %{WORD:Bank}&&%{WORD:BANK2}%{SPACE} %{WORD:USERNAME}

请点击此链接获取示例日志。 https://drive.google.com/open?id=0Bx8yrs4bWFFjTFlpTkJhTl9SMHM

【问题讨论】:

    标签: elasticsearch logging logstash logstash-grok filebeat


    【解决方案1】:

    您肯定应该每行都有每个日志。您也可以使用 Grok 调试器来确保正确解析日志。

    Grok debugger on Heroku

    【讨论】:

    • 有什么办法可以破坏下一行的日志吗?(使用 bash 脚本或其他任何东西)
    • 这是服务器的责任(每行写一个日志或使用明确定义的分隔符而不是“\n”)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-03
    • 2016-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-05
    相关资源
    最近更新 更多