系统环境:

SUSE Linux Enterprise Server 10 SP1 (x86_64)

问题背景:

由于线上系统环境下的crontab内容比较多,在进行日常crontab任务调度时,经常会异常挂掉而影响业务的正常使用,因此结合C和Shell写了一个简单的对crontab进行健康检测的功能。

处理思路:修改syslog的配置参数,把crontab调度日志单独抽取出来,同时在crontab项里添加检测标记,通过后台守护进程定期检测状态标记来判断当前crontab调度是否正常,同时为了避免日志文件过大而影响性能,会定期对日志文件做切割和清理处理。

#--------------------------------------------------------------------------------------------------------------------------------------------

1、相关目录创建

# mkdir -p /data/logs/crontab

# mkdir -p /data/scripts

# mkdir -p /data/backup/crontab

#--------------------------------------------------------------------------------------------------------------------------------------------

2、crontab健康检测C代码

#cd /data/scripts

# vim check_cron_process.h

#vim check_cron_process.c

#vim Makefile

#make

#/data/scripts/check_cron_process

#--------------------------------------------------------------------------------------------------------------------------------------------

3、crontab任务调度日志配置【新增】

# vim /etc/syslog.conf

#vim /etc/syslog-ng/syslog-ng.conf

#/sbin/service syslog restart

#--------------------------------------------------------------------------------------------------------------------------------------------

4、crontab任务调度日志处理

(1)、日志切割与清理

# vim/data/scripts/cut_cron_log.sh

(2)、crontab信息备份

#vim /data/scripts/backup_crontab.sh

(3)、crontab垃圾头信息清理

# vim /data/scripts/clean_crontab_trash.sh

(4)、crontab设置

#crontab -e

## crontab日志切割与清理

00 00 * * * /data/scripts/cut_cron_log.sh >/dev/null 2>&1

## 运行状况检测标记

*/1 * * * * cd /usr/local; echo >/dev/null 2>&1

## crontab信息备份

30 08 * * * /data/scripts/backup_crontab.sh >/dev/null 2>&1

## crontab垃圾头信息清理

*/30 * * * * /data/scripts/clean_crontab_trash.sh >/dev/null 2>&1

检查linux的crontab服务,crontab任务调度健康检测相关推荐

  1. nacos的服务注册以及健康检测机制

    namespace:为了可以使nacos上注册的服务和添加的配置实现环境隔离,比如测试环境和生产环境,nacos上可以添加对应的namespace用于区分不同的环境,只有在相同namespace下的服 ...

  2. 服务应用监控健康检测

    问:24台服务器如果其中有一台服务器的tomcat挂了,你是怎么监控的 答:负载均衡器做healthcheck,自动移除  转载于:https://www.cnblogs.com/rainy-shur ...

  3. .net core consul 服务配置 服务发现 服务健康检测 服务变更加载

    准备环境 安装consul之后 1. 创建一个.net core webapi 举例为UsercenterService 2. nuget引用Consul组件  https://github.com/ ...

  4. Nacos源码主动健康检测

    对于非临时实例(ephemeral=false),Nacos会采用主动的健康检测,定时向实例发送请求,根据响应来判断实例健康状态. 入口在ServiceManager类中的registerInstan ...

  5. crontab服务启动 停止 重启(linux 定时任务)

    crontab 服务 启动 停止 重启 crontab 服务用于执行 linux 定时任务. 重启服务命令: service crond restart启动服务命令: service crond st ...

  6. linux中写crontab脚本,Linux中crond服务与crontab用法

    需要写个在Linux下定时更新系统的脚本,man crondtab 不甚详细,现将网络上的介绍列举如下: crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cr ...

  7. Linux之计划任务服务crontab

    Linux之计划任务服务crontab Linux中的计划任务:crontab Windows中计划任务 Linux中的计划任务 crontab -e命令:计划任务的编辑 计划任务权限 Linux中的 ...

  8. linux查看crontab服务执行日志

    查看crontab服务执行日志 cat /var/log/cron

  9. Linux: 系统配置 crond 和 crontab(有图有代码有真相!!!)

    1.相关概述 linux下工作调度的种类有:at  ,  cron 一种是例行性的,就是每隔一定的周期来办某事. 一种是突发性的,就是做完这一次没有以后. crontab这个命令所设置的工作将会一直循 ...

最新文章

  1. CentOS学习笔记 - 4. 修改端口和禁止root登录
  2. 每天一道LeetCode-----寻找地增序列中第一个大于等于目标元素的位置
  3. 2015年四级计算机网络课程,2015年计算机四级网络工程师考试辅导:网络互连技术...
  4. web前端模块化开发_真正的模块化Web应用程序:为什么没有开发标准?
  5. (转)Spring Boot(五):Spring Boot Jpa 的使用
  6. PYTHON博客记录0602
  7. php能做什么程序,PHP 能做什么?
  8. linux 内存性能评估,linux的内存性能评估
  9. SQLServer2008安装教程
  10. tomcat 启动编码设置(UTF-8,乱码)
  11. 系统论重要模型_笔记
  12. 湖南大学计算机博士好考吗,湖南大学最年轻的副教授是什么水平
  13. 苹果、微软、谷歌三巨头联手,“杀死”密码
  14. Xshell 6 免费版下载及设置教程
  15. 名片制作:25款现代名片设计实例及模板
  16. nodejs无法下载puppeteer附带的chromium解决方案
  17. 秒杀抢红包的思考和总结
  18. 【Python】Numpy数组的切片、索引详解:取数组的特定行列
  19. Liv555简单移植
  20. matlab中的graythresh函数的实例

热门文章

  1. GenePix Pro 3.0
  2. 用ISA Server做***路由代替专线
  3. 低脂肪肉能帮你减肥吗?
  4. 模拟生态圈_电源工程师必备求生技能——经典20种模拟电路
  5. java:二分法查找
  6. rmi远程代码执行漏洞_微软 Windows DNS Server 远程代码执行漏洞
  7. 小程序采用mvvm设计模式_滴滴重磅开源跨平台统一 MVVM 框架 Chameleon
  8. 信息学奥赛一本通(1263:【例9.7】友好城市)
  9. Likecloud-吃、吃、吃(洛谷-P1508)
  10. 9 CO配置-控制-成本中心会计-在成本控制范围激活成本中心会计核算