I'm using Neo4j desktop, and trying to use APOC to log a message to the info log.
I've read the documentation on this operation here: https://neo4j.com/labs/apoc/4.1/operational/log/
This is the simple code I'm using, which tries to log "hello world" in both upper and lower case:
CALL apoc.log.info('HELLO world')
Then I looked here to see where I'd find the log file: https://neo4j.com/docs/operations-manual/current/configuration/file-locations/
I'm on a Mac, so I've gone to the logs directory:
cd /Library/Application Support/Neo4j Desktop/Application/neo4jDatabases/database-.../installation-4.0.3/log
As you see, the logged message has been converted to lowercase.
In the API docs, I see that there's a property apoc.user.log.type
which default to safe
(to "replace all . and whitespace (space and tab) with underscore and lowercase all characters"). I believe I need to set the property value to raw
, but I'm not sure how.
I've tried these three things with no luck:
CALL apoc.log.info('HeLLo', [type: "raw"])
CALL apoc.log.info('HeLLo', { type: "raw" })
:param "apoc.user.log.type" => "raw"
I found a solution to this.
From the
logs/
directory, navigate to the configuration directory for Neo4j:Then add a APOC config file with the
apoc.user.log.type
setting from the APOC docs:Then restart the Neo4j database / project.
In other words, the configuration that is documented at the
apoc.log.info
function level is actually a global configuration that needs to be set for APOC/Neo4j in general in the configuration file. The config file format is specified here: https://neo4j.com/docs/operations-manual/current/configuration/neo4j-conf/