添加忽略处理的消息列表。直接跳过不处理。减少error日志的误打
This commit is contained in:
@@ -6,7 +6,9 @@ import java.util.Arrays;
|
|||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.Cminmsg;
|
import com.gzzn.omms.msgexchangeapi.entity.Cminmsg;
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
|
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
|
||||||
@@ -24,6 +26,9 @@ public class MsgHandlerDispatcher {
|
|||||||
@Autowired
|
@Autowired
|
||||||
ICminmsgService cminmsgService;
|
ICminmsgService cminmsgService;
|
||||||
|
|
||||||
|
@Value("${msgExchange.ignoreMsg}")
|
||||||
|
private String ignoreMsg;
|
||||||
|
|
||||||
public HandlerResult dispatch(Cminmsg cminmsg)
|
public HandlerResult dispatch(Cminmsg cminmsg)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -36,6 +41,11 @@ public class MsgHandlerDispatcher {
|
|||||||
|
|
||||||
String type = msg.getMETA().getTYPE().name();
|
String type = msg.getMETA().getTYPE().name();
|
||||||
String subType = msg.getMETA().getSTYP().name();
|
String subType = msg.getMETA().getSTYP().name();
|
||||||
|
if(!isNeedHandler(type,subType))
|
||||||
|
{
|
||||||
|
logger.error("消息type:{},subtype:{},设置不需要处理!",type,subType);
|
||||||
|
return HandlerResult.success();
|
||||||
|
}
|
||||||
|
|
||||||
Class clazzHandler = Class.forName(getHandlerClassName(type,subType));
|
Class clazzHandler = Class.forName(getHandlerClassName(type,subType));
|
||||||
Object classObject = clazzHandler.newInstance();
|
Object classObject = clazzHandler.newInstance();
|
||||||
@@ -43,7 +53,6 @@ public class MsgHandlerDispatcher {
|
|||||||
HandlerResult result = (HandlerResult) runMethod.invoke(classObject, cminmsgWapper);
|
HandlerResult result = (HandlerResult) runMethod.invoke(classObject, cminmsgWapper);
|
||||||
return result;
|
return result;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
//throw new RuntimeException(e);
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
cminmsgService.updateBatchProcessed(Arrays.asList(cminmsg));//更新为已处理
|
cminmsgService.updateBatchProcessed(Arrays.asList(cminmsg));//更新为已处理
|
||||||
@@ -76,4 +85,30 @@ public class MsgHandlerDispatcher {
|
|||||||
return buffer.toString();
|
return buffer.toString();
|
||||||
} //end function
|
} //end function
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否需要处理该消息
|
||||||
|
* @param type 消息主类型
|
||||||
|
* @param subType 消息子类型
|
||||||
|
* @return true 需要处理 ,false 不需要处理
|
||||||
|
*/
|
||||||
|
private boolean isNeedHandler(String type,String subType)
|
||||||
|
{
|
||||||
|
if(StringUtils.isEmpty(ignoreMsg))
|
||||||
|
{
|
||||||
|
return true;// 所有消息均需要处理
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
String typeToken = type + "-" + subType;
|
||||||
|
String typeTokenStar = type + "-*";
|
||||||
|
String ignoreMsgs[] = ignoreMsg.split(",");
|
||||||
|
for (String msg : ignoreMsgs) {
|
||||||
|
if(typeToken.equalsIgnoreCase(msg) || typeTokenStar.equalsIgnoreCase(msg))
|
||||||
|
{
|
||||||
|
return false; //不需要处理的消息逻辑
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
} //end function
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ kafka:
|
|||||||
msgExchange:
|
msgExchange:
|
||||||
intervalSeconds: 1
|
intervalSeconds: 1
|
||||||
waitDateLeftOffset: 600000
|
waitDateLeftOffset: 600000
|
||||||
|
ignoreMsg: ldm-*,regn-*,rsta-*,error-* #忽略的消息列表
|
||||||
logstash:
|
logstash:
|
||||||
host: 130.120.3.234:5000
|
host: 130.120.3.234:5000
|
||||||
scheduled:
|
scheduled:
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ kafka:
|
|||||||
msgExchange:
|
msgExchange:
|
||||||
intervalSeconds: 1
|
intervalSeconds: 1
|
||||||
waitDateLeftOffset: 600000
|
waitDateLeftOffset: 600000
|
||||||
|
ignoreMsg: ldm-*,regn-*,rsta-*,error-* #忽略的消息列表
|
||||||
logstash:
|
logstash:
|
||||||
host: 130.120.3.234:5000
|
host: 130.120.3.234:5000
|
||||||
scheduled:
|
scheduled:
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ kafka:
|
|||||||
msgExchange:
|
msgExchange:
|
||||||
intervalSeconds: 1
|
intervalSeconds: 1
|
||||||
waitDateLeftOffset: 600000
|
waitDateLeftOffset: 600000
|
||||||
|
ignoreMsg: ldm-*,regn-*,rsta-*,error-* #忽略的消息列表
|
||||||
logstash:
|
logstash:
|
||||||
host: 172.17.35.160:5000
|
host: 172.17.35.160:5000
|
||||||
scheduled:
|
scheduled:
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ kafka:
|
|||||||
msgExchange:
|
msgExchange:
|
||||||
intervalSeconds: 1
|
intervalSeconds: 1
|
||||||
waitDateLeftOffset: 600000
|
waitDateLeftOffset: 600000
|
||||||
|
ignoreMsg: ldm-*,regn-*,rsta-*,error-* #忽略的消息列表
|
||||||
logstash:
|
logstash:
|
||||||
host: 130.120.3.234:5000
|
host: 130.120.3.234:5000
|
||||||
scheduled:
|
scheduled:
|
||||||
|
|||||||
Reference in New Issue
Block a user