diff --git a/ckan/Dockerfile.worker b/ckan/Dockerfile.worker index d170e6f6..2dbf949b 100644 --- a/ckan/Dockerfile.worker +++ b/ckan/Dockerfile.worker @@ -11,6 +11,8 @@ COPY supervisor/ckan_*.conf /etc/supervisord.d COPY supervisor/supervisord.conf /etc/supervisord.conf ## Cron jobs config +COPY setup/dbca_logs_maintenance.sql $APP_DIR +RUN chmod -x $APP_DIR/dbca_logs_maintenance.sql COPY setup/dbca_ckan_cron_jobs $APP_DIR RUN chmod -x $APP_DIR/dbca_ckan_cron_jobs RUN crontab -u ckan $APP_DIR/dbca_ckan_cron_jobs diff --git a/ckan/setup/dbca_ckan_cron_jobs b/ckan/setup/dbca_ckan_cron_jobs index d18efa58..4f6ee959 100644 --- a/ckan/setup/dbca_ckan_cron_jobs +++ b/ckan/setup/dbca_ckan_cron_jobs @@ -8,4 +8,6 @@ # 12:30am report generation for archiver broken links 30 0 * * * /usr/bin/ckan -c /srv/app/config/dbca.ini report generate >> /srv/app/logs/ckan-cron-jobs.log 2>&1 # 8am task to send CKAN email notifications -0 8 * * * /usr/bin/ckan -c /srv/app/config/dbca.ini notify send_emails >> /srv/app/logs/ckan-cron-jobs.log 2>&1 \ No newline at end of file +0 8 * * * /usr/bin/ckan -c /srv/app/config/dbca.ini notify send_emails >> /srv/app/logs/ckan-cron-jobs.log 2>&1 +# Midnight dbca logs maintenance +0 0 * * * psql $CKAN_SQLALCHEMY_URL -f /srv/app/dbca_logs_maintenance.sql >> /srv/app/logs/ckan-cron-jobs.log 2>&1 \ No newline at end of file diff --git a/ckan/setup/dbca_logs_maintenance.sql b/ckan/setup/dbca_logs_maintenance.sql new file mode 100644 index 00000000..32055c5a --- /dev/null +++ b/ckan/setup/dbca_logs_maintenance.sql @@ -0,0 +1,5 @@ +DELETE FROM "public"."dbca_logs" +WHERE to_timestamp("timestamp", 'YYYY-MM-DD HH24:MI:SS,MS') < NOW() - INTERVAL '30 days' +; +VACUUM "public"."dbca_logs" +; \ No newline at end of file