반응형
크론탭은 시간을 정해서 특정 프로그램을 자동으로 동작하게 하는 기능입니다. 리눅스 환경에서만 사용할 수 있으며 윈도우는 따로 시간 설정이 있는 것으로 보입니다.
오늘은 그중에서도 장고에서 크론탭을 활용하는 방법을 살펴보려고 합니다. 결국 크론탭을 이용하는 것이지만 장고 파일 내에서 설정할 수 있도록 모듈을 제공하는 것이죠. 먼저 아래 명령어로 모듈을 설치합니다.
pip install django-crontab
settings.py 에 아래 내용을 추가합니다.
# settings.py
INSTALLED_APPS = (
'django_crontab',
)
CRONJOBS = [
('* * * * *', 'appname.filename.functionname', '>> /appname/crontap.log'),
]
위에서 CRONJOBS를 보시면 '* * * * *' 가 보이실 것입니다. 이는 시간을 설정하는 것이며, 내용은 아래와 같습니다.(제타위키를 참고했습니다)
* * * * *
┬ ┬ ┬ ┬ ┬
│ │ │ │ │
│ │ │ │ │
│ │ │ │ └───────── 요일 (0 - 6) (0:일요일, 1:월요일, 2:화요일, …, 6:토요일)
│ │ │ └───────── 월 (1 - 12)
│ │ └───────── 일 (1 - 31)
│ └───────── 시 (0 - 23)
└───────── 분 (0 - 59)
아래는 예시입니다.
* * * * * : 매분 프로그램 실행
30 1-23/6 * * * : 1시부터 매 6시간마다 단, 30분(1:30, 7:30, 13:30, 19:30)에 프로그램이 실행
*/10 * * * * : 10분마다 프로그램 실행
15,45 * * * * : 매시 15분, 45분에 프로그램 실행
0 8 * * 1-5 : 평일 8:00에 프로그램 실행
마지막으로 터미널에서 아래 명령어를 입력하면 됩니다.
# 크론탭 내용 추가
python manage.py crontab add
# 크론탭 내용 보기
python manage.py crontab show
# 크론탭 내용 삭제
python manage.py crontab remove
728x90
반응형
'문돌이 존버 > Django 스터디' 카테고리의 다른 글
장고(Django) media 파일 다루기 (0) | 2021.08.06 |
---|---|
장고(Django) admin 페이지 커스터마이징 (0) | 2021.08.05 |
DRF 게시글 생성 및 조회수 중복 방지(쿠키 설정) (0) | 2021.02.16 |
DRF user 회원가입 UI 아이디, 이메일 중복 검사 (0) | 2021.02.13 |
DRF 유저 모델(Profile), 아이디 및 이메일 중복확인 (0) | 2021.02.12 |