有一种方法可以控制作业失败后Azkaban发生的事情, 我的意思是如果特定的工作失败,做特定的事 让我们说,hive的加载失败了,我想发送错误到splank 可能吗? 或者我应该创建将插入和处理失败的特定作业,如python
由于
答案 0 :(得分:1)
我处理此问题的方法是使用以下作业运行具有command
作业类型的脚本。我有我的脚本检查错误情况,然后执行和操作仅如果发现错误。
#!/bin/bash
check=${./_check_script.sh $arg1 $arg2}
if [ -z $check ]; then
echo "ERROR FOUND"
./_error_action.sh $arg1 $arg2
fi
请注意,在运行之前,您必须允许Azkaban用户(chmod +x
)对任何脚本执行脚本。由于使用.zip
作为上传格式,它们不会继承权限。
type=command
command=chmod +x _alert_for_error.sh
command.1=chmod +x _check_script.sh
command.2=chmod +x _error_action.sh
command.3=./_alert_for_error.sh