훈훈훈
파이썬(Django) :: Django-Crontab 정리 본문
이번에는 Django를 사용하여 crontab을 사용하는 방법에 대하여 정리하려고 한다.
crontab을 사용하게된 계기는 매 특정 주기마다 가격이 변동시키고 싶어서 적용해보게 되었다.
이제 Django에서 crontab을 사용하는 방법에 대하여 알아보자
# 모듈 설치
pip install django-crontab
먼저 pip로 "django-crontab" 모듈을 설치하자
설치가 되면 아래와 같이 settings.py에 INSTALLED_APPS에 추가해주면 사용할 수 있다.
# settings.py
INSTALLED_APPS = [
'django_crontab',
]
# 매 3시간 마다 cron.py 실행
CRONJOBS = [
('0 */3 * * *', 'my_cron.schedule_03hr_change_price', '>> 03hr_schedule.log'),
]
INSTALLED_APPS에 'django-crontab'을 추가하였다면, 이제 CRONJOBS을 등록할 수 있다.
원하는 경로나 파일에 주기적으로 실행되길 원하는 함수를 생성 후 위와 같이 추가 해주면 된다.
필자는 추가적으로 cron이 실행될때마다 로그를 남기기 위해서 "03hr_schedule.log" 파일을 생성하였다.
# my_cron.py
def schedule_03hr_change_price():
print("log")
추가적으로 주기적으로 실행시킬 함수는 위와 같이 예시로 작성할 수 있다.
필자는 my_cron.py 파일을 생성 후 해당 파일에 작성하였다.
# cron 명령어
python manage.py cron add
python manage.py cron show
python manage.py cron remove
마지막으로 서버를 실행 후 위와 같은 명령어로 추가(add), 보기(show) 삭제(remove)가 가능하다.
'파이썬 > Django' 카테고리의 다른 글
파이썬(Django) :: 페이지네이션으로 회원 목록 조회 API (0) | 2020.05.03 |
---|---|
파이썬(Django) :: Django-mptt 정리 (0) | 2020.04.18 |
파이썬(Django) :: Select_related 와 Prefetch_related (0) | 2020.04.13 |
파이썬(Django) :: 회원가입 시 입력 값 검증 함수 (0) | 2020.03.21 |
파이썬(Django) :: 회원가입 시 이메일 인증 API (1) | 2020.03.21 |
Comments