2012-10-18 6 views
0

최근에 web2py (v2.1.1)의 최신 버전으로 업데이트되었지만 이전 버전에서도 여전히이 문제가 발생했습니다.Web2py - Cron 작업 디버그

크론 작업을 실행하고 싶습니다. cron을 작동시키려는 노력에서이 튜토리얼을 따라갔습니다. 정말 간단하게 작동하는 것을 알 수 있습니다. 그러나 나는 이것이 잘 작동하는지 확신 할 수 없기 때문에 잘못된 것을했을 것입니다.

다음은 일단 web2py를 시작하면 내 터미널입니다. 매분마다 3 개의 모듈을 실행하고 싶습니다. 마지막 모듈은 앞서 설명한 튜토리얼의 모듈입니다. 여기

2012-10-18 16:50:00,060 - web2py.cron - DEBUG - hard cron invocation 
2012-10-18 16:50:00,060 - web2py.cron - DEBUG - WEB2PY CRON: Acquiring lock 
2012-10-18 16:50:00,061 - web2py.cron - INFO - WEB2PY CRON (hard): ircmessage executing *applications/ircmessage/modules/get_messages.py in /home/web2py/src/web2py at 2012-10-18 16:50:00.061575 
2012-10-18 16:50:00,062 - web2py.cron - INFO - WEB2PY CRON (hard): ircmessage executing **applications/ircmessage/modules/addline.py in /home/web2py/src/web2py at 2012-10-18 16:50:00.062092 
2012-10-18 16:50:00,065 - web2py.cron - INFO - WEB2PY CRON (hard): ircmessage executing **applications/ircmessage/modules/background_updater.py in /home/web2py/src/web2py at 2012-10-18 16:50:00.065794 
2012-10-18 16:50:00,069 - web2py.cron - DEBUG - WEB2PY CRON: Releasing cron lock 
2012-10-18 16:50:00,934 - web2py.cron - DEBUG - WEB2PY CRON Call returned success: 
>>> 
2012-10-18 16:50:00,938 - web2py.cron - DEBUG - WEB2PY CRON Call returned success: 
>>> 
2012-10-18 16:50:00,963 - web2py.cron - DEBUG - WEB2PY CRON Call returned success: 

내 crontab을이다 : 출력이 아래에 반영 될 수 있도록 나는 또한 튜토리얼 'logging.conf을 따랐다

#crontab 
0-59/1 * * * * root *applications/ircmessage/modules/get_messages.py 
0-59/1 * * * * root **applications/ircmessage/modules/addline.py 
0-59/1 * * * * root **applications/ircmessage/modules/background_updater.py 

간단한 addline.py 모듈을 간단히 살펴 :

#!/usr/bin/env python 
# coding: utf8 
from gluon import * 
from gluon.debug import dbg 

with open("text.txt", "a") as myfile: 
    myfile.write("appended text") 

dbg.set_trace() # stop here! ** 

**이 dbg.set_trace를 사용했음을 알 수 있습니다.이 추적은 관리자의 디버그 섹션에 나타나지 않습니다.

web2py의 새 버전으로 업데이트 한 후 cron 작업이 자동으로 시작되지 않는다는 것을 알았습니다. 그러나 나는 이것을 잘못 해석했을 수도 있습니다. 나는 다음과 같이 web2py를 시작한다.

./web2py.py -i xxx.xxx.xx.xx -p 8000 -c /etc/ssl/certs/my_cert_file.crt -k /etc/ssl/certs/my_cert_key.key -a apassword --run-cron 

가장 간단한 cron 작업을 수행하는 방법에 대한 조언은 크게 감사 할 것입니다. 또한 cron이 실제로 호출되는지 여부를 디버깅하는 방법에 대한 조언도 환영 할 것입니다. 실제로 일반적으로 조언은 매우 유용합니다.

시간과 제안에 감사드립니다.

답변

2

web2py 2.1.1 cron은 기본적으로 비활성화되어 있으므로 (우리는 스케줄러 사용을 권장하기 때문에). 활성화하려면 -Y 옵션이 필요합니다.

+0

감사합니다. 대신 스케줄러를 사용해 보겠습니다. –