Knowledge Map

파이썬2 로그파일을 만들어보자 본문

PYTHON

파이썬2 로그파일을 만들어보자

2016. 8. 25. 11:49

출처

http://ourcstory.tistory.com/97

http://gyus.me/?p=418

http://seorenn.blogspot.kr/2012/11/python-logging.html



이런방식으로 해주고 다른 파일에서 import 하고 log를 써주면 다른 파일에서도 각 파일명, 라인 수를 다 보여준다.

예를 들어 아래의 코드를 log_write.py로 했다면 다른 파일에서 import log_write 해준다음에 log_write.log.info("abc") 하면 로그에 찍힌다. 당연한 말이지만 파일이름을 logging으로 저장하면 안된다. 그러면 import logging을 파이썬 표준 라이브러리의 logging.py를 하는게 아니라 logging.py라고 저장한 파일 자체를 바라보기 때문이다.


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
import logging
import logging.handlers
from datetime import datetime
 
# 오늘 날짜 시 분 초 로그 저장
today_date = datetime.today().strftime('%Y-%m-%d %H_%M_%S')
 
# logger 인스턴스를 생성 및 로그 레벨 설정
log = logging.getLogger('TEST_LOGGER.')
log.setLevel(logging.DEBUG)
 
#formatter 생성
formatter = logging.Formatter('[ %(levelname)-10s | %(filename)s: %(lineno)s\t\t] %(asctime)s > %(message)s')
 
# 스트림 / 파일 로그 출력 핸들러
fileHandler = logging.FileHandler('./log/'+str(today_date)+'.log')
streamHandler = logging.StreamHandler()
 
# 스트림 / 파일 로그 출력 핸들러 + formatter
fileHandler.setFormatter(formatter)
streamHandler.setFormatter(formatter)
 
# logger 인스턴스 + 핸들러
log.addHandler(fileHandler)
log.addHandler(streamHandler)
 
# logging
log.info("inf00000000000000000000000o")
cs



'PYTHON' 카테고리의 다른 글

파이썬으로 이메일 보내기  (0) 2016.10.10
파이썬 한글 처리  (0) 2016.09.26
sqlalchemy update 이슈  (0) 2016.08.19
파이썬 날짜 가져오기  (0) 2016.08.19
sqlAlchemy 쿼리문 바로 쓰기.  (0) 2016.08.19
Comments