This commit is contained in:
parent
f9e3af2dd6
commit
6c99e6408e
6 changed files with 42 additions and 7 deletions
|
|
@ -16,6 +16,7 @@ services:
|
||||||
- XMX=4G
|
- XMX=4G
|
||||||
- XMS=1G
|
- XMS=1G
|
||||||
- TZ=Europe/Moscow
|
- TZ=Europe/Moscow
|
||||||
|
- ${JVM_EXTRA_OPTS:-} \
|
||||||
- APM_SERVICE_NAME=${APM_SERVICE_NAME}-${APP_JAR}
|
- APM_SERVICE_NAME=${APM_SERVICE_NAME}-${APP_JAR}
|
||||||
- APM_SERVER_URLS=${APM_SERVER_URLS}
|
- APM_SERVER_URLS=${APM_SERVER_URLS}
|
||||||
- APM_ENVIRONMENT=${APM_ENVIRONMENT}
|
- APM_ENVIRONMENT=${APM_ENVIRONMENT}
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,8 @@ import java.time.LocalDateTime;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
|
import java.util.regex.Matcher;
|
||||||
|
import java.util.regex.Pattern;
|
||||||
import javax.xml.stream.XMLStreamException;
|
import javax.xml.stream.XMLStreamException;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.core.io.FileUrlResource;
|
import org.springframework.core.io.FileUrlResource;
|
||||||
|
|
@ -46,7 +48,6 @@ import ru.nbch.credit_tracker.service.task.PipelinePackageOrchestrator;
|
||||||
import ru.nbch.credit_tracker.service.task.SetupParam;
|
import ru.nbch.credit_tracker.service.task.SetupParam;
|
||||||
import ru.nbch.credit_tracker.service.task.impl.PipelineMode;
|
import ru.nbch.credit_tracker.service.task.impl.PipelineMode;
|
||||||
import ru.nbch.credit_tracker.service.task.impl.Saver;
|
import ru.nbch.credit_tracker.service.task.impl.Saver;
|
||||||
import ru.nbch.credit_tracker.utils.CTUtil;
|
|
||||||
import ru.nbch.credit_tracker.utils.CtFileUtils;
|
import ru.nbch.credit_tracker.utils.CtFileUtils;
|
||||||
import ru.nbch.credit_tracker.utils.EnumUtil;
|
import ru.nbch.credit_tracker.utils.EnumUtil;
|
||||||
import ru.nbch.credit_tracker.utils.LogUtil;
|
import ru.nbch.credit_tracker.utils.LogUtil;
|
||||||
|
|
@ -68,6 +69,7 @@ public class SignalFacadeV3 {
|
||||||
private final ExecutorService pipelineExecutorService;
|
private final ExecutorService pipelineExecutorService;
|
||||||
private final ExecutorService saverExecutorService;
|
private final ExecutorService saverExecutorService;
|
||||||
private final PipelinePackageOrchestrator pipelineOrchestrator;
|
private final PipelinePackageOrchestrator pipelineOrchestrator;
|
||||||
|
private final Pattern DOWNLOAD_FILE_PATTERN = Pattern.compile("^(?<member>[A-Za-z0-9]{6})_(?<package>[A-Za-z0-9_]+)_(?<ts>\\d{4}-\\d{2}-\\d{2}T\\d{2}-\\d{2}-\\d{2})(?:\\.xml)?\\.zip$");
|
||||||
|
|
||||||
public SignalFacadeV3(MonitoringRequestValidator monitoringRequestValidator,
|
public SignalFacadeV3(MonitoringRequestValidator monitoringRequestValidator,
|
||||||
CreditTrackerSettings config,
|
CreditTrackerSettings config,
|
||||||
|
|
@ -330,11 +332,24 @@ public class SignalFacadeV3 {
|
||||||
|
|
||||||
public ResponseEntity<Resource> downloadFile(String fileName) {
|
public ResponseEntity<Resource> downloadFile(String fileName) {
|
||||||
try {
|
try {
|
||||||
String memberCode = CTUtil.getMemberCodeFromFileName(fileName);
|
Matcher matcher = DOWNLOAD_FILE_PATTERN.matcher(fileName);
|
||||||
if (memberCode == null) {
|
String packageName = null;
|
||||||
|
if (matcher.matches()) {
|
||||||
|
packageName = matcher.group("package");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (packageName == null) {
|
||||||
throw clientExcp(SignalError.ERROR_014, XmlErrorFormat.MonitoringDownloadError, fileName);
|
throw clientExcp(SignalError.ERROR_014, XmlErrorFormat.MonitoringDownloadError, fileName);
|
||||||
}
|
}
|
||||||
String dirPath = config.getLoadDir() + File.separator + memberCode;
|
UserPackage userPackage = userPackageService.findByPackageName(packageName);
|
||||||
|
|
||||||
|
if (userPackage == null) {
|
||||||
|
throw clientExcp(SignalError.ERROR_014, XmlErrorFormat.MonitoringDownloadError, fileName);
|
||||||
|
}
|
||||||
|
String dirPath = config.getLoadDir() +
|
||||||
|
File.separator + "tmp" +
|
||||||
|
File.separator + userPackage.getUserId() +
|
||||||
|
File.separator + userPackage.getPackageName();
|
||||||
File folder = new File(dirPath);
|
File folder = new File(dirPath);
|
||||||
|
|
||||||
if (folder.exists() && folder.isDirectory()) {
|
if (folder.exists() && folder.isDirectory()) {
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,7 @@ public interface UserPackageMapper {
|
||||||
List<UserPackage> findAllPackagesByStatus(@Param("statuses") String... statuses);
|
List<UserPackage> findAllPackagesByStatus(@Param("statuses") String... statuses);
|
||||||
|
|
||||||
List<UserPackage> findAllPackagesByUserId(@Param("userId") String userId);
|
List<UserPackage> findAllPackagesByUserId(@Param("userId") String userId);
|
||||||
|
UserPackage findByPackageName(@Param("packageName") String packageName);
|
||||||
List<UserPackage> findOnMonitoringPackages();
|
List<UserPackage> findOnMonitoringPackages();
|
||||||
List<UserPackage> findByMemberCodeAndPackageName(@Param("memberCode") String memberCode,
|
List<UserPackage> findByMemberCodeAndPackageName(@Param("memberCode") String memberCode,
|
||||||
@Param("packageName") String packageName);
|
@Param("packageName") String packageName);
|
||||||
|
|
|
||||||
|
|
@ -59,6 +59,10 @@ public class UserPackageService {
|
||||||
return userPackageMapper.findUserPackages(userId.substring(0, 6), Arrays.asList(Status.ON_MONITORING.name(), Status.NO_FID.name()));
|
return userPackageMapper.findUserPackages(userId.substring(0, 6), Arrays.asList(Status.ON_MONITORING.name(), Status.NO_FID.name()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public UserPackage findByPackageName(String packageName) {
|
||||||
|
return userPackageMapper.findByPackageName(packageName);
|
||||||
|
}
|
||||||
|
|
||||||
public void setFidChanged(List<Long> id) {
|
public void setFidChanged(List<Long> id) {
|
||||||
userPackageMapper.setFidChanged(id);
|
userPackageMapper.setFidChanged(id);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -91,9 +91,6 @@ public class MonitoringService {
|
||||||
List<UserPackage> packages = userPackageMapper.findAllPackagesByStatus(Status.ON_MONITORING.name(),
|
List<UserPackage> packages = userPackageMapper.findAllPackagesByStatus(Status.ON_MONITORING.name(),
|
||||||
Status.PROCESSING_REPEATED.name());
|
Status.PROCESSING_REPEATED.name());
|
||||||
for (UserPackage userPackage : packages) {
|
for (UserPackage userPackage : packages) {
|
||||||
if (!userPackage.getPackageName().equals("MY_BATCH_TEST_0209_01")) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
MDC.put("ru.nbch.credit_tracker.log.mdc.key", "[" + userPackage.getPackageName() + "]");
|
MDC.put("ru.nbch.credit_tracker.log.mdc.key", "[" + userPackage.getPackageName() + "]");
|
||||||
processPackage(userPackage);
|
processPackage(userPackage);
|
||||||
MDC.remove("ru.nbch.credit_tracker.log.mdc.key");
|
MDC.remove("ru.nbch.credit_tracker.log.mdc.key");
|
||||||
|
|
|
||||||
|
|
@ -131,6 +131,23 @@
|
||||||
LIMIT 1
|
LIMIT 1
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="findByPackageName" resultMap="packageDataResultMap">
|
||||||
|
SELECT id,
|
||||||
|
membercode,
|
||||||
|
package_name,
|
||||||
|
created_at,
|
||||||
|
status,
|
||||||
|
deactivated_at,
|
||||||
|
last_downloaded_report,
|
||||||
|
monitoring_at,
|
||||||
|
last_searched_at,
|
||||||
|
reject_status,
|
||||||
|
signal_types
|
||||||
|
FROM signals_user_packages
|
||||||
|
WHERE package_name = #{packageName}
|
||||||
|
LIMIT 1
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="findForRepeatedPackages" resultMap="packageDataResultMap">
|
<select id="findForRepeatedPackages" resultMap="packageDataResultMap">
|
||||||
SELECT id,
|
SELECT id,
|
||||||
membercode,
|
membercode,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue