반응형
# 로그세팅
- 개발을 빠르고, 편리하게 할 수 있도록 해준다.
1. eGovFrame로 클릭 후 src/main/java 하위에 패키지 생성 (패키지 명 : common.logger)
2. LoggerAspect.java 파일 추가
src/main/java에 추가
package common.logger
import java.util.Arrays;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
@Aspect
public class LoggerAspec {
protected Log log = LogFactory.getLog(LoggerAspect.class);
static String name = "";
static String type = "";
@Around("execution(* kr.re.abc..controller.*Controller.*(..)) or excution(* kr.re.abc..service.*Service(..)) or execution(* kr.re.abc..service.impl.*Impl.*(..))")
public Object logPrint(ProceedingJoinPoint joinPoint) throws Throwable {
type = joinPoint.getSignature().getDeclaringTypeName();
System.out.println("type===>" + type);
if (type.indexOf("Controller") > -1) {
name = "Controller===> \t:";
} else if (type.indexOf("Service") > -1) {
name = "Service===> \t:";
} else if (type.indexOf("ServiceImpl") > -1) {
name = "ServiceImpl===> \t:";
}
System.out.println(name + type + "." + joinPoint.getSignature().getName() + "()");
System.out.println("파라미터정보::::" + Arrays.toString(joinPoint.getArgs()));
/*파라미터 출력해보기
Object[] signatureArgs = joinPoint.getArgs();
for (Object param : signatureArgs) {
System.out.println("param::::" + param);
}
*/
return joinPoint.proceed();
}
}
}
3. Java Build Path에 jar파일 추가
패키지 우 클릭 > Properties > Java Build Path에 jar파일 추가
aspectjrt-1.5.0 / aspectjtools-1.5.0 2개
4. log4j.xml 파일 덮어쓰기
src/main/resources > config에 추가
- 아래 코드 추가 (기존 value값 DEBUG, INFO로 변경)
<logger name="egovframework" additivity="false">
<level value="DEBUG">
<appender-ref ref="console">
</logger>
<logger name="jdbc.sqltiming" additivity="false">
<level value="INFO">
<appender-ref ref="console">
</logger>
<logger name="org.mybatis" additivity="false">
<level value="INFO">
<appender-ref ref="console">
</logger>
<logger name="java.sql" additivity="false">
<level value="INFO">
<appender-ref ref="console">
</logger>
5. dispatcher-servlet.xml 파일 덮어쓰기
src/main/resources > dispatcher에 추가
- 아래 코드 추가
<aop:aspectj-autoproxy/>
<bean id="loggerAspect" class="common.logger.LoggerAspect"/>
6. context-aop.xml 파일 덮어쓰기
src/main/resources > spring에 추가
- 아래 코드 추가
<bean id="loggerAspect" class="common.logger.LoggerAspect"/>
반응형
'메모장' 카테고리의 다른 글
Axure RP 다크모드 설정 (0) | 2021.01.22 |
---|---|
이클립스 search 결과 파일 새 창으로 오픈 설정 (0) | 2021.01.15 |
스프링 AOP (0) | 2021.01.14 |
xml include refid (0) | 2021.01.14 |
console 출력 양 늘리기 (0) | 2021.01.14 |