Луиджи: примеры Rangehourly

Есть ли примеры, доступные для предоставления RangeHourly (или аналогичные, например RangeDaily) . Я пытался использовать его, чтобы повторять выполнение задач. Но я всегда получаю ошибку, как показано ниже:

ОТЛАДКА: проверка, если RangeHourly(of=FinalTask, of_params={}, реверс =False, task_limit=50, сейчас = нет, param_name=None, запуск =2017-06-28T15, stop= нет, hours_back=0, hours_forward=0) завершен. ОТЛАДКА: пустой диапазон. Случаи FinalTask ​​не ожидаются

Ниже приведено определение задачи:

class FinalTask (luigi.Task):
    start = luigi.DateHourParameter()
    def requires(self):
            return CleanupTask()
    def run(self):
            cmd='echo "Workflow Completed"'
            args=shlex.split(cmd)
            exc=subprocess.Popen(args,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
            stdout,stderr=exc.communicate()
            self.output().open('w').close()
    def output(self):
            return luigi.LocalTarget('/var/flags/FinalTask_success_%s.csv' %start)

Я что-то упускаю, что вызывает эту проблему?

1 ответ

Решение
python tasks.py RangeHourlyBase --of FinalTask --start 2017-07-31T00 --stop 2017-07-31T23 --local-scheduler --workers 4

Заметить, что:

  • Вы должны заменить tasks.py с именем файла где FinalTask определено.
  • --local-scheduler только для запуска ваших задач локально. Не используйте это при производстве.
  • В последней строке есть ошибка: start не определено, должно быть:

    return luigi.LocalTarget('/var/flags/FinalTask_success_%s.csv' % self.start)
    
Другие вопросы по тегам