【问题标题】:Luigi event handler when no task is run because no missing dependencies没有任务运行时的 Luigi 事件处理程序,因为没有缺少依赖项
【发布时间】:2018-02-14 01:24:49
【问题描述】:

我熟悉 Luigi 事件处理机制,并且我已经实现了一个管道,当管道成功完成时会发送成功电子邮件。 我想知道如何在任务已经运行并因此不再重新运行任务时触发事件。举个例子——当一个新的日期文件出现在每日日程表上时,我的工作就会被触发。周日,没有新文件出现,luigi 产生以下输出:

 ===== Luigi Execution Summary =====

 Scheduled 1 tasks of which:
* 1 present dependencies were encountered:
- 1 XXXXRunner(...)

 Did not run any tasks
 This progress looks :) because there were no failed tasks or missing 
external dependencies

为了成功运行,我通常会触发如下电子邮件:

 @SomeTaskRunner.event_handler(luigi.Event.SUCCESS)
 def send_success_email():
 ....

但是在没有任务运行的情况下,因为所有的依赖都已经满足了,我该如何触发事件处理程序呢?

【问题讨论】:

    标签: luigi


    【解决方案1】:

    我想通了。

    我需要使用这个事件处理程序:

     @SomeTaskRunner.event_handler(luigi.Event.DEPENDENCY_PRESENT)
    

    【讨论】:

      猜你喜欢
      • 2020-05-10
      • 1970-01-01
      • 1970-01-01
      • 2017-08-08
      • 2018-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多