2
Python logging tutorial은 서식을 지정하지 않는 방법에 대해서는 배울 점을 언급하지 않고 자습서의 범위를 벗어난다 고 말합니다.파이썬의 로깅 모듈에 현대 문자열 포맷 옵션을 사용하는 방법은 무엇입니까?
나는 등 debug()
, info()
, 최근
Python logging tutorial은 서식을 지정하지 않는 방법에 대해서는 배울 점을 언급하지 않고 자습서의 범위를 벗어난다 고 말합니다.파이썬의 로깅 모듈에 현대 문자열 포맷 옵션을 사용하는 방법은 무엇입니까?
나는 등 debug()
, info()
, 최근
, 나는 너무 그 찾고 있던 나를 로깅 호출에 서식 .format()
스타일의 메시지를 사용할 수있는 예/문서를 부탁드립니다. 나는 SO에 대한 해결책을 지적했다고 생각하지만, 최종 URL 만 가지고있다.
# http://plumberjack.blogspot.de/2010/10/supporting-alternative-formatting.html
class BraceMessage(object):
def __init__(self, fmt, *args, **kwargs):
self.fmt = fmt
self.args = args
self.kwargs = kwargs
def __str__(self):
return self.fmt.format(*self.args, **self.kwargs)
_F = BraceMessage
는 다음과 같이 사용할 수 있습니다 : 이것은 내가 무엇을
logger.debug(_F("foo {0} {quux}", bar, quux=baz))
성능을 많이 잃지 않도록 서식은 메시지가 평가되는 바로 그 순간에 일어날 것이다
로그 레벨이 사용 불가능한 경우. 위의 스 니펫을 작성한 사람은이 패키지 (및 다른 유틸리티)를 패키지로 사용할 수있게했습니다 : logutils
.