使用RestCloud ETL Shell组件实现定时调度DataX离线任务

RestCloud ETL社区版是一款数据集成工具,提供可视化多数据管道构建、数据源管理、运行监控及权限管理功能。
1.场景说明:
对于一些已经在使用阿里的离线数据同步工具DataX的用户,想实现每天定时运行(或手动运行)job任务是非常困难的,都需要进入控制界面敲命令行,有没有更简单、快捷的方法呢?有!使用RestCloud ETL Shell组件构建流程,实现定时/手动运行任务。
2.整体流程图:

3.实现步骤:
3.1创建一个流程,在脚本执行组件分类中拉取一个执行Shell脚本组件

3.2 配置Shell脚本内容

这里使用调用远程服务器的方式调用,填写好远程服务器的IP、登录用户ID、密码以及需要执行的shell脚本。
Shell脚本这里可以使用变量的方式,动态获取到流程里的数据或者是http请求传进来的数据。
Shell脚本示例代码如下:
============
#!/bin/bash
#!/usr/bin/env python
source /etc/profile
python /usr/wgx/datax/bin/datax.py -p "-DlastSuccessEndTime='2022-05-12 18:37:27'" \
/usr/wgx/datax/job/mysql-job3.json
============
DataX的Job示例代码如下:

3.3 配置断言执行逻辑
运行的结果会存放到shellResult变量中,所以可以通过在流程线中获取并进行判断。
如果返回的是0代表成功,其他返回则不成功,不成功我们则可以实现发送钉钉消息的方式预警消息。

成功的路由线配置

失败的路由线配置
失败后则通过钉钉消息的方式发送:

钉钉配置
这样,整个流程就已经配置完成了。
3.4 配置定时调度

我们可以通过返回到流程界面,修改流程配置。
我们这里使用 只有主服务器可运行 即可。
运行方式:我们这里选择定时调度的方式运行
调度策略:根据自己的需求选择调度的策略
任务调度模式:
任务队列领取模式:表示将任务放到队列中,由服务器自由领取的方式运行
所有集群服务器均可同时运行:表示所有服务器均执行
只有主服务器可运行:适用于主服务器性能比其他服务器高时使用,或只有一台服务器 运行时使用
由调度服务器统一调度:表示由系统的调度器统一调度

4.执行结果
我们可以手动运行并查看调度记录

具体的流程运行流程线可以点击图形控制查看

我们进入到datax可以查看到运行产生的日志文件

当执行Shell失败时,则发送钉钉消息

到这里,完成了通过RestCloud ETL Shell组件实现远程调度datax任务。

感谢您对我们的关注和支持!如需了解更多的功能,请加入RestCloud ETL社区免费下载体验,下载地址:https://etl.restcloud.cn
使用RestCloud ETL Shell组件实现定时调度DataX离线任务的更多相关文章
- 十七、.net core(.NET 6)搭建基于Quartz组件的定时调度任务
搭建基于Quartz组件的定时调度任务 先在package包项目下,添加Quartz定时器组件: 新建类库项目Wsk.Core.QuartzNet,并且引用包类库项目.然后新建一个中间调度类,叫Qu ...
- crontab定时调度shell脚本
本人最近要用crontab做一个定时调度任务,调一个启动脚本去执行jar包,并给main方法传一个日期参数. Linux系统:CentOS7 输入: crontab -e 在里面编写: SHELL=/ ...
- Spring中实现定时调度
1, 内容简介 所谓的定时调度,是指在无人值守的时候系统可以在某一时刻执行某些特定的功能采用的一种机制,对于传统的开发而言,定时调度的操作分为两种形式: 定时触发:到某一时间点上执行某些处理操作: ...
- springmvc+quartz简单实现定时调度
一.简介:Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十 ...
- 基于Azkaban的任务定时调度实践
本文由云+社区发表 作者:maxluo 一.Azkaban介绍 Azkaban是LinkedIn开源的任务调度框架,类似于JavaEE中的JBPM和Activiti工作流框架. Azkaban功能和特 ...
- SpringBoot系列九:SpringBoot服务整合(整合邮件服务、定时调度、Actuator监控)
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.概念:SpringBoot 服务整合 2.背景 在进行项目开发的时候经常会遇见以下的几个问题:需要进行邮件发送.定时的任务调 ...
- java定时调度器解决方案分类及特性介绍
什么是定时调度器? 我们知道程序的运行要么是由事件触发的,而这种事件的触发源头往往是用户通过ui交互操作层层传递过来的:但是我们知道还有另外一种由机器系统时间触发的程序运行场景.大家想想是否遇到或者听 ...
- ASP.NET Core使用Quartz定时调度
在应用程序开发过程中,经常会需要定时任务调度功能,本篇博客介绍Asp.net Core如何使用Quartz完成定时调度 一.Quartz使用步骤 创建调度器scheduler,并开启 创建Job作业 ...
- 定时调度插件------FluentScheduler
定时调度插件------FluentScheduler 源码地址 官网文档地址 使用说明 dll引用 文章使用的版本为5.5.1版本 使用GuGet搜索FluentScheduler即可找到 如果框架 ...
- Quartz定时调度框架
Quartz定时调度框架CronTrigger时间配置格式说明 CronTrigger时间格式配置说明 CronTrigger配置格式: 格式: [秒] [分] [小时] [日] [月] [周] [年 ...
随机推荐
- 对List进行分页工具类
对List<?>进行分页工具类 package com.soft.mpms.zfream.util; import java.util.List; /** * @ClassName 对Li ...
- AutoFac(三)——装配扫描(批量注册之扫描模块)
RegisterAssemblyModules() 模块扫描使用RegisterAssemblyModules()注册方法执行,该方法完全按照其名称执行.它扫描提供的Autofac模块的程序集,创建模 ...
- 基于docker的AI-Codereview-Gitlab部署实战
AI-Codereview-Gitlab是一个基于大模型的自动化代码审查工具,帮助开发团队在代码合并或提交时,快速进行智能化的审查(Code Review),提升代码质量和开发效率. 主要功能 多模型 ...
- spring boot迁移计划 第Ⅰ章 --chapter 1. rust hyper 结合rust nacos-client开发nacos网关 part ② hyper网关
1. toml依赖 hyper = { version = "1", features = ["full"] } tokio = { version = &qu ...
- 鸿蒙Next元服务开发详解
之前写过关于元服务的文章,大家对元服务应该也有一定的了解,它是一种更加高效便捷的应用形式,免安装,有独立的入口,说的简单一点就像是把微信小程序放到系统层面,相比微信小程序更加快捷,因为连微信也不用打开 ...
- vue3 基础-列表渲染
本篇讲列表渲染, 主要是对 v-on 指令配合 v-if 和一些数组相关的方法来体验 vue 的模板渲染方法. 数组元素的渲染 <!DOCTYPE html> <html lang= ...
- 将查询集SQL-存为物理 OR 临时表
最近的BI项目, 就是会涉及大量的 sql, 后台处理也全是 sql 来拼接成一张物理宽表, 然后前台也是用 sql 来做各种图形骚操作. 尤其是后台处理部分, 大量的sql, 有点尴尬的事情是, s ...
- 踩坑之MySQL安装及修改初始密码
不得不说,mysql client的安装及改初始密码步骤多,繁琐,坑也不少,下面就总结下安装流程及遇到的那些坑(Windows): 1.安装 安装地址:https://dev.mysql.com/do ...
- 赣CTF-Misc方向wp
checkin 下载附件,一张图片,拖进010,在文件尾看到隐藏文本,提取并用社会主义价值解密 ez_forensics 提示为结合题目进行想象,我们会想到取证第一步vc挂载,但是需要密码,研究图片, ...
- Linux日志 查找关键字及其前后的信息
文章<五分钟扫盲:25个工作中常用的Linux命令>介绍了常用的Linux命令,属于理论知识,这里知行合一,介绍如何从Linux日志中通过关键字过滤出我们需要的信息. 这里以查看名 ...