From eaeb81d1bc35517f52e05c1ad35f3da8dbd92b92 Mon Sep 17 00:00:00 2001 From: root <root@64792e78fd4d> Date: Wed, 6 Nov 2024 16:57:33 +0800 Subject: [PATCH] =?UTF-8?q?add=20workflow=20partner=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=AF=BC=E5=85=A5,dev?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wf_dag_partner_one_site_file.py | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 dev/workflow/TK_Cust/partner_one_site_file/partner数据导入/wf_dag_partner_one_site_file.py diff --git a/dev/workflow/TK_Cust/partner_one_site_file/partner数据导入/wf_dag_partner_one_site_file.py b/dev/workflow/TK_Cust/partner_one_site_file/partner数据导入/wf_dag_partner_one_site_file.py new file mode 100644 index 0000000..b15b91b --- /dev/null +++ b/dev/workflow/TK_Cust/partner_one_site_file/partner数据导入/wf_dag_partner_one_site_file.py @@ -0,0 +1,62 @@ +#!/usr/bin/python +# -*- encoding=utf-8 -*- +from airflow import DAG +from datetime import datetime, timedelta +from airflow.contrib.hooks.ssh_hook import SSHHook +from airflow.contrib.operators.ssh_operator import SSHOperator +from airflow.sensors.external_task_sensor import ExternalTaskSensor +import json + +from airflow.operators.trigger_dagrun import TriggerDagRunOperator +from airflow.operators.email_operator import EmailOperator +from airflow.utils.trigger_rule import TriggerRule + + +sshHook = SSHHook(ssh_conn_id ='ssh_air') +default_args = { +'owner': 'tek_newsletter@163.com', +'email_on_failure': True, +'email_on_retry':True, +'start_date': datetime(2024, 1, 1), +'depends_on_past': False, +'retries': 6, +'retry_delay': timedelta(minutes=10), +} + +dag = DAG('wf_dag_partner_one_site_file', default_args=default_args, +schedule=None, +catchup=False, +dagrun_timeout=timedelta(minutes=160), +max_active_runs=3) + +task_failed = EmailOperator ( + dag=dag, + trigger_rule=TriggerRule.ONE_FAILED, + task_id="task_failed", + to=["tek_newsletter@163.com"], + cc=[""], + subject="partner_one_site_file_failed", + html_content='<h3>您好,partner_one_site_file作业失败,请及时处理" </h3>') + +file_visits_ytd = SSHOperator( +ssh_hook=sshHook, +task_id='file_visits_ytd', +command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ', +params={'my_param':"visits_ytd"}, +depends_on_past=False, +retries=3, +dag=dag) + + +file_report_daily_checked = SSHOperator( +ssh_hook=sshHook, +task_id='file_report_daily_checked', +command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ', +params={'my_param':"report_daily_checked"}, +depends_on_past=False, +retries=3, +dag=dag) + + +file_visits_ytd >> task_failed +file_report_daily_checked >> task_failed