知识库

启用 GC 日志

垃圾收集是什么?为何要启用它?

垃圾收集事件是 Java 应用程序(即:neo4j-server)的完全暂停。

在 debug.log 中,它会被标识为 stop-the-world 事件。

例如

如果您注意到它们的问题,例如暂停次数过多、暂停时间过长、暂停导致集群重新选举等,您可以启用 GC 日志记录,以便更轻松地与监控解析器集成。

请注意以下关于 GC 日志记录的事项

  • 数据库重启时会清除 GC 日志文件

  • 它们对于分析应用程序性能至关重要

  • 它会增加少量开销

  • 您可能需要考虑在您的生产环境中启用此选项

启用 GC 日志记录

如产品文档所述,在3.5更高版本中,您可以取消注释以下行以启用它

#dbms.logs.gc.enabled=true

保存文件并重启您的服务器。

GC 日志位置

日志文件将写入 logs 目录,具体位置如此处所述,并命名为 gc.log.<#>

附加选项

您可以查阅我们的操作手册(3.5更高版本),了解更多设置,例如轮换文件的数量或大小。

dbms.gc.log.options 变更

由于在 4.0.x 中从 Java 8 升级到 11,dbms.gc.log.options 有所不同。

我们建议保留此注释,以便 Neo4j 在两个版本中都能以有效设置启动。

您可以在下表中查看这些差异。

表 1. 3.5.x 与 4.0.x 之间的差异

Neo4j 版本

配置值

3.5.x

#dbms.logs.gc.options=-XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintPromotionFailure -XX:+PrintTenuringDistribution

4.0.x 及更高版本

#dbms.logs.gc.options=-Xlog:gc*,safepoint,age*=trace

© . All rights reserved.