在Luigi Visualiser中坚持完成的管道

时间:2015-09-17 17:07:28

标签: python luigi

我开始将一个夜间数据管道从视觉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 /天的方法。

所以,我的问题:是否有可能在可视化工具中保留当天完成的图表?有没有办法看看过去发生了什么?

感谢所有帮助

2 个答案:

答案 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下修复