我已经建立了一个带有 redis 架构的 logstash 来处理我的日志。我组织它的方式是:
logstash ---> redis ---> logstash ---> elasticsearch
但是出现的问题是解析了近125万条日志后抛出了java异常。
在我的logstash.err
日志文件中,异常显示为
Exception in thread "<file" java.lang.UnsupportedOperationException
at java.lang.Thread.stop(Thread.java:869)
at org.jruby.RubyThread.exceptionRaised(RubyThread.java:1221)
at org.jruby.internal.runtime.RubyRunnable.run(RubyRunnable.java:112)
at java.lang.Thread.run(Thread.java:745)
我认为这个异常可能是因为logstash无法打开/关闭文件而引发的。那么我能做些什么来纠正这个错误呢?为我的第一个 logstash 服务器设置输入配置以发送日志的方式是:
input {
file {
start_position => "beginning"
path => [
"/var/logstash_logs/child1/nginx/*log*",
"/var/logstash_logs/child2/nginx/*log*",
"/var/logstash_logs/child3/nginx/*log*"
]
}
}
而输出的发送方式是这样的:
output {
redis {
host => "X.X.X.X"
key => "logstash"
data_type => "list"
}
}
安装redis的logstash服务器的日志中没有错误。