文件输入不适用于logstash(.kibana索引)

时间:2015-03-18 14:59:43

标签: logstash

新的logstash并且处理日志文件时遇到问题。

我在带有IIS 7.5的Windows Server 2008 R2上运行它。 ELK版本: ElasticSearch v 1.4.4 Logstash v 1.4.2 Kibana 4.0.1

我可以让简单的cmd行输入工作。 Logstash.conf:

input { stdin {} }
output {
  elasticsearch { host => localhost }
  stdout { codec => rubydebug }
}

然后使用:

从../bin运行logstash
.\logstash agent -f logstash.conf

无论我输入什么,都会被添加到logstash-2015-03-18文档中。

但是,我希望logstash能够处理来自我自己的应用程序的日志文件,这些文件将被复制(直到我让ELK 100%工作)到E:/ tmp / logs

所以我将logstash.conf更改为:

input { 
  file { path => "E:\tmp\logs\*.log" }
}

我已使用nssm.exe配置logstash服务,如下所示:

Path: E:\LogStash files\logstash-1.4.2\logstash-1.4.2\bin\run.bat
Startup dir. : E:\LogStash files\logstash-1.4.2\logstash-1.4.2\bin
Dependencies: elasticsearch-service-x64

run.bat是

logstash.bat agent -f logstash.conf

那么,问题是什么? 当我运行服务时,我没有在ElasticSearch中看到新索引(我使用DHC Chrome插件)。只有索引是.kibana(我认为这是为了Kibana本身?!)。

上面有什么问题或者我可以将文件处理输出到要调试的文件吗?

此致 克雷格

PS。我删除了.sincedb *文件。

1 个答案:

答案 0 :(得分:1)

在Windows中处理日志文件:

1)使用设置:

input {
  file {
   path => "D:/ELK STACK/<...>.log" 
   start_position => beginning // to prevent tailing
   sincedb_path => "/dev/null" // set sincedb path
  }
}

2)检查您是否提供了正确的文件路径

3)如果仍然无法从文件中读取,请尝试

logstash agent -vv -f test.conf (--v highest verbosity level)

如果您收到_discover_file_glob错误,则表示您的路径不正确。

也可能是以下问题:

1)logstash假设每个事件都是一行。所以它在每一行的末尾寻找“\ n”。所以在文件末尾添加一个空行。

2)缺乏适当的文件许可