2013-12-10 30 views
7

Używam następujące polecenia:Python Seler - Pracownik ignorując loglevel INFO

seler pracownik -l informacji -A django_app --concurrency = 10 --autoreload

Ale DEBUG kłód nadal wylewanie, to samo dotyczy przypadku korzystania -l warning i --logfile

enter image description here


Każdy pomysł, dlaczego Seler będzie ignorował ustawienia dziennika?


Dalsze szczegóły:

dzienników pochodzą z Python biblioteki suds który wysyła do rejestratora za pomocą debugowania.

+0

Możliwy duplikat [Django Seler Logging Best Practice] (http://stackoverflow.com/questions/13366312/django-celery-logging-best-practice) –

Odpowiedz

5

miałem ten sam problem i zdecyduję się na dostosowanie poziomu logowania wewnątrz settings.py:

LOGGING['loggers']['celery'] = { 
           'handlers': ['console', <etc>], 
           'level': <LEVEL_YOU_WANT>, 
           'propagate': True, 
           } 

również zdecyduję się wyłączyć niektóre "nie ciekawe" kłody:

LOGGING['loggers']['celery.redirected'] = { 
              'handlers': ['console', <etc>], 
              'level': <LEVEL_YOU_WANT>, 
              'propagate': False, 
              } 
for i in ['worker', 'concurrency', 'beat']: 
    LOGGING['loggers']['celery.' + i] = { 
           'handlers': [], 
           'level': 'WARNING', 
           'propagate': True, 
           } 
for i in ['job', 'consumer', 'mediator', 'control', 'bootsteps']: 
    LOGGING['loggers']['celery.worker.' + i] = { 
           'handlers': [], 
           'level': 'WARNING', 
           'propagate': True, 
           } 

Spowoduje to pozwolić zobacz tylko logi z twoich zadań, a nie "maszyny" Celery'ego.