• 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可以看到系统中创建了该定时任务。

  • 相关阅读:
    Day 15 模块
    Day 14 三元运算符,列表推导式,内置函数
    Day 13 可迭代对象,迭代器对象,for循环迭代,生成器对象,枚举对象
    Day 12 开放封闭原则,装饰器初识
    Day 11 函数对象,函数嵌套,作用域,闭包
    Day 10 函数的形参,实参
    Day 09 函数基础
    Day 08 文件操作模式,文件复制,游标
    HTTP协议
    11,.JS-DOM价绍
  • 原文地址:https://www.cnblogs.com/JeromeLong/p/13196006.html
Copyright © 2020-2023  润新知