重要指标
为了确保您的应用程序平稳运行,您应该监控
-
**服务器负载**——托管 Neo4j 的机器上的负载。
-
**Neo4j 负载**——Neo4j 上的负载。
-
**集群健康状况**——确保集群按预期工作。
-
Neo4j 实例的**工作负载**。
建议阅读 性能 部分,以更好地了解指标。 |
服务器负载指标
监控硬件资源显示了运行 Neo4j 的服务器上的负载。
您可以使用诸如 collectd 守护程序或 Linux 上的 `systemd` 之类的实用程序来收集有关系统的信息。这些指标可以帮助您在工作负载增长时进行容量规划。
指标名称 | 描述 | ||
---|---|---|---|
CPU 使用率 |
如果达到 100%,您可能需要额外的 CPU 容量。 |
||
已用内存 |
此指标告诉您是否快用完服务器上的所有可用内存。确保您的峰值在 95% 或以下,以降低内存不足的风险。有关更多信息,请参阅 内存配置。 |
||
可用磁盘空间 |
观察数据的增长速度,以便您可以在用完存储空间之前规划额外的存储空间。这适用于 Neo4j 正在写入的所有磁盘。您也可以选择将日志文件写入不同的磁盘。
|
Neo4j 负载指标
Neo4j 负载指标监控 Neo4j 所承受的压力。它们可以帮助进行容量规划。
指标名称 | 指标 | 描述 |
---|---|---|
堆使用情况 |
|
如果 Neo4j 始终使用 100% 的堆,请增加初始堆大小和最大堆大小。有关更多信息,请参见内存配置. |
页面缓存 |
|
当请求错过页面缓存时,必须从速度慢得多的磁盘中获取数据。理想情况下,hit_ratio 大多数情况下应高于 98%。这显示了分配给页面缓存的内存使用量。如果达到 100%,请考虑增加页面缓存大小。 |
JVM 垃圾回收 |
|
JVM 用于回收堆而不是执行其他工作的时间的比例。当数据库内存不足时,此指标可能会出现峰值。如果发生这种情况,它可能会停止处理并导致查询执行错误。如果似乎是这种情况,请考虑增加数据库的大小。 |
检查点时间 |
|
应监控检查点持续时间,以确保其不会开始接近检查点之间的间隔。如果发生这种情况,请考虑以下步骤以提高检查点性能
|
Neo4j 集群健康指标
集群健康指标一目了然地表明集群成员的健康状况。了解哪个实例是领导者至关重要。领导者的负载模式不同于跟随者,跟随者应表现出类似的负载模式。
指标名称 | 指标 | 描述 |
---|---|---|
领导者 |
|
跟踪每个数据库主实例。如果它不是领导者,则报告 |
事务工作负载 |
|
最后提交的事务的 ID。跟踪每个 Neo4j 实例。它可能会分成单独的图表。它应该显示一条线,一直增加,如果其中一条线停止上升或落后,则很明显该实例不再复制数据,需要采取措施纠正这种情况。 |
了解如何监控集群端点以获取状态信息的更多信息。
工作负载指标
这些指标有助于监控 Neo4j 实例的工作负载。这些指标的绝对值取决于您预期的工作负载类型。
指标名称 | 指标 | 描述 |
---|---|---|
Bolt 连接 |
|
当前正在执行 Cypher 并返回结果的连接数。 |
节点/关系总数 |
|
(默认情况下未启用)不同关系类型的总数。不同属性名称的总数。关系的总数。节点的总数。 |
吞吐量 |
|
此指标生成 99% 和 95% 百分位数事务延迟的直方图。有助于识别数据负载的峰值或增加。 |
有关 Neo4j 中所有可用指标的完整列表,请参见指标参考. |