我正在尝试覆盖python lambda中的默认日志记录格式。关注了此blog post 简而言之,在我的lambda函数中执行此操作似乎很简单:
LOGGER = logging.getLogger()
HANDLER = LOGGER.handlers[0]
HANDLER.setFormatter(logging.Formatter(“[%(asctime)s] %(levelname)s:%(name)s:%(message)s”,“%Y-%m-%d %H:%M:%S”))
但是执行它时,我的LOGGER.handlers
中没有处理程序。因此,覆盖失败。
我尝试用自己的格式化程序添加新的StreamHandler
:
LOGGER = Logger.factory(name)
sh = logging.StreamHandler()
sh.setFormatter(JSONFormatter())
LOGGER.add_handler(sh)
那行得通,但是我尝试记录的每一行都有两条相同的日志行。我的自定义StreamHandler
及其格式程序中的一项,以及默认的lambda格式化行中的一项。
看来最后我有两个处理程序。
我的问题是,我应该在哪里覆盖日志记录处理程序的格式-lambda何时添加其自己的处理程序?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。