С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/75: Рейтинг темы: голосов - 75, средняя оценка - 4.65
0 / 0 / 0
Регистрация: 11.07.2010
Сообщений: 7

Есть ли в log4j возможность одновременно логировать в разные файлы?

15.07.2010, 15:45. Показов 14781. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не подскажете как можно настроить log4j что бы иметь лог только своего приложения (ejb под jboss), без служебной информации jbossa. Возможен вариант что лежат 2-3 приложения. Хотелось бы иметь логи в разные файлы. У меня пока все работает, но пишет исключительно в один файл.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.07.2010, 15:45
Ответы с готовыми решениями:

Log4j в разные файлы
Подскажите как можно записывать с log4j каждую сессию в разные файлы. то есть в приложении записывать каждую сессию в разные файлы. имя...

[log4j] Логировать ли все успешные операции?
Логируют ли в коммерческих проектах, например успешное сохранение пользователя в БД успешное получение записи из БД

Log4j как логировать только один метод из класса
Добрый день. Есть класс с несколькими методами. В нем объявлен лог: private static final Log log = LogFactory.getLog(Example.class); ...

8
0 / 0 / 2
Регистрация: 29.09.2009
Сообщений: 48
19.07.2010, 14:26
Нужно создать свой логгер (Logger), обозвав его как нить и с этим же именем настроить файл аппендер в log4j.properties.

Выглядит примерно так

log4j.logger.APP=DEBUG, A5, F5

log4j.appender.A5=org.apache.log4j.Conso leAppender
log4j.appender.A5.layout=org.apache.log4 j.PatternLayout
log4j.appender.A5.layout.ConversionPatte rn=[%d{dd MMM yyyy HH:mm:ss,SS}] SYN %-5p %m %n

log4j.appender.F5=org.apache.log4j.Rolli ngFileAppender
log4j.appender.F5.file=@log_folder@/application.log
log4j.appender.F5.MaxFileSize=10000KB
log4j.appender.F5.MaxBackupIndex=9999
log4j.appender.F5.layout=org.apache.log4 j.PatternLayout
log4j.appender.F5.layout.ConversionPatte rn=[%d{dd MMM yyyy HH:mm:ss,SS}] %-5p %m %n

т.е. есть логгер под названием APP , к которому есть два аппендера
консольный и файловый.

в коде примерно так :

logger = Logger.getLogger('APP'); // инициализируете единожды при старте приложения. И логируете в энтот логгер.
0
0 / 0 / 0
Регистрация: 11.07.2010
Сообщений: 7
20.07.2010, 16:51  [ТС]
Спасибо большое за отклик, честно говоря уже и не ожидал кого-нибудь услышать :-)

Проблема заключается в том, что мне необходимо иметь лог в которое пишет только мое приложение и больше никто. Т.е. если я указываю логгеру два аппендера пишущих в файл, он пишет в два разных файла(замечательно) одну и ту же информацию, в основном служебную jbossa(плюс конечно мои сообщения). А мне надо что бы часть информации с одних ejb шла в один файл, а часть, с других ejb, соответственно, в другой. И что бы кроме этих ejb туда никто не писал. Ни jboss, ни царь и не герой.
Как я понимаю для этого надо создать два логгера...
Не подскажете с настройкой?

Кстати я имею право использовать
public static final Logger log = Logger.getLogger('USER');
в ejb? Меня уверяли что static использовать в ejb нельзя из-за реализации сервера. Но думаю final можно?
0
0 / 0 / 0
Регистрация: 11.02.2010
Сообщений: 111
20.07.2010, 19:42
А может логи лучше в базу писать? Хотя бы можно выборку сделать, отчетность какую-нибудь............
0
0 / 0 / 0
Регистрация: 11.07.2010
Сообщений: 7
21.07.2010, 09:12  [ТС]
Требование было писать в файл :-(
В базу можно дублировать. Но это второстепенный наворот.
Хорошо, а в базу тоже аппендер настраивается? Я некоторые штуки запустить не могу. Например log4j упорно отказывается слать мне письма :-).
0
0 / 0 / 2
Регистрация: 29.09.2009
Сообщений: 48
21.07.2010, 13:09
2 kid3194

1. По поводу ejb: Думаю со статикой заморочек никаких не будет, но я бы сделал некий синглетон, предоставляющий логгеры , например по имени конкретного бина. Ну и из бина дергать соответствующий ему логгер.

2. По поводу базы: подход работает, но надо реализовывать свой аппендер. Где то у меня это было - если понадобится , то могу покопатся - найти пример кода.
0
0 / 0 / 0
Регистрация: 11.07.2010
Сообщений: 7
21.07.2010, 14:59  [ТС]
Был бы очень благодарен за пример. Но честно говоря проблема осталась. :-(
Т.е в лог идет служебная информация jbossa под уровнем debug и выше. Мне же надо что бы писало только мое приложение.
А можно создать свой уровень лога, например не debug a dbg и разрешить писать в файл только этому уровню(ну и выше если есть с-ма приоритетов)? Меня бы такое решение вполне устроило. Я пробовал ограничивать уровнем info - все равно много информации. Честно говоря у меня есть свой логгер, коорый позволяет заводить сколько угодно уровней дебага, поэтому я удивлен что в лог4j их только 5. Если неправ - буду только рад.

Насчет синглтона, конечно будет нечто подобное, просто не хочу это здесь обсуждать что бы не уходить от темы :-)
0
0 / 0 / 0
Регистрация: 11.02.2010
Сообщений: 111
21.07.2010, 15:00
kid3194, с базой там делается не сложнее чем для файла, когда мне это понадобилось, я в русском (!) инете нашел небольшое хорошее описание юзания log4j. Родной мануал отдыхает =)
0
0 / 0 / 0
Регистрация: 11.07.2010
Сообщений: 7
21.07.2010, 15:36  [ТС]
О, я тоже нашел две неплохие статьи на русском, скачал родной мануал, но проблему так и не решил. Ладно, с базой я сам разберусь вы просто подскажите есть такая возможность(что бы в лог писал только bean) или нет. Может я хочу что бы каждай bean писал в свой файл :-)

Так, может мне от Priority наследовать что бы свой level создать? Но в любом случае будут показываться другие уровни дебага....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.07.2010, 15:36
Помогаю со студенческими работами здесь

Есть ли возможность увидеть структуру таблиц, если есть только файлы frm?
Denwer, MySQL 5.5 и phpMyAdmin. В базе данных нет (файлы MYD отсутствуют), а нужно только посмотреть структуру таблиц. Есть файлы с...

Есть ли возможность преобразовать файлы и каталоги в нижний регистр?
Может кто-нибудь подсказать есть ли возможность в Windows Server 2008 R2 преобразовать файлы и каталоги в нижний регистр или по протоколу...

Есть ли возможность восстановить файлы на жестком диске, которые были вырезаны?
доброго! суть проблемы, перенес папку с файлами из жесткого диска на флешку. флешку с успехом потерял, есть ли вариант восстановить...

Есть ли возможность запускать jar файлы которые выводят лог в консоль, без ввода?
Доброго времени суток! Хотел узнать есть ли возможность запускать jar файлы которые выводят лог в консоль, без ввода вроде как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru