MySQL表有191000行。当我尝试下面它运行一段时间并显示此错误:
logstash/bin/logstash -f /home/vatsa/logs/conts-out.conf
java.lang.OutOfMemoryError:Java堆空间 将堆转储到/home/vatsa/logstash/heapdump.hprof 间隔异常冲洗缓冲区! {:error =>" Java堆空间",:class =>" Java :: JavaLang :: OutOfMemoryError",:level =>:warn} 错误:您的应用程序使用的内存超过了1G的安全限制。 指定-J-Xmx #### m以增加它(#### =大小以MB为单位)。 为完整的OutOfMemoryError堆栈跟踪指定-w
我不明白错误。如何解决这个问题。 提前谢谢。
答案 0 :(得分:1)
您可以尝试启用查询分页。这将限制从MySQL检索的元素数量。相应的设置如下:
input {
jdbc {
...
jdbc_paging_enabled => true
jdbc_page_size => 100000
...
}
}
来自jdbc_paging_enabled的
这将导致sql语句被分解为多个查询。每个查询都将使用限制和偏移来共同检索完整的结果集。