From 5748e9a0eaff226d3fff3d8517bb04c08401793f Mon Sep 17 00:00:00 2001 From: root Date: Wed, 3 Jul 2024 15:08:27 +0800 Subject: [PATCH] =?UTF-8?q?add=20workflow=20=E5=A4=A9=E6=B6=A6Smart-ccc?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E6=95=B0=E6=8D=AE,dev?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wf_dag_smart_ccc_ticket.py | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 dev/workflow/TK_Cust/smart_ccc_ticket/天润Smart-ccc工单数据/wf_dag_smart_ccc_ticket.py diff --git a/dev/workflow/TK_Cust/smart_ccc_ticket/天润Smart-ccc工单数据/wf_dag_smart_ccc_ticket.py b/dev/workflow/TK_Cust/smart_ccc_ticket/天润Smart-ccc工单数据/wf_dag_smart_ccc_ticket.py new file mode 100644 index 0000000..be3c63d --- /dev/null +++ b/dev/workflow/TK_Cust/smart_ccc_ticket/天润Smart-ccc工单数据/wf_dag_smart_ccc_ticket.py @@ -0,0 +1,81 @@ +#!/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': 'info@idgvalue.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_smart_ccc_ticket', default_args=default_args, +schedule_interval="0 */1 * * *", +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=["info@idgvalue.com"], + cc=[""], + subject="smart_ccc_failed", + html_content='

您好,smart_ccc作业失败,请及时处理"

') + +tickets_list_feign = SSHOperator( +ssh_hook=sshHook, +task_id='tickets_list_feign', +command='python3 /data/airflow/etl/API/tickets_list_feign.py', +depends_on_past=False, +retries=3, +dag=dag) + +tickets_list_load = SSHOperator( +ssh_hook=sshHook, +task_id='tickets_list_load', +command='/data/airflow/etl/API/run_psql.sh {{ ds_nodash }} {{params.my_param }}', +params={'my_param':"tickets_list_load"}, +depends_on_past=False, +retries=3, +dag=dag) + +tickets_list_feign >> tickets_list_load + +tr_ticket_detail_4125 = SSHOperator( +ssh_hook=sshHook, +task_id='tr_ticket_detail_4125', +command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ', +params={'my_param':"S98_S_tr_ticket_detail"}, +depends_on_past=False, +retries=3, +dag=dag) + +tr_ticket_list_4585 = SSHOperator( +ssh_hook=sshHook, +task_id='tr_ticket_list_4585', +command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ', +params={'my_param':"S98_S_tr_ticket_list"}, +depends_on_past=False, +retries=3, +dag=dag) + +tickets_list_load >> tr_ticket_list_4585 +tickets_list_load >> tr_ticket_detail_4125 +tr_ticket_detail_4125 >> task_failed +tr_ticket_list_4585 >> task_failed