X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/4271ab433cd55bbd2612292bcf39e4dc3d7274f1..0907aa4037b12b6b88ee24495d4577a064d4f8db:/stargazer/scripts/clean_db diff --git a/stargazer/scripts/clean_db b/stargazer/scripts/clean_db deleted file mode 100755 index 31a85a97..00000000 --- a/stargazer/scripts/clean_db +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash - -# Этот скрипт производит очистку файловой БД stargazer-а. -# Его можно вызывать вручную или покрону, к примеру раз в неделю или раз в месяц. - - -# Эта переменная задает сколько месяцев детальной статистики оставить в БД -SAVE_MONTHS=3 - -# Эта переменная задает сколько строк оставить в логах юзеров -MAX_LOG_LINES=5000 - -# Тут определяется путь к БД -DB=/var/stargazer/ - - - - -declare -i NOW=`date +%s` -declare -i DT=SAVE_MONTHS*31*24*3600 -declare -i stat_time=0 - -for usr in $DB/users/* -do - echo cleaning `basename $usr` - for ys in $usr/detail_stat/* - do - year=`basename $ys` - - for ms in $ys/* - do - month=`basename $ms` - stat_time=`date --date="$year/$month/01" +%s` - - if (( $NOW - $stat_time > $DT )) - then - rm -fr $ms - fi - done - done - tail -n $MAX_LOG_LINES $usr/log > /tmp/stg_usr_log.`basename $usr` - mv -f /tmp/stg_usr_log.`basename $usr` $usr/log -done -