shjung 1 anno fa
parent
commit
10a762e3f2

+ 5 - 0
src/main/java/com/its/rota/scheduler/config/SchedulingConfig.java

@@ -17,6 +17,11 @@ import javax.annotation.PostConstruct;
 public class SchedulingConfig implements SchedulingConfigurer {
 
     private int poolSize = 0;
+    private boolean useRcvLinkTraffic = false;
+    private boolean useSndIncident = true;
+    private boolean useRcvLog = true;
+    private boolean useSndLog = true;
+    private boolean useRcvIncident = true;
 
     @PostConstruct
     private void init() {

+ 47 - 30
src/main/java/com/its/rota/scheduler/scheduler/ApplicationScheduler.java

@@ -1,5 +1,6 @@
 package com.its.rota.scheduler.scheduler;
 
+import com.its.rota.scheduler.config.SchedulingConfig;
 import com.its.rota.scheduler.service.DeleteService;
 import com.its.rota.scheduler.service.UnitSystService;
 import com.its.rota.scheduler.utils.Elapsed;
@@ -18,6 +19,7 @@ import javax.annotation.PreDestroy;
 @Component
 public class ApplicationScheduler {
 
+    private final SchedulingConfig config;
     private final UnitSystService unitSystService;
     private final DeleteService deleteService;
 
@@ -30,83 +32,98 @@ public class ApplicationScheduler {
     @Scheduled(cron = "0 * * * * *")  // 1분 주기 작업 실행
     public void unitSystSchedule() {
         Elapsed elapsed = new Elapsed();
-        log.info("{}", String.format("%20s: START.", "unitSystSchedule"));
+        log.info("ApplicationScheduler.{}", String.format("%20s: START.", "unitSystSchedule"));
         try {
             this.unitSystService.updateUnitSystStts(true);
-            log.info("{}", String.format("%20s: %s", "unitSystSchedule", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
+            log.info("ApplicationScheduler.{}", String.format("%20s: %s", "unitSystSchedule", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
         }
         catch(Exception e) {
-            log.error("{}: {}", String.format("%20s", "unitSystSchedule"), e.getMessage());
+            log.error("ApplicationScheduler.{}: {}", String.format("%20s", "unitSystSchedule"), e.getMessage());
         }
     }
 
     @Async
-    @Scheduled(cron = "${application.scheduler.delete-rev-link-traffic:0/40 3 * * * *}")
-    public void deleteRcvLinkTraffic() {
+    @Scheduled(cron = "${application.scheduler.delete-snd-incident:0/40 3 * * * *}")
+    public void deleteSndIncident() {
+        if (!this.config.isUseSndIncident()) {
+            return;
+        }
         Elapsed elapsed = new Elapsed();
-        log.info("{}", String.format("%20s: START.", "deleteRcvLinkTraffic"));
+        log.info("ApplicationScheduler.{}", String.format("%20s: START.", "deleteSndIncident"));
         try {
-            this.deleteService.deleteRcvLinkTraffic();
-            log.info("{}", String.format("%20s: %s", "deleteRcvLinkTraffic", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
+            this.deleteService.deleteSndIncident();
+            log.info("ApplicationScheduler.{}", String.format("%20s: %s", "deleteSndIncident", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
         }
         catch(Exception e) {
-            log.error("{}: {}", String.format("%20s", "deleteRcvLinkTraffic"), e.getMessage());
+            log.error("ApplicationScheduler.{}: {}", String.format("%20s", "deleteSndIncident"), e.getMessage());
         }
     }
 
     @Async
-    @Scheduled(cron = "${application.scheduler.delete-snd-incident:0/40 3 * * * *}")
-    public void deleteSndIncident() {
+    @Scheduled(cron = "${application.scheduler.delete-snd-log:0/40 3 * * * *}")
+    public void deleteSndLog() {
+        if (!this.config.isUseSndLog()) {
+            return;
+        }
         Elapsed elapsed = new Elapsed();
-        log.info("{}", String.format("%20s: START.", "deleteSndIncident"));
+        log.info("ApplicationScheduler.{}", String.format("%20s: START.", "deleteSndLog"));
         try {
-            this.deleteService.deleteSndIncident();
-            log.info("{}", String.format("%20s: %s", "deleteSndIncident", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
+            this.deleteService.deleteSndLog();
+            log.info("ApplicationScheduler.{}", String.format("%20s: %s", "deleteSndLog", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
         }
         catch(Exception e) {
-            log.error("{}: {}", String.format("%20s", "deleteSndIncident"), e.getMessage());
+            log.error("ApplicationScheduler.{}: {}", String.format("%20s", "deleteSndLog"), e.getMessage());
         }
     }
 
     @Async
-    @Scheduled(cron = "${application.scheduler.delete-rcv-log:0/40 3 * * * *}")
-    public void deleteRcvLog() {
+    @Scheduled(cron = "${application.scheduler.delete-rcv-link-traffic:0/40 3 * * * *}")
+    public void deleteRcvLinkTraffic() {
+        if (!this.config.isUseRcvLinkTraffic()) {
+            return;
+        }
         Elapsed elapsed = new Elapsed();
-        log.info("{}", String.format("%20s: START.", "deleteRcvLog"));
+        log.info("ApplicationScheduler.{}", String.format("%20s: START.", "deleteRcvLinkTraffic"));
         try {
-            this.deleteService.deleteRcvLog();
-            log.info("{}", String.format("%20s: %s", "deleteRcvLog", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
+            this.deleteService.deleteRcvLinkTraffic();
+            log.info("ApplicationScheduler.{}", String.format("%20s: %s", "deleteRcvLinkTraffic", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
         }
         catch(Exception e) {
-            log.error("{}: {}", String.format("%20s", "deleteRcvLog"), e.getMessage());
+            log.error("ApplicationScheduler.{}: {}", String.format("%20s", "deleteRcvLinkTraffic"), e.getMessage());
         }
     }
 
     @Async
-    @Scheduled(cron = "${application.scheduler.delete-snd-log:0/40 3 * * * *}")
-    public void deleteSndLog() {
+    @Scheduled(cron = "${application.scheduler.delete-rcv-log:0/40 3 * * * *}")
+    public void deleteRcvLog() {
+        if (!this.config.isUseRcvLog()) {
+            return;
+        }
         Elapsed elapsed = new Elapsed();
-        log.info("{}", String.format("%20s: START.", "deleteSndLog"));
+        log.info("ApplicationScheduler.{}", String.format("%20s: START.", "deleteRcvLog"));
         try {
-            this.deleteService.deleteSndLog();
-            log.info("{}", String.format("%20s: %s", "deleteSndLog", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
+            this.deleteService.deleteRcvLog();
+            log.info("ApplicationScheduler.{}", String.format("%20s: %s", "deleteRcvLog", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
         }
         catch(Exception e) {
-            log.error("{}: {}", String.format("%20s", "deleteSndLog"), e.getMessage());
+            log.error("ApplicationScheduler.{}: {}", String.format("%20s", "deleteRcvLog"), e.getMessage());
         }
     }
 
     @Async
     @Scheduled(cron = "${application.scheduler.delete-rcv-incident:0/40 3 * * * *}")
     public void deleteRcvIncident() {
+        if (!this.config.isUseRcvIncident()) {
+            return;
+        }
         Elapsed elapsed = new Elapsed();
-        log.info("{}", String.format("%20s: START.", "deleteRcvIncident"));
+        log.info("ApplicationScheduler.{}", String.format("%20s: START.", "deleteRcvIncident"));
         try {
             this.deleteService.deleteRcvIncident();
-            log.info("{}", String.format("%20s: %s", "deleteRcvIncident", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
+            log.info("ApplicationScheduler.{}", String.format("%20s: %s", "deleteRcvIncident", Elapsed.elapsedTimeStr(elapsed.nanoSeconds())));
         }
         catch(Exception e) {
-            log.error("{}: {}", String.format("%20s", "deleteRcvIncident"), e.getMessage());
+            log.error("ApplicationScheduler.{}: {}", String.format("%20s", "deleteRcvIncident"), e.getMessage());
         }
     }
 

+ 7 - 17
src/main/java/com/its/rota/scheduler/service/DeleteService.java

@@ -18,44 +18,34 @@ public class DeleteService {
 
     @PostConstruct
     private void init() {
-        log.info("DeleteService.init: start.");
-        log.info("DeleteService.init: ..end.");
+        log.info("DeleteService.init: START.");
+        log.info("DeleteService.init: ..END.");
     }
 
-    public void deleteJobOnHour() {
-        log.info("DeleteService.deleteJobOnHour: START.");
-        Elapsed elapsed = new Elapsed();
-        deleteRcvLinkTraffic();        
-        deleteSndIncident();
-        deleteRcvLog();
-        deleteSndLog();
-        deleteRcvIncident();
-        log.info("DeleteService.deleteJobOnHour: END... {} ms.", Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
-    }
     public void deleteRcvLinkTraffic() {
         Elapsed elapsed = new Elapsed();
         int result = this.mapper.deleteRcvLinkTraffic();
-        log.info("DeleteService.deleteJobOnHour: TB_RCV_LINK_TRAFFIC. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
+        log.info("DeleteService: TB_RCV_LINK_TRAFFIC. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
     }
     public void deleteSndIncident() {
         Elapsed elapsed = new Elapsed();
         int result = this.mapper.deleteSndIncident();
-        log.info("DeleteService.deleteJobOnHour: ----TB_SND_INCIDENT. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
+        log.info("DeleteService: ----TB_SND_INCIDENT. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
     }
     public void deleteRcvLog() {
         Elapsed elapsed = new Elapsed();
         int result = this.mapper.deleteRcvLog();
-        log.info("DeleteService.deleteJobOnHour: ---------TB_RCV_LOG. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
+        log.info("DeleteService: ---------TB_RCV_LOG. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
     }
 
     public void deleteSndLog() {
         Elapsed elapsed = new Elapsed();
         int result = this.mapper.deleteSndLog();
-        log.info("DeleteService.deleteJobOnHour: ---------TB_SND_LOG. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
+        log.info("DeleteService: ---------TB_SND_LOG. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
     }
     public void deleteRcvIncident() {
         Elapsed elapsed = new Elapsed();
         int result = this.mapper.deleteRcvIncident();
-        log.info("DeleteService.deleteJobOnHour: ----TB_RCV_INCIDENT. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
+        log.info("DeleteService: ----TB_RCV_INCIDENT. {} EA, {} ms.", result, Elapsed.elapsedTimeStr(elapsed.nanoSeconds()));
     }
 }

+ 11 - 5
src/main/resources/application.yml

@@ -37,11 +37,17 @@ management:
 application:
   scheduler:
     poolSize: 10
-    delete-rev-link-traffic: 0/40 3 * * * *
-    delete-snd-incident: 0/40 3 * * * *
-    delete-rcv-log: 0/40 3 * * * *
-    delete-snd-log: 0/40 3 * * * *
-    delete-rcv-incident: 0/40 3 * * * *
+    use-rcv-link-traffic: false
+    use-snd-incident: true
+    use-snd-log: true
+    use-rcv-log: true
+    use-rcv-incident: true
+
+    delete-rcv-link-traffic: 0/40 3 * * * *
+    delete-snd-incident: 0 6 * * * *
+    delete-rcv-log: 0 7 * * * *
+    delete-snd-log: 0 8 * * * *
+    delete-rcv-incident: 0 9 * * * *
 
 logging:
   level: