场景
Azkaban默认的异常提醒为邮件提醒,但在实际工作中邮件并不那么方便。于是azakabn调度任务失败及删除定时任务时都需要钉钉,短信提醒等。
引入
因为考虑到azakabn的默认方法为邮件提醒,若改为钉钉提醒需要更改源码,但源码被编译过。然后我就想到从MySQL的触发器http请求主动通知业务系统(mysql-udf-http)。
一、MySQL的触发器
什么是触发器
触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合。触发器的这种特性可以协助应用在数据库端确保数据的完整性。
CREATE TRIGGER trigger_name trigger_time trigger_event ON tb_name FOR EACH ROW trigger_stmt
trigger_name:触发器的名称
tirgger_time:触发时机,为BEFORE或者AFTER
trigger_event:触发事件,为INSERT、DELETE或者UPDATE
tb_name:表示建立触发器的表明,就是在哪张表上建立触发器
trigger_stmt:触发器的程序体,可以是一条SQL语句或者是用BEGIN和END包含的多条语句
所以可以说MySQL创建以下六种触发器:
BEFORE INSERT,BEFORE DELETE,BEFORE UPDATE
AFTER INSERT,AFTER DELETE,AFTER UPDATE
二、MySQL的触发器的安装
tar zxvf mysql-udf-http-1.0.tar.gz
cd mysql-udf-http-1.0/
./co