Merge remote-tracking branch 'origin/master'
eapim-admin CI / build (push) Has been cancelled

This commit is contained in:
Rinjae
2026-06-29 18:39:25 +09:00
13 changed files with 146 additions and 28 deletions
@@ -192,6 +192,8 @@
<option value="">전체</option> <option value="">전체</option>
<option value="EMAIL">EMAIL</option> <option value="EMAIL">EMAIL</option>
<option value="SMS">SMS</option> <option value="SMS">SMS</option>
<option value="KAKAO">KAKAO</option>
<option value="MESSENGER">MESSENGER</option>
</select> </select>
</div> </div>
</td> </td>
@@ -208,6 +208,7 @@
<option value="">전체</option> <option value="">전체</option>
<option value="PENDING">문의중</option> <option value="PENDING">문의중</option>
<option value="RESPONDED">답변완료</option> <option value="RESPONDED">답변완료</option>
<option value="CLOSED">답변종료</option>
</select> </select>
</div> </div>
</td> </td>
Binary file not shown.
@@ -33,6 +33,7 @@ import com.eactive.eai.rms.data.entity.man.role.Role;
import com.eactive.eai.rms.data.entity.man.role.RoleService; import com.eactive.eai.rms.data.entity.man.role.RoleService;
import com.eactive.eai.rms.data.entity.onl.bzwkdstcd.UserBusinessService; import com.eactive.eai.rms.data.entity.onl.bzwkdstcd.UserBusinessService;
import com.eactive.eai.rms.onl.common.exception.BizException; import com.eactive.eai.rms.onl.common.exception.BizException;
import com.eactive.ext.djb.DamoManager;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@@ -99,7 +100,7 @@ public class UserManService extends BaseService {
userInfo.setRoleidnfiname(CommonConstants.DEPT_DEVELOPER); userInfo.setRoleidnfiname(CommonConstants.DEPT_DEVELOPER);
try { try {
userInfo.setPassword(Seed.encrypt(userUI.getUserId())); userInfo.setPassword(DamoManager.getInstance().hash(DamoManager.SHA256,userUI.getUserId()));
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException("Error encrypting password", e); throw new RuntimeException("Error encrypting password", e);
} }
@@ -140,7 +141,7 @@ public class UserManService extends BaseService {
public void updatePassword(UserUI userUI) throws Exception { public void updatePassword(UserUI userUI) throws Exception {
UserInfo userInfo = userInfoService.getById(userUI.getUserId()); UserInfo userInfo = userInfoService.getById(userUI.getUserId());
userInfo.setPassword(Seed.encrypt(userUI.getUserId())); userInfo.setPassword(DamoManager.getInstance().hash(DamoManager.SHA256, userUI.getUserId()));
userUIMapper.updateToEntity(userUI, userInfo); userUIMapper.updateToEntity(userUI, userInfo);
userInfoService.save(userInfo); userInfoService.save(userInfo);
} }
@@ -21,6 +21,7 @@ import com.eactive.eai.rms.data.entity.man.user.UserServiceType;
import com.eactive.eai.rms.data.entity.man.user.UserServiceTypeId; import com.eactive.eai.rms.data.entity.man.user.UserServiceTypeId;
import com.eactive.eai.rms.data.entity.man.user.UserServiceTypeService; import com.eactive.eai.rms.data.entity.man.user.UserServiceTypeService;
import com.eactive.eai.rms.data.entity.onl.bzwkdstcd.UserBusinessService; import com.eactive.eai.rms.data.entity.onl.bzwkdstcd.UserBusinessService;
import com.eactive.ext.djb.DamoManager;
@Service @Service
@Transactional @Transactional
@@ -124,7 +125,7 @@ public class UserSyncService extends BaseService {
UserInfo userInfo = new UserInfo(); UserInfo userInfo = new UserInfo();
userInfo.setUserid(userId); userInfo.setUserid(userId);
userInfo.setUsername(userInfoMap.get("EMPY_NM").toString()); userInfo.setUsername(userInfoMap.get("EMPY_NM").toString());
userInfo.setPassword(Seed.encrypt(userId)); userInfo.setPassword(DamoManager.getInstance().hash(DamoManager.SHA256,userId));
userInfo.setRoleidnfiname(CommonConstants.DEPT_DEVELOPER); userInfo.setRoleidnfiname(CommonConstants.DEPT_DEVELOPER);
userInfoService.save(userInfo); userInfoService.save(userInfo);
@@ -33,6 +33,7 @@ import org.springframework.web.servlet.View;
import com.eactive.eai.common.seed.Seed; import com.eactive.eai.common.seed.Seed;
import com.eactive.eai.rms.ext.kjb.smsauth.SmsAuthService; import com.eactive.eai.rms.ext.kjb.smsauth.SmsAuthService;
import com.eactive.ext.djb.DamoManager;
import com.eactive.eai.data.converter.LocalDateTimeFormatters; import com.eactive.eai.data.converter.LocalDateTimeFormatters;
import com.eactive.eai.rms.common.context.MonitoringContext; import com.eactive.eai.rms.common.context.MonitoringContext;
import com.eactive.eai.rms.common.datasource.DataSourceType; import com.eactive.eai.rms.common.datasource.DataSourceType;
@@ -363,7 +364,7 @@ public class MainController implements InterceptorSkipController {
String loginMode = System.getProperty("login.mode"); String loginMode = System.getProperty("login.mode");
if("db".equals(loginMode) || "DB".equals(loginMode)) { if("db".equals(loginMode) || "DB".equals(loginMode)) {
/* 기존로직 - LDAP 사용 x */ /* 기존로직 - LDAP 사용 x */
if (!userInfo.getPassword().equals(Seed.encrypt(dto.getPassword()))) { if (!userInfo.getPassword().equals(DamoManager.getInstance().hash(DamoManager.SHA256, dto.getPassword()))) {
// password 다름. // password 다름.
setLoginFailure(request, session, "login.loginfail1", setLoginFailure(request, session, "login.loginfail1",
"login.loginfail2"); "login.loginfail2");
@@ -799,9 +800,9 @@ public class MainController implements InterceptorSkipController {
.getString("login.pwdmismatch4")); .getString("login.pwdmismatch4"));
return REDIRECT_CHANGE_PASSWORD_URL; return REDIRECT_CHANGE_PASSWORD_URL;
} }
// 3. 비밀번호 체크 // 3. 비밀번호 체크
if (!userInfo.getPassword().equals(Seed.encrypt(resetPassword)) if (!userInfo.getPassword().equals(DamoManager.getInstance().hash(DamoManager.SHA256,resetPassword))
|| !userInfo.getUserid().equals(resetUserId)) { || !userInfo.getUserid().equals(resetUserId)) {
UserAccessLogger.log(request, LOG_CATEGORY_LOGIN, "F", UserAccessLogger.log(request, LOG_CATEGORY_LOGIN, "F",
localeMessage localeMessage
@@ -812,7 +813,7 @@ public class MainController implements InterceptorSkipController {
} }
// 4. 비밀번호 변경 // 4. 비밀번호 변경
userInfo.setPassword(Seed.encrypt(changePassword)); userInfo.setPassword(DamoManager.getInstance().hash(DamoManager.SHA256,changePassword));
userInfoService.save(userInfo); userInfoService.save(userInfo);
UserAccessLogger.log(request, LOG_CATEGORY_LOGIN, "S", localeMessage UserAccessLogger.log(request, LOG_CATEGORY_LOGIN, "S", localeMessage
@@ -141,6 +141,16 @@ public class EMSSchedulerImpl implements EMSScheduler {
JobDetail existingJob = clusteredScheduler.getJobDetail(jobKey); JobDetail existingJob = clusteredScheduler.getJobDetail(jobKey);
if (existing != null && existingJob != null) { if (existing != null && existingJob != null) {
// JobDetail(JobData 포함) 갱신
@SuppressWarnings("unchecked")
Class<Job> jobClass = (Class<Job>) Class.forName(jobInfo.getJobClassName());
JobBuilder jobBuilder = newJob(jobClass).withIdentity(jobKey);
for (JobData jobData : jobInfo.getJobDatas()) {
jobBuilder.usingJobData(jobData.getId().getDataKey(), jobData.getDataValue());
}
clusteredScheduler.addJob(jobBuilder.build(), true);
// 트리거(cron) 갱신
CronTrigger newTrigger = newTrigger() CronTrigger newTrigger = newTrigger()
.withIdentity(triggerKey) .withIdentity(triggerKey)
.withSchedule(cronSchedule(jobInfo.getCronExp())) .withSchedule(cronSchedule(jobInfo.getCronExp()))
@@ -11,9 +11,10 @@ import org.quartz.Job;
import org.quartz.JobDataMap; import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext; import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException; import org.quartz.JobExecutionException;
import org.quartz.SchedulerException;
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.context.ApplicationContext;
import java.util.Arrays; import java.util.Arrays;
import java.util.Set; import java.util.Set;
@@ -45,9 +46,6 @@ public class PortalInquiryClosingJob implements Job {
private static final int DEFAULT_CLOSING_DAYS = 7; private static final int DEFAULT_CLOSING_DAYS = 7;
@Autowired
private PortalInquiryClosingService inquiryCommentClosingService;
@Override @Override
public void execute(JobExecutionContext context) throws JobExecutionException { public void execute(JobExecutionContext context) throws JobExecutionException {
JobDataMap jobDataMap = context.getJobDetail().getJobDataMap(); JobDataMap jobDataMap = context.getJobDetail().getJobDataMap();
@@ -67,6 +65,15 @@ public class PortalInquiryClosingJob implements Job {
log.info("*** START PortalInquiryCommentClosingService run({})", CommonUtil.getToday("yyyy-MM-dd HH:mm")); log.info("*** START PortalInquiryCommentClosingService run({})", CommonUtil.getToday("yyyy-MM-dd HH:mm"));
PortalInquiryClosingService service;
try {
ApplicationContext appContext = (ApplicationContext) context.getScheduler().getContext().get("applicationContext");
service = appContext.getBean(PortalInquiryClosingService.class);
} catch (SchedulerException e) {
log.error("applicationContext 조회 실패", e);
throw new JobExecutionException(e);
}
int closingDays = DEFAULT_CLOSING_DAYS; int closingDays = DEFAULT_CLOSING_DAYS;
String closingDayParam = context.getMergedJobDataMap().getString(KEY_INQUIRY_COMMENT_CLOSING_DAY); String closingDayParam = context.getMergedJobDataMap().getString(KEY_INQUIRY_COMMENT_CLOSING_DAY);
if (closingDayParam != null) { if (closingDayParam != null) {
@@ -80,7 +87,7 @@ public class PortalInquiryClosingJob implements Job {
DataSourceContextHolder.setDataSourceType( DataSourceContextHolder.setDataSourceType(
DataSourceTypeManager.getDataSourceType(DataSourceTypeManager.APIGW)); DataSourceTypeManager.getDataSourceType(DataSourceTypeManager.APIGW));
try { try {
int closedCount = inquiryCommentClosingService.closeExpiredInquiries(closingDays); int closedCount = service.closeExpiredInquiries(closingDays);
log.info("PortalInquiryCommentClosingService 완료: {}건 CLOSED 처리", closedCount); log.info("PortalInquiryCommentClosingService 완료: {}건 CLOSED 처리", closedCount);
} catch (Exception e) { } catch (Exception e) {
log.error("PortalInquiryCommentClosingService execution failed", e); log.error("PortalInquiryCommentClosingService execution failed", e);
@@ -15,6 +15,7 @@ import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import com.eactive.apim.portal.jpa.PersonalDataEncryptConverter;
import com.eactive.apim.portal.user.entity.UserInfo; import com.eactive.apim.portal.user.entity.UserInfo;
import com.eactive.eai.data.converter.LocalDateTimeFormatters; import com.eactive.eai.data.converter.LocalDateTimeFormatters;
import com.eactive.eai.data.entity.onl.unifbwk.UnifBwkTp; import com.eactive.eai.data.entity.onl.unifbwk.UnifBwkTp;
@@ -33,6 +34,7 @@ public class UnifbwkManService extends BaseService {
private final BizManService bizManService; private final BizManService bizManService;
private final UserInfoService userInfoService; private final UserInfoService userInfoService;
private final UserDao userDao; private final UserDao userDao;
private final PersonalDataEncryptConverter encryptConverter = new PersonalDataEncryptConverter();
@Autowired @Autowired
public UnifbwkManService(UnifBwkTpService unifBwkTpService, public UnifbwkManService(UnifBwkTpService unifBwkTpService,
@@ -54,7 +56,8 @@ public class UnifbwkManService extends BaseService {
private UnifbwkUI getUserOrgInfo(UnifBwkTp unifBwkTp) { private UnifbwkUI getUserOrgInfo(UnifBwkTp unifBwkTp) {
UnifbwkUI unifbwkUI = unifbwkUIMapper.toVo(unifBwkTp); UnifbwkUI unifbwkUI = unifbwkUIMapper.toVo(unifBwkTp);
String rspblpsncntpctnt = unifBwkTp.getRspblpsncntpctnt(); String rspblpsncntpctnt = encryptConverter.convertToEntityAttribute(unifBwkTp.getRspblpsncntpctnt());
unifbwkUI.setRsPblpsncntpcTnt(rspblpsncntpctnt);
Optional<UserInfo> userInfo = Optional.empty(); Optional<UserInfo> userInfo = Optional.empty();
if (StringUtils.isNotBlank(rspblpsncntpctnt)) { if (StringUtils.isNotBlank(rspblpsncntpctnt)) {
@@ -75,10 +78,13 @@ public class UnifbwkManService extends BaseService {
UnifBwkTp unifBwkTp = unifBwkTpService.getById(eaiBzwkDstcd); UnifBwkTp unifBwkTp = unifBwkTpService.getById(eaiBzwkDstcd);
UnifbwkUI unifbwkUI = unifbwkUIMapper.toVo(unifBwkTp); UnifbwkUI unifbwkUI = unifbwkUIMapper.toVo(unifBwkTp);
String rspblpsncntpctnt = encryptConverter.convertToEntityAttribute(unifBwkTp.getRspblpsncntpctnt());
unifbwkUI.setRsPblpsncntpcTnt(rspblpsncntpctnt);
Optional<UserInfo> optionalUserInfo = Optional.empty(); Optional<UserInfo> optionalUserInfo = Optional.empty();
if (StringUtils.isNotBlank(unifBwkTp.getRspblpsncntpctnt())) { if (StringUtils.isNotBlank(rspblpsncntpctnt)) {
optionalUserInfo = userInfoService.findByOfctelno(unifBwkTp.getRspblpsncntpctnt()); optionalUserInfo = userInfoService.findByOfctelno(rspblpsncntpctnt);
} }
if (optionalUserInfo.isPresent()) { if (optionalUserInfo.isPresent()) {
UserInfo userInfo = optionalUserInfo.get(); UserInfo userInfo = optionalUserInfo.get();
@@ -90,8 +96,9 @@ public class UnifbwkManService extends BaseService {
public void insert(UnifbwkUI unifbwkUI) { public void insert(UnifbwkUI unifbwkUI) {
UnifBwkTp unifBwkTp = unifbwkUIMapper.toEntity(unifbwkUI); UnifBwkTp unifBwkTp = unifbwkUIMapper.toEntity(unifbwkUI);
unifBwkTp.setRspblpsncntpctnt(encryptConverter.convertToDatabaseColumn(unifBwkTp.getRspblpsncntpctnt()));
unifBwkTpService.save(unifBwkTp); unifBwkTpService.save(unifBwkTp);
bizManService.transactionAdminBiz(unifbwkUI.getEaiBzwkDstcd()); bizManService.transactionAdminBiz(unifbwkUI.getEaiBzwkDstcd());
} }
@@ -113,6 +120,7 @@ public class UnifbwkManService extends BaseService {
unifbwkUI.setTrackAsisKey2Name(trackAsisKey2Name); unifbwkUI.setTrackAsisKey2Name(trackAsisKey2Name);
unifbwkUIMapper.updateToEntity(unifbwkUI, unifBwkTp); unifbwkUIMapper.updateToEntity(unifbwkUI, unifBwkTp);
unifBwkTp.setRspblpsncntpctnt(encryptConverter.convertToDatabaseColumn(rspblPsnCntpCtnt));
unifBwkTpService.save(unifBwkTp); unifBwkTpService.save(unifBwkTp);
} }
@@ -132,7 +140,7 @@ public class UnifbwkManService extends BaseService {
map.put("TRACKASISKEY1NAME", e.getTrackasiskey1name()); map.put("TRACKASISKEY1NAME", e.getTrackasiskey1name());
map.put("TRACKASISKEY2NAME", e.getTrackasiskey2name()); map.put("TRACKASISKEY2NAME", e.getTrackasiskey2name());
map.put("RSEMPNAME", e.getRsempname()); map.put("RSEMPNAME", e.getRsempname());
map.put("RSPBLPSNCNTPCTNT", e.getRspblpsncntpctnt()); map.put("RSPBLPSNCNTPCTNT", encryptConverter.convertToEntityAttribute(e.getRspblpsncntpctnt()));
map.put("GROUPCOCD", e.getGroupcocd()); map.put("GROUPCOCD", e.getGroupcocd());
if (e.getLastModDtm() != null) { if (e.getLastModDtm() != null) {
map.put("LAST_MOD_DTM", map.put("LAST_MOD_DTM",
@@ -174,6 +182,7 @@ public class UnifbwkManService extends BaseService {
} }
UnifBwkTp unifBwkTp = unifbwkUIMapper.toEntity(unifbwkUI); UnifBwkTp unifBwkTp = unifbwkUIMapper.toEntity(unifbwkUI);
unifBwkTp.setRspblpsncntpctnt(encryptConverter.convertToDatabaseColumn(unifBwkTp.getRspblpsncntpctnt()));
unifBwkTpService.save(unifBwkTp); unifBwkTpService.save(unifBwkTp);
} }
@@ -206,6 +215,7 @@ public class UnifbwkManService extends BaseService {
} }
unifbwkUIMapper.updateToEntity(unifbwkUI, optionalUnifBwkTp.get()); unifbwkUIMapper.updateToEntity(unifbwkUI, optionalUnifBwkTp.get());
optionalUnifBwkTp.get().setRspblpsncntpctnt(encryptConverter.convertToDatabaseColumn(unifbwkUI.getRsPblpsncntpcTnt()));
unifBwkTpService.save(optionalUnifBwkTp.get()); unifBwkTpService.save(optionalUnifBwkTp.get());
} }
} }
@@ -74,6 +74,7 @@ public class LayoutDao extends SqlMapClientTemplateDao {
entity.setEaibzwkdstcd((String) paramMap.get("eaiBzwkDstcd")); entity.setEaibzwkdstcd((String) paramMap.get("eaiBzwkDstcd"));
entity.setUapplname((String) paramMap.get("uapplName")); entity.setUapplname((String) paramMap.get("uapplName"));
entity.setSysintfacname((String) paramMap.get("sysIntfacName")); entity.setSysintfacname((String) paramMap.get("sysIntfacName"));
entity.setUseyn((String) paramMap.get("useYn"));
layoutService.save(entity); layoutService.save(entity);
} }
@@ -683,7 +683,9 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements
param.put("recvData", ""); param.put("recvData", "");
} }
syncLayout(param, recvTime, json); //syncLayout(param, recvTime, json);
syncLayoutDjb(param, recvTime, json);
// results.getChild("Result").setText("S".equals(param.get("prcssRslt"))?"True":"False"); // results.getChild("Result").setText("S".equals(param.get("prcssRslt"))?"True":"False");
// results.getChild("ResultMessage").setText("S".equals(param.get("prcssRslt"))?"성공":param.get("prcssRsltCmnt")); // results.getChild("ResultMessage").setText("S".equals(param.get("prcssRslt"))?"성공":param.get("prcssRsltCmnt"));
@@ -900,7 +902,11 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements
private void syncLayout(HashMap<String, String> param, JSONObject body, String command, JSONObject layout) private void syncLayout(HashMap<String, String> param, JSONObject body, String command, JSONObject layout)
throws Exception, BizException, ParseException { throws Exception, BizException, ParseException {
String layoutName = (String) layout.get("id"); String id = (String) layout.get("id");
String layoutName = (String) layout.get("layoutName");
if (StringUtils.isEmpty(layoutName)) {
layoutName = id;
}
String useSystem = (String) layout.get("usesystem"); String useSystem = (String) layout.get("usesystem");
param.put("logPrcssSeqno", UUIDGenerator.getUUID()); param.put("logPrcssSeqno", UUIDGenerator.getUUID());
@@ -935,7 +941,7 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements
break; break;
} }
if(!layoutName.matches(fattern)) { if(!id.matches(fattern)) {
throw new BizException("잘못된 전문레이아웃명 입니다.\n명명규칙을 확인하세요.\n"+fattern); throw new BizException("잘못된 전문레이아웃명 입니다.\n명명규칙을 확인하세요.\n"+fattern);
} }
@@ -955,7 +961,8 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements
// Layout Format (TR07) // Layout Format (TR07)
vo.put("loutName",layoutName); vo.put("loutName",layoutName);
vo.put("loutPtrnName",msgType); // ASCII, EBCDIC, XML vo.put("loutPtrnName",msgType); // ASCII, EBCDIC, XML
vo.put("loutDesc",layout.get("desc")); vo.put("loutDesc",layout.get("desc"));
vo.put("useYn", "1");
String date = (String) layout.get("date"); String date = (String) layout.get("date");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -1183,5 +1190,63 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements
} }
return null ; return null ;
} }
private void syncLayoutDjb(HashMap<String, String> param, String recvTime, JSONObject json)
throws Exception, BizException, ParseException {
JSONObject header = (JSONObject) ((JSONObject) json.get("Message")).get("Header");
JSONObject body = (JSONObject) ((JSONObject) json.get("Message")).get("Body");
String serviceName = (String) header.get("ServiceName");
String command = (String) header.get("Command");
param.put("serviceName", serviceName);
param.put("command", command);
param.put("recvAmndHMS", recvTime);
Object layoutObject = body.get("Layout");
JSONArray layoutArray = null;
if (layoutObject instanceof JSONArray) {
String interfaceId = (String) body.get("interfaceCode");
if (interfaceId.startsWith("ES")) {
interfaceId = interfaceId.replaceFirst("ES", "AS");
}
layoutArray = (JSONArray) layoutObject;
for (int i = 0; i < layoutArray.size(); i++) {
JSONObject layout = (JSONObject)layoutArray.get(i);
String usesystem = (String)layout.get("usesystem");
if ("EAI".equals(usesystem)) {
String id = (String)layout.get("id");
String inOutType = "OPA".equals(id.substring(5,8)) ? "S1" : "S2";
String group = (String)layout.get("group");
String ioType = (String)layout.get("ioType");
if ("I".equals(ioType)) {
layout.put("layoutName", group + "_" + interfaceId + inOutType + "_SRCS");
syncLayout(param, body, command, layout);
layout.put("layoutName", group + "_" + interfaceId + inOutType + "_TGTS");
syncLayout(param, body, command, layout);
} else {
layout.put("layoutName", group + "_" + interfaceId + inOutType + "_SRCR");
syncLayout(param, body, command, layout);
layout.put("layoutName", group + "_" + interfaceId + inOutType + "_TGTR");
syncLayout(param, body, command, layout);
}
}
}
} else {
throw new BizException("단독 레이아웃 연동은 지원하지 않습니다.");
}
}
} }
+2 -3
View File
@@ -9,12 +9,12 @@
<property name="LOG_LEVEL" value="${LOGBACK_LOG_LEVEL:-DEBUG}" /> <property name="LOG_LEVEL" value="${LOGBACK_LOG_LEVEL:-DEBUG}" />
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <!-- <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder> <encoder>
<charset>utf-8</charset> <charset>utf-8</charset>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n</pattern>
</encoder> </encoder>
</appender> </appender> -->
<appender name="STDOUT" <appender name="STDOUT"
class="ch.qos.logback.core.rolling.RollingFileAppender"> class="ch.qos.logback.core.rolling.RollingFileAppender">
@@ -183,6 +183,5 @@
<root> <root>
<level value="DEBUG" /> <level value="DEBUG" />
<appender-ref ref="STDOUT" /> <appender-ref ref="STDOUT" />
<appender-ref ref="CONSOLE" />
</root> </root>
</configuration> </configuration>
+24 -4
View File
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="10 seconds"> <configuration scan="true" scanPeriod="10 seconds">
<statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" /> <!-- <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />-->
<property name="LOG_PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] \\(%F:%L\\) %-20M -%msg%n" /> <property name="LOG_PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] \\(%F:%L\\) %-20M -%msg%n" />
<property name="PREFIX" value="${inst.Type:-ems}" /> <property name="PREFIX" value="${inst.Type:-ems}" />
<property name="LOG_HOME" value="/logs/eapim/${inst.Name:-devSvr00}" /> <property name="LOG_HOME" value="D:/Log/App/eapim/${inst.Name:-devSvr00}" />
<property name="BACKUP_HOME" value="${LOG_HOME}/backup/" /> <property name="BACKUP_HOME" value="${LOG_HOME}/backup/" />
<property name="LOG_LEVEL" value="${LOGBACK_LOG_LEVEL:-DEBUG}" /> <property name="LOG_LEVEL" value="${LOGBACK_LOG_LEVEL:-DEBUG}" />
@@ -113,12 +113,13 @@
<logger name="com.eactive.eai.rms.onl.dashboard" level="ERROR" /> <logger name="com.eactive.eai.rms.onl.dashboard" level="ERROR" />
<logger name="com.eactive.eai.rms.common.acl.user.BizDao" level="ERROR" /> <logger name="com.eactive.eai.rms.common.acl.user.BizDao" level="ERROR" />
<logger name="org.springframework" level="DEBUG" /> <logger name="org.springframework" level="INFO" />
<logger name="org.hibernate" level="DEBUG" > <logger name="org.hibernate" level="INFO" >
<appender-ref ref="QUERY_APPENDER" /> <appender-ref ref="QUERY_APPENDER" />
<appender-ref ref="HIBERNATE_APPENDER" /> <appender-ref ref="HIBERNATE_APPENDER" />
</logger> </logger>
<logger name="net.sf.ehcache" level="INFO" /> <logger name="net.sf.ehcache" level="INFO" />
<logger name="org.quartz" level="INFO" />
<logger name="ACCESS_LOGGER" level="DEBUG" > <logger name="ACCESS_LOGGER" level="DEBUG" >
@@ -135,6 +136,7 @@
<!-- QUERY_APPENDER start --> <!-- QUERY_APPENDER start -->
<logger name="java.sql" level="DEBUG" additivity="false"> <logger name="java.sql" level="DEBUG" additivity="false">
<appender-ref ref="QUERY_APPENDER" /> <appender-ref ref="QUERY_APPENDER" />
<appender-ref ref="CONSOLE" />
</logger> </logger>
<logger name="com.ibatis" level="DEBUG" additivity="false"> <logger name="com.ibatis" level="DEBUG" additivity="false">
<appender-ref ref="QUERY_APPENDER" /> <appender-ref ref="QUERY_APPENDER" />
@@ -159,9 +161,11 @@
</logger> </logger>
<logger name="java.sql.PreparedStatement" level="DEBUG" additivity="false"> <logger name="java.sql.PreparedStatement" level="DEBUG" additivity="false">
<appender-ref ref="QUERY_APPENDER" /> <appender-ref ref="QUERY_APPENDER" />
<appender-ref ref="CONSOLE" /> <!-- 이 줄 추가 -->
</logger> </logger>
<logger name="java.sql.ResultSet" level="DEBUG" additivity="false"> <logger name="java.sql.ResultSet" level="DEBUG" additivity="false">
<appender-ref ref="QUERY_APPENDER" /> <appender-ref ref="QUERY_APPENDER" />
<appender-ref ref="CONSOLE" /> <!-- 이 줄 추가 -->
</logger> </logger>
<logger name="com.eactive.eai.rms.common.base.SchemaIdConfiguredSqlMapTemplate" level="DEBUG" additivity="false"> <logger name="com.eactive.eai.rms.common.base.SchemaIdConfiguredSqlMapTemplate" level="DEBUG" additivity="false">
<appender-ref ref="QUERY_APPENDER" /> <appender-ref ref="QUERY_APPENDER" />
@@ -178,6 +182,22 @@
<!-- QUERY_APPENDER end --> <!-- QUERY_APPENDER end -->
<logger name="org.hibernate.SQL" level="DEBUG" additivity="false">
<appender-ref ref="HIBERNATE_APPENDER" />
<appender-ref ref="CONSOLE" />
</logger>
<!-- org.hibernate.SQL 로거 아래에 추가 -->
<logger name="org.hibernate.type.descriptor.sql.BasicExtractor" level="TRACE" additivity="false">
<appender-ref ref="HIBERNATE_APPENDER" />
<appender-ref ref="CONSOLE" />
</logger>
<!-- 바인딩 파라미터 값 (Hibernate 5.4 기준) -->
<logger name="org.hibernate.type.descriptor.sql.BasicBinder" level="TRACE" additivity="false">
<appender-ref ref="HIBERNATE_APPENDER" />
<appender-ref ref="CONSOLE" />
</logger>
<root> <root>
<level value="DEBUG" /> <level value="DEBUG" />