2014-03-25 6 views
0

내 응용 프로그램은 매일 많은 로그를 생성합니다. Java 응용 프로그램은 이러한 데이터를 파일에 저장하거나 새로운 외부 창을 열 수 있습니다. 실시간 분석을 할 수 없습니다. 그렇다면 실시간 분석을하기 위해 어떤 최적화 작업을 수행 할 수 있습니까?실시간 Java 실행 로그를 가져 오는 방법

+0

당신이 수동 분석을 의미합니까의 log4j XML 기반의 펜더 구조에 대한 XML을 제공하고있다? 우리가 당신을 도울 수 있도록 정확한 질문을하십시오. – xav

+0

예 : 전 jenkins CI 빌드를 실행 중입니다. 모든 빌드에서 실행 로그를 볼 수 있습니다. 로그는 거의 지연없이 표시됩니다. 그 로그를 지연없이 새 창에서 생성해야합니다 (실시간 로그) 모든 단일 실행 라인의 실제 및 실제 로그는 콘솔에 로그인해야합니다. 사용자가 빌드를 트리거 할 때마다 모든 작업이 로그를 모니터링하고 생성해야합니다. –

답변

0

콘솔 대신 파일에 기록하는 방법은 어떻습니까? RollingFileAppender를 사용하는 경우 매 시간 또는 매 10 분마다 새 파일을 생성하도록 log4j를 구성 할 수 있습니다. RoutingAppender를 사용하면 빌드를 위해 새 파일을 생성 할 수 있습니다 (예를 들어 log4j2 FAQ page 참조).

+0

cmd에서 log4j의 로그를 인쇄하는 방법. cmd console에서 전체 exeuction log를 입력해야합니다. –

+0

cmd 콘솔에서 꼬리와 같은 도구를 사용하여 실시간으로 파일을 볼 수 있습니다. Log4j가 출력을 여러 콘솔 창 (다른 각각은 다른 프로세스)으로 보낼 수있는 방법을 알지 못합니다. –

0

유의 log4j를 사용하거나 log4j2는 여기

<?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false"> 
    <appender name="NORMAL_LOG_FILE" class="org.apache.log4j.DailyRollingFileAppender"> 
     <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler" /> 
     <param name="File" value="C://LOGS/app.log" /> 
     <param name="Append" value="true" /> 
     <param name="Threshold" value="INFO" /> 
     <!-- Rollover at midnight each day --> 
     <param name="DatePattern" value="'.'yyyy-MM-dd" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <!-- The default pattern: Date Priority [Category] Message\n --> 
     <param name="ConversionPattern" value="%d %-5p %c{3}:%L %m\n" /> 
     </layout> 
    </appender> 
    <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> 
     <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler" /> 
     <param name="Target" value="System.out" /> 
     <param name="Threshold" value="INFO" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d %-5p %c{1}:%L %m\n" /> 
     </layout> 
    </appender> 

    <logger name="com.test" additivity="false"> 
     <level value="ALL" /> 
     <appender-ref ref="CONSOLE" /> 
     <appender-ref ref="NORMAL_LOG_FILE" /> 
     <appender-ref ref="ERR_LOG_FILE" /> 
    </logger> 
    <logger name="com.test" additivity="false"> 
     <level value="INFO" /> 
     <appender-ref ref="CONSOLE" /> 
     <appender-ref ref="NORMAL_LOG_FILE" /> 
     <appender-ref ref="ERR_LOG_FILE" /> 
    </logger> 
    <root> 
     <appender-ref ref="CONSOLE" /> 
     <appender-ref ref="NORMAL_LOG_FILE" /> 
    </root> 

    </log4j:configuration> 
+0

u는 log4j 또는 log4j2를 사용할 수 있습니다. 은 log4j xml 기반의 appender에 대한 XML을 제공합니다. 여기서는 – SUBZ

+0

log4j의 로그를 cmd로 인쇄하는 방법을 설명합니다. cmd console에서 전체 exeuction log가 필요합니다 –

+0

바람둥이 또는 다른 컨테이너에서 앱을 실행하는 경우 콘솔 용 appender가 이미 추가되었습니다. tail catalina .out을 직접 수행 할 수 있습니다. – SUBZ

관련 문제