diff --git a/check_odoo2_storage.sh b/check_odoo2_storage.sh new file mode 100755 index 0000000000000000000000000000000000000000..4a6b6190abf821fbd3d24f08cbb23db9fe05f575 --- /dev/null +++ b/check_odoo2_storage.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# Copyright © 2019 Le Filament (<http://www.le-filament.com>) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +OUTPUT="" +PERF_DATA="" +RETURN_CODE="0" +for file in `ls /backup/odoo2/*.latest` +do + CONTAINER=$(grep "Container:" $file | cut -d ":" -f 2 | tr -d " ") + BYTES=$(grep "Bytes:" $file | cut -d ":" -f 2 | tr -d " ") + OBJECTS=$(grep "Objects:" $file | cut -d ":" -f 2 | tr -d " ") + LAST_FULL_BACKUP=$(grep full-signature $file | tail -1) + LAST_INC_BACKUP=$(grep new-signature $file | tail -1) + if [ `date -d "${LAST_FULL_BACKUP:5:19}" +%s` -gt `date -d '1 day ago' +%s` ] || [ `date -d "${LAST_INC_BACKUP:5:19}" +%s` -gt `date -d '1 day ago' +%s` ] + then + OUTPUT+="OK: Container: $CONTAINER, Size: $BYTES, # Files: $OBJECTS, Last-Full-Backup: ${LAST_FULL_BACKUP:5:19}, Last-Incremental-Backup: ${LAST_INC_BACKUP:5:19}\n" + else + OUTPUT+="NOK: Container: $CONTAINER, Size: $BYTES, # Files: $OBJECTS, Last-Full-Backup: ${LAST_FULL_BACKUP:5:19}, Last-Incremental-Backup: ${LAST_INC_BACKUP:5:19}\n" + RETURN_CODE="2" + fi + PERF_DATA+="${CONTAINER}_size=$BYTES ${CONTAINER}_files=$OBJECTS " +done +echo "$OUTPUT | $PERF_DATA" +exit ${RETURN_CODE}