![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Alexandr87 |
|
|||
![]() дыкий псых ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1459 Регистрация: 27.11.2004 Где: Алматы, Казахстан Репутация: 9 Всего: 39 |
Суть такая. Есть группа операций, состоящая из множества (5-10) мелких операций. Каждая из таких мелких операций должна оставлять в журнале результат своей работы. Одновременно в нескольких потоках выполняются несколько групп операций. Нужно чтобы в конечном журнале (файле, БД) они шли подряд (без перебивки записей из других потоков), а в БД вообще желательно чтоб легли одной записью.
С log4j работал давно и не глубоко, поэтому заранее извиняюсь если где-то спорол бред по незнанию. |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 17 Всего: 43 |
Очевидно, этого можно добиться только накапливая где-то записи одной группы перед сохранением их в файл или дб. Если это необходимо только для удобства просмотра, то, на мой взгляд, смысла нет заморачиваться. И даже вредно, потому что запись в лог должна быть сохранена как можно быстрее.
Для просмотра логов удобно пользоваться специальными инструментами ( например, http://www.baremetalsoft.com/baretailpro/ ) - там и поиск и фильтрация и группировка. Это сообщение отредактировал(а) COVD - 2.9.2008, 16:36 |
|||
|
||||
| sandello |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 18.5.2005 Где: Пермь Репутация: нет Всего: 2 |
Зачем это, если не секрет? Я бы сделал так: Для каждой группы операций генерил бы свой ID. И при выводе в каждую строчку писал бы его. А с порядком в файле, имхо, не нужно заморачиваться. Зачем в БД одну запись? Ты ее всегда сможешь получить из нескольких, если знаешь по какому признаку их сгруппировать. Т.е. главное: сделать уникальный идентификатор группы операций. -------------------- ![]() |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
В Log4j есть такая штука как Nested Diagnostic Context и Mapped Diagnostic Context. Мы можем в этот контекст во время работы класть, все что нам нужно, а потом при логировании можно этот контекст записать в лог.
Если это не устраивает, то можно пошаманить со своими аппендерами или фильтрами. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |