2009-11-02 6 views
28

Boto 라이브러리를 사용하여 AWS와 대화하고 있습니다. 로깅을 비활성화하고 싶습니다. (또는/dev/null 또는 다른 파일로 리디렉션). 나는 이것을 할 분명한 방법을 찾지 못한다. 나는 이것을 시도했지만 도움이되지 않는다.boto 파일을 수정하지 않고 boto 로깅을 비활성화하십시오.

import boto 
boto.set_file_logger('boto', 'logs/boto.log') 

http://developer.amazonwebservices.com/connect/thread.jspa?messageID=52727&#52727, 그것은 가능하다라고하지만 AFAIK 문서는 방법을 알려 나던.

답변

57

당신은 오류 (CRITICAL 제외)을 모두 억제 할

import logging 
logging.getLogger('boto').setLevel(logging.CRITICAL) 

을 시도 할 수 있습니다.

Boto는 로깅 구성 파일 (예 : /etc/boto.cfg, ~/.boto)을 사용하므로 필요에 맞게 구성 할 수 있는지 확인하십시오.

set_file_logger 호출은 단순히 로깅 설정에 사용자 정의 파일을 추가하기 때문에 호출을 사용하지 않도록 설정할 수 없습니다.

+0

감사 인 Vinay, 그 일을! – rocketmonkeys

+0

감사합니다. 웬일인지 로깅을 끄기 위해 boto 설정 파일을 얻을 수 없습니다. http://code.google.com/p/boto/issues/detail?id=476 – michela

+0

django 설정에서 이것은 다음과 같습니다 :'''LOGGING [ 'loggers']. update ({ 'boto': { 'level': 'CRITICAL', } }''' – dashesy

4

더 나은 아직, BOTO에 대한 propagate을 해제 :

import boto 
boto.set_file_logger('boto', 'logs/boto.log') 
logging.getLogger('boto').propagate = False 
+1

이것이 새로운 기능인지 여부는 잘 모르겠지만 요즘에는 이것이 허용 된 대답이어야합니다. – kadrach

관련 문제