猿问

气流任务在 Bash 中工作,在计划时失败

我在跑:


Ubuntu 16.04

airflow v1.8.1

python 3.5

气流在Docker容器中运行。


我有一个气流 dag,它是一个单一的任务——一个运行 python 脚本的 BashOperator:


from airflow import DAG

from airflow.operators.bash_operator import BashOperator

from airflow.operators.python_operator import PythonOperator

from airflow.operators.sensors import ExternalTaskSensor

from airflow.operators import DummyOperator

from datetime import date, datetime, timedelta


start_date = date.today() - timedelta(1)


default_args = {

    'owner': 'airflow',

    'depends_on_past': False,

    'start_date': datetime(start_date.year, start_date.month, start_date.day),

    'retries': 0,

    'retry_delay': timedelta(minutes=5)

}


dag = DAG('$MY_DAG_NAME', default_args=default_args, max_active_runs=1, schedule_interval="35 */2 * * *")

dag.catchup = False


t1 = BashOperator(dag=dag,

                  task_id='$TASK_1',

                  bash_command='python /airflow/scripts/$MY_PYTHON_SCRIPT.py')


t1

当我python /airflow/scripts/$MY_PYTHON_SCRIPT.py以bash运行时,它就很好了。我使用htop监视内存使用情况,但我没有达到内存总数的三分之一以上-该脚本的MEM%使用率约为10%。

但是,我大约有三分之二的时间以气流方式运行此程序,但似乎是随机出现的以下错误(三分之一的时间不会有问题!):


[2018-08-22 07:36:33,979] {helpers.py:233} INFO - Terminating descendant processes of ['/opt/conda/envs/python35/bin/python', '/opt/conda/envs/python35/bin/airflow', 'run', '$MY_DAG_NAME', '$TASK_1', '2018-08-22T12:35:00', '--job_id', '650', '--raw', '-sd', 'DAGS_FOLDER/$MY_PYTHON_SCRIPT.py'] PID: 5200

[2018-08-22 07:36:33,979] {helpers.py:237} INFO - Terminating descendant process ['bash', '/tmp/airflowtmpwsq8ozwo/$TASK_122bzex5b'] PID: 5209

[2018-08-22 07:36:33,984] {helpers.py:195} ERROR - b''

[2018-08-22 07:36:33,984] {helpers.py:196} INFO - Killed process 5209 with signal 15

[2018-08-22 07:36:33,984] {helpers.py:237} INFO - Terminating descendant process ['python', '/airflow/scripts/$MY_PYTHON_SCRIPT.py'] PID: 5210

[2018-08-22 07:36:33,989] {helpers.py:195} ERROR - b''

[2018-08-22 07:36:33,989] {helpers.py:196} INFO - Killed process 5210 with signal 15

有没有人遇到过这个问题或有任何调试技巧?它让我发疯。



PIPIONE
浏览 158回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答