REM:
1. 增加能力节点管理的打印日志
2. 增加处置任务管理的打印日志
This commit is contained in:
chenlinghy 2020-05-15 17:24:35 +08:00
parent 4f16bc1dcc
commit adccc0f09c
3 changed files with 40 additions and 18 deletions

View File

@ -3,6 +3,7 @@ package com.dispose.manager.impl;
import com.dispose.common.ErrorCode; import com.dispose.common.ErrorCode;
import com.dispose.manager.TaskCacheManager; import com.dispose.manager.TaskCacheManager;
import com.dispose.pojo.vo.common.TaskInfoDetail; import com.dispose.pojo.vo.common.TaskInfoDetail;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList; import java.util.ArrayList;
@ -13,6 +14,7 @@ import java.util.concurrent.ConcurrentHashMap;
* The type Task cache manager. * The type Task cache manager.
*/ */
@Component @Component
@Slf4j
public class TaskCacheManagerImpl implements TaskCacheManager { public class TaskCacheManagerImpl implements TaskCacheManager {
/** /**
* The Task cache map. * The Task cache map.
@ -91,6 +93,7 @@ public class TaskCacheManagerImpl implements TaskCacheManager {
@Override @Override
public ErrorCode upgradeTaskStatus(Long id, int status) { public ErrorCode upgradeTaskStatus(Long id, int status) {
if (!taskCacheMap.containsKey(id)) { if (!taskCacheMap.containsKey(id)) {
log.error("No such task to update the taskStatus: taskId:{}", id);
return ErrorCode.ERR_NOSUCHDEVICE; return ErrorCode.ERR_NOSUCHDEVICE;
} }

View File

@ -60,6 +60,7 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
List<DisposeDevice> devList = disposeDeviceMapper.selectAll(); List<DisposeDevice> devList = disposeDeviceMapper.selectAll();
if (devList == null) { if (devList == null) {
log.error("No device in database");
return; return;
} }
@ -92,6 +93,7 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
DisposeDevice dev = disposeDeviceMapper.getDeviceById(id); DisposeDevice dev = disposeDeviceMapper.getDeviceById(id);
if (dev == null) { if (dev == null) {
log.error("No such device: deviceId:{}", id);
return ErrorCode.ERR_NOSUCHDEVICE; return ErrorCode.ERR_NOSUCHDEVICE;
} }
@ -109,6 +111,7 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
// 判断该IP是否存在 // 判断该IP是否存在
if (disposeDeviceMapper.isDeviceExistsByIp(ipAddr) == 0 if (disposeDeviceMapper.isDeviceExistsByIp(ipAddr) == 0
|| !disposeDevMap.containsKey(ipAddr)) { || !disposeDevMap.containsKey(ipAddr)) {
log.error("No such dispose device: ipAddr:{}", ipAddr);
return ErrorCode.ERR_NOSUCHDEVICE; return ErrorCode.ERR_NOSUCHDEVICE;
} }
@ -116,6 +119,7 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
DisposeDevice dev = disposeDevMap.get(ipAddr); DisposeDevice dev = disposeDevMap.get(ipAddr);
if (dev == null) { if (dev == null) {
log.error("No such dispose device in cache: ipAddr:{}", ipAddr);
return ErrorCode.ERR_NOSUCHDEVICE; return ErrorCode.ERR_NOSUCHDEVICE;
} }
@ -148,9 +152,12 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
// 判断设备是否在线 // 判断设备是否在线
if (!dp.getDeviceLinkStatus()) { if (!dp.getDeviceLinkStatus()) {
log.error("The device heartbeat is abnormal and offline: deviceId:{}, type:{}, ip:{}",
dev.getId(), dev.getType(), dev.getIpAddr());
return new MReturnType<>(ErrorCode.ERR_NOSUCHDEVICE, String.valueOf(-1)); return new MReturnType<>(ErrorCode.ERR_NOSUCHDEVICE, String.valueOf(-1));
} }
} catch (Exception ex) { } catch (Exception ex) {
log.error("No such dispose device: deviceId:{}, type:{}, ip:{}", dev.getId(), dev.getType(), dev.getIpAddr());
return new MReturnType<>(ErrorCode.ERR_NOSUCHDEVICE, String.valueOf(-1)); return new MReturnType<>(ErrorCode.ERR_NOSUCHDEVICE, String.valueOf(-1));
} }
@ -159,6 +166,7 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
// 设备已经存在 // 设备已经存在
if (dbDev != null) { if (dbDev != null) {
log.error("The dispose device already exists: deviceId:{}, type:{}, ip:{}", dev.getId(), dev.getType(), dev.getIpAddr());
return new MReturnType<>(ErrorCode.ERR_DEVICEEXISTS, String.valueOf(dbDev.getId())); return new MReturnType<>(ErrorCode.ERR_DEVICEEXISTS, String.valueOf(dbDev.getId()));
} }
@ -240,9 +248,12 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager {
} }
} }
} catch (AddressStringException e) { } catch (AddressStringException e) {
log.error(e.getMessage());
return false; return false;
} }
log.error("The IP address is not within device capacity: ipAddr:{}, capIpv4:{}, capIpv6:{}",
ipAddr, cap.getProtectIpV4(), cap.getProtectIpV6());
return false; return false;
} }

View File

@ -70,6 +70,7 @@ public class TaskServiceImpl implements TaskService {
DisposeDevice dev = getDisposeNode(disposeIp, devCapType); DisposeDevice dev = getDisposeNode(disposeIp, devCapType);
if (dev == null) { if (dev == null) {
log.info("No dispose device handle: disposeIp:{}, devCapType:{}", disposeIp, devCapType);
return null; return null;
} }
@ -133,8 +134,8 @@ public class TaskServiceImpl implements TaskService {
if (task.getDisposeIp() == null || task.getDisposeIp().length() == 0 if (task.getDisposeIp() == null || task.getDisposeIp().length() == 0
|| task.getPlanEndTime() == null || task.getPlanEndTime().length() == 0 || task.getPlanEndTime() == null || task.getPlanEndTime().length() == 0
|| task.getType() == null || !IPAddrType.isIpAddress(task.getDisposeIp())) { || task.getType() == null || !IPAddrType.isIpAddress(task.getDisposeIp())) {
log.error("Input params error: devId:{}, disposeIp:{}, type:{}", log.error("Input params error: devId:{}, disposeIp:{}, type:{}, planEndTime:{}",
task.getDeviceId(), task.getDisposeIp(), task.getType()); task.getDeviceId(), task.getDisposeIp(), task.getType(), task.getPlanEndTime());
return MReturnType.<ErrorCode, Long>builder() return MReturnType.<ErrorCode, Long>builder()
.firstParam(ErrorCode.ERR_PARAMEXCEPTION) .firstParam(ErrorCode.ERR_PARAMEXCEPTION)
.secondParam(-1L) .secondParam(-1L)
@ -152,7 +153,8 @@ public class TaskServiceImpl implements TaskService {
} }
if (disposeDevice == null) { if (disposeDevice == null) {
log.error("No such device to dispose this task: devId:{}, disposeIp:{}, type:{}", task.getDeviceId(), task.getDisposeIp(), task.getType()); log.error("No such device to dispose this task: devId:{}, disposeIp:{}, type:{}",
task.getDeviceId(), task.getDisposeIp(), task.getType());
return MReturnType.<ErrorCode, Long>builder() return MReturnType.<ErrorCode, Long>builder()
.firstParam(ErrorCode.ERR_NOSUCHDEVICE) .firstParam(ErrorCode.ERR_NOSUCHDEVICE)
.secondParam(-1L) .secondParam(-1L)
@ -172,7 +174,8 @@ public class TaskServiceImpl implements TaskService {
.collect(Collectors.toList()); .collect(Collectors.toList());
if (taskList.size() > 0) { if (taskList.size() > 0) {
log.error("Same dispose task is running: devId:{}, disposeIp:{}, type:{}", task.getDeviceId(), task.getDisposeIp(), task.getType()); log.error("Same dispose task is running: devId:{}, disposeIp:{}, type:{}",
task.getDeviceId(), task.getDisposeIp(), task.getType());
return MReturnType.<ErrorCode, Long>builder() return MReturnType.<ErrorCode, Long>builder()
.firstParam(ErrorCode.ERR_TASKRUNNING) .firstParam(ErrorCode.ERR_TASKRUNNING)
.secondParam(taskList.get(0).getId()) .secondParam(taskList.get(0).getId())
@ -188,7 +191,7 @@ public class TaskServiceImpl implements TaskService {
ErrorCode err = taskCacheManager.addTask(cacheTask); ErrorCode err = taskCacheManager.addTask(cacheTask);
log.info("Create new dispose task is running: devId:{}, disposeIp:{}, type:{} result {}", log.info("Create new dispose task is running: devId:{}, disposeIp:{}, type:{}, result:{}",
task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg()); task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg());
return MReturnType.<ErrorCode, Long>builder().firstParam(err).secondParam(task.getId()).build(); return MReturnType.<ErrorCode, Long>builder().firstParam(err).secondParam(task.getId()).build();
@ -236,7 +239,7 @@ public class TaskServiceImpl implements TaskService {
if (v != ErrorCode.ERR_OK) { if (v != ErrorCode.ERR_OK) {
// 执行任务失败恢复缓存中的任务状态 // 执行任务失败恢复缓存中的任务状态
taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode());
log.error("Start task {}:{} error {}", task.getId(), task.getDisposeIp(), err.getMsg()); log.error("Start task: taskId:{}, disposeIp:{}, error:{}", taskId, task.getDisposeIp(), v.getMsg());
} else { } else {
// 任务执行完成后更新数据库处置任务状态 // 任务执行完成后更新数据库处置任务状态
disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode());
@ -273,6 +276,7 @@ public class TaskServiceImpl implements TaskService {
ErrorCode err = taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_STOP.getCode()); ErrorCode err = taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_STOP.getCode());
if (err != ErrorCode.ERR_OK) { if (err != ErrorCode.ERR_OK) {
log.error("Failed to update task status, currentStatus:{}", task.getCurrentStatus());
return err; return err;
} }
@ -287,7 +291,7 @@ public class TaskServiceImpl implements TaskService {
if (v != ErrorCode.ERR_OK) { if (v != ErrorCode.ERR_OK) {
// 恢复缓存中任务状态到先前状态 // 恢复缓存中任务状态到先前状态
taskCacheManager.upgradeTaskStatus(taskId, prdStatus); taskCacheManager.upgradeTaskStatus(taskId, prdStatus);
log.error("Start task {}:{} error {}", task.getId(), task.getDisposeIp(), err.getMsg()); log.error("Stop task: taskId:{}, error:{}", taskId, v.getMsg());
} else { } else {
// 任务执行完成后更新数据库处置任务状态 // 任务执行完成后更新数据库处置任务状态
finishTask(taskId); finishTask(taskId);
@ -317,6 +321,8 @@ public class TaskServiceImpl implements TaskService {
if (err == ErrorCode.ERR_OK) { if (err == ErrorCode.ERR_OK) {
// 设置数据库任务状态为完成状态 // 设置数据库任务状态为完成状态
disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_FINISH.getCode()); disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_FINISH.getCode());
Integer currentStatus = disposeTaskMapper.getTaskInfoById(taskId).getCurrentStatus();
log.info("taskId:{}, currentStatus:{}", taskId, currentStatus);
// 移除缓存中的任务信息 // 移除缓存中的任务信息
taskCacheManager.removeTask(taskId); taskCacheManager.removeTask(taskId);
} }
@ -368,6 +374,7 @@ public class TaskServiceImpl implements TaskService {
.collect(Collectors.toList()); .collect(Collectors.toList());
if (taskList.size() > 0) { if (taskList.size() > 0) {
log.info("The device has tasks running: devId:{}, tasksRunningNumber:{}", devId, taskList.size());
return taskList; return taskList;
} }
@ -389,6 +396,7 @@ public class TaskServiceImpl implements TaskService {
.collect(Collectors.toList()); .collect(Collectors.toList());
if (taskList.size() > 0) { if (taskList.size() > 0) {
log.info("The device has tasks: devId:{}, tasksNumber:{}", devId, taskList.size());
return taskList; return taskList;
} }