1.http://192.168.1.144:9093/#/alerts 显示的告警时间是UTC时间
2.脚本的变量
{"status":"success"}[root@k8s elasticsearch]# cat vars_config.conf|egrep -v '#' INDEX_FILE="/opt/elasticsearch/indices_file.txt" ELASTICSEARCHDUMP_CMD="/usr/local/node-v10.16.2-linux-x64/bin/elasticdump" OUTPUT_DIR="/data/backup/elasticsearch$(date +%Y%m%d%H%M%S)" INPUT_DIR="/data/backup/elasticsearch$(date +%Y%m%d%H%M%S)" BACKUP_ESURL="http://192.168.1.49:9200" REVOVER_ESURL="http://192.168.1.144:9200" ALERT_URL="http://192.168.1.144:9093/api/v1/alerts" FAILALERT='[ { "labels": { "local_time": "bjsj", "alertname": "esname", "instance": "192.168.1.49", "level": "critical..." }, "alert": { "startsAt": "2019-11-11 11:11:11" }, "annotations": { "description": "elasticsearch backup FAIL--descriptionfail" } } ]' SUCCESSALERT='[ { "labels": { "local_time": "bjsj", "alertname": "123456ALERTname", "instance": "192.168.1.49", "level": "info..." }, "alert": { "startsAt": "2019-11-11 11:11:11" }, "annotations": { "description": "es backup SUCCESS--descriptionsuccess", "summary": "es backup DONE..." }, "startsAt": "rfcstartat", "endsAt": "rfcendat" } ]'
3.发送脚本
[root@k8s elasticsearch]# cat backup_es.sh|egrep -v '#' source ./vars_config.conf sleep 3 if [ ! -d "$OUTPUT_DIR" ] then mkdir -p "$OUTPUT_DIR" fi echo "$FAILALERT" > local_time.txt for index in `cat $INDEX_FILE` do $ELASTICSEARCHDUMP_CMD --input=${BACKUP_ESURL}/$index --output=${OUTPUT_DIR}/${index}.map --type=mapping --limit=10000 --concurrency=1 if [[ $? -ne 0 ]];then curl -XPOST -d"`cat jsondata.txt`" $ALERT_URL exit 1 fi $ELASTICSEARCHDUMP_CMD --input=${BACKUP_ESURL}/$index --output=${OUTPUT_DIR}/${index}.settings --type=settings --limit=10000 --concurrency=1 if [[ $? -ne 0 ]];then curl -XPOST -d"`cat jsondata.txt`" $ALERT_URL exit 1 fi $ELASTICSEARCHDUMP_CMD --input=${BACKUP_ESURL}/$index --output=${OUTPUT_DIR}/${index}.data --type=data --limit=10000 --concurrency=1 if [[ $? -ne 0 ]];then curl -XPOST -d"`cat jsondata.txt`" $ALERT_URL exit 1 fi done echo "$SUCCESSALERT" > jsondata.txt date -d'+ 480min' --rfc-3339=seconds |sed 's/ /T/g' >bjsj_startat.txt date -d'+ 481min' --rfc-3339=seconds |sed 's/ /T/g' >bjsj_endat.txt curl -XPOST -d"`cat jsondata.txt`" $ALERT_URL
-------------------------------------------
告警ui默认使用UTC时间
https://prometheus.io/docs/alerting/clients/
通过调整后变成北京时间