Общие методы ведения журнала отладки - PullRequest
5 голосов
/ 10 августа 2010

Из-за недавних событий я пытаюсь выяснить, сколько журналов отладки я должен использовать для кода в целом.

Что я делал, так это довольно редко использую журналы отладки, и только в тех случаях, когда я хотел получить дополнительную информацию или что-то еще. Это имело смысл для меня, так как кажется, что вы не должны регистрировать каждую мелочь, которую делает ваш код, поскольку это может привести к тому, что вы наполните себя такой информацией, что будет легче пропустить что-то действительно важное (или сойти с ума от копания через и проверки логов).

С другой стороны, я представляю пример: я только начал использовать logback / slf4j для моего проекта Java, и для проверки правильности настройки файла .xlm я добавил оператор журнала отладки в конец метода который инициализирует компоненты графического интерфейса. Обычно я бы никогда не поместил туда оператор log, потому что совершенно очевидно, что ваши компоненты графического интерфейса не инициализируются правильно при запуске программы. Однако в этот раз я запустил программу, и вот в журналах было показано, что компоненты графического интерфейса инициализировались дважды, хотя отображался только один их набор. Ошибка приличного размера, но что-то, что я, вероятно, не смог бы обнаружить без этих отладочных операторов.

Итак, мой вопрос: есть ли "лучшие практики", когда дело доходит до отладки журналов? Я видел много вопросов о лучших практиках, когда дело доходит до информационных журналов, исключений, ошибок и т. Д., Но я не нашел много информации об отладочных журналах.

Спасибо:)

Ответы [ 2 ]

3 голосов
/ 10 августа 2010

Некоторые мысли:

  1. Не просто регистрируйте, что происходит, но позаботьтесь о том, чтобы записать доступные параметры / аргументы метода и т. Д. Это легко пропустить.
  2. Это простоотключить ведение журнала отладки с помощью конфигурации, а не входить в систему после факта.
  3. Не беспокойтесь о накладных расходах регистрации, пока это действительно не станет проблемой.
  4. Вы можете автоматизировать некоторые записи (вход / выходметоды) с помощью AOP Framework (Spring / AspectJ и т. д.)
1 голос
/ 10 августа 2010

Я не думаю, что есть какие-либо "лучшие практики" при принятии решения, что / сколько регистрировать.Это одна из тех ловушек-22 ситуаций.Если вам нужно просмотреть журналы, там «никогда» недостаточно информации, но если вы этого не сделаете, то «все» журналирование - это просто беспорядок кода и ненужные накладные расходы времени выполнения.Вам необходимо составить отдельное суждение о том, где провести черту для каждого приложения.

Однако следует помнить об одном.Если вы и ваши клиенты можете взломать код, чтобы добавить временные отладочные операторы, то вам не нужно столько постоянного кода регистрации.Но если у вас нет возможности взлома (почти) производственного кода для отладки, то вам нужен определенный уровень регистрации кода на месте, на всякий случай ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...