Cron 作业不会从外部触发 Airflow DAG

时间:2021-07-31 05:55:59

标签: cron airflow

我对 Airflow 很陌生。但是,我遇到了新手在处理计划间隔时遇到的相同的时间和间隔问题。因此,我想尝试通过 cli 从外部触发 DAG。这可以通过简单地进入控制台并输入示例来完成: airflow trigger_dag tutorial (使用气流泊坞窗图像:1.10.9)

接下来我想看看相同的命令是否适用于常规的 cron 作业,因为我想像 cron 作业时间一样触发它。因此,我创建了一个类似这样的 cron 工作: * * * * * airflow trigger_dag tutorial

然而,这现在不会触发 DAG。 在其他几个实验中,我可以通过 shell 脚本中的相同命令手动触发 DAG,但不能通过 cron 作业使用 sh 命令来完成。 (我已经验证了 cron 可以正常工作,就像我尝试只输出一个普通文件一样。)

谁能告诉我如何通过常规的 cron 作业触发 DAG? 或者这里出了什么问题?

2 个答案:

答案 0 :(得分:1)

很可能您的用户配置文件中有一些环境变量 - 也可能是 cron 中不可用的 .bash_profile 或 .bashrc。 Cron 不会“获取”任何用户配置文件 - 如果要设置它们,则需要在运行脚本之前手动获取它们。

还向您展示如何调试它的好文章在这里:https://www.ibm.com/support/pages/cron-environment-and-cron-job-failures

答案 1 :(得分:0)

尝试使用 Airflow 的完整路径更新 cron 命令。要获取安装路径,您可以执行:

which airflow

现在更新 cron 命令。