gpt4 book ai didi

python - Django:从批处理/cron 脚本记录

转载 作者:行者123 更新时间:2023-11-28 16:30:48 25 4
gpt4 key购买 nike

到目前为止,我们像这样运行 cronjobs:

@daily do_daily_magic > log/do_daily_magic.log

到目前为止我们还没有使用django的日志配置:

https://docs.djangoproject.com/en/1.8/topics/logging/

但是我想改成默认的django方式。

如何为 django 编写将所有日志输出到标准输出的批处理脚本?

最佳答案

如果您尝试从 Django 环境外部运行 Python 脚本,则需要获取 Django 路径的源代码以获取从 Django 中利用的库和方法。这可以做到,但有点脏。

您的 python 脚本需要从 Django 获取信息,例如:

import sys, os
sys.path.append('/path/to/your/django/app')
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
from django.conf import settings

你可能想关注这个:http://www.b-list.org/weblog/2007/sep/22/standalone-django-scripts/

用 python 代码写日志或输出比依赖标准输出更符合 pythonic。如果您采用这种方法,那么您的 cron 条目应该是

@daily do_daily_magic 2>&1 |记录器

这将获取所有 STDOUT 和 STDERR 并将其发送到记录器以被系统日志捕获(例如/var/log/sys.log)。由于您的 python 代码会将输出定向到它自己的文件,因此从 cron 条目中出来的唯一薄薄的内容将是调试消息或未定向到日志的错误,包括 cron、权限、异常等问题,并且是正确旋转)

关于python - Django:从批处理/cron 脚本记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32142724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com