我正在使用Boto库与AWS对话。我想禁用日志记录。(或者重定向到/dev/null或其他文件)。我找不到一种显而易见的方法来做到这一点。我试过了,但似乎没什么用:
import boto
boto.set_file_logger('boto', 'logs/boto.log')这说明这是可能的,http://developer.amazonwebservices.com/connect/thread.jspa?messageID=52727췷,但据我所知,文档并没有说明是如何实现的。
发布于 2009-11-03 20:23:57
你可以试一试
import logging
logging.getLogger('boto').setLevel(logging.CRITICAL)这将抑制所有(除严重错误以外)错误。
Boto使用日志配置文件(例如/etc/boto.cfg、~/.boto),所以看看您是否可以根据需要对其进行配置。
set_file_logger调用只是在日志设置中添加了一个用户定义的文件,所以您不能用它来关闭日志。
发布于 2018-04-13 18:04:01
我将boto3的答案从评论(即charneykaye和gene_wood)中移至正确的答案:
import logging
logger = logging.getLogger()
logger.addHandler(logging.StreamHandler()) # Writes to console
logger.setLevel(logging.DEBUG)
logging.getLogger('boto3').setLevel(logging.CRITICAL)
logging.getLogger('botocore').setLevel(logging.CRITICAL)
logging.getLogger('s3transfer').setLevel(logging.CRITICAL)
logging.getLogger('urllib3').setLevel(logging.CRITICAL)
import boto3
s3 = boto3.resource('s3')
for bucket in s3.buckets.all():
print(bucket.name)要让所有的记录器都遵循response from leobarcellos
import logging
loggers_dict = logging.Logger.manager.loggerDict发布于 2016-03-24 01:00:22
更好的是,禁用boto的propagate:
import boto
boto.set_file_logger('boto', 'logs/boto.log')
logging.getLogger('boto').propagate = Falsehttps://stackoverflow.com/questions/1661275
复制相似问题