[cron] python 실행 문제

bluejoy·2022년 12월 1일
0

파이썬 자동화

목록 보기
4/5

발단

최근 간단한 자동화를 위해 playwright로 자동화 코드를 만들어 구름 서버에 올려 매일 한번씩 실행되게 cron을 이용했다.

그런데 귀신같이 직접 실행하면 잘되던 코드가 cron에서는 실행이 안됐다.

디버깅

디버깅이 너무 어려웠다. 평상시라면 그냥 터미널만 봐도 되는데, 1분마다 자동 실행되길 기다리며 로그 파일을 쳐다보는게 어려웠다.

우선 파일 전체를 try문으로 감싸니 import에서 오류가 발생한 것을 발견했다.

혹시나 싶어

import sys
print(sys.executable)

코드를 실행 시켜 로그를 보니 시스템 경로의 파이썬으로 실행되고 있었다...

해결

crontab 실행 유저 선택
위 링크를 참조해 설정 파일에 이렇게 추가해줬다. 나의 경우에는 root 유저로 실행하도록 하니 해결

0 0 * * * root python /workspace/test/index.py >> /workspace/test/cron.log
profile
개발자 지망생입니다.

0개의 댓글