반응형
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- 토스
- 지표
- 티스토리챌린지
- Playwright
- 생성 패턴
- Rust
- 논문 정리
- amazon ecs
- 경로 계획 알고리즘
- leetcode
- AWS 비용 절감
- docker
- AWS
- 구조 패턴
- 청첩장 모임
- 커머스
- study
- 오블완
- 디자인 패턴
- ssh
- 실용주의 프로그래머
- PostgreSQL
- 신혼 여행
- github
- 14일 공부
- Til
- Go-lang
- MAPF
- DevOps
- terraform
Archives
- Today
- Total
밤 늦게까지 여는 카페
[Python] 예외 처리 시 스택 트레이스 남기는 방법 - traceback 본문
반응형
안녕하세요. 오랜만에 쏟아지는 비가 정말 반갑습니다.
봄비가 반가운 와중에 '2주 전에 이렇게 쏟아졌다면 산불 피해가 훨씬 줄었을텐데' 하는 원망감도 조금 생기네요...
오늘은 파이썬에서 예외 처리 시 스택 트레이스를 남기는 방법을 정리해보겠습니다.
1. 예외 처리 시 스택 트레이스를 남길 수 없어서 불편했던 과거
파이썬에서 발생한 exception을 로그로 남기고 싶은데 어떻게 하고 있으셨나요?
저는 다음과 같이 exception을 남겼습니다.
try:
func1(param1, param2)
except Exception as e:
logger.info(f"Exception occurred: {repr(e)}")
이 방법은 최상단의 Exception의 정보만 남겨서 Exception이 발생했을 때의 스택 트레이스를 확인할 수 없다는 단점이 있습니다.
- 저는 스택 트레이스가 출력되어야 정보가 충분하다는 느낌을 받더라고요.
2. traceback 라이브러리
찾아보니 traceback이라는 라이브러리가 있었습니다.
traceback 라이브러리를 이용하면 다음과 같이 로그를 남길 수 있습니다!
- format_exc 메소드를 이용해서 스택 트레이스를 변수에 문자열로 저장할 수 있습니다!
try:
func1(param1, param2)
except Exception as e:
logger.info(f"Exception occurred: {traceback.format_exc()}")
처음부터 가능했던 방법이었는데 너무 늦게 알았다는 것이 참 아쉽네요...ㅜ
반응형
'For Fun > 잡학 지식' 카테고리의 다른 글
| 물류센터 이해하기 #1 - 1PL, 2PL, 3PL (0) | 2025.04.27 |
|---|---|
| [Google Maps API] 엑셀로 월별 비용 예측하기 (무료 계산기 공유) (0) | 2025.04.23 |
| 재미있는 심리 실험들 feat. 확증 편향 (0) | 2025.03.16 |
| NH투자증권에서 퍼플렉시티 프로 1년 무료 이용권 뿌리고 있습니다! (2) | 2025.03.15 |
| 우리가 잘못 판단하는 이유, 인지적 편향 - 확증 편향 (2) | 2025.03.14 |