Всем привет! пишу скрипт для бекапа Elasticsearch, и хочу после завершения бекапа смотреть действительно ли забекапились данные ( индексы ) Каждый день у меня в elasticsearch создаются некие индексы которые я хочу бекапить, и при запуске скрипта для бекапа эти индексы я вставляю в переменную ( для примера сниппет из моего скрипта)
_DATE=$(date '+%Y.%m.%d')
_UZBEKISTAN_INDICES=$(curl -s -X GET "localhost:9200/_cat/indices?v" | grep 'tashkent-'$_DATE'\|fergana-'$_DATE'' | awk '{ print $3 }')
и если мы сделаем echo _$UZBEKISTAN_INDICES в скрипте то вывод будет такой
tashkent-2021.09.20 fergana-2021.09.20
Для проверки бекапа Имеется такой выхлоп со списком индексов которые забекапились
curl -s -XGET "localhost:9200/_snapshot/uzbekistan-2021.09.20/uzbekistan-2021.09.20/?pretty"
{
"snapshots" : [
{
"snapshot" : "uzbekistan-2021.09.20",
"uuid" : "CLDZ6bLpS06s37tUKNwxpg",
"version_id" : 7040099,
"version" : "7.4.0",
"indices" : [
"tashkent-2021.09.20",
"fergana-2021.09.20"
],
"include_global_state" : false,
"metadata" : {
"taken_by" : "kimchy",
"taken_because" : "backup before upgrading"
},
"state" : "SUCCESS",
"start_time" : "2021-09-20T07:00:06.272Z",
"start_time_in_millis" : 1632121206272,
"end_time" : "2021-09-20T07:00:06.472Z",
"end_time_in_millis" : 1632121206472,
"duration_in_millis" : 200,
"failures" : [ ],
"shards" : {
"total" : 2,
"failed" : 0,
"successful" : 2
}
}
]
}
думаю что правильнее будет проверять какие именно индексы забекапились и сравнивать их с содержимым переменной _$UZBEKISTAN_INDICES а проверять нужно с этого момента в выхлопе
"indices" : [
"tashkent-2021.09.20",
"fergana-2021.09.20"
],
знатоки, подскажите пожалуйста как грамотно организовать проверку?