请问,agent、controller、datanode的日志文件是否有函数可以控制达到一定范围后压缩归档?

一个文件如果一直写入,排查问题时,下载和打开文件会很耗时。希望可以根据日期和大小进行压缩存储。

请先 登录 后评论

2 个回答

Juntao Wang

下面是定期清理日志的脚本,供参考。

def rmBatchJobLog(){
    path=getHomeDir()+"/batchJobs"
    filenames=exec filename from files(path) where filename like "%.obj" or filename like "%.msg" and lastModified > datetimeAdd(now(),-1,`d)
    for(f in filenames){
        shell("rm -f "+path+"/"+f);
    }
}
scheduleJob(`clearJobLog, "remove log files of batch jobs", rmBatchJobLog, 00:00m, today(), 2050.12.31, 'D');


请先 登录 后评论
Xinhai Tang

可以在配置文件中配置maxLogSize的值来控制节点运行日志的归档大小。

maxLogSize的说明:

当日志文件达到指定大小(单位为MB)时,系统会将日志文件存档。默认值是1024,最小值是100。

原日志文件名添加前缀作为存档的文件名。前缀的格式为<date><seq>。例如,20181109000有三位数字,从000开始。

单机single模式,在dolphindb.cfg中配置maxLogSize,控制dolphindb.log归档文件的大小。

集群模式,需要在controller.cfg中配置maxLogSize,控制controller.log归档文件的大小;同时需要在cluster.cfg中配置maxLogSize,控制datanode.log归档文件的大小。

请先 登录 后评论