我开始将一个夜间数据管道从视觉ETL工具移植到Luigi,我真的很高兴有一个可视化工具来查看工作状态。但是,我注意到在最后一个作业(名为MasterEnd
)完成几分钟后,除了MasterEnd
之外,所有节点都从图表中消失。这有点不方便,因为我希望看到白天/过去几天的一切都完整。
此外,如果在可视化工具中我直接转到上一个作业的URL,则无法找到它运行的任何历史记录:Couldn't find task MasterEnd(date=2015-09-17, base_url=http://aws.east.com/, log_dir=/home/ubuntu/logs/)
。我已经证实它今天早上成功运行了。
有一点需要注意的是,我有一个cron,每15分钟运行一次这个管道来检查S3上的文件。如果存在,则运行,否则停止。我不确定这是否导致从可视化工具中删除任务。我注意到它每次运行都会生成一个新的PID
,但我找不到在文档中保留一个PID /天的方法。
所以,我的问题:是否有可能在可视化工具中保留当天完成的图表?有没有办法看看过去发生了什么?
感谢所有帮助
答案 0 :(得分:3)
如果这是正确的,我不是100%肯定的,但这是我先尝试的。当您致电luigi.run
时,请将其传递给--scheduler-remove-delay
。我猜这是调度程序在所有依赖项完成后忘记任务之前等待的时间。如果查看luigi's source,则默认值为600秒。例如:
luigi.run(["--workers", "8", "--scheduler-remove-delay","86400")], main_task_cls=task_name)
答案 1 :(得分:1)
如果您在luigi.cfg中配置remove_delay设置,那么它将使任务更长时间。
<Navbar bsStyle="inverse" collapseOnSelect>
请注意,文档中存在拼写错误(“remove-delay”而不是remove_delay“),该拼写错误已在https://github.com/spotify/luigi/issues/2133下修复