在Luigi的Central Scheduler Web界面中跟踪长时间运行的任务状态

时间:2017-12-14 07:54:37

标签: python progress-bar luigi

在Luigi框架中,我尝试使用set_tracking_urlset_progress_barset_status在中央调度程序的网络界面中显示长时间运行任务的进度条在run()方法中,如下所示:

def run(self):
    self.set_tracking_url("127.0.0.1:8082")
    for i in range(100):
        self.do_long_calculation(i)
        self.set_status_message("Analyzing Id %d" % i)
        self.set_progress_percentage(i)

我正在使用

运行任务
PYTHONPATH='.' luigi --module AnalysisTasks LongTask --workers=5

其中AnalysisTasks是python源文件,LongTaskrun()方法所属的任务,luigid在后台运行。但是,我没有看到任何进度条或状态报告。我在任何地方都找不到任何答案或例子。它有可能吗?

1 个答案:

答案 0 :(得分:1)

class MyTestTask(Task):
    name = "MyTestTask"
    target = ["test"]

    def run(self):
        for i in range(100):
            time.sleep(1)
            self.set_progress_percentage(i / 10)
            print i
        return {self.target[0]: i}

Luigi UI where the red arrow indicates the buttons for progress bars