|
|
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
Добрый день! Есть несколько разных сервисов на сервере приложения. Для логирования используется log4j. Для каждого сервиса сделан отдельный файл со свойствами log4j.properties, т.к. апендеров много и описывать их в одном файле свойств для всех сервисов не стал, т.к. чем больше файл, тем больше времени на его обработку... Для открытия файла свойств использую PropertyConfigurator.configure("d:/temp/log4j.properties"). Но если файла свойств не существует, то log4j сам обрабатывает исключение и работа моего приложения продолжается без прерывания. Как обработать ошибку открытия файла свойств log4j? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 09:32:32 |
|
||
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
pulpДобрый день! Есть несколько разных сервисов на сервере приложения. Для логирования используется log4j. Для каждого сервиса сделан отдельный файл со свойствами log4j.properties, т.к. апендеров много и описывать их в одном файле свойств для всех сервисов не стал, т.к. чем больше файл, тем больше времени на его обработку... Для открытия файла свойств использую PropertyConfigurator.configure("d:/temp/log4j.properties"). Но если файла свойств не существует, то log4j сам обрабатывает исключение и работа моего приложения продолжается без прерывания. Как обработать ошибку открытия файла свойств log4j? точно так же как ты и описал чо сложновото я непайму? Код: java 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 10:35:30 |
|
||
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
Ок. А если "кривой" файл со свойствами. Т.е. хотелось бы понять, что файл есть и log4j его успешно открыл и распарсил. Или много хочу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 11:27:01 |
|
||
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
pulpТ.е. хотелось бы понять, что файл есть и log4j его успешно открыл и распарсил. Или много хочу?много, да, если использовать PropertyConfigurator.configure: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. а если использовать org.apache.log4j.PropertyConfigurator#doConfigure(Properties, LoggerRepository), то "файл есть и мы успешно открыли и распарсили" - можно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 12:37:33 |
|
||
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
Но если есть проблема в файле свойств, например неверно указано имя аппендера, то такая ошибка не перехватывается. log4j сам перехватывает это исключение и пишет в System.out: Код: java 1. 2. 3. Как-то можно подобные ошибки обработать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 13:02:38 |
|
||
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
Получилось сделать через метод exists класса LogManager. Нашёл на ощупь, в документации по этому методу нет описания. В общем он при отсутствии аппендера не создаёт объект Logger, а возвращает null. И при последующем обращении к нему генерится исключение NullPointerException. На мой взгляд нормально: Код: java 1. 2. 3. Наткнулся ещё на одну проблему - не работает назначение уровня вывода. Точнее в примере ниже уровень берется DEBUG от логера TstService.TstConsumer, т.е. в TstService тоже пишется всё до DEBUG. А если для TstService.TstConsumer поставлю ERROR, а для TstConsumer DEBUG, то в оба лога пишутся только ошибки. Помогите, в чём может быть засада? Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 13:28:53 |
|
||
|
log4j: как обработать ошибку открытия файла свойств log4j.properties?
|
|||
|---|---|---|---|
|
#18+
Получилось с помощью свойства threshold аппендера: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2012, 15:51:50 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=259&tid=2130579]: |
0ms |
get settings: |
14ms |
get forum list: |
25ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
64ms |
get topic data: |
21ms |
get forum data: |
5ms |
get page messages: |
71ms |
get tp. blocked users: |
3ms |
| others: | 316ms |
| total: | 531ms |

| 0 / 0 |
