모니터링 타임아웃 분류 및 응답에러코드 널 안전성 수정
- EAIServiceMonitor: timeOutCodes.indexOf 판정을 '> 0' -> '>= 0' 으로 수정 (목록 첫 번째 코드가 타임아웃이 아닌 시스템에러로 분류되던 문제) - EAIServiceMonitor: getLogRspErrCd() null 대비 defaultString 적용, 리터럴 비교 순서 변경 - EAILogDAO, EAIFileLogger: 응답에러코드 substring(1,2) 를 널 안전한 StringUtils.substring 으로 교체
This commit is contained in:
@@ -717,7 +717,8 @@ public class EAIFileLogger
|
||||
sb.appendAndDelimeter( NullControl.addSpace(message.getRspnsChngMsgType())); // 응답변환유형
|
||||
|
||||
// log level 'E' or 'F'
|
||||
if ("E".equals(logRspErrCd.substring(1, 2)) || "F".equals(logRspErrCd.substring(1, 2))) {
|
||||
String logErrLvl = StringUtils.substring(logRspErrCd, 1, 2);
|
||||
if ("E".equals(logErrLvl) || "F".equals(logErrLvl)) {
|
||||
sb.appendAndDelimeter( NullControl.addSpace(logRspErrCd)); //EAI에러코드
|
||||
sb.appendAndDelimeter( StringUtil.chunkString(message.getRspErrMsg(),1000)); //EAI에러내용
|
||||
}
|
||||
|
||||
@@ -661,8 +661,8 @@ public class EAILogDAO {
|
||||
eaiLog.setRspnschngmsgtype(message.getRspnsChngMsgType());
|
||||
|
||||
// log level 'E' or 'F'
|
||||
if ("E".equals(logRspErrCd.substring(1, 2))
|
||||
|| "F".equals(logRspErrCd.substring(1, 2))) {
|
||||
String logErrLvl = StringUtils.substring(logRspErrCd, 1, 2);
|
||||
if ("E".equals(logErrLvl) || "F".equals(logErrLvl)) {
|
||||
// EAI에러코드
|
||||
eaiLog.setEaierrcd(logRspErrCd);
|
||||
// EAI에러내용
|
||||
@@ -770,8 +770,8 @@ public class EAILogDAO {
|
||||
// 수동시스템어댑터업무그룹명
|
||||
eaiErrorLog.setPsvsysadptrbzwkgroupname(message.getCurrentSvcMsg().getPsvSysItfTp());
|
||||
|
||||
if ("E".equals(logRspErrCd.substring(1, 2))
|
||||
|| "F".equals(logRspErrCd.substring(1, 2))) {
|
||||
String logErrLvl = StringUtils.substring(logRspErrCd, 1, 2);
|
||||
if ("E".equals(logErrLvl) || "F".equals(logErrLvl)) {
|
||||
// EAI에러코드
|
||||
eaiErrorLog.setEaierrcd(logRspErrCd);
|
||||
// EAI에러내용
|
||||
|
||||
@@ -292,7 +292,7 @@ public class EAIServiceMonitor implements Lifecycle {
|
||||
msgPssTm = msg.getMsgPssTm();
|
||||
msgRcvTm = msg.getMsgRcvTm();
|
||||
logPssSno = msg.getLogPssSno();
|
||||
rspErrCd = msg.getLogRspErrCd();
|
||||
rspErrCd = StringUtils.defaultString(msg.getLogRspErrCd());
|
||||
eaiSvcCd = msg.getEAISvcCd();
|
||||
svcOgNo = msg.getSvcOgNo();
|
||||
bwkCls = msg.getBwkCls();
|
||||
@@ -317,7 +317,7 @@ public class EAIServiceMonitor implements Lifecycle {
|
||||
error = rspErrCd.substring(1, 2);
|
||||
}
|
||||
|
||||
if (rspErrCd.equals("RECEAIINA001")) {
|
||||
if ("RECEAIINA001".equals(rspErrCd)) {
|
||||
error = "S";
|
||||
}
|
||||
|
||||
@@ -326,7 +326,8 @@ public class EAIServiceMonitor implements Lifecycle {
|
||||
iErrorCode = 1;
|
||||
|
||||
// Timeout
|
||||
if (timeOutCodes.indexOf(rspErrCd) > 0) {
|
||||
// 목록 첫 번째 코드는 indexOf 가 0 이므로 '> 0' 이면 매칭되지 않는다. (isTimeOutCodes() 와 동일하게 '>= 0')
|
||||
if (timeOutCodes.indexOf(rspErrCd) >= 0) {
|
||||
iErrorCode = 2;
|
||||
}
|
||||
// 업무에러코드에 없을 경우 통신(시스템)에러로 처리함
|
||||
|
||||
Reference in New Issue
Block a user