From ccd0a287d091b94840da5f5c85e3e4aa6570da51 Mon Sep 17 00:00:00 2001 From: dwusiq Date: Sun, 28 Apr 2019 18:46:06 +0800 Subject: [PATCH] Abandon log reporting module --- script/webase-ddl.sql | 20 --- .../base/properties/ConstantProperties.java | 1 - .../webase/node/mgr/logs/LatestLog.java | 41 ------ .../webase/node/mgr/logs/MinMaxRowNumber.java | 29 ---- .../node/mgr/logs/NodeLogController.java | 87 ------------ .../node/mgr/logs/NodeLogListParam.java | 37 ----- .../webase/node/mgr/logs/NodeLogMapper.java | 37 ----- .../webase/node/mgr/logs/NodeLogService.java | 129 ------------------ .../webase/node/mgr/logs/TbNodeLog.java | 56 -------- .../webase/node/mgr/report/ReportService.java | 75 +--------- .../node/mgr/scheduler/DeleteNodeLogTask.java | 79 ----------- .../node/mgr/scheduler/SchedulerService.java | 6 - src/main/resources/application.yml | 1 - src/main/resources/mapper/NodeLogMapper.xml | 105 -------------- 14 files changed, 3 insertions(+), 700 deletions(-) delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/LatestLog.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/MinMaxRowNumber.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/NodeLogController.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/NodeLogListParam.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/NodeLogMapper.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/NodeLogService.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/logs/TbNodeLog.java delete mode 100644 src/main/java/com/webank/webase/node/mgr/scheduler/DeleteNodeLogTask.java delete mode 100644 src/main/resources/mapper/NodeLogMapper.xml diff --git a/script/webase-ddl.sql b/script/webase-ddl.sql index 0f20b6ccc..bbabbe157 100644 --- a/script/webase-ddl.sql +++ b/script/webase-ddl.sql @@ -221,26 +221,6 @@ CREATE TABLE IF NOT EXISTS `tb_account_info` ( --- ---------------------------- --- Table structure for `tb_node_log` --- ---------------------------- -CREATE TABLE IF NOT EXISTS `tb_node_log` ( - `log_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志编号', - `node_id` int(11) NOT NULL COMMENT '所属节点', - `log_time` datetime NOT NULL COMMENT '日志产生时间', - `row_number` int(5) NOT NULL COMMENT '日志所在文件行号', - `file_name` varchar(50) NOT NULL COMMENT '日志文件名', - `log_msg` text NOT NULL COMMENT '日志内容', - `log_status` int(1) NOT NULL DEFAULT '1' COMMENT '记录状态(1有效,2无效)', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `modify_time` datetime DEFAULT NULL COMMENT '修改时间', - PRIMARY KEY (`log_id`), - UNIQUE KEY `unique_node_row_time` (`node_id`,`row_number`,`log_time`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='节点错误日志信息表'; - - - - -- ---------------------------- diff --git a/src/main/java/com/webank/webase/node/mgr/base/properties/ConstantProperties.java b/src/main/java/com/webank/webase/node/mgr/base/properties/ConstantProperties.java index 058c8ecdd..5b41f5752 100644 --- a/src/main/java/com/webank/webase/node/mgr/base/properties/ConstantProperties.java +++ b/src/main/java/com/webank/webase/node/mgr/base/properties/ConstantProperties.java @@ -41,7 +41,6 @@ public class ConstantProperties { // scheduler private long nodeWaitMax = 180L; private BigInteger blockRetainMax = new BigInteger("10000"); - private int logRetainMax = 10000; private BigInteger transRetainMax = new BigInteger("10000"); private String statisticsTransDailyCron = "0 0/1 * * * ?";// Execute once every minute private String deleteInfoCron = "0 0/2 * * * ?";// Execute once every two minute diff --git a/src/main/java/com/webank/webase/node/mgr/logs/LatestLog.java b/src/main/java/com/webank/webase/node/mgr/logs/LatestLog.java deleted file mode 100644 index b3b64b156..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/LatestLog.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import java.time.LocalDateTime; -import lombok.Data; - -/** - * result entity of query latestNodeLog. - */ -@Data -public class LatestLog { - - private LocalDateTime logTime; - private Integer rowNumber; - private String fileName; - - /** - * init by logTIme、rowNumber、fileName. - */ - public LatestLog(LocalDateTime logTime, Integer rowNumber, String fileName) { - super(); - this.logTime = logTime; - this.rowNumber = rowNumber; - this.fileName = fileName; - } - -} diff --git a/src/main/java/com/webank/webase/node/mgr/logs/MinMaxRowNumber.java b/src/main/java/com/webank/webase/node/mgr/logs/MinMaxRowNumber.java deleted file mode 100644 index 3d41a3848..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/MinMaxRowNumber.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import lombok.Data; - -/** - * result of query min max row number. - */ -@Data -public class MinMaxRowNumber { - - private Integer nodeId; - private int minRowNumber; - private int maxRowNumber; -} diff --git a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogController.java b/src/main/java/com/webank/webase/node/mgr/logs/NodeLogController.java deleted file mode 100644 index 8cdf5c96f..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogController.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import com.alibaba.fastjson.JSON; -import com.webank.webase.node.mgr.base.entity.BasePageResponse; -import com.webank.webase.node.mgr.base.code.ConstantCode; -import com.webank.webase.node.mgr.base.exception.NodeMgrException; -import com.webank.webase.node.mgr.base.tools.NodeMgrTools; -import java.time.Duration; -import java.time.Instant; -import java.util.List; -import java.util.Optional; -import lombok.extern.log4j.Log4j2; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -@Log4j2 -@RestController -@RequestMapping(value = "nodeLog") -public class NodeLogController { - - @Autowired - private NodeLogService nodeLogService; - - /** - * query nde list. - */ - @GetMapping(value = "/nodeLogList/{networkId}/{nodeId}/{pageNumber}/{pageSize}") - public BasePageResponse queryLogList(@PathVariable("networkId") Integer networkId, - @PathVariable("nodeId") Integer nodeId, - @PathVariable("pageNumber") Integer pageNumber, @PathVariable("pageSize") Integer pageSize, - @RequestParam(value = "startTime", required = false) String inputStartTime, - @RequestParam(value = "endTime", required = false) String inputEndTime) - throws NodeMgrException, Exception { - BasePageResponse pageResponse = new BasePageResponse(ConstantCode.SUCCESS); - Instant startTime = Instant.now(); - log.info( - "start queryLogList. startTime:{} networkId:{} nodeId:{} pageNumber:{} " - + "pageSize:{} startTime:{} endTime:{}", - startTime.toEpochMilli(), networkId, pageNumber, JSON.toJSONString(inputStartTime), - JSON.toJSONString(inputEndTime)); - - // query param - Integer start = Optional.ofNullable(pageNumber).map(page -> (page - 1) * pageSize) - .orElse(null); - NodeLogListParam param = new NodeLogListParam(); - param.setNetworkId(networkId); - param.setNodeId(nodeId); - param.setStart(start); - param.setPageSize(pageSize); - param.setStartTime(NodeMgrTools - .string2LocalDateTime(inputStartTime, NodeMgrTools.DEFAULT_DATE_TIME_FORMAT)); - param.setEndTime( - NodeMgrTools.string2LocalDateTime(inputEndTime, NodeMgrTools.DEFAULT_DATE_TIME_FORMAT)); - - // query count - Integer count = nodeLogService.countOfNodeLog(param); - - if (count != null && count > 0) { - List transList = nodeLogService.listOfNodeLog(param); - pageResponse.setData(transList); - pageResponse.setTotalCount(count); - } - - log.info("end nodeLogList useTime:{} result:{}", - Duration.between(startTime, Instant.now()).toMillis(), JSON.toJSONString(pageResponse)); - return pageResponse; - } -} diff --git a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogListParam.java b/src/main/java/com/webank/webase/node/mgr/logs/NodeLogListParam.java deleted file mode 100644 index bdedd6b1e..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogListParam.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import com.webank.webase.node.mgr.base.entity.BaseQueryParam; -import java.time.LocalDateTime; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.NoArgsConstructor; -import lombok.ToString; - -/** - * param of query node list. - */ -@Data -@NoArgsConstructor -@ToString(callSuper = true) -@EqualsAndHashCode(callSuper = true) -public class NodeLogListParam extends BaseQueryParam { - - private Integer nodeId; - private LocalDateTime startTime; - private LocalDateTime endTime; -} diff --git a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogMapper.java b/src/main/java/com/webank/webase/node/mgr/logs/NodeLogMapper.java deleted file mode 100644 index 958582c55..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import java.util.List; -import org.apache.ibatis.annotations.Param; -import org.springframework.stereotype.Repository; - -@Repository -public interface NodeLogMapper { - - void addNodeLogRow(TbNodeLog tbNodeLog); - - TbNodeLog queryLatestNodeLog(Integer nodeId); - - Integer countOfNodeLog(@Param("param") NodeLogListParam param); - - List listOfNodeLog(@Param("param") NodeLogListParam param); - - List queryMinMaxRowNumber(); - - Integer deleteSomeLogs(@Param("nodeId") Integer nodeId, - @Param("deleteRowNumber") Integer deleteRowNumber); -} diff --git a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogService.java b/src/main/java/com/webank/webase/node/mgr/logs/NodeLogService.java deleted file mode 100644 index 4b6d70e0a..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/NodeLogService.java +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import com.alibaba.fastjson.JSON; -import com.webank.webase.node.mgr.base.code.ConstantCode; -import com.webank.webase.node.mgr.base.exception.NodeMgrException; -import com.webank.webase.node.mgr.node.NodeService; -import com.webank.webase.node.mgr.node.TbNode; -import java.util.List; -import java.util.Optional; -import lombok.extern.log4j.Log4j2; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * services for node log. - */ -@Log4j2 -@Service -public class NodeLogService { - - @Autowired - private NodeLogMapper nodeLogMapper; - @Autowired - private NodeService nodeService; - - /** - * add node log row. - */ - public void addNodeLog(TbNodeLog tbNodeLog) { - log.debug("start addNodeLog tbNodeLog:{}", JSON.toJSONString(tbNodeLog)); - nodeLogMapper.addNodeLogRow(tbNodeLog); - log.debug("end addNodeLog"); - } - - /** - * query latest node log. - */ - public LatestLog queryLatestNodeLog(String nodeIp, Integer p2pPort) throws NodeMgrException { - log.debug("start queryLatestNodeLog. nodeIp:{} nodeIp:{}", nodeIp, p2pPort); - TbNode tbNode = nodeService.queryNodeByIpAndP2pPort(nodeIp, p2pPort); - Integer nodeId = Optional.ofNullable(tbNode).map(TbNode::getNodeId) - .orElseThrow(() -> new NodeMgrException(ConstantCode.INVALID_NODE_INFO)); - - TbNodeLog logRow = nodeLogMapper.queryLatestNodeLog(nodeId); - if (logRow == null) { - log.info("fail queryLatestNodeLog. not find node log"); - return null; - } - - LatestLog latestLog = new LatestLog(logRow.getLogTime(), logRow.getRowNumber(), - logRow.getFileName()); - log.debug("end queryLatestNodeLog. LatestLog:{}", JSON.toJSONString(latestLog)); - - return latestLog; - } - - /** - * query count of node log. - */ - public int countOfNodeLog(NodeLogListParam param) { - log.debug("start countOfNodeLog. param:{} ", JSON.toJSONString(param)); - Integer nodeLogCount = nodeLogMapper.countOfNodeLog(param); - int count = nodeLogCount == null ? 0 : nodeLogCount.intValue(); - log.debug("end nodeLogCount. count:{} ", count); - return count; - } - - /** - * query node log list. - */ - public List listOfNodeLog(NodeLogListParam param) { - log.debug("start listOfNodeLog. param:{} ", JSON.toJSONString(param)); - List list = nodeLogMapper.listOfNodeLog(param); - log.debug("end listOfNodeLog. list:{} ", JSON.toJSONString(list)); - return list; - } - - /** - * query min and max rowNumber of tb_node_log. - */ - public List queryMinMaxRowNumber() throws NodeMgrException { - log.debug("start queryMinMaxRowNumber"); - try { - List listMinMaxRowNumber = nodeLogMapper.queryMinMaxRowNumber(); - int listSize = Optional.ofNullable(listMinMaxRowNumber).map(list -> list.size()) - .orElse(0); - log.info("end queryMinMaxRowNumber listSize:{}", listSize); - return listMinMaxRowNumber; - } catch (RuntimeException ex) { - log.error("fail queryMinMaxRowNumber", ex); - throw new NodeMgrException(ConstantCode.DB_EXCEPTION); - } - } - - /** - * delete node block info. - */ - public Integer deleteSomeLogs(Integer nodeId, Integer deleteRowNumber) throws NodeMgrException { - log.debug("start deleteSomeLogs. nodeId:{} deleteRowNumber:{}", nodeId, deleteRowNumber); - - Integer affectRow = 0; - try { - affectRow = nodeLogMapper.deleteSomeLogs(nodeId, deleteRowNumber); - } catch (RuntimeException ex) { - log.error("fail deleteSomeLogs. nodeId:{} deleteRowNumber:{}", nodeId, deleteRowNumber, - ex); - throw new NodeMgrException(ConstantCode.DB_EXCEPTION); - } - - log.debug("end deleteSomeLogs. nodeId:{} deleteRowNumber:{} affectRow:{}", nodeId, - deleteRowNumber, affectRow); - return affectRow; - } -} diff --git a/src/main/java/com/webank/webase/node/mgr/logs/TbNodeLog.java b/src/main/java/com/webank/webase/node/mgr/logs/TbNodeLog.java deleted file mode 100644 index eeef83f21..000000000 --- a/src/main/java/com/webank/webase/node/mgr/logs/TbNodeLog.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.logs; - -import java.math.BigInteger; -import java.time.LocalDateTime; -import lombok.Data; - -/** - * Entity class of table tb_node_error_log. - */ -@Data -public class TbNodeLog { - - private BigInteger logId; - private Integer nodeId; - private String fileName; - private LocalDateTime logTime; - private Integer rowNumber; - private String logMsg; - private Integer logStatus; - private LocalDateTime createTime; - private LocalDateTime modifyTime; - - public TbNodeLog() { - super(); - } - - /** - * init by nodeId、fileName、logTime、rowNumber、logMsg、logStatus. - */ - public TbNodeLog(Integer nodeId, String fileName, LocalDateTime logTime, Integer rowNumber, - String logMsg, Integer logStatus) { - super(); - this.nodeId = nodeId; - this.fileName = fileName; - this.logTime = logTime; - this.rowNumber = rowNumber; - this.logMsg = logMsg; - this.logStatus = logStatus; - } - -} diff --git a/src/main/java/com/webank/webase/node/mgr/report/ReportService.java b/src/main/java/com/webank/webase/node/mgr/report/ReportService.java index e3945db4c..38a21ec9f 100644 --- a/src/main/java/com/webank/webase/node/mgr/report/ReportService.java +++ b/src/main/java/com/webank/webase/node/mgr/report/ReportService.java @@ -16,28 +16,22 @@ package com.webank.webase.node.mgr.report; import com.alibaba.fastjson.JSON; -import com.webank.webase.node.mgr.base.entity.BaseResponse; import com.webank.webase.node.mgr.base.code.ConstantCode; -import com.webank.webase.node.mgr.base.enums.DataStatus; +import com.webank.webase.node.mgr.base.entity.BaseResponse; import com.webank.webase.node.mgr.base.exception.NodeMgrException; import com.webank.webase.node.mgr.base.properties.ConstantProperties; import com.webank.webase.node.mgr.base.tools.NodeMgrTools; import com.webank.webase.node.mgr.block.BlockService; import com.webank.webase.node.mgr.front.FrontService; -import com.webank.webase.node.mgr.logs.LatestLog; -import com.webank.webase.node.mgr.logs.NodeLogService; -import com.webank.webase.node.mgr.logs.TbNodeLog; import com.webank.webase.node.mgr.node.NodeService; import com.webank.webase.node.mgr.node.TbNode; import java.math.BigInteger; -import java.time.LocalDateTime; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Optional; import lombok.extern.log4j.Log4j2; -import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -50,21 +44,15 @@ public class ReportService { private static final String BLOCK_INFO_ATTR = "block_info";// report block info - private static final String NODE_LOG_ATTR = "node_log"; // report node log info private static final String LATEST_BLOCK_ATTR = "latest_block";// query latest block - private static final String LATEST_NODE_LOG_ATTR = "latest_node_log";// query latest node log // all attr for report blockChainInfo - private static final List REPORT_ARRT_NAME_LIST = Arrays - .asList(BLOCK_INFO_ATTR, NODE_LOG_ATTR); + private static final List REPORT_ARRT_NAME_LIST = Arrays.asList(BLOCK_INFO_ATTR); // all attr for query blockChainInfo - private static final List QUERY_ARRT_NAME_LIST = Arrays - .asList(LATEST_BLOCK_ATTR, LATEST_NODE_LOG_ATTR); + private static final List QUERY_ARRT_NAME_LIST = Arrays.asList(LATEST_BLOCK_ATTR); @Autowired private NodeService nodeService; @Autowired - private NodeLogService nodeLogService; - @Autowired private BlockService blockService; @Autowired private FrontService frontService; @@ -117,9 +105,6 @@ public BaseResponse getBlockChainInfo(String attr, String nodeIp, Integer nodeP2 case LATEST_BLOCK_ATTR: getLatestBlockNumber(tbNode.getNetworkId(), nodeIp, nodeP2PPort, baseResponse); break; - case LATEST_NODE_LOG_ATTR: - getLatestNodeLog(nodeIp, nodeP2PPort, baseResponse); - break; default: break; } @@ -157,20 +142,6 @@ public void getLatestBlockNumber(Integer networkId, String nodeIp, Integer nodeP log.debug("end getLatestBlockNumber. baseResponse:{} ", JSON.toJSONString(baseResponse)); } - /** - * query latest node log. - */ - public void getLatestNodeLog(String nodeIp, Integer nodeP2PPort, BaseResponse baseResponse) - throws NodeMgrException { - log.debug("start getLatestNodeLog. nodeIp:{} nodeP2PPort:{} ", nodeIp, nodeP2PPort); - - // query latest log - LatestLog latestLog = nodeLogService.queryLatestNodeLog(nodeIp, nodeP2PPort); - baseResponse.setData(latestLog); - - log.debug("end getLatestNodeLog. baseResponse:{} ", JSON.toJSONString(baseResponse)); - - } /** * case report attr. @@ -195,9 +166,6 @@ private void caseReportAttr(MetricData metricData) throws NodeMgrException { case BLOCK_INFO_ATTR: handleReportBlockInfo(tbNode, metricData.getMetricValue()); break; - case NODE_LOG_ATTR: - saveNodeLog(tbNode, metricData.getMetricValue()); - break; default: break; } @@ -205,43 +173,6 @@ private void caseReportAttr(MetricData metricData) throws NodeMgrException { } - /** - * save node log. - */ - public void saveNodeLog(TbNode tbNode, Object metricValue) throws NodeMgrException { - Integer nodeId = Optional.ofNullable(tbNode).map(TbNode::getNodeId) - .orElseThrow(() -> new NodeMgrException(ConstantCode.INVALID_NODE_INFO)); - - List listNodeLog = (List) metricValue; - for (int i = 0; i < listNodeLog.size(); i++) { - NodeLogInfo nodeLog = NodeMgrTools - .object2JavaBean(listNodeLog.get(i), NodeLogInfo.class); - if (nodeLog == null) { - log.warn("fail saveNodeLog. logs null"); - return; - } - // save node log - LocalDateTime logTime = nodeLog.getLogTime(); - Integer rowNumber = nodeLog.getRowNumber(); - String logMsg = nodeLog.getLogMsg(); - String fileName = nodeLog.getFileName(); - - if (StringUtils.isAnyBlank(logMsg, fileName) || rowNumber == null || logTime == null) { - log.warn( - "fail saveNodeLog. nodeId:{} fileName:{} rowNumber:{} logTimeStr:{} logMsg:{}", - nodeId, fileName, rowNumber, logTime, - logMsg); - return; - } - - TbNodeLog logRow = new TbNodeLog(nodeId, fileName, logTime, rowNumber, logMsg, - DataStatus.NORMAL.getValue()); - nodeLogService.addNodeLog(logRow); - } - - } - - /** * save block info. */ diff --git a/src/main/java/com/webank/webase/node/mgr/scheduler/DeleteNodeLogTask.java b/src/main/java/com/webank/webase/node/mgr/scheduler/DeleteNodeLogTask.java deleted file mode 100644 index f0addbf7c..000000000 --- a/src/main/java/com/webank/webase/node/mgr/scheduler/DeleteNodeLogTask.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright 2014-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.webank.webase.node.mgr.scheduler; - -import com.webank.webase.node.mgr.base.properties.ConstantProperties; -import com.webank.webase.node.mgr.logs.MinMaxRowNumber; -import com.webank.webase.node.mgr.logs.NodeLogService; -import java.time.Duration; -import java.time.Instant; -import java.util.List; -import lombok.extern.log4j.Log4j2; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Log4j2 -@Component -public class DeleteNodeLogTask { - - @Autowired - private NodeLogService nodeLogService; - @Autowired - private ConstantProperties constantsProperties; - - /** - * delete node log. - */ - public void deleteNodeLogInfo() { - Instant startTime = Instant.now(); - log.info("start deleteNodeLogInfo startTime:{}", startTime.toEpochMilli()); - try { - List listOfLog = nodeLogService.queryMinMaxRowNumber(); - if (listOfLog == null || listOfLog.size() == 0) { - log.warn("fail deleteNodeLogInfo. not find new log"); - return; - } - - for (MinMaxRowNumber minMaxRowNumber : listOfLog) { - Integer nodeId = minMaxRowNumber.getNodeId(); - int minRowNumber = minMaxRowNumber.getMinRowNumber(); - int maxRowNumber = minMaxRowNumber.getMaxRowNumber(); - if (nodeId == null || minRowNumber == 0 || maxRowNumber == 0) { - log.warn( - "deleteNodeLogInfo jump over .nodeId[{}],minRowNumber[{}],maxRowNumber[{}]", - nodeId, minRowNumber, - maxRowNumber); - continue; - } - - int subRowNumber = maxRowNumber - constantsProperties.getLogRetainMax(); - if (minRowNumber > subRowNumber) { - log.info("deleteNodeLogInfo jump over . minRowNumber[{}],maxRowNumber[{}]", - minRowNumber, maxRowNumber); - continue; - } - - Integer effectRows = nodeLogService.deleteSomeLogs(nodeId, subRowNumber); - log.info("period deleteNodeLogInfo. nodeId[{}] effectRows:[{}]", nodeId, - effectRows); - } - } catch (Exception ex) { - log.error("deleteNodeLogInfo fail. jump over", ex); - } - log.info("end deleteNodeLogInfo useTime:{}", - Duration.between(startTime, Instant.now()).toMillis()); - } -} diff --git a/src/main/java/com/webank/webase/node/mgr/scheduler/SchedulerService.java b/src/main/java/com/webank/webase/node/mgr/scheduler/SchedulerService.java index e8af8760e..7346e78a2 100644 --- a/src/main/java/com/webank/webase/node/mgr/scheduler/SchedulerService.java +++ b/src/main/java/com/webank/webase/node/mgr/scheduler/SchedulerService.java @@ -37,8 +37,6 @@ public class SchedulerService implements SchedulingConfigurer { @Autowired private DeleteBlockTask deleteBlockTask; @Autowired - private DeleteNodeLogTask deleteNodeLogTask; - @Autowired private DeleteTransHashTask deleteTransHashTask; @Autowired private TransMonitorTask transMonitorTask; @@ -61,10 +59,6 @@ public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { (context) -> new CronTrigger(constants.getDeleteInfoCron()) .nextExecutionTime(context)); - taskRegistrar.addTriggerTask(() -> deleteNodeLogTask.deleteNodeLogInfo(), - (context) -> new CronTrigger(constants.getDeleteInfoCron()) - .nextExecutionTime(context)); - taskRegistrar.addTriggerTask(() -> deleteTransHashTask.deleteTransHash(), (context) -> new CronTrigger(constants.getDeleteInfoCron()) .nextExecutionTime(context)); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 1de2bde54..b70675873 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -39,7 +39,6 @@ executor: constant: nodeWaitMax: 90 blockRetainMax: 10000 - logRetainMax: 10000 transRetainMax: 10000 deleteInfoCron: "0 0/2 * * * ?" statisticsTransDailyCron: "0 0/1 * * * ?" diff --git a/src/main/resources/mapper/NodeLogMapper.xml b/src/main/resources/mapper/NodeLogMapper.xml deleted file mode 100644 index 321a5f414..000000000 --- a/src/main/resources/mapper/NodeLogMapper.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - - - - - - - - - - - - (node_id,file_name,log_time,row_number,log_msg,log_status,create_time,modify_time) - - - - log_id as logId,file_name as fileName,node_id as nodeId,log_time as logTime,row_number as rowNumber,log_msg as logMsg, - log_status as logStatus,create_time as createTime,modify_time - asmodifyTime - - - - - replace into tb_node_log - - values(#{nodeId},#{fileName},#{logTime},#{rowNumber},#{logMsg},#{logStatus},NOW(),NOW()) - - - - - - - - - - - - - - - - delete from tb_node_log where node_id = #{nodeId} and row_number < #{deleteRowNumber} - - \ No newline at end of file