【Kettle】job中设置自动发送邮件

背景:业务每周六需要固定格式的数据,手工跑脚本太麻烦,为了偷懒,设计了job,定时启动job,并把数据自动发送到对方邮箱。
一   kettle服务器定时任务如下:每周六上午九点执行脚本调度job
0 9 * * 6 source /etc/profile;/opt/program_etl/weekly_jss_jingsuanshi_taibaorenewal_trace.py

weekly_jss_jingsuanshi_taibaorenewal_trace.py调度脚本如下:
#!/usr/bin/python
#create by liuguorui at 2018-04-19 10:00:00

import os
import datetime

def start(date):
    shell='/opt/dtb_etl/kitchen.sh -rep=### -user=### -pass=### -job=weekly_jss_jingsuanshi_taibaorenewal_trace -dir=mk -level=Error >> /opt/log_etl/weekly_jss_jingsuanshi_taibaorenewal_trace/%s.log 2>&1 '%(date)
    #print shell
    os.system(shell)

if __name__ == '__main__':
    date=str(datetime.datetime.now()-datetime.timedelta(days=1)).split(' ')[0]
    start(date)
二   job如下:

【Kettle】job中设置自动发送邮件_第1张图片

作业步骤详细分析:
1. start :作业开始,不做过多解释
2. 转换:这步我主要是把数据通过SQL查出来,表输出到数据库中的另外一张表。
【Kettle】job中设置自动发送邮件_第2张图片

3. 转换:从新生成的表中SQL查询想要的数据,excel输出到本地。
【Kettle】job中设置自动发送邮件_第3张图片

4. 添加文件到结果文件中:如果邮件中想把输出结果作为附件发送,这步是必不可少的。
【Kettle】job中设置自动发送邮件_第4张图片
5. 配置正确邮件发送
【Kettle】job中设置自动发送邮件_第5张图片

【Kettle】job中设置自动发送邮件_第6张图片

【Kettle】job中设置自动发送邮件_第7张图片

6. 配置错误邮件发送
和正确邮件发送配置相同,设置跳的状态为‘×’,即步骤执行错误时发送邮件。

7. 成功:job执行完毕

你可能感兴趣的:(Kettle)