shell脚本获取hive中数据,并进行预警

数据每天都要抽取到hive中,在生产中可能会遇到各种各样的问题,比如集群宕机,kafka出现故障等等,可以写一个shell脚本,从hive中拿到数据,然后将报警信息发送邮件或者企业微信。
脚本如下:

#!/bin
##发送微信

in_date=$1

if [ ! $in_date ]; then
yesterday=`date -d "yesterday" '+%Y%m%d'`
yesterday1=`date -d "yesterday" '+%Y-%m-%d'`
else
yesterday=$in_date
yesterday1=`date -d "$in_date" '+%Y-%m-%d'`
fi

today=`date +%Y-%m-%d`

echo $yesterday
echo $yesterday1
echo $today

time1="$yesterday1 00:00:00"
time2="$yesterday1 12:00:00"
time3="$today 00:00:00"

echo $time1
echo $time2
echo $time3

sql="select count(*) from ods.test where log_day='$yesterday' and time between '$time1' and '$time2'"
sql1="select count(*) from ods.test where log_day='$yesterday' and time between '$time2' and '$time3'"


var=`hive -e "${sql}" | grep -v "WARN"`
var1=`hive -e "${sql1}" | grep -v "WARN"`

if [ $var -le 1000 ]
then
    echo "数据量小于1000,请核实!"
    warn1="警告:"$time2"抽取数据量小于1000,请核实!"
   发送邮件或者企业微信脚本 $warn1
fi
echo "警告:" $time2 "抽取" $var"条数据"

if [ $var1 -le 2000 ]
then
    echo "数据量小于2000,请核实!"
    warn2="警告:"$time3"抽取数据量小于2000,请核实!"
   发送邮件或者企业微信脚本 $warn2
fi
echo "警告:" $time3 "抽取" $var1"条数据"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值