Datax-Web失败任务重跑

单机dataxweb失败重跑

vim /data/datax/py/rerun_datax.py

# -*- coding: utf-8 -*-
import pymysql
from datetime import datetime

run_datetime = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S')
sql = "UPDATE job_info SET trigger_next_time=CONCAT(UNIX_TIMESTAMP(NOW() + INTERVAL 5 MINUTE),'000') WHERE last_handle_code=500 AND trigger_next_time <>0 AND trigger_status<>0"
conn = pymysql.connect(host="127.0.0.1",port=3306,user="***",password="***",db="dataxweb")
cur = conn.cursor()
effect_row = cur.execute(sql)
if effect_row > 0:
    print(run_datetime + "   datax-web重跑: " + str(effect_row) + "条失败任务将在5分钟后重跑!!!")
else:
    print(run_datetime + "   没有失败任务!!!")
conn.commit()
cur.close()
conn.close()

每小时检测一次:

0 * * * * /usr/bin/python /data/datax/py/rerun_datax.py >> /data/datax/py/rerun_datax.log 2>&1

集群类型的失败任务重跑

vim /data4hadoop/scripts/datax_web/rerun_datax.py

# -*- coding: utf-8 -*-
import pymysql
from datetime import datetime

run_datetime = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S')
sql = "UPDATE job_info SET trigger_next_time=CONCAT(UNIX_TIMESTAMP(NOW() + INTERVAL 5 MINUTE),'000') \
       WHERE id in (select id from (SELECT f.id FROM job_info f \
       LEFT JOIN (SELECT trigger_time,handle_time,handle_code ,job_id FROM job_log  \
                   WHERE  trigger_time > (NOW() + INTERVAL - 1 DAY) AND handle_code IN (0,200)) g ON g.job_id=f.id \
       WHERE f.last_handle_code NOT IN (0,200) AND f.trigger_status =1 AND g.handle_code IS NULL) t) "
#因为任务是多节点执行,所以需要在job_log中过滤掉真正失败的任务

conn = pymysql.connect(host="127.0.0.1",port=3306,user="datax_user",password="******",db="dataxweb")
cur = conn.cursor()
effect_row = cur.execute(sql)
if effect_row > 0:
    print(run_datetime + "   datax-web重跑: " + str(effect_row) + "条失败任务将在5分钟后重跑!!!")
else:
    print(run_datetime + "   没有失败任务!!!")
conn.commit()
cur.close()
conn.close()

0 * * * * /usr/bin/python3 /data4hadoop/scripts/datax_web/rerun_datax.py >> /data4hadoop/scripts/datax_web/rerun_datax.log 2>&1

要在DataX-Web中创建任务模板,首先需要安装DataX-Web并启动服务。安装DataX-Web的详细步骤可以参考中提供的链接。安装完成后,可以通过访问指定的地址[ip:9527/index.html,使用预设的账号(admin)和密码(123456)登录DataX-Web。登录成功后,可以按照以下步骤创建任务模板: 1. 在DataX-Web的界面中,找到菜单中的“数据源”选项,点击进入。 2. 在数据源页面中,选择创建新的数据源,填写相关信息,例如数据库的连接信息、用户名、密码等。 3. 创建完数据源后,回到DataX-Web的主界面,找到菜单中的“项目”选项,点击进入。 4. 在项目页面中,选择创建新的项目,填写项目的名称和描述等信息。 5. 创建完项目后,在项目详情页中,找到“任务模板”选项,点击进入。 6. 在任务模板页面中,选择创建新的任务模板,填写模板的名称、描述以及相关的配置信息。 7. 配置信息包括读取器和写入器的设置,可以根据具体需求选择相应的插件和参数。 8. 创建完任务模板后,可以在任务模板列表中查看和管理已创建的模板。 通过以上步骤,您就可以在DataX-Web中成功创建任务模板了。请确保您已按照正确的步骤安装和配置DataX-Web,并在登录后按照上述步骤进行操作。希望对您有帮助! 引用内容: DataX-Web下载和安装: 链接地址:ip:9527/index.html,账号:admin,密码:123456 DataX任务模板创建和使用的详细步骤<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [使用DataX同步数据库数据,并使用DataX-Web创建同步任务](https://blog.csdn.net/txyllyyj/article/details/129144623)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值