don't backup the huge monitor db
[infrastructure.git] / scripts / ple-backup-cleanup.cron
index afc0597..289e47f 100755 (executable)
@@ -37,11 +37,22 @@ function backup_db {
 # $3: Date
 function backup_all_dbs {
     for i in $(psql -qtAF '|' -U postgres -l 2> /dev/null) ; do
+       NF=$(echo $i | awk -F '|' '{print NF}')
+       if [ $NF -ne 6 ]; then continue; fi
        DBNAME=$(echo $i | cut -d '|' -f 1)
        DBUSER=$(echo $i | cut -d '|' -f 2)
        case $DBNAME in 
-           template*[01]) ;;
-           *) backup_db $1 $2 $3 $DBNAME $DBUSER
+           template*[01])
+               ;;
+           monitor)
+               # only once every third day; this has reached the 10Bg mark already !
+               #(( $(date +%d) % 3 )) || backup_db $1 $2 $3 $DBNAME $DBUSER ;;
+               # Thierry - dec 2015 - skip this one entirely
+               # too big and not really interesting
+               ;;
+           *)
+               backup_db $1 $2 $3 $DBNAME $DBUSER
+               ;;
        esac
     done
 }
@@ -87,7 +98,7 @@ function backup () {
     echo "Please do not change this script directly, use git and related makefile at"
     echo "but http://git.onelab.eu/?p=infrastructure.git;a=blob;f=scripts/ple-backup-cleanup.cron"
     # postgresql
-    ps -C postmaster >& /dev/null && backup_all_dbs $BACKUP_DIR $HOST $DATE \
+    ps -C postmaster >& /dev/null || ps -C postgres >& /dev/null && backup_all_dbs $BACKUP_DIR $HOST $DATE \
        || echo "No postgresql database to backup on $HOST"
     # ejabberd
     type -p ejabberdctl >& /dev/null && backup_ejabberd $BACKUP_DIR $DATE \