无法从本地服务器发送日志

时间:2014-03-24 13:51:42

标签: elasticsearch logstash

我遇到了与logstash和elasticsearch相关的问题。

当我尝试通过logstash从远程计算机向我的elasticsearch服务器发送日志时,没有问题,索引已创建。 但是当我尝试通过logstash从托管elasticsearch的服务器发送日志时,没有创建索引,没有任何反应。

从logstash登录显示logstash看到了我正在尝试发送的日志的whitout问题。

我无法弄清楚为什么会这样。 任何的想法 ? 非常感谢

ES版本:1.0.1 Logstash版本:1.4.0

logstash配置文件:

input { 
      file {
    type => "dmprocess"
    path => "/logs/mysql.log*"
  }    
}

filter{



    grok{
        type => "dmprocess"
        match => [ "message", "%{DATESTAMP:processTimeStamp} %{GREEDYDATA} Extraction done for %{WORD:alias} took %{NUMBER:milliseconds:int} ms for %{NUMBER:rows:int} rows",
                   "message", "%{DATESTAMP:processTimeStamp} %{GREEDYDATA} : %{GREEDYDATA} %{WORD:alias} took %{NUMBER:milliseconds:int} ms"]
    }

        date{
        match => [ "processTimeStamp", "YY/MM/dd HH:mm:ss"]

    }



}

output { 

    elasticsearch { 
    host=>"devmonxde"
    cluster => "devcluster"

    }

}

更新 似乎我无法通过input:file将日志从linux主机发送到elasticsearch实例(远程或本地)。 虽然我能够通过输入发送数据到ES:stdin。所以没有连接/端口问题。

如果我使用相同的配置运行logstash,但是从Windows主机运行它就像魅力一样。

Windows上的默认行为似乎是“开始”。这看起来与文档http://logstash.net/docs/1.4.0/inputs/file#start_position

相矛盾

似乎logstash不会导入旧日志,即使文件输入的start_position =“begin”也是如此。

问题是我的旧日志未导入ES。 我正在为此创建另一篇文章。 谢谢 Old logs are not imported into ES by logstash

1 个答案:

答案 0 :(得分:0)

我的第一次尝试是将主机更改为localhost,127.0.0.1或外部IP地址,以确保主机名不是问题。

另一件事是添加一个输出来将所有内容记录到控制台,方便地检查消息是否进入并以正确的方式解析。