|
@@ -5,7 +5,6 @@ import com.jcraft.jsch.SftpException;
|
|
|
import com.nokia.common.gpload.GploadUtil;
|
|
|
import com.nokia.common.gpload.entity.GploadResult;
|
|
|
import com.nokia.common.ssh.SSHUtil;
|
|
|
-import com.nokia.common.ssh.exception.SSHUtilException;
|
|
|
import com.xxl.job.core.context.XxlJobHelper;
|
|
|
import com.xxl.job.core.handler.annotation.XxlJob;
|
|
|
import lombok.Data;
|
|
@@ -28,6 +27,7 @@ import java.nio.charset.StandardCharsets;
|
|
|
import java.nio.file.Files;
|
|
|
import java.nio.file.Path;
|
|
|
import java.nio.file.Paths;
|
|
|
+import java.rmi.RemoteException;
|
|
|
import java.text.DateFormat;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.HashMap;
|
|
@@ -57,6 +57,11 @@ public class FiveGPmTask {
|
|
|
private String filePrefix;
|
|
|
@Value("${fiveg.pm.distinct.targetDir:distinct/}")
|
|
|
private String distinctTargetDir;
|
|
|
+ /**
|
|
|
+ * 最小插入数据
|
|
|
+ */
|
|
|
+ @Value("${fiveg.pm.minInsertCount:10000}")
|
|
|
+ private long minInsertCount;
|
|
|
private final DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHH");
|
|
|
private SSHUtil sshUtil;
|
|
|
|
|
@@ -125,7 +130,7 @@ public class FiveGPmTask {
|
|
|
*
|
|
|
* @param filename 文件名
|
|
|
*/
|
|
|
- public void singleTask(String filename) throws JSchException, SSHUtilException, IOException, SftpException {
|
|
|
+ public void singleTask(String filename) throws JSchException, IOException, SftpException {
|
|
|
download(filename);
|
|
|
distinct(filename);
|
|
|
gpload(filename);
|
|
@@ -136,7 +141,7 @@ public class FiveGPmTask {
|
|
|
*
|
|
|
* @param filename 文件名
|
|
|
*/
|
|
|
- public void download(String filename) throws JSchException, SSHUtilException, IOException, SftpException {
|
|
|
+ public void download(String filename) throws JSchException, IOException, SftpException {
|
|
|
log.info("下载文件: {}", filename);
|
|
|
XxlJobHelper.log("下载文件: {}", filename);
|
|
|
String src = sourceDir + filename;
|
|
@@ -176,9 +181,9 @@ public class FiveGPmTask {
|
|
|
log.info("文件 {} 去重完成...", filename);
|
|
|
XxlJobHelper.log("文件 {} 去重完成...", filename);
|
|
|
// 删除本地源文件
|
|
|
- Files.deleteIfExists(inputPath);
|
|
|
- log.info("删除本地源文件 {}...", filename);
|
|
|
- XxlJobHelper.log("删除本地源文件 {}...", filename);
|
|
|
+// Files.deleteIfExists(inputPath);
|
|
|
+// log.info("删除本地源文件 {}...", filename);
|
|
|
+// XxlJobHelper.log("删除本地源文件 {}...", filename);
|
|
|
}
|
|
|
|
|
|
public void gpload(String filename) throws IOException {
|
|
@@ -187,6 +192,9 @@ public class FiveGPmTask {
|
|
|
if (Boolean.TRUE.equals(gpload.getTaskStatus())) {
|
|
|
log.info("gpload完成: {}", gpload);
|
|
|
XxlJobHelper.log("gpload完成: {}", gpload);
|
|
|
+ if (gpload.getInsertedCount() < minInsertCount) {
|
|
|
+ throw new RemoteException(filename + " 数据异常,少于 " + minInsertCount);
|
|
|
+ }
|
|
|
// 删除重排文件
|
|
|
Files.deleteIfExists(Paths.get(distinctTargetDir + filename));
|
|
|
} else {
|