2017-12-04 1 views
0

Windows 용 Pycharm Community Edition 2017.2가 있습니다. 이런 간단한 로거를 설정했습니다. 내가 PyCharm의 실행/디버그 옵션에서 main.py를 실행하면Pycharm - 실행/디버그 설정에서 실행할 때 로그 파일이 생성되지 않습니다.

def configure_logging(): 
    logger = logging.getLogger("debuglogger") 
    logger.setLevel(logging.DEBUG) 
    # create a file handler 
    filepath = join(getcwd(), 'debug.log') 
    file_handler = logging.FileHandler(filepath, mode='w', encoding='UTF-8') 
    file_handler.setLevel(logging.DEBUG) 
    # create a logging format 
    formatter = logging.Formatter(
     '[%(levelname).3s][%(module)20.20s:%(funcName)-20.20s]-> %(message)s') 
    file_handler.setFormatter(formatter) 
    # add the handler to the logger 
    logger.addHandler(file_handler) 
    return logger 

main.py

if __name__ == "__main__": 
    # configure the logger 
    logger = configure_logging() 
    logger.info("logging configured\n") 

는 다음 로그 파일이 만들어지지 않습니다. 하지만, Py303의 경우 터미널 창에서 스크립트를 실행하면 로그 파일이 생성됩니다. 실행/디버그 창에서 로깅을 사용하려면 어떻게해야합니까? 보시다시피 로그 파일의 전체 경로를 제공했지만 여전히 작동하지 않습니다.

+0

"실행/디버그 구성"메뉴에서 작업 디렉토리를 지정합니까? 그렇지 않다면 로그는 PyCharm 작업 디렉토리에있을 수도 있습니다 – Ora

+0

고마워요. 그것은 작업 디렉토리를 설정 한 후에 작동합니다. 프로젝트 레벨의 작업 디렉토리를 설정하여 모든 로그가 프로젝트의 모든 모듈에 대해 한 곳 (예 : "logs"폴더)에 있도록 설정할 수 있습니까? – kronosjt

+0

예, 답글로 대답했습니다. – Ora

답변

1

실행 또는 프로젝트 당 "실행 디렉터리"를 설정할 수 있습니다. 실행 당 : 실행 -> 편집 구성 -> 스크립트 또한 "기본값"프로젝트 당

에서 기본 옵션을 설정할 수 있습니다

에 대한 실행/디버그 구성을 추가 : 파일 -> 설정 -> 구축, 실행을 , 배포 -> 콘솔 -> 파이썬 콘솔

관련 문제