2008-10-31 4 views
4

우리는 데스크톱 응용 프로그램 (visual basic 6.0)을 개발 중입니다. 우리는 자체 로깅 프레임 워크를 가지고 있습니다. 좋은 습관이란 무엇인가? 웹 응용 프로그램이 있으면 로깅 수준을 제어 할 수 있습니다. 데스크톱 앱에서 어떻게 움직일 수 있습니까?데스크톱 응용 프로그램에 로깅을위한 연습

답변

6

모든 대답은 사용자의 환경에 따라 고려해야 할 필요가 : 로그인해야

  • 비즈니스 규칙 (또는 법률) 특정 활동을 필요로합니까?
  • 보안 문제가 있습니까?
  • 조치를 추적 할 필요가 있습니까?
  • 로그 파일의 크기 (또는 디스크 공간)가 문제가됩니까?
  • 활동 기록, 디버그 또는 둘 다에 대한 동기가 있습니까? 마음에 그와

". 로깅 수준"

  • 는 상세, 또는 사용자가 선택할 수 있도록 고려
  • 모든 프로그램 오류와 중요한 사용자 오류를 로깅하십시오.
  • 시스템 구성 또는 작동에 영향을주는 활동을 기록하십시오.
  • 사용자 세션의 시작과 끝을 기록하십시오.
  • 응용 프로그램의 시작과 끝을 기록하십시오.
  • 중요한 활동이 처음 발생할 때의 로깅을 고려하십시오.

다른 제안 :

  • 응용 프로그램에 가장 적절한, 각 로그 또는 로그의 "그룹"의 시작 부분에 하나, 타임 스탬프를 포함합니다.
  • 파일에 로깅하는 경우 특정 크기 나 나이가되면 로그 (즉, 하나의 파일을 닫고 새 파일을 닫는 것)를 돌리는 것이 좋습니다.
  • 응용 프로그램에 여러 모듈이 포함되어 있으면 각 로그에 모듈 이름을 포함시킵니다.
  • 둘 이상의 사용자가 응용 프로그램 (공유 컴퓨터?)을 사용하는 경우 각 세션이 시작될 때 사용자 ID를 기록하십시오.
  • 심각도 (오류, 경고, 정보, 디버그)에 따라 로그 수준을 할당하십시오. syslog 사양은 7 가지 "표준"수준을 정의하여 좋은 참조로 사용됩니다.
  • 고객에게 로그에 표시 할 내용을 문의하십시오.
+1

이 답변을 주셔서 감사합니다.스윙 데스크톱 응용 프로그램을 사용하다 보면 프로그램이 오작동하거나 망가질 경우 (또는 그렇게 될 수 있도록) 몇 가지 로깅을 수행해야한다는 것을 알았습니다. – Jazzepi

+0

+1하기 전에이를 인식하십시오! 로그를 사용하여 디버그 할 경우 미래를 예측할 수 있습니다. 지금부터 6 개월 후에 로그를보고 무슨 일이 있었는지 알아보십시오. 어떤 정보를 원할 것입니까? 이제 자신에게 그 데이터를 줄 수있는 기회입니다. 클라이언트가 로그를 보낼 수 있도록 가능한 한 쉽게 만들 수도 있습니다. 원 클릭 프로세스로 만들 수 있습니까? 완전히 자동화 하시겠습니까? 더 쉬울수록 필요할 때 로그를받을 확률이 높아집니다. 행운을 빕니다! –

0

고려해야 할 중요한 기능은 응용 프로그램을 중지하고 다시 시작하지 않고도 런타임에 동적으로 로그 수준을 조정할 수 있도록하는 것입니다 (사용자 지정 신호 처리기로 * nix에서 구현했습니다). 이것은 현장에서 디버깅 할 때 큰 도움이됩니다.

많은 경우 오작동하는 응용 프로그램이 다시 시작되면 제대로 작동합니다. 동적으로 조정할 수있는 로그 수준을 통해 모든 리소스를 OS로 다시 릴리스하기 전에 진행되는 작업을 볼 수 있습니다.