2013-04-12 2 views
6

제품을 CSV 파일로 내보내는 magento 모듈을 만들었습니다. 이제 나는 매일 23.55에 cronjob을 운영하고 싶다. config.xml은 magento cronjob wiki로 작성되어 있습니다.magento cron job 및 cron_scheduler 테이블

내 코드 : 나는 또한 서버에서 cron 작업을 설정

<crontab> 
     <jobs> 
      <gcompany_runprofilescronjob> 
       <schedule> 
        <cron_expr>55 23 * * *</cron_expr> 
       </schedule> 
       <run> 
        <model>export/export_csv::runprofilescronjob</model> 
       </run> 
      </gcompany_runprofilescronjob> 
     </jobs> 
    </crontab> 

. cronjob을 실행하면 magento로 된 모든 cronjob은 데이터베이스 테이블 cron_schedule에 저장되지만 gcompany_runprofilescronjob에는 저장되지 않습니다.

<cron_expr>*/1 * * * *</cron_expr> 

내 cronjob를이 데이터베이스하지만 난 내 함수가 23.55 매일 실행되는 것을 싶어 ... 내가 원하지 않는 분마다 실행 기록한다 : 내가 예를 들어 서로 다른 간격을 설정합니다. 어떤 제안을 내가 잘못하고있는 거지?

+0

http://magento.stackexchange.com/ –

답변

4

내 첫 번째 단계는 Fabrizio Branca의 AOE Scheduler extension을 설치하는 것입니다. Fabrizio의 확장 기능에는 현재 Magento의 cron에 등록 된 모든 Cron 작업과 실행 일정이 표시되는 "목록보기"기능이 있습니다. 또한 브라우저에서 즉시 cron 작업을 실행할 수 있으며 (cron 작업 디버깅에 유용함) 작업을 즉시 실행하도록 예약 할 수도 있습니다.

cron 작업이 AOE Scheduler의 목록보기에 나타나지 않으면 cron 작업 구성에 문제가 있습니다. 구성 캐시를 지우고 Magento가 최신 변경 사항에 대한 config.xml을 구문 분석하는지 확인하십시오. XML 노드가 XML 문서의 계층 구조, 즉 <config> 노드 아래의 적절한 위치에 있다고 가정합니다.

cron 작업이 목록보기에 나타나고 여전히 실행되지 않으면 "일정 생성"기능을 사용하여 cron 예약 테이블을 재생성하십시오. 또한 AOE 스케줄러의 "지금 실행"기능을 사용하여 cron 작업을 수동으로 실행하여 오류나 예외를 확인하십시오.

+3

에 대한 도움을 얻을 수있는 가능성이 더 큽니다. 전체 모듈을 설치할 필요가 없습니다. shell/scheduler.php 스크립트를 설치의 쉘 폴더에 복사 할 수 있습니다. 그런 다음 명령 줄에서 실행하면 모든 기능을 사용할 수 있습니다. – SPRBRN

7

아주 오래된 질문이지만 정답은 게시되지 않으므로 다음 사람에게 맡기십시오.

Magento의 cron_schedule 테이블은에 을 실행하도록 예약 된 cron 작업으로 채워집니다. 테이블에서 크론 작업을 보지 못하는 이유는 하루에 한 번만 실행되기 때문입니다 (23:55). magento는 서버 크론 작업 구성 및 Magento의 cron 작업 설정에 따라 System > Configuration > System > Cron에이 cron 작업을 약 23:45에 cron_schedule 테이블에 추가합니다. Magento가 일정을 생성하는 빈도와 빈도를 정의하는 Generate Schedules EverySchedule Ahead for 설정을 기록하십시오.