2021-korea-covid-19-remaining-vaccine-macro
2021-korea-covid-19-remaining-vaccine-macro copied to clipboard
로거 및 환경변수 항목 추가
comit SHA cb44c87 베이스로 수정해봤습니다.
- 로거사용
- print사용 대신 logging을 이용한 사용으로 변경
- 프로그램이 꺼지더라도 로그 내용 보고 파악 가능 및 문제 발생 시 파악하기 위함
- 환경변수 추가
- 환경변수 처리 추가
- Search_Term (검색 주기)
- log_level (로깅레벨)
config.ini 파일에 추가 기재되어야 할 key value pair [PROGRAM] log_level = logging.INFO search_term = 0.35
혹시 logging import한게 따로 pip를 통해 install을 해 주어야 하는 부분일까요?
혹시 logging import한게 따로 pip를 통해 install을 해 주어야 하는 부분일까요? 제가 알기로는 logger는 파이썬 3.9 기본 모듈로 알고 있습니다. https://docs.python.org/3/howto/logging.html
Traceback (most recent call last):
File "vaccine-run-kakao.py", line 345, in <module>
File "vaccine-run-kakao.py", line 331, in main_function
File "vaccine-run-kakao.py", line 49, in load_config
File "configparser.py", line 963, in __getitem__
KeyError: 'PROGRAM'
[35121] Failed to execute script 'vaccine-run-kakao' due to unhandled exception!
이미 있는 컨피그에서 저 키가 없어서 발생한 듯 합니다. (취소 (수정 가능하면 좋긴 하겠습니다)
카카오 백신 API가 다시 살아난 후 테스트해보겠습니다.
logger.info
부분 떠야하는데 안뜨네요.
MacOS 12 / M1
이상태로 작동한다면 머지 불가능할 것으로 보입니다.
Traceback (most recent call last): File "vaccine-run-kakao.py", line 345, in <module> File "vaccine-run-kakao.py", line 331, in main_function File "vaccine-run-kakao.py", line 49, in load_config File "configparser.py", line 963, in __getitem__ KeyError: 'PROGRAM' [35121] Failed to execute script 'vaccine-run-kakao' due to unhandled exception!
config.ini에 추가한 환경변수를 기본생성 하도록 추가 수정 했습니다.
https://github.com/SJang1/korea-covid-19-remaining-vaccine-macro/pull/453#issuecomment-888172642 제가 windows에서만 동작 확인 한 것이라, 맥에서 수정 후에도 안찍히는 확인부탁드립니다

logFormatter에서 <%(filename)s:%(lineno)s>
를 지우던가 라인 넘버 정도만 남기는게 좋을듯 합니다.
![]()
이제는 너무 보기가 어려워지네요.. 흐음.. 이를 어째야할지..
Logging 모듈 한번도 안쓰셨었어나요? 로거의 포맷터 쪽에 로그 포맷 양식을 바꿀수 있습니다. logFormatter = logging.Formatter('[%(asctime)s] %(message)s') 포맷터 이런 양식으로 고치면 날짜 시간이랑 메세지만 딱 보일꺼에요
로거의 포맷터 쪽에 로그 포맷 양식을 바꿀수 있습니다. logFormatter = logging.Formatter('[%(asctime)s] %(message)s')
네 아무래도 쓸 일이 없었다보니.. 그리고 End-User 입장에선 아무것도 설정하기 힘들어할지라 미리 준비 다해놓긴 해야해요
정책을 어찌 가져가야 할지 고민을 해야겠지만 Log 파일은 개발자 친화적으로 해서 지금처럼 세부 정보가 나오게 포맷을 지정하고 console 스트림쪽의 기록은 말씀하신것처러 간단히만 표시되게끔 포맷을 지정해 두개가 다르게 기록되게 할지
둘 다 사용자 친화적으로 단순히 표기 할지 고민은 필요해 보이네요
이제는 너무 보기가 어려워지네요.. 흐음.. 이를 어째야할지..
Logging 모듈 한번도 안쓰셨었어나요? 로거의 포맷터 쪽에 로그 포맷 양식을 바꿀수 있습니다. logFormatter = logging.Formatter('[%(asctime)s] %(message)s') 포맷터 이런 양식으로 고치면 날짜 시간이랑 메세지만 딱 보일꺼에요
개인적으로 이 부분까지 logger로 바꾸는 것에 의문이 좀 있는데요~ 어디까지 log로 볼 건지, 사용자와 인터랙션하는 부분까지 log로 볼 건지? 에 대해 컨센서스를 맞추면 좋을 것 같습니다.
예를 들어 이 프로그램이 UI를 가지게 된다면 현재 텍스트로 출력하는 부분 중에 UI 인터랙션으로 전환될 부분과, 여전히 logger를 쓰는 부분으로 나눠질 것 같은데요. 저는 그 기준으로 logger를 쓰는 게 나을 것 같아서요. 사용자 input을 받는 게 info성 로그인지도 의문이 들구요.
만약 인터랙션까지 로그로 기록할 필요가 있다면 인터랙션 출력 자체가 아닌 별도 로그로 가공해서 뽑는 게 맞는 것 같아 보입니다~