[리눅스] python 로그 찍기

2023. 5. 6. 18:10Python/관리 팁

작성일 : 2020. 11. 29.

 

 

java 는 기본 로깅 클래스가 있음에도 log4j 나 기타 다른 시리즈를 쓴다.

 

python 에서도 마찬가지일 수 있겠다. 아무튼 본론은 ... 기본 로깅 클래스가 존재한다. 이걸 그대로 쓰면 됨.

 

logging 를 import 한다.

 

아래의 코드에서 'run_mode' 부분을 로그에서 보여줄 고정문구로 바꾸자.

 

getLogger() 에서 로거를 정의해놓고 main() 함수에서 호출해서 객체를 생성한 다음,

java 에서 쓰는 방식과 비슷하게 메서드를 호출하면 된다.

 

이를테면,

    `$(로거).info('보여줄 메시지');`

    `$(로거).error('보여줄 메시지');`

 

자세한 건, logging 패키지 소스를 확인해보라.

import logging
..
def getLogger(run_mode):
    myLogger = logging.getLogger(run_mode)
    myLogger.setLevel(logging.INFO)
    formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    stream_hander = logging.StreamHandler()
    stream_hander.setFormatter(formatter)
    myLogger.addHandler(stream_hander)
    return myLogger
def main(mode):
..
    logger = getLogger(mode)
    logger.info('START')