Com comentava sobre les quotes d’emmagatzematge fa un temps, l’emmagatzematge que tenim actualment al servidor és limitat.
Per a evitar que hi hagi problemes per un nombre massa gran d’usuaris que omplin tot l’emmagatzematge, he muntat un petit bot que m’envia un missatge si se sobrepassa el 70% d’emmagatzematge ple (ara som al 34%). A més a més, cada divendres m’envia un resum de la setmana, així podem detectar un increment pronunciat de l’ús de l’emmagatzematge i prendre les mesures que creguem més convenients (tancar registres, fer neteja…).
Deixo per aquí a tall de documentació el codi en bash que he fet:
#!/bin/bash
export DIR="/home/quota"
export PERC="$( df . | tr -s ' ' | cut -d ' ' -f 5 | sed '1d' )"
PERCENTATGES=("70%" "$PERC")
if [ "$(printf "%s\n" "${PERCENTATGES[@]}" | sort -n | head -n 1)" == "70%" ]
then
python3 notifier.py send "S'ha sobrepassat: $PERC"
fi
echo "$(date +%d/%m/%y) - $PERC" >> "$DIR/server-quota.log"
# Enviar resum setmanal
if [ $(wc -l < "$DIR/server-quota.log") -gt 8 ]
then
python3 notifier.py send "$(cat "$DIR/server-quota.log")"
# Reinicialitzem el registre
echo "RESUM SETMANAL:" > "$DIR/server-quota.log"
echo "" >> "$DIR/server-quota.log"
fi
El notifier.py és una còpia d’aquest bot del DeltaChat, que funciona amb la biblioteca de Python deltabot-cli. Ara ha deixat de funcionar per alguna raó, però bé.
Està configurat perquè s’executi cada dia a les sis del matí amb un cronjob:
0 6 * * * bash /home/quota/quota.sh