# OnError与OnOutOfMemoryError检查

原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/current/_onerror_and_onoutofmemoryerror_checks.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/_onerror_and_onoutofmemoryerror_checks.html)

译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=9406726](http://www.apache.wiki/pages/viewpage.action?pageId=9406726)

贡献者 : [阿叩](/display/~luanqing)，[ApacheCN](/display/~apachecn)，[Apache中文网](/display/~apachechina)

## OnError与OnOutOfMemoryError检查

启用JVM的`OnError`与`OnOutOfMemoryError`选项可以在JVM运行任意指令发生致命错误（OnError）或内存泄露（OnOutOfMemoryError）时记录重要信息。但是默认情况下Elasticsearch的系统调用过滤检查是开启的且它们会阻止`froking`动作。因此，使用`OnError`与`OnOutOfMemoryError`和系统调用过滤是不兼容的。在开启了系统调用检查时，`OnError`与`OnOutOfMemoryError`的检查会阻止Elasticsearch启动。这个检查总是会执行。要想通过此检查，你可以升级java的8u92版本并使用JVM参数`ExitOnOutOfMemoryError`参数来替代它们。但是它并没有全量的包含`OnError`与`OnOutOfMemoryError`的功能，随意的`froking`在启用seccomp之后将不再支持。