Практика входа в настольное приложение - PullRequest
4 голосов
/ 31 октября 2008

Мы разрабатываем настольное приложение (Visual Basic 6.0). У нас есть собственная структура ведения журналов. Каковы хорошие практики? Когда у нас есть веб-приложение, мы можем контролировать уровень ведения журнала. Как работать в настольном приложении?

Ответы [ 2 ]

6 голосов
/ 31 октября 2008

Любой ответ необходимо учитывать в зависимости от вашей среды:

  • Ваши бизнес-правила (или законы) требуют определенных действий для регистрации?
  • Является ли проблема безопасности?
  • Нужно ли отслеживать действия?
  • Является ли размер файла журнала (или объем дискового пространства) проблемой?
  • Ваша мотивация записывать действия, отлаживать или и то и другое?

Имея в виду:

  • Попробуйте разрешить пользователю выбирать многословие или «уровень ведения журнала».
  • Журнал всех программных ошибок и значительных ошибок пользователя.
  • Журнал любых действий, которые влияют на конфигурацию или работу системы.
  • Журнал начала и конца пользовательских сессий.
  • Записать начало и конец приложения.
  • Рассмотрите возможность регистрации в первый раз, когда происходит значительное действие.

Другие предложения:

  • Включайте метки времени в каждом журнале или в начале «группы» журналов, как лучше всего подходит для вашего приложения.
  • Если вы входите в файл, попробуйте повернуть журнал (, т.е. закрыть один файл и открыть новый), когда он достигнет определенного размера или возраста.
  • Если приложение содержит несколько модулей, включите название модуля в каждый журнал.
  • Если приложение используют более одного человека (общий компьютер?), Регистрируйте идентификатор пользователя в начале каждого сеанса.
  • Назначать журналу «уровни» в зависимости от серьезности (Ошибка, Предупреждение, Информация, Отладка). Спецификация syslog определяет 7 «стандартных» уровней, которые служат хорошим ориентиром.
  • Спросите своего клиента, что он ожидает увидеть в журнале.
0 голосов
/ 31 октября 2008

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

Много раз неправильно работающее приложение будет нормально работать при перезапуске. Динамически настраиваемые уровни журналов позволяют увидеть, что происходит, прежде чем вы вернете все свои ресурсы обратно в ОС.

...