diff --git a/debian/resources/backup/fusionpbx-maintenance b/debian/resources/backup/fusionpbx-maintenance index caae748..76303cd 100755 --- a/debian/resources/backup/fusionpbx-maintenance +++ b/debian/resources/backup/fusionpbx-maintenance @@ -16,6 +16,8 @@ purge_switch_logs=true purge_php_sessions=true purge_database_transactions=true purge_device_logs=false +purge_event_guard_logs=false +purge_user_logs=false purge_email_queue=false purge_fax_queue=true @@ -27,6 +29,8 @@ days_keep_switch_logs=7 days_keep_php_sessions=8 days_keep_database_transactions=30 days_keep_device_logs=180 +days_keep_event_guard_logs=180 +days_keep_user_logs=180 days_keep_email_queue=30 days_keep_fax_queue=30 @@ -44,7 +48,7 @@ fi echo "Maintenance Started" if [ .$purge_switch_logs = .true ]; then - #delete freeswitch logs older 7 days + #delete freeswitch logs older n days if [ .$switch_package = .true ]; then find /var/log/freeswitch/freeswitch.log.* -mtime +$days_keep_switch_logs -exec rm {} \; else @@ -55,7 +59,7 @@ else fi if [ .$purge_fax = .true ]; then - #delete fax older than 90 days + #delete fax older than n days if [ .$switch_package = .true ]; then echo "."; find /var/lib/freeswitch/storage/fax/* -name '*.tif' -mtime +$days_keep_fax -exec rm {} \; @@ -73,7 +77,7 @@ else fi if [ .$purge_call_recordings = .true ]; then - #delete call recordings older than 90 days + #delete call recordings older than n days if [ .$switch_package = .true ]; then find /var/lib/freeswitch/recordings/*/archive/* -name '*.wav' -mtime +$days_keep_call_recordings -exec rm {} \; find /var/lib/freeswitch/recordings/*/archive/* -name '*.mp3' -mtime +$days_keep_call_recordings -exec rm {} \; @@ -88,7 +92,7 @@ else fi if [ .$purge_voicemail = .true ]; then - #delete voicemail older than 90 days + #delete voicemail older than n days if [ .$switch_package = .true ]; then echo "."; find /var/lib/freeswitch/storage/voicemail/default/* -name 'msg_*.wav' -mtime +$days_keep_voicemail -exec rm {} \; @@ -104,8 +108,14 @@ else fi if [ .$purge_cdrs = .true ]; then - #delete call detail records older 90 days + #delete call detail records older n days psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_xml_cdr WHERE start_stamp < NOW() - INTERVAL '$days_keep_cdrs days'" + #call detail record - call flow + psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_xml_cdr_flow WHERE insert_date < NOW() - INTERVAL 'days_keep_cdrs days'" + #call detail record - json + psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_xml_cdr_json WHERE start_stamp < NOW() - INTERVAL 'days_keep_cdrs days'" + #call detail record - call logs + psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_xml_cdr_logs WHERE log_date < NOW() - INTERVAL 'days_keep_cdrs days'" else echo "not purging CDRs." fi @@ -117,7 +127,7 @@ else echo "not purging PHP Sessions." fi -#delete database_transactions older 90 days +#delete database_transactions older n days if [ .$purge_database_transactions = .true ]; then psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_database_transactions where transaction_date < NOW() - INTERVAL '$days_keep_database_transactions days'" else @@ -131,14 +141,28 @@ else echo "not purging device_logs." fi -#delete email_queue older 30 days +#delete event_guard_logs older n days +if [ .$purge_event_guard_logs = .true ]; then + psql --host=127.0.0.1 --username=fusionpbx -c "delete from v_event_guard_logs where timestamp < NOW() - INTERVAL '$days_keep_event_guard_logs days'" +else + echo "not purging event_guard_logs." +fi + +#delete user_logs older n days +if [ .$days_keep_event_guard_logs = .true ]; then + psql --host=127.0.0.1 --username=fusionpbx -c "delete from v_user_logs where timestamp < NOW() - INTERVAL '$days_keep_user_logs days'" +else + echo "not purging user_logs." +fi + +#delete email_queue older n days if [ .$purge_email_queue = .true ]; then psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_email_queue where email_status = 'sent' and email_date < NOW() - INTERVAL '$days_keep_email_queue days'" else echo "not purging email_queue." fi -#delete fax_queue older 30 days +#delete fax_queue older n days if [ .$purge_fax_queue = .true ]; then psql $db_name --port $db_port --host=$db_host --username=$db_username -c "delete from v_fax_queue where fax_status = 'sent' and fax_date < NOW() - INTERVAL '$days_keep_fax_queue days'" else