Я пытаюсь использовать сельдерей и ритм сельдерея для запуска запланированного задания по обработке данных из базы данных, но когда я пытаюсь запустить задание, я получаю эту ошибку "django .db.utils.OperationalError: FATAL: роли "танака" не существует ". Код для запланированной задачи показан ниже
settings.py
CELERY_BEAT_SCHEDULE = {
'task-number-one': {
'task': 'loans.tasks.update_loan_book',
'schedule': 60,
},
}
tasks.py
@shared_task
def update_loan_book():
tenants = Tenant.objects.all()
for tenant in tenants:
#logic to update tenant object
Код работает, когда я запускаю задачу, используя " celery -A proj worker -l info -B "команда, но не работает, когда я демонизирую сельдерей и ритм сельдерея. Файлы конфигурации для сельдерея и сельдерея показаны ниже. Я использую supervisord.
[program:projworker]
command=/home/tanaka/microfinance/bin/celery -A cloud_based_microfinance worker -l info
directory=/home/tanaka/Repositories/microfinance_project
user=tanaka
numprocs=1
stdout_logfile=/var/log/celery/proj_worker.log
stderr_logfile=/var/log/celery/proj_worker.log
autostart=true
autorestart=true
startsecs=10
stopwaitsecs = 600
killasgroup=truepriority=998
[program:projbeat]
command=/home/tanaka/microfinance/bin/celery -A cloud_based_microfinance beat -l info
directory=/home/tanaka/Repositories/microfinance_project
user=tanaka
numprocs=1
stdout_logfile=/var/log/celery/proj_beat.log
stderr_logfile=/var/log/celery/proj_beat.log
autostart=true
autorestart=true
startsecs=10
priority=999
Когда я пытаюсь запустить задачу в качестве демона, я получаю «django .db.utils.OperationalError: FATAL: роль« tanaka »не существует» в proj_worker .log файл.