记一次Laravel 定时任务schedul:run未执行的处理
关于Laravel的任务调度(定时任务)的配置在此不做赘述,跟着官方文档一步一步的操作是不会导致定时任务不能正常工作的。
为保证能及时捕获定时任务执行出现异常的原因,只需在配置系统crontab时指定日志文件即可。在执行中出现的任何问题都将会记录在你指定(任意区域,需注意权限)的日志当中。这对于寻找问题原因来说,是极为方便的。
* * * * * cd /path-to-your-project && php artisan schedule:run >> 你的日志文件位置.log 2>&1
以上定时任务确是每分钟执行一次,因此无论成功失败,你都会在你指定的日志中看见最新的输出信息。可使用以下指令查看日志中的输出:
tail -f 你的日志文件位置
以上,就能帮助你很快的捕捉到为何你的Laravel定时任务未执行的原因。除此之外,有一个建议是:在将你的定时任务部署到机器上之前,你应该先通过:
php artisan schedual:run
命令来运行一下你的任务,这样可以在开发阶段就能将大部分的问题都处理掉。当然前提是,调用的任务是每分钟执行的,否则的话,该命令只有在符合你所定义的时间间隔时才会去执行你的任务。
最后,提及一个我自己遇到的问题。若你使用root账户创建了定时任务,则无需在定时任务脚本中加入root账户名称。如下:
* * * * * root cd /path-to-your-project && php artisan schedule:run >> 你的日志文件位置.log 2>&1
在我的ubuntu机器上,这样做直接会报错:
/bin/sh:root:command not found
接原因是使用root账户创建crontab定时任务后,该定时任务文件就保存在了/var/spool/cron/root中,因此无需再指定root账户。
文中难免有疏漏,若存在,烦请责正!
PS:以上文中所有指令均为手打,在此不对指令拼写的正确性与各平台的适用性做任何保证。若出现相关问题,烦请自行bing。
记一次Laravel 定时任务schedul:run未执行的处理的更多相关文章
- Laravel 定时任务 任务调度 可手动执行
1.创建一个命令 php artisan make:command TestCommand 执行成功后会提示: Console command created successfully. 生成了一个新 ...
- 记一次Laravel定时任务导致日志没有写入权限的坑
问题:用laravel开发定时任务时,发生了日志没有写入权限导致项目打不开的问题 原因:linux的添加定时任务时默认是当前登录用户,我定时任务会生成日志 crontab: kernel: 生成日志的 ...
- laravel定时任务
原文链接:https://github.com/liebig/cron 感觉Cron只是帮你将很多需要定时执行的任务都归结在一个方法中,并且各自设定不同的时间,比较统一方便,但是在外部还是需要操作li ...
- 记一次ElasticSearch重启之后shard未分配问题的解决
记一次ElasticSearch重启之后shard未分配问题的解决 环境 ElasticSearch6.3.2,三节点集群 Ubuntu16.04 一个名为user的索引,索引配置为:3 primar ...
- flock防止crontab脚本周期内未执行完重复执行(转)
如果某脚本要运行30分钟,可以在Crontab里把脚本间隔设为至少一小时来避免冲突.而比较糟的情况是可能该脚本在执行周期内没有完成,接着第二个脚本又开始运行了.如何确保只有一个脚本实例运行呢?一个好用 ...
- 如何让linux定时任务crontab按秒执行
如何让linux定时任务crontab按秒执行? linux定时任务crontab最小执行时间单位为分钟如果想以秒为单位执行,应该如何设置呢?思路 正常情况是在crontab中直接定义要执行的任务,现 ...
- jsp中一个标签两种方式绑定两个click事件导致未执行的问题
近日,在开发过程中,写了一个标签 <li id="a1" onclick="doSomething()">...</li> 在js页面中 ...
- Oracle 11g 安装过程中“检查网络配置要求 未执行”解决方法
正在检查网络配置要求... 检查完成.此次检查的总体结果为: 未执行 网上查了一下,很多朋友都遇到这个问题而无从下手,其实解决起来很容易的. 只需要在 Windows XP 中安装 Microsoft ...
- Erlang的gen_server的terminate()/2未执行
官方资料参考: Module:terminate(Reason, State) Types: Reason = normal | shutdown | {shutdown,term()} | term ...
随机推荐
- 03-CSS颜色、文本、字体、边框、背景
# Css颜色,文本字体 ## css颜色表示法1.颜色名表示,比如:red 红色,gold 金色 2.16进制数值表示,比如:#ff0000 表示红色,这种可以简写成 #f00 3.RGB颜色: 红 ...
- nginx入门(一)
什么是nginx? nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5 ...
- zTree根节点默认打开
1.在生成tree的json数据中,直接给出:open:true的属性; 2.treeObj.expandAll(true); 3.var zTree = $.fn.zTree.getZTreeObj ...
- 有用的2个 Windows 下批处理文件(bat文件):
创建多个文件夹(目录): 新建一个记事本:win + R –>输入notepad 在笔记本中输入如下: mkdir Would mkdir you mkdir marry mkdir me 另存 ...
- ubuntu下载地址
http://mirrors.aliyun.com/ubuntu-releases/16.04/
- open, creat - 用来 打开和创建 一个 文件或设备
SYNOPSIS 总览 #includ e <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int o ...
- Sql Server 显示插入Identity字段
先像下面这样写 SET IDENTITY_INSERT [表名] ON ...INSERT INTO ... 别忘了在插入完数据后再执行下面的语句 SET IDENTITY_INSERT [表 ...
- 随笔3 HashMap<K,V>
equals.hashcode和==的区别 在介绍HashMap之前,我想先阐述一下我对这三者的理解,equals这个方法呢,就是在判断是否为同一对象(注意,这里的同一对象和相同的内存地址是不同的), ...
- python学习笔记(二十):异常处理
def calc(a,b): res=a/b return res def main(): money=input('输入多少钱:') months=input('还几个月:') try: res=c ...
- codeforces 848B - Rooter's Song(构造+几何)
原题链接:http://codeforces.com/problemset/problem/848/B 题意:好多个人分别从x,y轴不同位置不同时间往垂直坐标轴方向移动,一旦相遇他们转向,问所有人的到 ...