Logstash 不将数据从外部文件写入 elasticsearch
Logstash not writing data from external file to elasticsearch
我有一个名为 testfile.txt
的示例文本文件,其中包含简单的 "Hi"。我希望此数据在 ElasticSearch
上建立索引。我 运行 在 logstash
上执行以下命令:
bin/logstash -f logstash-test.conf
配置文件内容如下:
input{
file
{
path=> "/home/abhinav/ELK/logstash/testfile.txt"
type => "test"
start_position => "beginning"
}
}
output{
elasticsearch { host => localhost
index => "test_index"
}
stdout { codec => rubydebug }
}
ElasticSearch 日志显示以下错误:
[2015-05-04 14:52:23,082][INFO ][cluster.service ] [Argo]
added
{[logstash-abhinav-HP-15-Notebook-PC-10919-4006][CPk1djqFRnO-j-DlUMJIzg][abhinav-HP-15-Notebook-PC][inet[/192.168.1.2:9301]]{client=true,
data=false},}, reason: zen-disco-receive(join from
node[[logstash-abhinav-HP-15-Notebook-PC-10919-4006][CPk1djqFRnO-j-DlUMJIzg][abhinav-HP-15-Notebook-PC][inet[/192.168.1.2:9301]]{client=true,
data=false}])
我尝试了以下操作:
尝试使用简单的标准输入(标准输入)到 ES n 标准输出。有效。
如果您重复使用同一个文件进行测试,您将 运行 陷入 "sincedb" 问题 -- 请参阅 How to force Logstash to reparse a file?
您需要将 sincedb_path => "/dev/null"
添加到您的文件输入中。一般生产场景不需要,但是测试的时候需要。
我找到了解决我的问题的方法,并且还找到了我们可以检查的东西,如果 logstash 和 ES 没有 working/communicating 正确。 :
- 确保正确安装了 ES 和 Logstash
- 安装的版本相互兼容
- 即使在测试时,也请按照 Alcanzar 先生在上述评论中的建议,尝试为不同的测试用例制作不同的 Logstash conf 文件。
您也可以参考以下链接,以获得有关此问题的帮助:
Cannot load index to elasticsearch from external file, using logstash
我有一个名为 testfile.txt
的示例文本文件,其中包含简单的 "Hi"。我希望此数据在 ElasticSearch
上建立索引。我 运行 在 logstash
上执行以下命令:
bin/logstash -f logstash-test.conf
配置文件内容如下:
input{
file
{
path=> "/home/abhinav/ELK/logstash/testfile.txt"
type => "test"
start_position => "beginning"
}
}
output{
elasticsearch { host => localhost
index => "test_index"
}
stdout { codec => rubydebug }
}
ElasticSearch 日志显示以下错误:
[2015-05-04 14:52:23,082][INFO ][cluster.service ] [Argo] added {[logstash-abhinav-HP-15-Notebook-PC-10919-4006][CPk1djqFRnO-j-DlUMJIzg][abhinav-HP-15-Notebook-PC][inet[/192.168.1.2:9301]]{client=true, data=false},}, reason: zen-disco-receive(join from node[[logstash-abhinav-HP-15-Notebook-PC-10919-4006][CPk1djqFRnO-j-DlUMJIzg][abhinav-HP-15-Notebook-PC][inet[/192.168.1.2:9301]]{client=true, data=false}])
我尝试了以下操作:
尝试使用简单的标准输入(标准输入)到 ES n 标准输出。有效。
如果您重复使用同一个文件进行测试,您将 运行 陷入 "sincedb" 问题 -- 请参阅 How to force Logstash to reparse a file?
您需要将 sincedb_path => "/dev/null"
添加到您的文件输入中。一般生产场景不需要,但是测试的时候需要。
我找到了解决我的问题的方法,并且还找到了我们可以检查的东西,如果 logstash 和 ES 没有 working/communicating 正确。 :
- 确保正确安装了 ES 和 Logstash
- 安装的版本相互兼容
- 即使在测试时,也请按照 Alcanzar 先生在上述评论中的建议,尝试为不同的测试用例制作不同的 Logstash conf 文件。
您也可以参考以下链接,以获得有关此问题的帮助:
Cannot load index to elasticsearch from external file, using logstash