我正在運行一個執行函數的Celery任務。該功能生成一些日誌信息。使用get_task_logger記錄器,我可以將記錄信息打印到Celery stdout。芹菜日誌記錄:記錄任務內外的一致方式
from celery.utils.log import get_task_logger
logger = get_task_logger(__name__)
def my_func_called_inside_a_task():
logger.debug("SOME OUTPUT HERE")
不過,我也想導入該功能作爲一個正常的Python腳本(不使用芹菜),並登錄到,例如,標準輸出。通常情況下,我可能會做一些這樣的:
import logging
logger = logging.getLogger(__name__)
def my_func_called_inside_a_task():
logger.debug("SOME OUTPUT HERE")
如何結合這兩種方法,所以我沒有做一些多餘像下面?
import logging
from celery.utils.log import get_task_logger
logger = logging.getLogger(__name__)
logger_celery = get_task_logger(__name__)
def my_func_called_inside_a_task():
logger.debug("SOME OUTPUT HERE")
logger_celery.debug("SOME OUTPUT HERE")
摘要: 如果我把從芹菜任務的功能,我想它登錄到芹菜工人標準輸出。如果我從普通的Python提示符調用函數,它將使用普通的Python記錄器。任何幫助深表感謝。
[芹菜中使用Python標準日誌]中可能重複(http://stackoverflow.com/questions/6940987/use-python-standard-logging-in-celery) – scytale