Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> log4j2, вопросы 
:(
    Опции темы
mego4el
  Дата 13.11.2013, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 19.9.2010

Репутация: нет
Всего: нет



Доброго вечера.

Столкнулся с небольшими трудностями:

http://screenshot.ru/images/2013/11/13/cMuADil.jpg

(красным цветом выделил фрагмент)

Не могу понять почему и откуда идут эти "кривые" символы. В то время как рут логгер должен выдавать по шаблону hh:mm:ss [LEVEL] msg (как видно немного выше)
Вызов идет из внешней библиотеки mchange. Вероятно что там остались зачатки старого util Logging. Как с этим бороться? Подскажите пожалуйста.

Сам конфиг имеет вид:

Код

    <Configuration>
     <Appenders>
     
         <Console name="CONSOLE" target="SYSTEM_OUT">
             <PatternLayout>
                 <!--<Pattern>%p : %m %s %n</Pattern>-->
                 <!--<Pattern>%d{HH:mm:ss} [%t] %-5level %msg%n</Pattern>-->
                 <Pattern>%d{HH:mm:ss} [%p] %m%n</Pattern>
             </PatternLayout>
         </Console>
    ...
     
         <Logger name="Audit" additivity="false">
           <Appender-ref ref="AUDITLOG" />
         </Logger>
     
         <Root level="info">
             <Appender-ref ref="CONSOLE"/>
             <Appender-ref ref="FILELOG"/>
         </Root>
     
     </Loggers>
    </Configuration>


PM MAIL   Вверх
mego4el
Дата 14.11.2013, 00:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 19.9.2010

Репутация: нет
Всего: нет



Еще небольшой вопрос:

Как создать свой уровень логгирования? Причем суть в том, что бы просто сделать другой шаблон сообщению, например:

log.warn("this is warning"); - стандартно
log.mylevel("this is my level"); - новый уровень

Выводы: 
[WARNING] this is warning
[MYLEVEL] this is my level

В голову приходит только сделать банально
<Pattern>%d{HH:mm:ss} [MYLEVEL] %m%n</Pattern>

Но тогда даже не знаю как мне в конкретный момент времени вызвать через метод (log.mylevel - без понятия как создать)

Наведите пожалуйста на верные мысли. Спасибо!
PM MAIL   Вверх
AlexAddams
Дата 4.12.2013, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 31.1.2008

Репутация: нет
Всего: нет



Есть неплохая статья, мне в свое время помогла : 
http://javatutor.net/articles/journalizing-with-log4j
PM MAIL ICQ   Вверх
sergioK1
Дата 12.12.2013, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 30.1.2011

Репутация: нет
Всего: нет



Вот  еще 
http://www.tutorialspoint.com/log4j/log4j_logging_files.htm

Но у меня вопрос 

Код

log4j.appender.FILE.File=${log}/log.out


кто отвечает за то что в ${log} оказался реальный путь на директорию,
Это переменная операционной системы , а если на занята другой аппликацией ??
и как мне сделать конфигурацию сразу для Windows и Linux
Я счал делаю в коде 
Код

 Appender fileAppender = (FileAppender)Logger.getRootLogger.getAppender();
 if( System.getPopery("OS").startWith("Linux"))
fileAppender.setWriter(System.getProperty("catalina.base")/folder1/folder2/logger)

if( System.getPopery("OS").startWith("Windows")){
 fileAppender.setWriter(System.getProperty("catalina.base")\\folder1\\folder2\\logger)

}

"catalina.base")/folder1/folder2/logger под винду не работает ,

Я хочу чтоб это было в конфиге а не в коде 


PM MAIL   Вверх
AlexAddams
Дата 12.12.2013, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 31.1.2008

Репутация: нет
Всего: нет



Обычно создаю файл *.xml с настройками, потом использую  org.apache.log4j.xml.DOMConfigurator из log4j у него есть 
public static void configure(String filename) для загрузки файла, обычно ложу файл с настройками в lib проекта и спокойно пользуюсь. Метод static. Есть еще аналог public static void configure(URL url), можно положить удаленно и грузить и т.д. Вместо {log} попробуй написать {user.home} и посмотри где запишет.
Посмотри вот здесь: http://docs.oracle.com/javase/tutorial/ess...nt/sysprop.html, там есть примерчик, можно с ним побаловаться, установить например {my.user.home} на понравившуюся директорию и работай. Самое интересное, System.getProperties().list(System.out); выполни и узнаешь какие настройки установлены.  Конечно устанавливать нужно {my.user.home} до вызова конфигурации lo4j, например: в main, сначала, установи конфигурацию своих переменных для приложения, потом загрузи *.xml с настройками log4j.
По уровням посмотри http://www.skipy.ru/useful/logging.html там есть Использование Log4J, внимательно посмотри и проанализируй табличку.

Это сообщение отредактировал(а) AlexAddams - 12.12.2013, 23:54
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0765 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.