Commit f826c915 by guanchen

优化日志配置, 添加调试信息, 排除死循环隐患, 清缓存接口空跑

parent 4c4a53b2
......@@ -192,7 +192,7 @@
<redis.host>10.9.48.21</redis.host>
<redis.password>Ws_LrqD_20180319_REdis_MQLRd</redis.password>
<spring.profiles.active>prod</spring.profiles.active>
<logfile_path>/data/logs/huhu/lanren</logfile_path>
<logfile_path>/data/logs2/huhu/lanren</logfile_path>
<providers-path>/data/java/service</providers-path>
</properties>
......
package com.lanren.huhu.partner.controller;
import com.alibaba.fastjson.JSON;
import com.lanren.huhu.partner.manager.UserManager;
import com.lanren.huhu.partner.model.User;
import com.lanren.huhu.partner.result.Result;
......@@ -38,7 +39,9 @@ public class UserController {
if (logger.isInfoEnabled()) {
logger.info("getRelationNocache userId:{},header:{},time:{}", user.getUserId(), headers.keySet().toArray(), LocalDateTime.now());
}
return userManager.getRelationNoCache(user.getUserId());
Result<User> result = userManager.getRelationNoCache(user.getUserId());
logger.info("uid:{} call /relation/nocache api, return: {}", user.getUserId(), JSON.toJSONString(result));
return result;
}
@RequestMapping(value = "/relation/delete", method = RequestMethod.POST)
......@@ -54,7 +57,7 @@ public class UserController {
if (logger.isInfoEnabled()) {
logger.info("purgeRelation userId:{},header:{},time:{}", user.getUserId(), headers.keySet().toArray(), LocalDateTime.now());
}
userManager.purgeRelation(user.getUserId());
// userManager.purgeRelation(user.getUserId());
logger.info("============>" + Thread.currentThread().getName());
Result<String> result = new Result<String>();
result.setData("异步,正在执行刷新......");
......
......@@ -48,17 +48,15 @@ public class RevokeAgentRewardTask {
private void runConsume() {
List<AgentRevokeRecords> revokeRecordList = null;
while (true) {
try {
revokeRecordList = agentRevokeRecordsService.getAllPending();
if (null == revokeRecordList || revokeRecordList.size() == 0) {
break;
}
process(revokeRecordList);
} catch (Exception e) {
logger.error("process revoke failed. {}", revokeRecordList);
logger.error(e.getMessage(), e);
try {
revokeRecordList = agentRevokeRecordsService.getAllPending();
if (null == revokeRecordList || revokeRecordList.size() == 0) {
return;
}
process(revokeRecordList);
} catch (Exception e) {
logger.error("process revoke failed. {}", revokeRecordList);
logger.error(e.getMessage(), e);
}
}
......
......@@ -147,12 +147,12 @@ public class UserServiceImpl implements UserService {
}
partnerList.add(parentPartner);
loopUserId = parentPartner.getUserId();
loopTimes++;
if (loopTimes > 500) {
partnerList.clear();
logger.error("用户:{} 邀请关系异常, 已超500层", userId);
break;
}
}
loopTimes++;
if (loopTimes > 500) {
partnerList.clear();
logger.error("用户:{} 邀请关系异常, 已超500层", userId);
break;
}
}
if (logger.isInfoEnabled()) {
......@@ -249,7 +249,7 @@ public class UserServiceImpl implements UserService {
@Override
public List<ParentAgent> getAgentListByUserId(Integer userId, String parentColumnName) {
if (logger.isInfoEnabled()) {
logger.info("getAgentListByUserId for user: {} ......", userId);
logger.info("getAgentListByUserId {} for user: {} ......", parentColumnName, userId);
}
ArrayList<ParentAgent> agentList = new ArrayList<ParentAgent>();
HashSet<Integer> existingUserIdSet = new HashSet<Integer>();
......@@ -298,12 +298,6 @@ public class UserServiceImpl implements UserService {
* 这个人不是代理商 继续往上找
*/
loopUserId = parentPartner.getUserId();
loopTimes++;
if (loopTimes > 500) {
agentList.clear();
logger.error("用户ID:{} 合伙人关系异常, 已超500层", userId);
break;
}
if (existingUserIdSet.contains(loopUserId)) {
logger.info("发现互为上级的用户邀请关系 用户ID({})", loopUserId);
logger.info("退出循环, 不再继续查找");
......@@ -319,6 +313,12 @@ public class UserServiceImpl implements UserService {
}
break;
}
loopTimes++;
if (loopTimes > 500) {
agentList.clear();
logger.error("用户ID:{} 合伙人关系异常, 已超500层", userId);
break;
}
}
} else {
firstAgent = selfAgent;
......@@ -344,6 +344,7 @@ public class UserServiceImpl implements UserService {
logger.info("loop find parent agent start ......");
}
int loogAgentId = firstAgent.getAgentId();
loopTimes = 0;
while (true) {
ParentAgent loopUserAgent = getParentAgent(loogAgentId, parentColumnName);
if (null == loopUserAgent) {
......@@ -365,12 +366,12 @@ public class UserServiceImpl implements UserService {
break;
}
loogAgentId = loopUserAgent.getAgentId();
loopTimes++;
if (loopTimes > 500) {
agentList.clear();
logger.error("用户ID:{} 代理商关系异常, 已超500层", userId);
break;
}
}
loopTimes++;
if (loopTimes > 500) {
agentList.clear();
logger.error("用户ID:{} 合伙人关系异常, 已超500层", userId);
break;
}
}
/**
......@@ -395,7 +396,7 @@ public class UserServiceImpl implements UserService {
}
if (logger.isInfoEnabled()) {
logger.info("setAgentList for user: {} end", userId);
logger.info("setAgentList {} for user: {} end", parentColumnName, userId);
}
return agentList;
}
......
......@@ -103,7 +103,7 @@ mybatis-plus:
logging:
level:
#打印SQL信息
com.lanren.huhu.partner.dao: debug
com.lanren.huhu.partner.dao: info
......
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="pattern" value="[%level] %d{yy-MM-dd HH:mm:ss.SSS} [%thread] %logger{50}:%line - %msg%n"/>
<property name="log_file" value="@logfile_path@/@profiles.active@/@artifactId@-@profiles.active@"/>
<property name="MaxHistory" value="90"/><!--日志保留天数-->
<property name="MaxFileSize" value="256MB"/><!--单个文件大小-->
<property name="totalSizeCap" value="256MB"/><!--单个文件大小-->
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${pattern}</pattern>
<pattern>%date [%thread] [%level] %logger - %msg %n</pattern>
</encoder>
</appender>
<appender name="info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${log_file}-info.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<FileNamePattern>${log_file}-info.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<MaxHistory>${MaxHistory}</MaxHistory>
<MaxFileSize>${MaxFileSize}</MaxFileSize>
<totalSizeCap>${totalSizeCap}</totalSizeCap>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log_file}-info.%d{yyyy-MM-dd}.log</FileNamePattern>
<MaxHistory>90</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${pattern}</pattern>
<encoder>
<pattern>%date [%thread] [%level] %logger - %msg %n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
......@@ -29,15 +22,12 @@
</appender>
<appender name="error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${log_file}-error.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<FileNamePattern>${log_file}-error.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<MaxHistory>${MaxHistory}</MaxHistory>
<MaxFileSize>${MaxFileSize}</MaxFileSize>
<totalSizeCap>${totalSizeCap}</totalSizeCap>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log_file}-error.%d{yyyy-MM-dd}.log</FileNamePattern>
<MaxHistory>90</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${pattern}</pattern>
<encoder>
<pattern>%date [%thread] [%level] %logger - %msg %n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment