日志
GDS 库中有三种类型的日志:调试日志、进度日志以及提示或警告日志。
调试日志提供有关系统中事件的信息。例如,当算法计算完成时,可能会记录所使用的内存量和总运行时间。当操作无法正常完成的异常事件也会被记录下来。调试日志信息对于理解系统中的事件非常有用,特别是在排查问题时。
进度日志用于跟踪预期耗时较长的操作进度。这包括图投影、算法计算和结果写入。
提示或警告日志向用户提供与查询相关的有用提示或警告。
所有日志条目都会写入为 Neo4j 数据库配置的日志文件中。有关配置 Neo4j 日志的更多信息,请参阅 Neo4j 操作手册。
进度日志程序
GDS 库本身也会跟踪进度。除了查看日志文件外,这还可以通过 Cypher 检查进度。要访问当前运行任务(也称为作业)的进度信息,我们可以使用进度列表程序:gds.listProgress。GDS 库中的任务定义为正在运行的程序,例如算法或图加载程序。
进度列表程序有两种模式,具体取决于是否设置了 jobId 参数:首先,如果未设置 jobId,该程序将为每个当前正在运行的任务生成一行。这可以看作是这些任务的摘要,例如显示特定任务的整体进度。其次,如果设置了 jobId 参数,它将显示给定运行作业的详细视图。详细视图将为该作业在执行过程中执行的每个步骤或任务生成一行。它还将显示任务如何以树状结构组织,并打印每个单独任务的进度。
|
对于拥有管理员权限的用户,此程序将列出所有用户的运行任务。 |
语法
CALL gds.listProgress(jobId: String, showCompleted: Boolean)
YIELD
username,
jobId,
taskName,
progress,
progressBar,
status,
timeStarted,
elapsedTime
| 名称 | 类型 | 默认 | 可选 | 描述 |
|---|---|---|---|---|
jobId |
字符串 |
"" |
是 |
运行任务的 jobId。这将触发该特定任务的详细概览。 |
showCompleted |
布尔值 |
false |
是 |
如果为 |
| 名称 | 类型 | 描述 |
|---|---|---|
|
字符串 |
启动运行任务的用户。 |
|
字符串 |
生成的运行任务标识符。 |
|
字符串 |
运行任务的名称,例如 |
|
字符串 |
作业的进度,以百分比值显示。 |
|
字符串 |
作业的进度,以 ASCII 进度条显示。 |
|
字符串 |
作业的当前状态,例如 |
|
LocalTime |
任务开始时的本地挂钟时间。 |
|
Duration |
从 |
|
某些通常需要一段时间才能完成的作业(如图投影和运行算法)在其配置参数映射中接受一个可选的 |
用户日志
提示和警告也可以通过 GDS 库进行跟踪,并可通过 Cypher 查询访问。GDS 库会为每个用户跟踪其生成提示或警告的最近 100 个任务,并将它们存储在内存中。当用户调用 gds.userLog 程序时,将返回其各自生成的提示和警告列表。