我有多个远程Celery工作人员的设置。在通过apply_async启动任务的主程序中,我需要连续访问stdout的活动远程工作者。
是否可以仅使用Celery API?
答案 0 :(得分:1)
我认为你应该设置SysLogHandler。 CELERY_REDIRECT_STDOUTS和CELERY_REDIRECT_STDOUTS_LEVEL默认使用当前记录器。
您可以尝试示例(在远程servert上):
import logging from logging.handlers import SysLogHandler logger = logging.getLogger() logger.setLevel(logging.INFO) # host is your server that used for the log syslog = SysLogHandler(address=(host, port)) formatter = logging.Formatter('%(name)s: %(levelname)s %(message)s') syslog.setFormatter(formatter) logger.addHandler(syslog) # check it logger.info("Test test")