Neo4j Monitoring User Guide


Neo4j, one of the most popular databases, is a graph database management system which is ACID-compliant. As with any database, Neo4j is also a core component in any system and requires constant monitoring. Tracking memory management, garbage collection, and also aspects of Neo4j such as growth of your store, active transactions, and many other operational facets is important to understand the relationship between Neo4j and other elements in your IT environment. Applications Manager's Neo4j monitoring tool provides valuable insights into key Neo4j metrics, and notifies of areas that need attention, enabling you to optimize performance of Neo4j servers.

Adding a Neo4j monitor:

Follow the steps given below to create a new Neo4j monitor:

  1. Click on New Monitor link.Select Neo4j under Database Servers category.
  2. Specify the Display Name of the Neo4j Server.
  3. Enter the Hostname of the server on which Neo4j is running.  
  4. Specify the bolt Port at which Neo4j is running. The Default Port is 7687.
  5. If you choose the Use Below Credentials option, then enter the credentials - UserName and Password of the Neo4j Instance.
    1. UserName - Name of the User who has read permission.  
    2. Password - Password of the above user.
  6. If you choose the Select from credential list option, then select the respective credential from preconfigured credential list.
  7. Choose whether you want to Discover all nodes in the cluster.
  8. Specify the Polling Interval in minutes.
  9. Choose the Monitor Group with which you want to associate the Neo4j to, from the combo box (optional). You can choose multiple groups to associate your monitor.
  10. Click Add Monitor(s). This discovers the Neo4j from the network and starts monitoring it.

Monitored Parameters

Go to the Monitors Category View by clicking the Monitors tab. Click on Neo4j under the Database Servers table. Displayed is the Neo4j bulk configuration view distributed into three tabs:

  • Infrastructure View tab, gives the details about all Neo4j instances present in the Infrastructure. 
  • Availability tab, gives the Availability history for the past 24 hours or 30 days.
  • Performance tab gives the Health Status and events for the past 24 hours or 30 days.
  • List view enables you to perform bulk admin configurations.

On clicking a monitor from the list, you'll be taken to the Neo4j monitor dashboard. It has 9 tabs-

Overview

ParameterDescription
PHYSICAL AND VIRTUAL MEMORY
Total Physical  Size of the total physical memory of the machine in GB.
Used Physical  Size of the total physical memory used in GB.
Free Physical  Size of the total physical memory free in GB.
Committed Virtual  Size of the total virtual memory committed.
SWAP MEMORY
Total Swap Space  Size of the total swap space of the machine in GB.
Free Swap Space  Size of the total swap space free in GB.
Used Swap Space  Size of the total swap space used in GB.
NODE DETAILS
Name  Name of the node.
Role in cluster  Role of the node in cluster. 
Read Only Instance  Shows whether it's read only instance- TRUE/FALSE. 
MEMORY UTILIZATION
Physical Memory Utilization  Total physical memory usage calculated and represented in %.
Swap Space Utilization  Total swap space usage calculated and represented in %.

Thread

ParameterDescription
THREAD DETAILS
Daemon  Number of Daemon Threads.
Peak  Number of Peak Threads.
Live  Number of Live Threads.
Total Started  Number of total threads started.

Heap Details

ParameterDescription
HEAP MEMORY DETAIL
Committed Heap  Size of Heap memory committed in GB.
Initial Heap  Size of initial Heap memory in GB.
Maximum Heap   Size of maximum Heap memory in GB.
Used Heap  Size of Heap memory used in GB.
NON HEAP MEMORY DETAIL
Committed Non Heap  Size of Non Heap memory committed in GB.
Initial Non Heap  Size of initial Non Heap memory in GB.
Maximum Non Heap  Size of maximum Non Heap memory in GB.
Used Non Heap  Size of Non Heap memory used in GB.

ID Allocation

ParameterDescription
ID ALLOCATION
Node Ids   An estimation of the number of nodes used in this Neo4j instance.
Property   An estimation of the number of properties used in this Neo4j instance
Relationship  An estimation of the number of relationships used in this Neo4j instance
Relationship Type   The number of relationship types used in this Neo4j instance

Store

ParameterDescription
STORE SIZES
Total   Disk space used by whole store, in KB.
Labels   Disk space used to store labels, in KB.
Nodes   Disk space used to store nodes, in KB.
Transaction Log   Disk space used by the transaction logs, in KB.
Relationships   Disk space used to store relationships, in KB.
Indices   Disk space used to store all indices, in KB.
Counters   Disk space used to store counters, in KB. 
PROPERTY SIZES
Schemas   Disk space used to store schemas (index and constrain declarations), in KB.
Properties   Disk space used to store properties (excluding string values and array values), in KB.
String Properties   Disk space used to store string properties, in KB.
Array Properties  Disk space used to store array properties, in KB.

Page Cache

ParameterDescription
PAGE CACHE COUNT DETAILS
Hit Ratio   Ratio of hits to the total number of lookups in the page cache
Hits   Number of page hits. How often requested data was found in memory.
Exception while Page Eviction   Number of exceptions caught during page eviction. 
Evictions   Number of page evictions. How many pages have been removed from memory to make room for other pages. 
Faults   Number of page faults. How often requested data was not found in memory and had to be loaded.
Flushes   Number of page flushes. How many dirty pages have been written to durable storage.
Usage Ratio   The percentage of used pages.
PAGE CACHE SIZE DETAILS
Read    Number of bytes read from durable storage. 
Write   Number of bytes written to durable storage.
Files Mapped   Number of files that have been mapped into the page cache.
Files UnMapped  Number of files that have been unmapped from the page cache.
Pins   Number of page pins. How many pages have been accessed.
UnPins   Number of page unpins. How many pages have been accessed and are not accessed anymore.

Transactions

ParameterDescription
TRANSACTION DETAILS
Committed   The total number of committed transactions.
Started   The total number started transactions.
Open   The number of currently open transactions.
Rollbacked   The total number of rolled back transactions.
Peak Concurrent   The highest number of transactions ever opened concurrently.
DEADLOCK
Averted Deadlocks  The number of lock sequences that would have lead to a deadlock situation that Neo4j has detected and averted (by throwing DeadlockDetectedException).

Clustering

ParameterDescription
CLUSTERING DETAILS
Raft Log  Total amount of disk space used by the raft log, in KB.
Replicated State  Total amount of disk space used by the replicated states, in KB.

Configurations

ParameterDescription
CONFIGURATIONS DETAILS
Mounted Database Name    The name of the mounted database.
Start Time  The time from which this Neo4j instance was in operational mode.
Version   The version of Neo4j.
Store Creation Time   The time when this Neo4j graph store was created.
Store Id   An identifier that, together with store creation time, uniquely identifies this Neo4j graph store.