Audit logs in Neo4j

Looking for more information on creating auditing inside neo4j to track all changes to Nodes, relationships, properties, etc. Are there any new approaches compared to those referenced below? Is there any plans for Neo4j to ever support auditing natively?

Currently know about the following options -

  1. GraphAware's Audit Module (https://graphaware.com/neo4j/2018/02/28/audit-module.html)

  2. Versioner Core (GitHub - h-omer/neo4j-versioner-core: Entity-State model managed by Neo4j Procedures)

(both from previous thread at: History management for node properties in Neo4j)

Currently we're using a custom solution and looking for other options. Thank you.

You could also use APOC triggers to create audit information inside or outside of the db.
Write your own tx-event-handler or use our Kafka-Integration for an external audition trail.

1 Like

Thanks @michael.hunger - I have finally tried out apoc triggers as one solution, using a apoc-3.5.0.3-all.jar. However, I am having some issues implementing it. I've written out a custom cypher to generate our structure, however the main issue right now is capturing node deletes. I have found this issue APOC trigger: deletedNodes does not return info of the Node (properties, labels) only the id in before phase · Issue #1152 · neo4j-contrib/neo4j-apoc-procedures · GitHub which is similar or possibly same issue, when I'm trying the before state or even after state, I cannot get any information about the nodes deleted. This is putting a hamper on attempts to get proper audit information in the case of deletes. Do you happen to know if there's another channel I should reach out to or have any update on when this could be resolved? Thank so much.

Hi @boris - have you discovered any new tools or methods (for neo4j audit logs)?