Linux中crontab日志配置

Posted Jerome12138

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中crontab日志配置相关的知识,希望对你有一定的参考价值。

crontab在/var/log/目录下没有cron.log文件

  1. 修改rsyslog文件:
    /etc/rsyslog.d/50-default.conf
    将 rsyslog 文件中的 #cron.* 前的 # 删掉;

  2. 重启rsyslog服务:
    service rsyslog restart

  3. 重启cron服务:  
    service cron restart

  4. 查看日志文件:
    tail -f /var/log/cron.log

django crontab定时执行任务

  1. 安装 pip install django-crontab

  2. 添加app名称到 settings.py中

    INSTALLED_APPS = (
    ‘django_crontab‘,#这个不是app的名字,必须要添加到前面,不能接着app后面添加,否则会报错
    ...
    )
    
  3. 接下来创建定时任务可以分成两种,一种是执行自定义的mange.py的命令,另一种是执行自定义函数。

    我选择的方法是自定义函数。

  4. 首先在原来的app 中(与view.py同级)新建一个cron.py (名字可以任意,其实也可以放在view.py中,新建文件方便管理。)

    def test():
    print (123)
    # 你要执行的任务函数
    
  5. 在 settings.py中的最后增加

    CRONJOBS = [
    (‘*/5 * * * *‘, ‘appname.cron.test‘,‘>>/home/test.log‘)
    ]
    如果你有多个定时任务,都放入CORJOBS中即可。
    
    • ‘/5 * * *’ 遵循的是crontab 语法。

    • ‘appname.cron.test’,这个appname就是你开发时加入到settings中的那个。因为你的cron.py文件就在这个下面,否则找不到路径。cron 就是你自己起的任务文件的名字。test就是执行的函数中的内容。

    • ‘>>/home/test.log’,通常会输出信息到一个文件中,就使用这个方法,注意的是‘>>’表示追加写入,’>’表示覆盖写入。

  6. 启动

    以上都完成后,需要执行
    python3 manage.py crontab add
    将任务添加并生效

    显示当前的定时任务
    python3 manage.py crontab show

    删除所有定时任务
    python3 manage.py crontab remove

  7. 重启django服务。

  8. 执行 crontab -e可以看到系统中创建了该定时任务。










以上是关于Linux中crontab日志配置的主要内容,如果未能解决你的问题,请参考以下文章

详述Linux计划任务的 at和crontab的命令 以及如何查看crontab日志

Linux crontab配置

Linux 设置定时任务 清空日志

linux中crontab定时任务导致磁盘满和云监控未报警的的坑

pg_cron crontab 日志

linux crontab 文件位置和日志位置