2014-03-25 4 views
0

Мое приложение ежедневно создает множество журналов. Java-приложение для хранения этих данных в файл или открытия нового внешнего окна. Я не могу анализировать в реальном времени. Итак, какая оптимизация может быть проведена для анализа в реальном времени?Как получить журналы регистрации java реального времени

+0

Вы имеете в виду ручной анализ? Пожалуйста, уточните свой вопрос, чтобы мы могли вам помочь. – xav

+0

Для примера: я выполняю сборку JIINKI CI. В каждой сборке мы видим журналы выполнения, эти журналы отображаются с небольшой задержкой. Мне нужны эти журналы для генерации в новом окне без каких-либо задержек (журналы реального времени) Текущие и фактические журналы из каждой отдельной строки должны быть зарегистрированы на консоли. Всякий раз, когда пользователь запускает сборку, Каждое действие должно отслеживать и создавать журнал. –

ответ

0

Как насчет входа в файлы вместо консоли? Если вы используете RollingFileAppender, вы можете настроить log4j для создания нового файла каждый час или каждые 10 минут. Используя RoutingAppender, вы сможете создать новый файл для очень строковой сборки (см. Пример log4j2 FAQ page).

+0

Как печатать журналы log4j в cmd. Полный журнал exeuction должен быть в консоли cmd –

+0

Вы можете просмотреть файл в режиме реального времени в консоли cmd с помощью инструмента, такого как tail. Я не вижу, как Log4j сможет направлять свой вывод на несколько окон консоли (каждый из которых является разными процессами) в противном случае. –

0

и можно использовать log4j или log4j2 я просто предоставляя XML для log4j XML на основе Appender структуры здесь

<?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 Я просто предоставляю xml для log4j xml based appender Структура здесь – SUBZ

+0

как печатать журналы log4j в cmd. Полный журнал exeuction должен быть в консоли cmd –

+0

Я уже добавил appender для консоли, если вы запускаете приложение в tomcat или в любом другом контейнере, вы можете tail catalina .out напрямую – SUBZ

Смежные вопросы