From 23479aa5f726d71bc951e87b52eed8bcd3fc4f59 Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Tue, 3 Sep 2013 12:55:23 -0500 Subject: [PATCH] Issue #2224 Add enable flag to archive purger and move properties to plug-in. Change-Id: I6fd80f4b5f1326a173bd8e980735781d9ec03898 Former-commit-id: c9b8280236e1a3fc3afe9fb74e0b4c7c88c31179 --- .../esb/conf/spring/cron.properties | 4 --- ...m.raytheon.uf.edex.archive.cron.properties | 6 ++++ .../uf/edex/archive/purge/ArchivePurger.java | 36 +++++++++++-------- 3 files changed, 28 insertions(+), 18 deletions(-) create mode 100644 edexOsgi/com.raytheon.uf.edex.archive/resources/com.raytheon.uf.edex.archive.cron.properties diff --git a/edexOsgi/build.edex/esb/conf/spring/cron.properties b/edexOsgi/build.edex/esb/conf/spring/cron.properties index a865af4eff..5abb0dbe05 100644 --- a/edexOsgi/build.edex/esb/conf/spring/cron.properties +++ b/edexOsgi/build.edex/esb/conf/spring/cron.properties @@ -12,10 +12,6 @@ qc.cron=0+2,7,12,17,22,27,32,37,42,47,52,57+*+*+*+? acarssounding.cron=00+10,30,50+*+*+*+? gfe.cron=0+15+*+*+*+? repack.cron=0+20+*+*+*+? -# runs database and hdf5 archive for archive server to pull data from -archive.cron=0+40+*+*+*+? -# purge archives -archive.purge.cron=0+0+*+*+*+? ###purge configuration # Interval at which the purge job kicks off diff --git a/edexOsgi/com.raytheon.uf.edex.archive/resources/com.raytheon.uf.edex.archive.cron.properties b/edexOsgi/com.raytheon.uf.edex.archive/resources/com.raytheon.uf.edex.archive.cron.properties new file mode 100644 index 0000000000..9b9705e607 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.archive/resources/com.raytheon.uf.edex.archive.cron.properties @@ -0,0 +1,6 @@ +# runs database and hdf5 archive for archive server to pull data from +archive.cron=0+40+*+*+*+? +# purge archives +archive.purge.cron=0+5+*+*+*+? +# enable archive purge +archive.purge.enable=false diff --git a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java index 7806756290..3802050faa 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java +++ b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java @@ -40,6 +40,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority; * Added info logging for purge counts. * Aug 28, 2013 2299 rferrel manager.purgeExpiredFromArchive now returns * number of files purged. + * Sep 03, 2013 2224 rferrel Add check to enable/disable purger. * * * @@ -49,27 +50,34 @@ import com.raytheon.uf.common.status.UFStatus.Priority; public class ArchivePurger { private final static IUFStatusHandler statusHandler = UFStatus - .getHandler(ArchiveConfigManager.class); + .getHandler(ArchivePurger.class); + + private final static String ENABLE_PROPERTY = "archive.purge.enable"; /** * Purge expired elements from the archives. */ public static void purge() { - ArchiveConfigManager manager = ArchiveConfigManager.getInstance(); - Collection archives = manager.getArchives(); - for (ArchiveConfig archive : archives) { - int purgeCount = manager.purgeExpiredFromArchive(archive); - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - StringBuilder sb = new StringBuilder(archive.getName()); - sb.append("::Archive Purged "); - sb.append(purgeCount); - sb.append(" file"); - if (purgeCount != 1) { - sb.append("s"); + String enableString = System.getProperty(ENABLE_PROPERTY, "false"); + if (Boolean.parseBoolean(enableString)) { + statusHandler.info("::Archive Purged started."); + ArchiveConfigManager manager = ArchiveConfigManager.getInstance(); + Collection archives = manager.getArchives(); + for (ArchiveConfig archive : archives) { + int purgeCount = manager.purgeExpiredFromArchive(archive); + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + StringBuilder sb = new StringBuilder(archive.getName()); + sb.append("::Archive Purged "); + sb.append(purgeCount); + sb.append(" file"); + if (purgeCount != 1) { + sb.append("s"); + } + sb.append("."); + statusHandler.info(sb.toString()); } - sb.append("."); - statusHandler.info(sb.toString()); } + statusHandler.info("::Archive Purged finished."); } } }