定时任务

2021-6-29 Guide
  • 数据开发
  • 定时看板
About 13 min

# 定时任务

IBI定时作业现阶段定位于提供一款轻量级数据开发、ETL作业平台,适用于数据任务不是很大的需求场景,如果企业任务多、任务重,建议上分布式任务调度平台如:DolphinScheduler等

# 任务类型

# 邮件发送看板、大屏

# 服务端请求插件配置

通过定时任务发送看板,需要服务端定时在后台做看板模拟请求,该功能需要安装配置到模拟请求插件
模拟请求插件可以在配置文件中配置或在配置页面配置, 在配置页面配置的优先级高于配置文件中的配置项

## 看板导出、邮件发送依赖插件
pkg_puppetter=/Users/xxx/cboard/pkg-puppeteer/build/pkg-puppeter-macos
pkg.puppetter.args=-DvpWidth=1920 -DvpHeight=1080 -DvpScale=1
## 导出插件模拟请求地址
frontend.baseurl=http://localhost:8026/cboard
1
2
3
4
5

配置页面配置如下:

# 邮件服务器配置

配置文件配置

mail.smtp.host=127.0.0.1
mail.smtp.port=8825
mail.smtp.from=test@test.com
##mail.smtp.username=test@test.com
##mail.smtp.password=111111
##mail.smtp.ssl.checkserveridentity=false
1
2
3
4
5
6

配置页面配置

# 新建任务,填写任务表单

  • 任务名称
  • 任务有效期
  • 周期(Quartz表达式为只读属性,不能直接编辑)
  • 任务类型(邮件发送Send Mail)

# 配置邮件内容

  • 收件人(必填)/抄送/密送/邮件主题
  • 添加看板:可以添加多个看板
  • 配置看板展示形式
    • Excel:看板以Excel附件形式展示
    • Image:看板以页面截图形式在邮件正文展示
    • Excel+Image:两种形式共存
    • HtmlTable: 邮件正文为Html表格

邮件标题与内容

从v1.6.0开始邮件标题和内容支持内置变量解析,如时间变量使用

# 立即运行

邮件添加完整可以立即运行,运行失败点击点击debug按钮查看出错信息

# 微信发送看板、大屏

  • 配置企业微信机器人webhook key,并测试连通性
  • 选择需要发送的看板

# 加载缓存数据集

缓存数据集默认每天凌晨0点刷新缓存,对于更新频率高于天的缓存数据集,可以通过定时任务刷新数据

# SQL和存储过程

  • 任务类型选择SQL或存储过程
  • SQL任务,一次可以执行多个sql,sql之间用分号分割
  • SQL任务支持变量

# DataX任务

DataX目录配置

在使用DataX任务之前,需要自行安装配置好DataX安装目录,管理员登陆系统,管理-> 系统配置 -> 定时任务 -> datax安装目录

# 图形化配置模式

  • 选择源数据库
  • 填写数据查询sql(支持变量), 并预览数据
  • 如果读取的数据量比较大,可以配置数据分片字段,多个字段用英文逗号分割
  • 选择目标数据库
  • 选择目标表(通过点击数据按钮可以查看当前目标表数据,检查目标表数据是否存在)
  • 字段选择(不配置为一一对应加载,建议按实际情况配置字段)
  • 高级配置
    • 扩展json:用于覆盖自动生成JSON
    • PreSQL: 加载前执行sql
    • PostSQL: 加载后执行sql
    • 建表:当目标表不存在时,在页面进行自动建表操作,点击字段加载程序根据源数据查询结果生成字段列表,然后点击建表

# 纯JSON配置模式

JSON模式适用于对DataX配置熟悉的或者已有现成DataX配置的场景

# shell任务

# shell执行租户

shell运行租户指shell任务执行时切换的操作系统用户,租户添加需要管理员在系统配置页面添加,添加的租户需要确保在操作系统重存在

日志查看

shell任务支持准实时的在任务日志窗口查看

# 启动任务节点

在启动节点中用户可以统一定义手续任务的运行参数

# 任务特性

# 变量配置

  • 支持任务定义变量、
  • 任务启动变量, 用于临时运行任务,在不改变配置默认参数配置的情况下修改运行参数,如补数任务场景
  • 启动变量支持下游依赖传递

# 任务依赖

# 任务执行失败提醒

邮件任务发送失败之后会发送失败通知给邮件管理员,此外,如果邮件任务所有者账号如果有配置邮箱地址,相应通知也会发送给该所有者

## 该配置支持在application.properties和系统配置页面配置
mail.job.admin=aa@domain.com
1
2

Last update: April 29, 2024 17:46