在celery中使用logging記錄日誌

2021-08-30 08:41:59 字數 1131 閱讀 1219

由於專案需要日誌檔案的功能,又由於專案中有用到celery模組,所以就看了看celery的用法,然後研究了一下如何在celery中記錄日誌。

如圖:這是我的專案的目錄,proj是專案名,celery.py檔案是celery的一些基本配置,比如你要使用的中介軟體是什麼,用的是哪台電腦的中介軟體。

比如我是用的redis,連線的是本地的伺服器。

from __future__ import absolute_import, unicode_literals

from celery import celery

broker='redis://localhost',

backend='redis://localhost',

include=['proj.tasks'])

result_expires=3600,

)if __name__ == '__main__':

tasks.py檔案就是要執行的任務

from __future__ import absolute_import, unicode_literals

from celery.utils.log import get_task_logger

from proj import config

def add(x, y):

logger.info("1111111")

return x + y

def mul(x, y):

return x * y

def xsum(numbers):

return sum(numbers)

config.py檔案就是有關日誌的配置了,不懂得可以去看看這篇文章 

具體得配置如下:

import logging.config

log_config =

},'handlers': ,

},'loggers':

}}logging.config.dictconfig(log_config)

在django中使用 配置 celery

通俗來說,celery是python的乙個非同步佇列伺服器。在我們日常web應用中,當請求乙個後端介面的時候,都是等待該介面的業務完成後再返回。那麼如果這個介面執行的任務很漫長,就可能造成服務阻塞甚至http請求超時。那麼如果web介面要執行很長時間的任務,又要保證即時給前端響應,就可以將很耗時間的...

在django中使用celery非同步任務和定時任務

在django中使用 celery django版本 1.9.8 pip install django celery redis要指定版本,預設的 3.x版本有問題 pip uninstall redis pip install redis 2.10.6 建立django的 並配置執行起來,作為 c...

在django專案中使用celery非同步傳送郵件

一 在專案虛擬環境中安裝celery和redis 在tasks.py中新增如下 from celery import celery from django.conf import settings from django.core.mail import send mail django環境初始化 ...