1

the issue I am facing is that order emails not working on my magento store. I installed AOE scheduler but I am getting this issue

No heartbeat task found. Check if cron is configured correctly.

Though I have set the settings on cpanel enter image description here

and AOE scheduler settings on magento enter image description here

I am getting this email every second

Available actions: 
    --action listAllCodes
    --action lastRun --code <code> [--secondsFromNow]   Get the timestamp of the last successful run of a job for a given code
    --action scheduleNow --code <code>  Schedule a job to be executed as soon as possible
    --action runNow --code <code> [--tryLock] [--force]         Run a job directly
    --action wait [--timout <timeout=60>]               Active wait until no schedules are running.
    --action flushSchedules --mode (future|all)         Flush schedules.
    --action listAllRunningSchedules
    --action killAll
    --action watchdog
    --action cron --mode (always|default) [--includeJobs <comma separated list of jobs>] [--excludeJobs <comma separated list of jobs>] [--includeGroups <comma separated list of groups>] [--excludeGroups <comma separated list of groups>]

I am stuck I dont know how to resolve this issue, please help

1
  • First I would change "Heartbeat task schedule (cron syntax)" to 0 * * * * to not get spammed :)
    – sv3n
    Jul 24, 2017 at 0:29

3 Answers 3

2

I suggest changing the settings "Generate Schedules Every" and "Schedule Ahead For" back to their defaults

Generate Schedules Every 15
Schedule Ahead For 20

Also the first line calling cron.php is not needed if you have the other two.

According to a similar sounding issue on the Magento forum here what Vaishal recommended above (changing your PATH to include the path to the php binary sounds like a good approach).

I suggest trying out these commands from a command prompt fist via SSH if you can to make sure it works first. And then enter it into the cron configuration.

export PATH="$PATH:/usr/local/bin:/usr/bin:/bin" && /bin/bash /path/to/scheduler_cron.sh --mode always

Overall it sounds like what you are using is correct however due to some restrictions placed upon you by your hosting company this is not working. So would suggest getting in touch with your hosting company's technical support to understand where the command line parameters are not passed along correctly.

1
  • Can you guide me, where I want to set my PATH variable? Feb 27, 2019 at 13:18
1

Looks like PATH variable is set somehow different in jailshelled cron environment. So I suppose different php binary is used. You can ssh to your cPanel account and set PATH in your crontab.

So crontab should start like:

SHELL=/bin/sh
PATH=/usr/local/jdk/bin:/usr/local/bin:/usr/bin:/opt/cpanel/composer/bin:/usr/local/bin:/usr/X11R6/bin:/home/username/.local/bin:/home/username/bin
1

You can set direct root > cron.php file for cron.

Secondly, you can use an extension SMTP Pro Email. There is an option to send email without any queue. Extension link is below.

SMTP Pro Extension to send email without queue(without cron)

enter image description here

2
  • I have used this extension SMTP Pro Extension to send email without queue(without cron), still not working Jul 24, 2017 at 7:48
  • did you have check it by seting cron.php for cron through capnel. Jul 24, 2017 at 8:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.