我在EC2上将python和节点脚本设置为cron作业。 python脚本运行但节点脚本不运行。从命令行手动激活时,节点脚本运行正常。这是一个简单的脚本,可以找出今天是假日,然后将boolian答案放入名为isHoliday.csv的文件中。
到目前为止我已尝试过:
我看到日志文件在sudo cron中名为holiday_script.log,在cron.d文件中名为holiday.log,但两个日志文件都没有创建。
holiday.js文件中的代码:
// Check if it is a holiday, t/f
var holidayChecker = require('usa-holidays');
var date = new Date();
var holidayObj = holidayChecker.make(date);
var isHoliday = !holidayObj.isBusinessDay();
// put the answer into a file so it can be read by python crons
var fs = require('fs');
fs.writeFile("/home/ec2-user/stack/isHoliday.csv", isHoliday, function(err) {
if(err) {
return console.log(err);
}
});
答案 0 :(得分:1)
我不知道确切的解决方案,但您可以通过移动到其他目录来查看您的cron日志。首次登录EC2时,请执行两次:cd ..
这将带你到两个目录。然后你需要像这样将用户切换到sudo:sudo su
然后转到var / log文件夹。应该有一个名为“cron”的文件。由于您将crons设置为*****,因此该文件应该每秒填充数据。通过键入:tail -f cron
来尾随它。这样你就可以看到crons实时执行了。
此外,“邮件”通知:导航到该文件夹并使用less
来阅读邮件。该文件将有更多线索。使用向下箭头向下滚动。
这不是答案,但它会帮助你前进一点。