记一次定时任务没有执行的原因

今天发现线上一台服务器某个定时任务没有执行,然后就纳闷了,线上服务器环境全部是用ansible统一部署的,其他服务器的定时任务都没有问题,然后就再想是否是这台服务器的crontab有问题了,于是在定时任务中编写如下所示:

*/1 * * * * sh **.sh >/tmp/out.log 2>&1

过了一分钟后cd /tmp查看日志,我的哥,显示脚本找不到的错误,然后仔细看了下,脚本名有问题,真是蛋疼,在此警示自己工作中一定要仔细再仔细,不容再犯如此低级的错误。

时间: 2024-10-08 04:37:37

记一次定时任务没有执行的原因的相关文章

crontab定时任务不执行的原因及查看任务执行情况

肯定有很多人与我一样,遇到过在本地调用脚本,能够正常执行,但写入crontab定时任务后,就会出现一部分执行,一部分不执行的问题.或者是同样的脚本,同样的定时任务,但在有些服务器上可以执行,有些却不行. 经查阅相关资料发现,crontab总是不会缺省的从用户profile文件中读取环境变量,也就是说,要么是环境变量的问题,要么就是路径的问题.解决办法如下: 1.所用命令使用绝对路径: 2.调用的脚本开头部分添加如下内容,以便读到用户的环境变量参数,解决环境变量的问题:  例:#!/bin/bas

Spring 定时任务重复执行的问题分析

背景:使用quartz时客户现场不知道为什么跑着跑着就停了,后来决定换成spring定时任务. 当使用spring定时任务时莫名奇妙的就是同一时间重复执行多次任务(通常情况下执行两次,有时候会达到3次).下面记录过程并逐一分析说明,供以后参考: 1.分析原因后发现是由ClassPathXmlApplicationContext导致 通过n多次试验发现: 当任务方法中不含任何业务逻辑时(如:只打印一些标志性的信息),任务能够正常执行,没有重复执行的现象: 当任务方法中包含业务逻辑,或应用程序执行别

cron-您的定时任务真的执行了吗

今日上午,生产环境怀疑某个cron定时任务没有执行,所以需要分析日志,详细过程如下,记录只为以后工作更加效率,笔者小白,请大神指点. 普及知识: cron是一种机制,crontab是指令        它可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制  1.取一段时间日志 语法:sed -n '/开始时间/,/结束时间/p' filename sed -n '/Sep 20 08:50:*/,/Sep 20 09:50:*/p' /var/log/

$.getJSON() 回调函数没有执行的原因

$.getJSON() 方法使用 AJAX 的 HTTP GET 请求获取 JSON 数据. 语法 $.getJSON(url,data,success(data,status,xhr)) url必填规定请求发送到那个url: data可选规定发送到服务器的数据: success可选data包含服务器返回的数据, status包含请求的状态,("success"."notmodified"."error"."timeout".

新房贷政策难执行真实原因:央行货币政策非万能

新房贷政策难执行真实原因:央行货币政策非万能 业内热评华夏时报[微博]2014-10-11 02:27 我要分享 9 段子永远没有现实精彩.有一人在驾校学习开车(非挖掘机技术),一次,教练给这人十元钱,让这个驾校学员去买包中华牌香烟,学员去路边店用十元买了一条中华和一条玉溪送教练.教练激动地说:“别人都得练三个月毕业,我只让你一个月就毕业了,还真舍不得你走.” 如果故事是真的,当然,买的是假烟.学员也可以不买假烟,可以:1.按市场价十元买来三根真的中华烟:2.买真的两包白沙烟:3.自己贴50多元

预发环境与生产环境共享数据库时定时任务重复执行问题解决

背景: 为保证预发环境的真实性,预发与生产环境往往共享数据库,在定时任务列表中,预发与生产环境都会从任务列表中获取定时任务,然后执行,这会导致定时任务会执行重复. 解决方法: 在job中增加一个环境变量字段,如test,stg,prod等,当创建任务的时候获取执行创建任务服务器的profile,根据profile插入到jod的上述字段中.定时任务执行时判断任务是否符合执行机器的profile,符合则执行,不符合则不执行. 具体可执行操作: 1.在tomcat或者启动脚本中加入vm参数,例如 -D

Linux定时任务没有执行的总结

昨天晚上让运维帮我更新上线了一个shell脚本,并添加到定时任务中准备凌晨12点06分执行,当我早上5点17醒来的时候,总感觉不对就去查邮件看看定时任务是否执行了,一看没有执行,然后直接远程到服务器,发现脚本执行只用了6秒,说明脚本是被调用了,那么就直接排除了缺少执行权限的问题,那到底是什么问题呢?随后又手动执行了一次,发现报错说脚本中有回车换行符,奇怪了,突然明白是windows和linux的编码格式不一样,马上用dos2unix对文件进行了转码,再执行,一切正常了,这点值得注意! 现在总结一

ORACEL创建存储过程和根据Oracle定时任务机制执行存储过程

oracle定时执行存储过程 --创建一个存储过程,每天定时执行,将满足条件的设备插入到pinpai_Report表中. CREATE OR REPLACE procedure prc_job_report is begin INSERT into pinpai_Report SELECT s.type, s.remark, G .GROUPID, s."CATEGORY" CATEGORY, s.DEVTYPE devtype, s.VENDOR vendor, SUM (CASE

集群环境下如何防止定时任务重复执行?

起因 最近做项目是遇到这样一个问题:系统需要在每天的16:00向一些符合特定条件的用户发送一份邮件,发送成功后修改掉数据库中对应数据的标志位.本来是没有问题的,但后来系统被部署到了集群环境下,导致每天会向这些用户发送多次同样的数据,遭到了客户的抱怨. 解决 下面来介绍一下处理这种问题的解决办法: 1.在数据库中建立tm_job_group表 Name Type Comments group_id number 组id interval number 时间间隔区分定时任务的间隔即多长时间内不可重复