新的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 *文件。
答案 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)缺乏适当的文件许可