From a569dedcec825e69a970ac2dbc7410262dd7365e Mon Sep 17 00:00:00 2001 From: 陈杰 <504987307@qq.com> Date: Fri, 17 Apr 2020 09:37:19 +0800 Subject: [PATCH] 博冠人脸 日志 优化 --- cloud/lapi/src/main/java/com/sincere/lapi/controller/LapiController.java | 8 +++++++- cloud/lapi/src/main/java/com/sincere/lapi/logs/LogName.java | 36 ++++++++++++++++++++++++++++++++++++ cloud/lapi/src/main/java/com/sincere/lapi/logs/LoggerUtils.java | 27 +++++++++++++++++++++++++++ cloud/lapi/src/main/java/com/sincere/lapi/logs/MyTimeBasedFileNamingAndTriggeringPolicy.java | 32 ++++++++++++++++++++++++++++++++ cloud/lapi/src/main/java/com/sincere/lapi/server/handler/HttpClientHandler.java | 6 ++++-- cloud/lapi/src/main/java/com/sincere/lapi/service/request/AttendanceService.java | 9 +++++++++ cloud/lapi/src/main/resources/application.yml | 2 +- cloud/lapi/src/main/resources/logback.xml | 135 +++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------- 8 files changed, 165 insertions(+), 90 deletions(-) create mode 100644 cloud/lapi/src/main/java/com/sincere/lapi/logs/LogName.java create mode 100644 cloud/lapi/src/main/java/com/sincere/lapi/logs/LoggerUtils.java create mode 100644 cloud/lapi/src/main/java/com/sincere/lapi/logs/MyTimeBasedFileNamingAndTriggeringPolicy.java diff --git a/cloud/lapi/src/main/java/com/sincere/lapi/controller/LapiController.java b/cloud/lapi/src/main/java/com/sincere/lapi/controller/LapiController.java index e94c4b4..07d76fc 100644 --- a/cloud/lapi/src/main/java/com/sincere/lapi/controller/LapiController.java +++ b/cloud/lapi/src/main/java/com/sincere/lapi/controller/LapiController.java @@ -5,10 +5,13 @@ import com.sincere.common.dto.smartCampus.SzVSchoolTeacher; import com.sincere.lapi.Utils.FileUtils; import com.sincere.lapi.feign.ScFeign; import com.sincere.lapi.feign.XaFeign; +import com.sincere.lapi.logs.LogName; +import com.sincere.lapi.logs.LoggerUtils; import com.sincere.lapi.pojo.*; import com.sincere.lapi.service.request.TerminalHttpCall; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -35,6 +38,7 @@ public class LapiController { @Autowired TerminalHttpCall terminalHttpCall = new TerminalHttpCall(); + private static final Logger Log_operate = LoggerUtils.Logger(LogName.operate); /** * 下发整个学校 * @param deviceIds 多个设备用,隔开 @@ -43,7 +47,7 @@ public class LapiController { */ @RequestMapping(value = "sendFaces", method = RequestMethod.GET) @ApiOperation(value = "下发学校下所有人脸给指定设备", notes = "下发所有人脸给指定设备") - public void sendFaces(@RequestParam("deviceIds") String deviceIds, @RequestParam("schoolId") String schoolId, @RequestParam("userType") String userType) { + public boolean sendFaces(@RequestParam("deviceIds") String deviceIds, @RequestParam("schoolId") String schoolId, @RequestParam("userType") String userType) { String[] deviceList = deviceIds.split(","); if(userType.equals("1")){ List list = scFeign.selectTeacherBySchoolId(schoolId) ; @@ -57,6 +61,7 @@ public class LapiController { sendStudentBatch(list,deviceId); } } + return false ; } private List removeDuplicateCase(List cases) { @@ -112,6 +117,7 @@ public class LapiController { } private void sendImg(long personId , String name , String code , String fileUrl , String deviceId , int userType){ + Log_operate.info("开始下发人脸----设备号:"+deviceId+"---姓名:"+name+"--fileUrl:"+fileUrl); PersonInfoList personInfoList = new PersonInfoList(); List list1 = new ArrayList(); personInfoList.setPersonInfoList(list1); diff --git a/cloud/lapi/src/main/java/com/sincere/lapi/logs/LogName.java b/cloud/lapi/src/main/java/com/sincere/lapi/logs/LogName.java new file mode 100644 index 0000000..691a7b5 --- /dev/null +++ b/cloud/lapi/src/main/java/com/sincere/lapi/logs/LogName.java @@ -0,0 +1,36 @@ +package com.sincere.lapi.logs; + +/** + * @author chen + * @version 1.0 + * @date 2019/10/12 0012 16:18 + */ +public enum LogName { + operate("operate"), + report("report"); + + private String logFileName; + + LogName(String fileName) { + this.logFileName = fileName; + } + + public String getLogFileName() { + return logFileName; + } + + public void setLogFileName(String logFileName) { + this.logFileName = logFileName; + } + + public static LogName getAwardTypeEnum(String value) { + LogName[] arr = values(); + for (LogName item : arr) { + if (null != item && !item.logFileName.equals("")) { + return item; + } + } + return null; + } +} + diff --git a/cloud/lapi/src/main/java/com/sincere/lapi/logs/LoggerUtils.java b/cloud/lapi/src/main/java/com/sincere/lapi/logs/LoggerUtils.java new file mode 100644 index 0000000..86d2e18 --- /dev/null +++ b/cloud/lapi/src/main/java/com/sincere/lapi/logs/LoggerUtils.java @@ -0,0 +1,27 @@ +package com.sincere.lapi.logs; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * @author chen + * @version 1.0 + * @date 2019/10/12 0012 16:19 + */ +public class LoggerUtils { + + public static Logger Logger(Class clazz) { + return LoggerFactory.getLogger(clazz); + } + + /** + * 打印到指定的文件下 + * + * @param desc 日志文件名称 + * @return + */ + public static Logger Logger(LogName desc) { + return LoggerFactory.getLogger(desc.getLogFileName()); + } + +} diff --git a/cloud/lapi/src/main/java/com/sincere/lapi/logs/MyTimeBasedFileNamingAndTriggeringPolicy.java b/cloud/lapi/src/main/java/com/sincere/lapi/logs/MyTimeBasedFileNamingAndTriggeringPolicy.java new file mode 100644 index 0000000..86340d9 --- /dev/null +++ b/cloud/lapi/src/main/java/com/sincere/lapi/logs/MyTimeBasedFileNamingAndTriggeringPolicy.java @@ -0,0 +1,32 @@ +package com.sincere.lapi.logs; + +import ch.qos.logback.core.joran.spi.NoAutoStart; +import ch.qos.logback.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy; + +/** + * @author chen + * @version 1.0 + * @date 2019/10/31 0031 13:42 + */ +@NoAutoStart +public class MyTimeBasedFileNamingAndTriggeringPolicy extends DefaultTimeBasedFileNamingAndTriggeringPolicy { + + //这个用来指定时间间隔 + private Integer multiple = 1; + + @Override + protected void computeNextCheck() { + nextCheck = rc.getEndOfNextNthPeriod(dateInCurrentPeriod, multiple).getTime(); + } + + public Integer getMultiple() { + return multiple; + } + + public void setMultiple(Integer multiple) { + if (multiple > 1) { + this.multiple = multiple; + } + } + +} diff --git a/cloud/lapi/src/main/java/com/sincere/lapi/server/handler/HttpClientHandler.java b/cloud/lapi/src/main/java/com/sincere/lapi/server/handler/HttpClientHandler.java index dc33d49..373168b 100644 --- a/cloud/lapi/src/main/java/com/sincere/lapi/server/handler/HttpClientHandler.java +++ b/cloud/lapi/src/main/java/com/sincere/lapi/server/handler/HttpClientHandler.java @@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.sincere.common.util.DateUtils; import com.sincere.lapi.Utils.SpringContextHolder; +import com.sincere.lapi.logs.LogName; +import com.sincere.lapi.logs.LoggerUtils; import com.sincere.lapi.pojo.HeartInfo; import com.sincere.lapi.pojo.LAPI; import com.sincere.lapi.pojo.LAPIResponse; @@ -29,7 +31,7 @@ import static io.netty.buffer.Unpooled.copiedBuffer; public class HttpClientHandler extends ChannelInboundHandlerAdapter { - Logger logger = LoggerFactory.getLogger(HttpClientHandler.class); + private static final Logger Log_report = LoggerUtils.Logger(LogName.report); @Override public void channelRead(ChannelHandlerContext ctx, Object msg) @@ -37,7 +39,7 @@ public class HttpClientHandler extends ChannelInboundHandlerAdapter { TerminalHttpCall call = SpringContextHolder.getTerminalHttpCall(); AttendanceService attendanceService = SpringContextHolder.getAttendanceService(); String content = (String) msg; - logger.info(content); + Log_report.info(content); //心跳 更新设备 if (content.contains("/LAPI/V1.0/PACS/Controller/HeartReportInfo")) { HeartInfo heartInfo = JSONObject.parseObject(getJson(content),HeartInfo.class); diff --git a/cloud/lapi/src/main/java/com/sincere/lapi/service/request/AttendanceService.java b/cloud/lapi/src/main/java/com/sincere/lapi/service/request/AttendanceService.java index b25e8c6..be332b7 100644 --- a/cloud/lapi/src/main/java/com/sincere/lapi/service/request/AttendanceService.java +++ b/cloud/lapi/src/main/java/com/sincere/lapi/service/request/AttendanceService.java @@ -12,7 +12,10 @@ import com.sincere.common.dto.xiaoan.FaceSendsuccess; import com.sincere.common.util.DateUtils; import com.sincere.lapi.feign.ScFeign; import com.sincere.lapi.feign.XaFeign; +import com.sincere.lapi.logs.LogName; +import com.sincere.lapi.logs.LoggerUtils; import com.sincere.lapi.pojo.LAPIResponse; +import org.slf4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -23,6 +26,9 @@ import java.util.Map; @Service("attendanceService") public class AttendanceService { + + private static final Logger Log_operate = LoggerUtils.Logger(LogName.operate); + @Autowired ScFeign scFeign ; @@ -80,6 +86,7 @@ public class AttendanceService { record.setSchoolid(student.getSchoolId()); scFeign.insertTemperature(record); } + Log_operate.info("刷脸成功-----设备号:"+deviceCode+"---------"+"name:"+faceRecoder.getName()); xaFeign.insertRecode(faceRecoder); } @@ -111,8 +118,10 @@ public class AttendanceService { schoolId = student.getSchoolId(); } if(code == 0){ + Log_operate.info("下发成功-----设备号:"+deviceCode+"---------"+"name:"+name); insertSuccess(deviceCode,personId,num,name,photo,schoolId,userType); }else { + Log_operate.info("下发失败-----设备号:"+deviceCode+"---------"+"name:"+name); insertFail(deviceCode,personId,num,name,photo,schoolId,userType,code,resultCodeMap.get(code)); } }else { diff --git a/cloud/lapi/src/main/resources/application.yml b/cloud/lapi/src/main/resources/application.yml index c34b953..2882f56 100644 --- a/cloud/lapi/src/main/resources/application.yml +++ b/cloud/lapi/src/main/resources/application.yml @@ -9,7 +9,7 @@ ribbon: eureka: client: serviceUrl: - defaultZone: http://127.0.0.1:8761/eureka/,http://127.0.0.1:8762/eureka/ + defaultZone: http://121.40.109.21:8761/eureka/,http://121.40.109.21:8762/eureka/ registry-fetch-interval-seconds: 5 instance-info-replication-interval-seconds: 10 instance: diff --git a/cloud/lapi/src/main/resources/logback.xml b/cloud/lapi/src/main/resources/logback.xml index a75bd0e..fa9bb17 100644 --- a/cloud/lapi/src/main/resources/logback.xml +++ b/cloud/lapi/src/main/resources/logback.xml @@ -1,95 +1,58 @@ - - -     -     - - -     - - -     -     - -         -         - -             -             - [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] %highlight([%-5level] %logger{50} - %msg%n) -             - UTF-8 -         - -     + + + + + + + + + + + + + %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger -%msg%n + - -     -     - -         -         - -             -             - ${LOG_HOME}/${PROJECT_NAME}/%d{yyyy-MM-dd}.%i.log -             -             - 30 -             -             - 100MB -         + + + + %d{yyyy-MM-dd HH:mm:ss} -%msg%n + + + + 1 + + + ${logPath}/info/operate/%d{yyyy-MM-dd HH}.log + ${maxHistory} - -         - -             -             - [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n -             - UTF-8 -         + + + + %d{yyyy-MM-dd HH:mm:ss} -%msg%n -     + + + 1 + + + ${logPath}/info/report/%d{yyyy-MM-dd HH}.log + ${maxHistory} + -     - -         - -     - -     -     - -     - -     - -     - -     - -     - + + + + + + + -     - -     - -     - -     - -     -     - -         - -         - -     + +        + - + \ No newline at end of file -- libgit2 0.21.0