SpringFrame 작업에서 로깅을 수행하는 데 선호되는 방법
문제
나는 Spring Framework로 로깅을 수행하는 방법에 대한 정보를 찾기 위해 몇 가지 검색을 수행했습니다.
현재 system.out 문을 제외하고는 로그인이 없는 애플리케이션이 있습니다(매우 나쁜 방식).
내가 하고 싶은 것은 로깅을 추가하는 것이지만 JMX를 사용하여 런타임에 로깅을 제어할 수도 있기를 원합니다.
우리는 Rad 7.0/WebSphere 6.1을 사용하고 있습니다.
이 작업을 수행하는 가장 좋은 방법이 무엇인지 알아보는 것이 흥미롭습니다(여러 가지가 있을 수 있다고 생각합니다).
업데이트:다음에 대한 생각 스프링 AOP 로깅 좋은 이상이든 아니든.이는 로깅에 대해 여기에 게시된 질문과 관련이 있습니다. 조건부 로깅.이로 인해 상황이 개선됩니까, 아니면 로깅 영역이 더 어려워 집니까?
다른 팁
log4j에 대한 다른 답변을 참조하십시오.하지만 또한 고려 JAMon ~을 위한 애플리케이션 모니터링.스프링 애플리케이션에 추가하는 것은 매우 쉽습니다. 예:
<bean id="performanceMonitor" class="org.springframework.aop.interceptor.JamonPerformanceMonitorInterceptor">
<property name="useDynamicLogger" value="false"/>
<property name="trackAllInvocations" value="true"/>
</bean>
<bean id="txRequired" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager" ref="transactionManager"/>
<property name="transactionAttributes" >
<props> <prop key="*">PROPAGATION_REQUIRED</prop> </props>
</property>
<property name="preInterceptors">
<list>
<ref bean="performanceMonitor"/>
</list>
</property>
</bean>
다음은 콘솔 및 파일 로거에 대해 log4j를 구성하기 위한 샘플 파일입니다.이 파일이 클래스 경로에 있으면 log4j가 자동으로 읽습니다.그러나 앱 서버 내부에 있으므로 로깅을 구성하는 또 다른 선호 방법이 있을 수 있습니다.JBoss 내부에는 수정해야 하는 xml 파일이 있었던 것으로 기억합니다.Websphere 구성이 확실하지 않습니다.그러나 간단한 테스트 앱용으로 구성하려는 경우에는 이렇게 하면 됩니다.
# Set root logger level to WARN and appenders to A1 & F1.
log4j.rootLogger=WARN, A1, F1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# logging to console only INFO
log4j.appender.A1.Threshold=INFO
# F1 is a file appender
log4j.appender.F1=org.apache.log4j.RollingFileAppender
# Tell Spring to be quiet
log4j.logger.org.springframework=WARN
# debug logging for my classes
log4j.logger.com.yourcorp=DEBUG
log4j.logger.org.hibernate=INFO
# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r : %d{HH:mm:ss,SSS} [%t] %-5p %c{1} %x - %m%n
log4j.appender.F1.File=./log/mylogfile.log
log4j.appender.F1.MaxFileSize=10MB
log4j.appender.F1.MaxBackupIndex=5
log4j.appender.F1.layout=org.apache.log4j.PatternLayout
log4j.appender.F1.layout.ConversionPattern=%-4r : %d{HH:mm:ss,SSS} [%t] %-5p %c{1} %x - %m%n
제휴하지 않습니다 StackOverflow