This commit is contained in:
parent
b85cda38ef
commit
5dc5e72496
4 changed files with 12 additions and 12 deletions
|
|
@ -66,7 +66,7 @@ ct.load-dir=/opt/app/reports
|
|||
# min
|
||||
ct.monitoring-interval=${MONITORING_INTERVAL:15}
|
||||
# days
|
||||
ct.update-flags-interval=${UPDATE_FLAGS_INTERVAL:1}
|
||||
ct.update-flags-cron-expression=${UPDATE_FLAGS_CRON_EXPRESSION:0 22 * * *}
|
||||
ct.days-to-update-flags=${DAYS_TO_UPDATE_FLAGS:30}
|
||||
|
||||
ct.encoding=windows-1251
|
||||
|
|
@ -71,7 +71,7 @@ SIGNALS_USER=0001ZZ000001
|
|||
# min
|
||||
MONITORING_INTERVAL=15
|
||||
# days
|
||||
UPDATE_FLAGS_INTERVAL=1
|
||||
UPDATE_FLAGS_CRON_EXPRESSION=0 22 * * *
|
||||
DAYS_TO_UPDATE_FLAGS=30
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public class CreditTrackerSettings {
|
|||
private Long maxXmlFileSize;
|
||||
private String loadDir;
|
||||
private Long monitoringInterval;
|
||||
private Long updateFlagsInterval;
|
||||
private String updateFlagsCronExpression;
|
||||
private Long daysToUpdateFlags;
|
||||
|
||||
private String encoding;
|
||||
|
|
|
|||
|
|
@ -3,12 +3,10 @@ package ru.nbch.credit_tracker.service;
|
|||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.slf4j.MDC;
|
||||
import org.springframework.scheduling.concurrent.CustomizableThreadFactory;
|
||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
|
||||
import org.springframework.scheduling.support.CronTrigger;
|
||||
import org.springframework.stereotype.Service;
|
||||
import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings;
|
||||
import ru.nbch.credit_tracker.entities.dto.UserPackage;
|
||||
|
|
@ -28,7 +26,7 @@ public class UpdatingFlagsService {
|
|||
private final SignalRestService signalRestService;
|
||||
private final MonitoringErrorProcesingService monitoringErrorProcesingService;
|
||||
private final Long daysToUpdateFlags;
|
||||
private final Long updateFlagsInterval;
|
||||
private final String updateFlagsCronExpression;
|
||||
private final PhoneFidMapMapper phoneFidMapMapper;
|
||||
|
||||
public UpdatingFlagsService(SignalService signalService,
|
||||
|
|
@ -40,21 +38,23 @@ public class UpdatingFlagsService {
|
|||
this.signalRestService = signalRestService;
|
||||
this.monitoringErrorProcesingService = monitoringErrorProcesingService;
|
||||
this.daysToUpdateFlags = config.getDaysToUpdateFlags() != null ? config.getDaysToUpdateFlags() : 1;
|
||||
this.updateFlagsInterval = config.getUpdateFlagsInterval() != null ? config.getUpdateFlagsInterval() : 1;
|
||||
this.updateFlagsCronExpression = config.getUpdateFlagsCronExpression() != null ? config.getUpdateFlagsCronExpression() : "*/10 * * * * *";
|
||||
this.phoneFidMapMapper = phoneFidMapMapper;
|
||||
}
|
||||
|
||||
public void run() {
|
||||
ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor(new CustomizableThreadFactory("updating-flags-"));
|
||||
scheduler.scheduleAtFixedRate(this::update, 0, updateFlagsInterval, TimeUnit.DAYS);
|
||||
ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
|
||||
scheduler.setPoolSize(1);
|
||||
scheduler.initialize();
|
||||
scheduler.schedule(this::update, new CronTrigger(updateFlagsCronExpression));
|
||||
}
|
||||
|
||||
public void update() {
|
||||
log.info("Start updating flags");
|
||||
List<UserPackage> packages = signalService.findPackagesOnMonitoring();
|
||||
for (UserPackage userPackage : packages) {
|
||||
log.info("Check on updating flags for Package {}", userPackage.getPackageName());
|
||||
MDC.put("ru.nbch.credit_tracker.log.mdc.key", "[" + userPackage.getPackageName() +"]");
|
||||
log.info("Check on updating flags for Package {}", userPackage.getPackageName());
|
||||
boolean hasOldRow = phoneFidMapMapper.hasOldRow(userPackage.getId(), daysToUpdateFlags.intValue());
|
||||
log.info("There are {} old rows", hasOldRow ? "exist" : "doesn't exist");
|
||||
if (hasOldRow) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue