Как определить что уровень журнала использовать? [закрытый]

Urughhh. Я попытался исправить это со всеми вышеперечисленными решениями, но ничего не получилось. Наконец, работа была:

  1. Удалить изображение из вашего проекта и выбрать «Переместить в корзину»
  2. Очистить проект
  3. Закрыть и перезапустить XCode
  4. Переименуйте свое имя файла изображения так, чтобы что-то отличное от предыдущего имени
  5. Добавьте новое изображение в свой проект
58
задан Sietse 9 October 2008 в 11:18
поделиться

5 ответов

Я не думаю, что существуют любые твердые правила; с помощью уровней log4j-типа мои 'эмпирические правила' - что-то как:

  • ФАТАЛЬНЫЙ : приложение (или по крайней мере поток) собирается умереть ужасно. Это - то, куда информация, объясняя , почему это происходит, идет.
  • ОШИБКА : что-то, что выполнение приложения этого это не было должно. Это не пользовательская ошибка ('недопустимый поисковый запрос'); это - отказ утверждения, сетевая проблема, и т.д. и т.д., вероятно, тот, который собирается прервать текущую операцию
  • , ПРЕДУПРЕЖДАЕТ : что-то это касается, но не заставляет операцию прерываться; # соединений в понижении пула DB, unusual-expected тайм-аута в операции, и т.д. Я часто думаю, 'ПРЕДУПРЕЖДАЮТ' как что-то, что это полезно в агрегате; например, grep, группа, и считают их для получения изображения того, что влияет на системное здоровье
  • ИНФОРМАЦИЯ : Нормальный вход это - часть нормального функционирования приложения; диагностический материал, таким образом, можно возвратиться и сказать, 'как часто эта операция широкого уровня происходила?', или, 'как данные пользователя входили в это состояние?'
  • ОТЛАДКА : Прочь по умолчанию, способный быть включенным для отладки определенных неожиданных проблем. Это - то, где Вы могли бы зарегистрировать подробную информацию о ключевых параметрах метода или другой информации, которая полезна для нахождения вероятных проблем в определенных 'проблематичных' областях кода.
  • ТРАССИРОВКА : "Серьезно, WTF продолжается здесь?!?! Я должен зарегистрировать каждый оператор, который я выполняю для нахождения этого # $ @ing ошибка повреждения памяти, прежде чем я сойду с ума"

Не набор в камне, но общее представление о том, как я думаю о нем.

111
ответ дан Cowan 7 November 2019 в 15:19
поделиться

Неофициально я использую этот вид иерархии,

  • ОТЛАДКА - фактические значения трассировки
  • ИНФОРМАЦИЯ - Что-то просто произошло - ничто важное, просто флаг
  • ПРЕДУПРЕЖДАЕТ - что все работает, но что-то не вполне, что ожидалось
  • ОШИБКА - что-то произошло, который должен будет быть зафиксирован, но мы можем продолжить и сделать другие (независимые) операции
  • ФАТАЛЬНЫЙ - достаточно серьезная проблема, которую мы не должны даже продолжать

, я буду обычно выпускать с зарегистрированной ИНФОРМАЦИЕЙ, но только если я знаю, что файлы журнала на самом деле рассматриваются (и размер не является проблемой), иначе это, ПРЕДУПРЕЖДАЮТ.

7
ответ дан Unsliced 7 November 2019 в 15:19
поделиться

Думайте о том, кто должен использовать каждый уровень. В моем коде я сохраняю ОТЛАДКА зарезервированным для вывода разработчика, например, произвожу, который только помог бы разработчику. ПОДРОБНЫЙ используется для обычного пользователя, когда много информации необходимо. ИНФОРМАЦИЯ я использую для нормального показа крупных событий (например, отправка веб-страницы, проверяя что-то важное).

И СБОЙ и ПРЕДУПРЕЖДАЕТ , симпатичен сам объяснительный.

5
ответ дан GavinCattell 7 November 2019 в 15:19
поделиться

Соглашение в моей команде состоит в том, чтобы использовать debug, если что-то вычисляется в сообщении, тогда как info используется для простого текста. Таким образом, в действительности info покажет Вам, что происходит, и debug покажет значения вещей, которые происходят.

3
ответ дан slashnick 7 November 2019 в 15:19
поделиться

Я склонен быть нацеленным на ИНФОРМАЦИЮ к пользователю, чтобы дать им сообщения, которые не являются даже предупреждениями. ОТЛАДКА имеет тенденцию быть для использования разработчика где я выходные сигналы, чтобы помочь проследить поток через код (со значениями переменных также).

мне также нравится другой уровень ОТЛАДКИ (DEBUG2?), который дает абсолютный bucketloads отладочной информации, такой как шестнадцатеричные дампы всех буферов и так далее.

1
ответ дан paxdiablo 7 November 2019 в 15:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: