日志

运行日志 log

server 启动后,系统将会自动产生运行时信息,可以通过命令行配置参数 stdoutLog 决定是否将信息输出到命令行或运行日志(log)中。log 文件的路径信息可由配置项 logFile 进行指定:

配置参数

解释

logFile=DolphinDBlog

日志文件的路径和名称。日志文件包含服务器配置的详细内容,警告和错误信息。该参数只能在命令行中指定。

单个日志文件大小存在上限,由 单节点启动 章节提到的配置参数 maxLogSize 决定。超过该值后,DolphinDB 将自动生成一个尾缀为时间戳的新的日志文件,以此类推。当旧的系统日志占用大量系统资源时,可通过配置 logRetentionTime 定时删除。

2.00.8 新版功能.

配置参数

解释

logRetentionTime=30

设置系统日志的保留时间。超过指定保留时间的日志将被删除。默认值为 30,单位是“天”,类型为浮点型,如:0.5 表示 12 小时。若设置为 0,表示不进行清理。

为了更快定位问题,DolphinDB 支持输出指定等级的日志。可通过配置项 logLevel 在启动前配置,或通过函数 setLogLevel 在线修改。

配置参数

解释

logLevel=INFO

日志文件的保留层次。默认值为 INFO。 logLevel 的所有取值从低到高为 DEBUG,INFO,WARNING 和 ERROR。日志文件只保留等于或高于 logLevel 取值的日志记录。

集群环境下,节点运行日志统一存储在 logFile 指定的路径下。下文提到的重做日志和恢复事务的重做日志,统一存储在 logDir 指定的文件夹下。

配置参数

解释

logDir=<HomeDir>

数据节点的日志目录。默认是数据节点/计算节点的<HomeDir>。上下文中的 <LogDir> 表示该参数的值。

重做日志 redo log

参考教程: DolphinDB教程:Cache Engine与数据库日志

为保证 server 启动后不会因为宕机丢失数据,DolphinDB 采用了重做日志(redo log)的机制,即数据先写重做日志再落盘。redo log 文件存储在磁盘上,为了提高写入效率,建议将 redo log 文件存储在高性能 IO 设备中,如 SSD。

DolphinDB OLAP 引擎 和 TSDB 引擎的 redo log 对应不同的存储路径。 可通过以下参数进行配置:

配置参数

解释

redoLogDir=<HomeDir>/redoLog

OLAP 存储引擎重做日志(redo log)的目录。默认值是 <HomeDir>/log/redoLog 。在集群模式中,需要保证同一机器上的数据节点配置了不同的 redoLogDir。

TSDBRedoLogDir=<HomeDir>/TSDBRedo

TSDB 存储引擎重做日志(redo log)的目录。默认值是 <HomeDir>/log/TSDBRedo。

其中,TSDBMeta(包含 level file 元数据)与 TSDBRedo 位于同级目录,存放于 <HomeDir>/log 目录。事务数据存放于 <HomeDir>/storage/CHUNKS 目录。

在集群模式中,需要保证同一机器上的数据节点配置了不同的 TSDBRedoLogDir。

当事务完成后,系统会自动检测回收其对应的 redo log。DolphinDB 提供了配置项,支持对 redo log 的回收过程进行调优。

配置参数

解释

redoLogPurgeInterval=30

删除重做日志(redo log)的时间间隔(单位是秒),默认值是30。每隔 redoLogPurgeInterval 秒,系统会自动删除已完成事务的重做日志。

redoLogPurgeLimit=4

重做日志(redo log)占用磁盘空间的上限(单位是 GB),默认值是4。如果重做日志占用磁盘超过 redoLogPurgeLimit,系统会自动删除已完成事务的重做日志。

作业日志 job log

用户提交的批处理作业和定时作业的执行信息均保存在 batchJobDir 目录下。

配置参数

解释

batchJobDir

保存批量作业和定时作业日志和结果的文件夹目录。如果没有指定,单节点模式下,默认目录是 <HomeDir>/batchJobs。集群模式下,默认目录是<HomeDir>/<nodeAlias>/batchJobs。

节点恢复事务的重做日志

节点恢复和再平衡相关参数的说明请参考:数据恢复和再平衡

在节点恢复过程中,为了避免节点宕机或离线对恢复过程造成太大影响,可以开启节点恢复事务的重做日志,配置 enableDfsRecoverRedo = true。开启后,在节点恢复的过程中,会将恢复事务相关的数据先写入 recover redo log 中。

配置参数

解释

enableDfsRecoverRedo=true

启用节点恢复过程的重做日志。

recoverLogDir=<HomeDir>/recoverLog

节点恢复事务重做日志的存储路径,默认路径为 <LogDir>/recoverLog。需和数据目录存储在不同的磁盘,建议配置为 SSD 高速磁盘的路径。

节点查询信息日志

集群环境下,系统还保存了各节点的查询信息的日志(job log)。

配置参数

解释

jobLogFile=nodeAlias_job.log

节点工作日志的存储路径,用于记录每个节点上已经执行的所有查询的描述性信息。默认和 logFile 指定 log 文件存储在同一路径下。工作日志文件的默认名是 nodeAlias_job.log