我使用Python Celery并使用memdump()获得转储的打印内容。但是,我试图将内存转储到一个变量中,以便稍后打印,甚至在日志记录中也可以。有可能吗?
谢谢!
答案 0 :(得分:1)
是的,如果您查看the source for celery.utils.debug.memdump
,它将使用一个file
参数。这个file
参数几乎可以作为file
参数传递给print
的任何数据类型,包括我们方便的朋友io.StringIO
:
from celery.utils.debug import memdump
from io import StringIO
import logging
log = logging.getLogger(__name__)
buffer = StringIO()
memdump(file=buffer)
log.info('memory dump: %s', buffer.getvalue())