我如何使用 nohup 检查 SSHOperator 以查看工作是否已完成以完成 dag?
How can I check on an SSHOperator with nohup to see if the job is done to complete the dag?
我创建了一个在 ec2 实例上运行 python 脚本的 dag。 python 脚本大约需要 2-3 小时才能完成,因此我向 SSHOperator 添加了一个 nohup 命令。如何检查时间间隔以查看 ec2 python 脚本作业是否已完成?我考虑过更新环境变量,如果该变量在 3 小时内没有更新,则 dag 会出错。不知道我该怎么做,如果有一个特定的操作员我可以用来完成这个任务。或者,非常感谢任何其他最佳实践建议。
t2 = SSHOperator(
ssh_conn_id='ec2_worker',
task_id='execute_script',
command='nohup python me_script.py &',
dag=dag)
您可以让脚本在完成后将成功文件写入某个已知位置,然后让 SFTPSensor 检查它。
我创建了一个在 ec2 实例上运行 python 脚本的 dag。 python 脚本大约需要 2-3 小时才能完成,因此我向 SSHOperator 添加了一个 nohup 命令。如何检查时间间隔以查看 ec2 python 脚本作业是否已完成?我考虑过更新环境变量,如果该变量在 3 小时内没有更新,则 dag 会出错。不知道我该怎么做,如果有一个特定的操作员我可以用来完成这个任务。或者,非常感谢任何其他最佳实践建议。
t2 = SSHOperator(
ssh_conn_id='ec2_worker',
task_id='execute_script',
command='nohup python me_script.py &',
dag=dag)
您可以让脚本在完成后将成功文件写入某个已知位置,然后让 SFTPSensor 检查它。