2016-10-10 14 views
1

기본 로깅 수준을 변경하는 것으로 보이는 모듈 (특히 maya의 pymel.core)에 문제가 있습니다. pymel을 가져올 때 갑자기 사용하는 모듈의 모든 다른 로거가 디버그하도록 설정되어보고 싶지 않은로드를 분출하기 시작합니다. pymel이 로깅 모듈의 기본 로깅 수준을 변경하는 것처럼 보입니다. 그러나 나는 어디 있는지 잘 모르겠습니다. 로깅 문서를 살펴 봤는데 이전 버전으로 되돌릴 방법을 모르겠습니다. 개별 로거에서 수준을 설정하는 방법 만 볼 수 있습니다.파이썬에서 기본 로깅 수준 설정

누구나 기본 로깅 수준을 전환 할 수있는 방법을 제안 할 수 있습니까?

>>> import logging 
>>> logging.getLogger().getEffectiveLevel() 
30 
>>> import pymel.core 
>>> logging.getLogger().getEffectiveLevel() 
0 
내가 그렇게 내 모든 로거 다시 그들이 로깅 모듈의 기본에서이 수준을 상속 할 때 전에 얼마나을하고, 어떻게 든 다시 30이 기본 레벨을 설정할 수 있도록하고 싶습니다

. 로깅 모듈이 어떻게 작동하는지 오해한다면 사과 할 것입니다.

+0

'logging.getLogger(). setLevel (logging.WARNING)'? 어쨌든 패키지가 로깅 구성에 문제가있는 것처럼 보입니다. – Bakuriu

+0

'logging.getLogger(). level = logging.WARNING'을 통해 pymel을 가져온 후에 로거 레벨을 재설정 할 수 있습니다. 수정 프로그램에 대한 [pull request] (https://github.com/LumaPictures/pymel/pull/377)가 공개되어 있으므로 병합을 요청할 수 있습니다. – MisterMiyagi

답변

1

특히 pymel을 모르지만 로깅과 관련하여 잘 작동하지 않는 것 같습니다. 시도해 볼 수 있습니다 :

그러나 이로 인해 원하지 않는 모든 메시지가 출력되지 않을 수도 있습니다. 위의 내용을 조정하여 실제로 찾은 내용에 맞게 조정할 수 있습니다.

0

site-packages 디렉토리의 pymel 하위 폴더에 Maya 설치 파일에 pymel.conf이라는 파일이 있습니다. 기본 로깅 모듈의 동일한 구성 파일 시스템을 사용하여 pymel의 다른 부분에 대한 로그 설정을 제어합니다.