2013-09-26 3 views
1

Мне интересно, как правильно использовать временные настройки в django и сельдерее.Правильные временные установки в Django для сельдерея

Вот что у меня есть:

TIME_ZONE = 'Europe/Oslo' 
CELERY_TIMEZONE = 'Europe/Oslo' 
CELERY_ENABLE_UTC = True 

USE_TZ = True 
TZINFO = 'UTC' 

Но метка времени на моей сельдерея задачи опережает на два часа. Как я могу это исправить?

Использование:
Джанго - 1.6b2
сельдерей - 3.0.23
Джанго-сельдерей - 3.0.23

+0

Какую версию сельдерея вы используете? –

+0

Обновленный вопрос с версиями. –

+0

Используете ли вы базу данных результатов DBango Celery Django, которая позволяет просматривать статус задачи в администраторе Django? –

ответ

0

Я думаю, вы могли бы ударить ошибку в Джанго-сельдерее, что я также работаю в , В последних выпусках django-celery произошли изменения, связанные с часовым поясом, и эта ошибка впервые появилась для меня, когда я обновлялся с 3.0.19 до 3.0.23.

Я спросил об этом в #celery IRC чате, и мне сказали, что задача задания на сельдерей на основе django не слишком велика, и я должен использовать что-то вроде Flower (https://github.com/mher/flower) для контроля моих задач.

Я установил и запустил Цветок, и он не страдал от тех же проблем с меткой, что и у администратора, основанного на django-celery.

1

Вы можете использовать переменную среды по умолчанию TZ. Django автоматически будет использовать его с вызовом: http://docs.python.org/2/library/time.html#time.tzset Если ваш сельдерей работает от django, он тоже будет работать.

Кроме того, вы можете использовать что-то вроде:

os.environ [ 'TZ'] = 'вашего часового пояса'

в начале (manage.py или wsgi.py) в вашей локальной установке.

Смежные вопросы