0

我正在使用 Neo4j 桌面,并尝试使用 APOC 将消息记录到信息日志中。

我在这里阅读了有关此操作的文档: https ://neo4j.com/labs/apoc/4.1/operational/log/

这是我正在使用的简单代码,它尝试以大写和小写形式记录“hello world”:

CALL apoc.log.info('HELLO world')

然后我在这里查看我在哪里可以找到日志文件:https ://neo4j.com/docs/operations-manual/current/configuration/file-locations/

我在 Mac 上,所以我去了日志目录:

cd /Library/Application Support/Neo4j Desktop/Application/neo4jDatabases/database-.../installation-4.0.3/log

并跑tail -f debug.log日志文件显示

如您所见,记录的消息已转换为小写。

在 API 文档中,我看到有一个属性apoc.user.log.type默认为safe(“用下划线和小写所有字符替换所有 . 和空格(空格和制表符)”)。我相信我需要将属性值设置为raw,但我不确定如何。

我试过这三件事没有运气:

CALL apoc.log.info('HeLLo', [type: "raw"])
CALL apoc.log.info('HeLLo', { type: "raw" })
:param "apoc.user.log.type" => "raw"
4

1 回答 1

0

我找到了解决方案。

从该logs/目录导航到 Neo4j 的配置目录:

> cd ../conf
> ls
  jmx.access         jmx.password       neo4j.conf

然后使用 APOC 文档中的设置添加一个 APOC 配置文件apoc.user.log.type

> echo "apoc.user.log.type=raw" >> apoc.conf

然后重启 Neo4j 数据库/项目。

也就是说,apoc.log.info功能层面上文档化的配置,其实是一个全局配置,一般需要在配置文件中针对APOC/Neo4j进行设置。此处指定配置文件格式:https ://neo4j.com/docs/operations-manual/current/configuration/neo4j-conf/

于 2020-10-13T04:35:33.687 回答