Команда Crontab Django Management вроде бы запускается, но ничего не происходит

Я определил команду управления django, которая импортирует некоторые данные в базу данных моего приложения. Я запускаю ее с помощью кронтаба. Примечание: все находится внутри контейнера docker. Эта команда отлично работает, когда я использую ее вручную в оболочке моего контейнера. Однако, когда crontab пытается запустить ее, ничего не происходит.

Моя строка crontab следующая :

* * * * * nice -n 19 /usr/local/bin/python3 /code/manage.py my_command "a string argument for my command" # a comment to find the cron easily

(Я поместил свой код в /code, потому что в то время это казалось хорошей идеей)

Я знаю, что crontab вызывает мою команду, потому что /var/log/syslog отображается при ее выполнении. Я не могу понять причину, по которой ничего не происходит.

В качестве теста в методе "handle" моей команды я написал print("handling command") в качестве первой строки, а затем добавил >> /code/cron.log в конце моей строки crontab. Текст не появился в файле.

Есть идеи?

Что остановило выполнение cron, так это то, что я запустил команду в subprocess.Popen, которая не использовала абсолютные пути. Поэтому Popen (который я не поместил внутрь try... except) разбился при вызове с небольшими переменными окружения cron.

Я бы не подумал искать там, потому что эта часть кода была вызвана из моего метода AppConfig.ready.

Надеюсь, это может кому-то помочь, пожалуйста, скажите мне, если вы думаете, что я должен удалить это сообщение, я сделаю это, когда получу уведомление.

Вернуться на верх