소스 검색

update loggers.

deason 4 년 전
부모
커밋
4a5c6fb865

+ 2 - 2
examcloud-exchange-inner-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/inner/api/controller/UpyunController.java

@@ -103,7 +103,7 @@ public class UpyunController extends ControllerSupport {
             try {
                 FileUtils.forceMkdir(new File(systemConfig.getTempDataDir()));
             } catch (IOException e1) {
-                log.error("fail to make dir. path=" + systemConfig.getTempDataDir());
+                LOGGER.error("fail to make dir. path=" + systemConfig.getTempDataDir());
             }
 
             String filePath = systemConfig.getTempDataDir() + File.separator + UUID.randomUUID()
@@ -133,7 +133,7 @@ public class UpyunController extends ControllerSupport {
                 try {
                     FileUtils.forceDelete(file);
                 } catch (IOException e) {
-                    log.error("fail to delete file. path=" + filePath);
+                    LOGGER.error("fail to delete file. path=" + filePath);
                 }
             }
 

+ 4 - 4
examcloud-exchange-inner-service/src/main/java/cn/com/qmth/examcloud/exchange/inner/service/impl/SmsServiceImpl.java

@@ -6,6 +6,8 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.tomcat.util.buf.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -21,8 +23,6 @@ import com.google.gson.JsonObject;
 import com.google.gson.JsonParser;
 
 import cn.com.qmth.examcloud.commons.exception.StatusException;
-import cn.com.qmth.examcloud.commons.logging.ExamCloudLog;
-import cn.com.qmth.examcloud.commons.logging.ExamCloudLogFactory;
 import cn.com.qmth.examcloud.commons.util.DateUtil;
 import cn.com.qmth.examcloud.commons.util.JsonUtil;
 import cn.com.qmth.examcloud.commons.util.UUID;
@@ -48,7 +48,7 @@ public class SmsServiceImpl implements SmsService {
 	@Autowired
 	RedisClient redisClient;
 
-	protected ExamCloudLog log = ExamCloudLogFactory.getLog(this.getClass());
+	private static final Logger LOG = LoggerFactory.getLogger(SmsServiceImpl.class);
 
 	@Override
 	public void sendSms(String smsAssemblyCode, List<String> phoneList,
@@ -193,7 +193,7 @@ public class SmsServiceImpl implements SmsService {
 			String code = jsonObj.get("Code").getAsString();
 
 			if (!code.equals("OK")) {
-				log.error("aliyun sms response: " + JsonUtil.toJson(response));
+				LOG.error("aliyun sms response: " + JsonUtil.toJson(response));
 				throw new StatusException("101001", "短信发送失败");
 			}
 

+ 4 - 4
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/controller/CommonGainScoreController.java

@@ -62,7 +62,7 @@ public class CommonGainScoreController extends ControllerSupport {
             return new ResponseEntity<>(new SuccessBaseResponse("查询成功", outletScoreList), HttpStatus.OK);
         } catch (Exception e) {
             e.printStackTrace();
-            log.error("查询失败", e);
+            LOGGER.error("查询失败", e);
             return new ResponseEntity<FailureBaseResponse>(new FailureBaseResponse("请求失败"), HttpStatus.INTERNAL_SERVER_ERROR);
         }
 
@@ -91,7 +91,7 @@ public class CommonGainScoreController extends ControllerSupport {
             return new ResponseEntity<SuccessBaseResponse>(new SuccessBaseResponse("查询成功", outletScoreList), HttpStatus.OK);
         } catch (Exception e) {
             e.printStackTrace();
-            log.error("查询失败", e);
+            LOGGER.error("查询失败", e);
             return new ResponseEntity<FailureBaseResponse>(new FailureBaseResponse("请求失败"), HttpStatus.INTERNAL_SERVER_ERROR);
         }
     }
@@ -133,7 +133,7 @@ public class CommonGainScoreController extends ControllerSupport {
             return new ResponseEntity<SuccessBaseResponse>(new SuccessBaseResponse("查询成功", outletScoreList), HttpStatus.OK);
         } catch (Exception e) {
             e.printStackTrace();
-            log.error("查询失败", e);
+            LOGGER.error("查询失败", e);
             return new ResponseEntity<FailureBaseResponse>(new FailureBaseResponse("请求失败"), HttpStatus.INTERNAL_SERVER_ERROR);
         }
     }
@@ -169,7 +169,7 @@ public class CommonGainScoreController extends ControllerSupport {
             return new ResponseEntity<SuccessBaseResponse>(new SuccessBaseResponse("查询成功", outletScores), HttpStatus.OK);
         } catch (Exception e) {
             e.printStackTrace();
-            log.error("查询失败", e);
+            LOGGER.error("查询失败", e);
             return new ResponseEntity<FailureBaseResponse>(new FailureBaseResponse("查询失败"), HttpStatus.INTERNAL_SERVER_ERROR);
         }
     }

+ 2 - 2
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/controller/FaceController.java

@@ -67,7 +67,7 @@ public class FaceController extends ControllerSupport {
 		User accessUser = getAccessUser();
 		Long rootOrgId = accessUser.getRootOrgId();
 
-		log.debug("fileName =" + file.getOriginalFilename());
+		LOGGER.debug("fileName =" + file.getOriginalFilename());
 		DiskFileItem item = (DiskFileItem) file.getFileItem();
 		File storeLocation = item.getStoreLocation();
 		String fileName = file.getOriginalFilename();
@@ -172,7 +172,7 @@ public class FaceController extends ControllerSupport {
 		try {
 			FileUtils.deleteDirectory(tempDir);
 		} catch (IOException e) {
-			log.error("fail to clean temp dir.", e);
+			LOGGER.error("fail to clean temp dir.", e);
 		}
 
 		return ret;

+ 10 - 10
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/provider/ExamQuestionOuterServiceProvider.java

@@ -91,7 +91,7 @@ public class ExamQuestionOuterServiceProvider extends ControllerSupport implemen
         // 获取考试相关联的课程列表
         List<OuterCourseBean> courses = outletPaperStructService.getExamCourses(req.getExamId());
         if (CollectionUtils.isEmpty(courses)) {
-            log.warn(String.format("getExamCourses is empty, examId = %s", req.getExamId()));
+            LOGGER.warn(String.format("getExamCourses is empty, examId = %s", req.getExamId()));
             throw new StatusException("101202", "考试相关的课程列表为空");
         }
 
@@ -108,7 +108,7 @@ public class ExamQuestionOuterServiceProvider extends ControllerSupport implemen
                     req.getExamId(), course.getCode(), QuestionCategory.SUBJECTIVE);
             if (CollectionUtils.isEmpty(questions)) {
                 // 当前考试和课程对应的调卷规则不存在时,则获取不到试卷试题
-                log.warn(String.format("getPaperStructQuestions is empty, examId = %s, courseCode = %s", req.getExamId(), course.getCode()));
+                LOGGER.warn(String.format("getPaperStructQuestions is empty, examId = %s, courseCode = %s", req.getExamId(), course.getCode()));
                 paperStruct.setQuestions(new ArrayList<>());
                 continue;
             }
@@ -164,8 +164,8 @@ public class ExamQuestionOuterServiceProvider extends ControllerSupport implemen
         }
 
         long startTime = System.currentTimeMillis();
-        if (log.isDebugEnabled()) {
-            log.debug("0 [GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "] start...");
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("0 [GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "] start...");
         }
 
         GetPagedToBeMarkExamRecordReq pagedReq = new GetPagedToBeMarkExamRecordReq();
@@ -175,8 +175,8 @@ public class ExamQuestionOuterServiceProvider extends ControllerSupport implemen
         pagedReq.setSize(size);
         GetPagedToBeMarkExamRecordResp pagedResp = examRecordCloudService.getPagedToBeMarkExamRecord(pagedReq);
 
-        if (log.isDebugEnabled()) {
-            log.debug("1.[GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "]" +
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("1.[GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "]" +
                     "通过rpc获取待阅卷列表耗时:" + (System.currentTimeMillis() - startTime) + " ms");
         }
 
@@ -186,13 +186,13 @@ public class ExamQuestionOuterServiceProvider extends ControllerSupport implemen
         resp.setNextId(pagedResp.getNextId());
         resp.setDataList(getOuterExamRecordBean(pagedResp.getToBeMarkExamRecordBeanList()));
 
-        if (log.isDebugEnabled()) {
-            log.debug("2.[GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "]" +
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("2.[GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "]" +
                     "构造满足条件的考试记录集合耗时:" + (System.currentTimeMillis() - startTime) + " ms");
         }
 
-        if (log.isDebugEnabled()) {
-            log.debug("999.[GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "] end..." +
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("999.[GET_SUBJECTIVE_QUESTION-" + examId + "-" + subjectCode + "-" + startId + "] end..." +
                     "合计耗时:" + (System.currentTimeMillis() - st) + " ms");
         }
 

+ 1 - 1
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/provider/FaceOuterServiceProvider.java

@@ -207,7 +207,7 @@ public class FaceOuterServiceProvider extends ControllerSupport implements FaceO
 		try {
 			FileUtils.deleteDirectory(tempDir);
 		} catch (IOException e) {
-			log.error("fail to clean temp dir.", e);
+			LOGGER.error("fail to clean temp dir.", e);
 		}
 
 		return ret;

+ 10 - 16
examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/FaceServiceImpl.java

@@ -14,6 +14,8 @@ import org.apache.http.client.utils.URIBuilder;
 import org.apache.http.impl.client.CloseableHttpClient;
 import org.apache.http.impl.client.HttpClients;
 import org.apache.http.util.EntityUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
@@ -26,8 +28,6 @@ import com.google.common.collect.Maps;
 import cn.com.qmth.examcloud.api.commons.security.bean.User;
 import cn.com.qmth.examcloud.api.commons.security.bean.UserType;
 import cn.com.qmth.examcloud.commons.exception.StatusException;
-import cn.com.qmth.examcloud.commons.logging.ExamCloudLog;
-import cn.com.qmth.examcloud.commons.logging.ExamCloudLogFactory;
 import cn.com.qmth.examcloud.commons.util.HttpClientUtil;
 import cn.com.qmth.examcloud.commons.util.JsonUtil;
 import cn.com.qmth.examcloud.core.basic.api.FaceCloudService;
@@ -60,13 +60,7 @@ import cn.com.qmth.examcloud.web.upyun.UpyunService;
 @Service
 public class FaceServiceImpl implements FaceService {
 
-	protected ExamCloudLog log = ExamCloudLogFactory.getLog(this.getClass());
-
-	/**
-	 * 接口日志
-	 */
-	private static final ExamCloudLog INTERFACE_LOG = ExamCloudLogFactory
-			.getLog("INTERFACE_LOGGER");
+	private static final Logger LOG = LoggerFactory.getLogger(FaceServiceImpl.class);
 
 	@Autowired
 	StudentCloudService studentCloudService;
@@ -154,7 +148,7 @@ public class FaceServiceImpl implements FaceService {
 			info.put("facesetToken", facesetToken);
 
 			if (times > 5) {
-				log.error("添加faceToken至faceSet失败. info=" + JsonUtil.toJson(info));
+				LOG.error("添加faceToken至faceSet失败. info=" + JsonUtil.toJson(info));
 				return null;
 			}
 
@@ -167,7 +161,7 @@ public class FaceServiceImpl implements FaceService {
 						.setParameter("faceset_token", facesetToken)
 						.setParameter("face_tokens", faceToken).build();
 
-				INTERFACE_LOG.info("[Face++ Rquest]. url=" + uri.toString());
+				LOG.info("[Face++ Rquest]. url=" + uri.toString());
 
 				HttpPost httpPost = new HttpPost(uri);
 
@@ -176,7 +170,7 @@ public class FaceServiceImpl implements FaceService {
 				int statusCode = httpResponse.getStatusLine().getStatusCode();
 				String respBody = EntityUtils.toString(entity, "UTF-8");
 
-				INTERFACE_LOG.info(
+				LOG.info(
 						"[Face++ Response]. statusCode=" + statusCode + "; respBody=" + respBody);
 
 				if (respBody.contains("QUOTA_EXCEEDED")) {
@@ -202,7 +196,7 @@ public class FaceServiceImpl implements FaceService {
 				times++;
 				continue;
 			} catch (Exception e) {
-				log.error("调用addface接口异常. info=" + JsonUtil.toJson(info), e);
+				LOG.error("调用addface接口异常. info=" + JsonUtil.toJson(info), e);
 				times++;
 				continue;
 			} finally {
@@ -256,7 +250,7 @@ public class FaceServiceImpl implements FaceService {
 						.setParameter("api_secret", apiSecret).setParameter("image_url", photoUrl)
 						.build();
 
-				INTERFACE_LOG
+				LOG
 						.info("[Face++ Rquest]. url=" + uri.toString() + "; photoUrl=" + photoUrl);
 
 				HttpPost httpPost = new HttpPost(uri);
@@ -266,7 +260,7 @@ public class FaceServiceImpl implements FaceService {
 				int statusCode = httpResponse.getStatusLine().getStatusCode();
 				String respBody = EntityUtils.toString(entity, "UTF-8");
 
-				INTERFACE_LOG.info(
+				LOG.info(
 						"[Face++ Response]. statusCode=" + statusCode + "; respBody=" + respBody);
 
 				if (statusCode == HttpStatus.SC_OK) {
@@ -288,7 +282,7 @@ public class FaceServiceImpl implements FaceService {
 				times++;
 				continue;
 			} catch (Exception e) {
-				log.error("调用detect接口异常. photoUrl=" + photoUrl, e);
+				LOG.error("调用detect接口异常. photoUrl=" + photoUrl, e);
 				times++;
 				continue;
 			} finally {

+ 3 - 10
examcloud-exchange-starter/src/main/java/cn/com/qmth/examcloud/exchange/config/EnterpriseAccessInterceptor.java

@@ -5,13 +5,13 @@ import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.ThreadContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.http.HttpStatus;
 import org.springframework.web.servlet.HandlerInterceptor;
 import org.springframework.web.servlet.ModelAndView;
 
 import cn.com.qmth.examcloud.api.commons.EnterpriseService;
-import cn.com.qmth.examcloud.commons.logging.ExamCloudLog;
-import cn.com.qmth.examcloud.commons.logging.ExamCloudLogFactory;
 import cn.com.qmth.examcloud.commons.util.ByteUtil;
 import cn.com.qmth.examcloud.commons.util.SHA256;
 import cn.com.qmth.examcloud.commons.util.StringUtil;
@@ -31,14 +31,7 @@ import cn.com.qmth.examcloud.web.support.StatusResponse;
  */
 public final class EnterpriseAccessInterceptor implements HandlerInterceptor {
 
-	private static final ExamCloudLog LOG = ExamCloudLogFactory
-			.getLog(EnterpriseAccessInterceptor.class);
-
-	/**
-	 * 接口日志
-	 */
-	protected static final ExamCloudLog INTERFACE_LOG = ExamCloudLogFactory
-			.getLog("INTERFACE_LOGGER");
+	private static final Logger LOG = LoggerFactory.getLogger(EnterpriseAccessInterceptor.class);
 
 	@Override
 	public boolean preHandle(HttpServletRequest request, HttpServletResponse response,

+ 18 - 39
examcloud-exchange-starter/src/main/resources/log4j2.xml

@@ -2,47 +2,31 @@
 <Configuration status="WARN" monitorInterval="30">
 
     <Properties>
-        <Property name="commonLevel" value="${sys:log.commonLevel}"/>
-        <Property name="logPattern">
+        <Property name="LOG_LEVEL" value="${sys:log.commonLevel}"/>
+        <Property name="LOG_DIR" value="./logs/examcloud-exchange"/>
+        <Property name="LOG_PATTERN">
             %d{yyyy-MM-dd HH:mm:ss.SSS} | %clr{%level} | %X{TRACE_ID} %X{CALLER} | %clr{%c{1.1}:%L}{cyan} | %m%n
         </Property>
     </Properties>
 
     <Appenders>
-        <!-- 控制台 日志 -->
-        <Console name="Console" target="SYSTEM_OUT">
-            <PatternLayout pattern="${logPattern}" charset="UTF-8"/>
+        <Console name="CONSOLE_APPENDER" target="SYSTEM_OUT">
+            <PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
         </Console>
 
-        <!-- debug 日志 -->
-        <RollingFile name="DEBUG_APPENDER"
-                     fileName="./logs/debug/debug.log"
-                     filePattern="./logs/debug/debug-%d{yyyy.MM.dd.HH}-%i.log">
-            <PatternLayout pattern="${logPattern}" charset="UTF-8"/>
-            <Policies>
-                <TimeBasedTriggeringPolicy interval="1" modulate="false"/>
-                <SizeBasedTriggeringPolicy size="100 MB"/>
-            </Policies>
-            <DefaultRolloverStrategy max="1000">
-                <Delete basePath="./logs/debug" maxDepth="1">
-                    <IfFileName glob="debug-*.log">
-                        <IfAccumulatedFileSize exceeds="2 GB"/>
-                    </IfFileName>
-                </Delete>
-            </DefaultRolloverStrategy>
-        </RollingFile>
+        <RollingFile name="FILE_APPENDER"
+                     fileName="${LOG_DIR}/debug.log"
+                     filePattern="${LOG_DIR}/debug-%d{yyyyMMdd}-%i.log">
+            <PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
 
-        <!-- 接口日志 -->
-        <RollingFile name="INTERFACE_APPENDER" fileName="./logs/interface/interface.log"
-                     filePattern="./logs/interface/interface-%d{yyyy.MM.dd.HH}-%i.log">
-            <PatternLayout pattern="${logPattern}" charset="UTF-8"/>
             <Policies>
                 <TimeBasedTriggeringPolicy interval="1" modulate="false"/>
                 <SizeBasedTriggeringPolicy size="100 MB"/>
             </Policies>
+
             <DefaultRolloverStrategy max="1000">
-                <Delete basePath="./logs/interface" maxDepth="1">
-                    <IfFileName glob="interface-*.log">
+                <Delete basePath="${LOG_DIR}" maxDepth="1">
+                    <IfFileName glob="debug-*.log">
                         <IfAccumulatedFileSize exceeds="10 GB"/>
                     </IfFileName>
                 </Delete>
@@ -67,19 +51,14 @@
         <!--<logger name="org.springframework.data.mongodb" level="DEBUG"/>-->
         <!--<logger name="org.springframework.data.redis" level="DEBUG"/>-->
 
-        <Logger name="cn.com.qmth" level="${commonLevel}" additivity="false">
-            <AppenderRef ref="DEBUG_APPENDER"/>
-            <AppenderRef ref="Console"/>
-        </Logger>
-
-        <Logger name="INTERFACE_LOGGER" level="${commonLevel}" additivity="false">
-            <AppenderRef ref="INTERFACE_APPENDER"/>
-            <AppenderRef ref="Console"/>
+        <Logger name="cn.com.qmth" level="${LOG_LEVEL}" additivity="false">
+            <AppenderRef ref="CONSOLE_APPENDER"/>
+            <AppenderRef ref="FILE_APPENDER"/>
         </Logger>
 
-        <Root level="${commonLevel}">
-            <AppenderRef ref="Console"/>
-            <AppenderRef ref="DEBUG_APPENDER"/>
+        <Root level="${LOG_LEVEL}">
+            <AppenderRef ref="CONSOLE_APPENDER"/>
+            <AppenderRef ref="FILE_APPENDER"/>
         </Root>
     </Loggers>