Your SlideShare is downloading. ×
JUG.LV What do you know about Logging?
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

JUG.LV What do you know about Logging?

285

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
285
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Т.е. о  чем всегда “надо” помнить? Logging это не только “запись” куда либо log-инфомации, но и анализ той информации, кроторую вы записали в log. Т.е. не “мы ЧТО-ТО записываем в лог” Постарайтесь, в первую очередь, что бы у вас было ЧЕТКОЕ понимаение “ЗАЧЕМ мы записываем в log”. Если вы это делаете потому что “вам сказали”, “так принято”, то лучше НЕ ПИШИТЕ В LOG НИЧЕГО, по крайней мере вы не сделаете “ошибок” и ваш код будет лучше выглядеть, проще читаться.
  • Попробую расказать об истории развития Java logging’а, в меру возможности. Почему “…” ну, потому что как говорилось в сказке “ мы  шли шли шли, а что вышло, то вышло”. Вобщем история о том как шли, куда шли и как с этим жить.
  • Давным давно, когда программисты JUG были еще маленькими  Что было нужно для logginga ? Ну, вобщем минимальная “функциональность” для logging’a это ? (варианты)
  • log4j — используют подсевшие на него изначально и не видящие необходимости перехода. JUL — тихо умирающий стандарт. Все, кто изначально пытался его использовать, переезжают на Logback. commons-logging — обычно задействован в legacy-библиотеках, которые очень боятся причинить неудобства пользователем, переехав на что-нибудь получше. SLF4J — очень популярен в библиотеках. Многие переехали на него, не выдержав ужасов commons-logging Logback — обычно современные high-performance серверы, которых не устраивает log4j.
  • Transcript

    • 1. What do you know about Logging?
    • 2. Кто я   Denis Udod  Java developer  
    • 3. Кто я   Denis Udod  Java developer   С Java c 1998г.
    • 4. О чем я хочу рассказать? От System.out.println(“log”); До log.error(“Error {}”, code); Что плохо и как хорошо.
    • 5. Зачем нам logging? Каждый видит свой logging
    • 6. Зачем нам logging? Каждый видит свой logging Программист – а как работает мой код
    • 7. Зачем нам logging? Каждый видит свой logging Администратор – как решить проблему?
    • 8. Зачем нам logging? Каждый видит свой logging
    • 9. Через тернии к ... История о том как принять “неудачный” стандарт и породить кошмар.
    • 10. Начало Давным давно...
    • 11. Начало Напечатать строку на консоль/файл.
    • 12. Начало Напечатать строку на консоль/файл.
    • 13.  1999 - Log4J  Версия: 1.2.17 ( May 2012 )  1.2.x начался в 2004  До версии 1.2.8 совместим с Java 1.1
    • 14.  1999 - Log4J  Что нового ?  Loggers (aka Category)  Appenders  Layout
    • 15.  1999 - Log4J  Что нового ?  Loggers (aka Category)  Appenders  Layout  Иерархию category/logger  1 logger – n appenders  конфигурируемый layout  Уровни TRACE, DEBUG, INFO, WARN, ERROR ,FATAL, OFF
    • 16.  1999 - Log4J Итак, что мы получили?  удачная архитектура  понятная система конфигурирования  оптимизироан по скорости  понятные и достаточные уровни логирования …  хорошее сообщество
    • 17.  1999 - Log4J Хороший кандидат на включение в стандартный API Java.
    • 18.  1999 - Log4J Java Logging API / JUL / Мы не ищем легких путей.
    • 19.  Java Logging API / JUL/  А в чем разница?  Handler  Formatter
    • 20.  Java Logging API / JUL/  Очень похоже на Log4J  Loggers (aka Category)  Appenders  Layout
    • 21.  Java Logging API / JUL/  Handler 5 ШТУК  Formatter бледнеько  Уровни ?
    • 22.  Java Logging API / JUL/  Handler  Formatter  Уровни SEVERE WARNING INFO CONFIG FINE FINER FINEST
    • 23.  Java Logging API / JUL/  Уровни SEVERE WARNING INFO CONFIG FINE FINER FINEST
    • 24.  1999 - Log4J Java Logging API / JUL / А что нам использовать ?
    • 25.  1999 - Log4J Java Logging API / JUL / 2002 – Jakarta Commons LoggingМы думали думали и …на конец придумали.
    • 26.  1999 - Log4J Java Logging API / JUL / 2002 – Jakarta Commons Logging ClassLoader Hell
    • 27. Итак, что мы имеем Стабильный и функционально log4j застрявший в java 1.3 Унылый java.util.logging Проблемный commons-logging
    • 28. Итак, что мы имеем Стабильный и функционально log4j застрявший в java 1.3 Унылый java.util.logging Проблемный commons-logging
    • 29. SLF4J 2004г. Simple Logging Facade For Java  Wrapper for Wreppers
    • 30. SLF4J Чем лучше?  «Переходники»  Log4j -> slf4j / log4j-over-slf4j.jar  JUL -> slf4j / jul-to-slf4j.jar  JCL -> slf4j / jcl-over-slf4j.jar
    • 31. SLF4J Чем лучше?  А куда пишем?  slf4j -> Log4j / slf4j-log4j.jar  slf4j -> JUL / slf4j-jdk14.jar  slf4j / logback / locback.jar
    • 32. Где мы сейчас log4j JUL commons-logging SLF4J Logback
    • 33. Как «скрутить» logger Выбираем “правильный” logger  Log4j  Jul  Logback Удаляем все остальные API  Заменяем их соответствующими переходниками
    • 34. Что такое хорошо, что такое плохо
    • 35.  Идиальный logging
    • 36.  System.out / System.err
    • 37.  System.out / System.err
    • 38.  System.out / System.err
    • 39.  «Ковровое бомбометание»
    • 40.  «Ковровое бомбометание»
    • 41.  «Ковровое бомбометание»
    • 42.  «Тупая работа»
    • 43.  «Тупая работа»
    • 44.  Имя?
    • 45.  Имя?
    • 46.  Имя?
    • 47.  Имя?
    • 48.  Вывод в консоль ?  Чем меньше тем лучше
    • 49.  Context ?  slf4j –Mappet Diagnostic Context
    • 50. Что и где ?http://logging.apache.org/log4j/1.2/http://www.slf4j.org/manual.htmlhttp://logback.qos.ch/manual/http://www.parleys.com/#st=5&id=1701&sl=27
    • 51. Вопросы ?

    ×