프로그램을 계속 돌리면서 trace하는 방법이 있나요


발생하는 문제 및 실행환경

웹사이트에서 파일을 받아와 데이터를 numpy로 읽는 프로그램을 만들고 있습니다. 근데 파일을 받아올 때 이상한 링크나 잘못된 xml구조 같은것 때문에 지금 에러가 셀 수 없을 정도로 많이 생깁니다 ㅜㅜ

예외처리 안 했을 때 나오는 에러 메시지 로그를 텍스트 파일에 계속 저장했다가 나중에 한꺼번에 검토하는 방식으로 예외처릴 하고 싶은데요 밑에 코드 같이 쓰면 어디서 에러가 났는지도 모르겠고, 다른 정보도 사라져서 거의 쓸모없는 데이터만 계속 출력됩니다.

소스코드

try:
    do_stuff()
except Exception, err:
    print Exception, err

어느 모듈의 어느 위치에서 에러가 발생했는지 정확히 알아내려면 어떻게 해야되나요?

  • 2016년 01월 27일에 작성됨

조회수 240


1 답변


좋아요
0
싫어요
채택취소하기

traceback.format_exc()이나 sys.exc_info()를 써주세요

예제 :

import traceback
import sys

try:
    do_stuff() #어떤 코드
except Exception, err:
    print(traceback.format_exc())
    #또는
    print(sys.exc_info()[0])
  • 2016년 01월 27일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close