Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python的异步日志记录_Python_Logging - Fatal编程技术网

使用Python的异步日志记录

使用Python的异步日志记录,python,logging,Python,Logging,我需要以异步方式登录。但是我犯了一个错误。如何修复此错误 运行时警告:从未等待协同路由“asy_log” asy_日志(“警告消息”、“错误源1”、“警告”) RuntimeWarning:启用tracemalloc以获取对象分配回溯 代码:- import asyncio import logging import sys logger = logging.getLogger("asyncio") logger.setLevel(logging.INFO) forma

我需要以异步方式登录。但是我犯了一个错误。如何修复此错误


运行时警告:从未等待协同路由“asy_log”

asy_日志(“警告消息”、“错误源1”、“警告”)

RuntimeWarning:启用tracemalloc以获取对象分配回溯

代码:-

import asyncio
import logging
import sys

logger = logging.getLogger("asyncio")
logger.setLevel(logging.INFO)

formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')

streamhandler = logging.StreamHandler(stream=sys.stdout)
streamhandler.setLevel(logging.INFO)
streamhandler.setFormatter(formatter)

logger.addHandler(streamhandler)

filehandler = logging.FileHandler('test3.log')
filehandler.setLevel(logging.INFO)
filehandler.setFormatter(formatter)

logger.addHandler(filehandler)

async def asy_log(self, logtext=None, logsource = None, logcriticality= None):
    
    loginfo = logsource + logtext
    await getattr(logger, logcriticality)(loginfo)

    loop = asyncio.get_event_loop()
    loop.run_until_complete(asy_log())
    loop.close()


asy_log("Warning message", "Errorsource1", 'warning')


尝试在代码中使用这一行

await asyncio.sleep(delay)
这将产生一点延迟,并帮助记录器以更好的方式工作。

我已经尝试过“等待asyncio.sleep(延迟)”。但同样的错误。