From a2715eeea5045d0720ca4e8856b1f65a71fac7ce Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期一, 12 九月 2022 15:14:51 +0800
Subject: [PATCH] 加入异常日志
---
java110-core/src/main/java/com/java110/core/event/cmd/ServiceCmdEventPublishing.java | 16 +++++++++-------
java110-service/src/main/java/com/java110/service/api/CmdApi.java | 26 +++++++++++++++-----------
java110-bean/src/main/java/com/java110/dto/logSystemError/LogSystemErrorDto.java | 1 +
3 files changed, 25 insertions(+), 18 deletions(-)
diff --git a/java110-bean/src/main/java/com/java110/dto/logSystemError/LogSystemErrorDto.java b/java110-bean/src/main/java/com/java110/dto/logSystemError/LogSystemErrorDto.java
index 00b970d..6f6ce28 100755
--- a/java110-bean/src/main/java/com/java110/dto/logSystemError/LogSystemErrorDto.java
+++ b/java110-bean/src/main/java/com/java110/dto/logSystemError/LogSystemErrorDto.java
@@ -19,6 +19,7 @@
public static final String ERR_TYPE_JOB = "JOB";
public static final String ERR_TYPE_OWE_FEE = "OWE_FEE";
public static final String ERR_TYPE_NOTICE = "NOTICE";
+ public static final String ERR_TYPE_CMD = "CMD";
public static final String ERR_TYPE_ACCOUNT = "ACCOUNT";
private String msg;
diff --git a/java110-core/src/main/java/com/java110/core/event/cmd/ServiceCmdEventPublishing.java b/java110-core/src/main/java/com/java110/core/event/cmd/ServiceCmdEventPublishing.java
index dcfbb49..f394887 100644
--- a/java110-core/src/main/java/com/java110/core/event/cmd/ServiceCmdEventPublishing.java
+++ b/java110-core/src/main/java/com/java110/core/event/cmd/ServiceCmdEventPublishing.java
@@ -3,19 +3,21 @@
import com.alibaba.fastjson.JSONObject;
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.event.center.DataFlowListenerOrderComparator;
+import com.java110.core.factory.GenerateCodeFactory;
import com.java110.core.log.LoggerFactory;
import com.java110.dto.CmdListenerDto;
+import com.java110.dto.logSystemError.LogSystemErrorDto;
+import com.java110.po.logSystemError.LogSystemErrorPo;
import com.java110.utils.constant.CommonConstant;
import com.java110.utils.constant.ResponseConstant;
import com.java110.utils.exception.BusinessException;
-import com.java110.utils.exception.CmdException;
import com.java110.utils.exception.ListenerExecuteException;
import com.java110.utils.factory.ApplicationContextFactory;
import com.java110.utils.log.LoggerEngine;
import com.java110.utils.util.Assert;
+import com.java110.utils.util.ExceptionUtil;
import org.slf4j.Logger;
-import java.text.ParseException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -147,7 +149,7 @@
* @param event
* @param asyn A 琛ㄧず寮傛澶勭悊
*/
- public static void multicastEvent(String serviceCode, final CmdEvent event, String asyn) throws ParseException {
+ public static void multicastEvent(String serviceCode, final CmdEvent event, String asyn) throws Exception {
List<ServiceCmdListener> listeners = getListeners(serviceCode);
//杩欓噷鍒ゆ柇 serviceCode + httpMethod 鐨勪睛鍚紝濡傛灉娌℃湁娉ㄥ唽鐩存帴鎶ラ敊銆�
if (listeners == null || listeners.size() == 0) {
@@ -164,7 +166,7 @@
public void run() {
try {
invokeListener(listener, event);
- } catch (ParseException e) {
+ } catch (Exception e) {
e.printStackTrace();
}
}
@@ -196,7 +198,7 @@
* @since 4.1
*/
@SuppressWarnings({"unchecked", "rawtypes"})
- protected static void invokeListener(ServiceCmdListener listener, CmdEvent event) throws ParseException {
+ protected static void invokeListener(ServiceCmdListener listener, CmdEvent event) throws Exception {
try {
// //杩欓噷澶勭悊涓氬姟閫昏緫鏁版嵁
ICmdDataFlowContext dataFlowContext = event.getCmdDataFlowContext();
@@ -211,8 +213,8 @@
//logger.debug("API鏈嶅姟 --- 杩斿洖鎶ユ枃淇℃伅锛歿}", dataFlowContext.getResponseEntity());
// listener.cmd(event);
- } catch (CmdException | ParseException e) {
- LoggerEngine.error("鍙戝竷渚﹀惉澶辫触", e);
+ } catch (Throwable e) {
+ LoggerEngine.error("鍙戝竷渚﹀惉澶辫触" + e);
throw e;
}
}
diff --git a/java110-service/src/main/java/com/java110/service/api/CmdApi.java b/java110-service/src/main/java/com/java110/service/api/CmdApi.java
index a0a7425..4d509e7 100644
--- a/java110-service/src/main/java/com/java110/service/api/CmdApi.java
+++ b/java110-service/src/main/java/com/java110/service/api/CmdApi.java
@@ -1,22 +1,17 @@
package com.java110.service.api;
import com.java110.core.base.controller.BaseController;
-import com.java110.core.factory.DataTransactionFactory;
-import com.java110.core.trace.Java110TraceLog;
-import com.java110.service.context.DataQuery;
-import com.java110.service.context.DataQueryFactory;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.log.LoggerFactory;
+import com.java110.dto.logSystemError.LogSystemErrorDto;
+import com.java110.po.logSystemError.LogSystemErrorPo;
import com.java110.service.smo.ICmdServiceSMO;
-import com.java110.service.smo.IQueryServiceSMO;
+import com.java110.service.smo.ISaveSystemErrorSMO;
import com.java110.utils.constant.CommonConstant;
-import com.java110.utils.constant.ResponseConstant;
-import com.java110.utils.util.Assert;
-import com.java110.vo.ResultVo;
-import io.swagger.annotations.Api;
+import com.java110.utils.util.ExceptionUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
-import com.java110.core.log.LoggerFactory;
-
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@@ -42,6 +37,9 @@
@Autowired
private ICmdServiceSMO cmdServiceSMOImpl;
+ @Autowired
+ ISaveSystemErrorSMO saveSystemErrorSMOImpl;
+
@RequestMapping(path = "/{service:.+}", method = RequestMethod.POST)
public ResponseEntity<String> service(@PathVariable String service,
@@ -57,6 +55,11 @@
logger.debug("api锛歿} 璇锋眰鎶ユ枃涓猴細{},header淇℃伅涓猴細{}", service, postInfo, headers);
responseEntity = cmdServiceSMOImpl.cmd(postInfo, headers);
} catch (Throwable e) {
+ LogSystemErrorPo logSystemErrorPo = new LogSystemErrorPo();
+ logSystemErrorPo.setErrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_errId));
+ logSystemErrorPo.setErrType(LogSystemErrorDto.ERR_TYPE_CMD);
+ logSystemErrorPo.setMsg(ExceptionUtil.getStackTrace(e));
+ saveSystemErrorSMOImpl.saveLog(logSystemErrorPo);
logger.error("璇锋眰post 鏂规硶[" + service + "]澶辫触锛�" + postInfo, e);
responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
}
@@ -97,6 +100,7 @@
logger.debug("cmd锛歿} 杩斿洖淇℃伅涓猴細{}", action, responseEntity);
return responseEntity;
}
+
/**
* 鑾峰彇璇锋眰淇℃伅
*
--
Gitblit v1.8.0