2024-04-28 21:05:36 发布
网友
我正在使用Boto库与AWS对话。我想禁用日志记录。(或重定向到/dev/null或其他文件)。我找不到明显的方法来做这件事。我试过了,但似乎没用。
import boto boto.set_file_logger('boto', 'logs/boto.log')
这说明这是可能的,http://developer.amazonwebservices.com/connect/thread.jspa?messageID=52727췷但是文档并没有说明如何实现。
更好的方法是,对boto禁用propagate:
propagate
import boto boto.set_file_logger('boto', 'logs/boto.log') logging.getLogger('boto').propagate = False
你可以试试
import logging logging.getLogger('boto').setLevel(logging.CRITICAL)
它将抑制所有(除了关键)错误。
Boto使用日志配置文件(例如/etc/boto.cfg,~/.boto),所以看看您是否可以这样配置它。
/etc/boto.cfg
~/.boto
set_file_logger调用只是将一个用户定义的文件添加到日志记录设置中,因此不能使用它来关闭日志记录。
set_file_logger
我把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
更好的方法是,对boto禁用
propagate
:你可以试试
它将抑制所有(除了关键)错误。
Boto使用日志配置文件(例如
/etc/boto.cfg
,~/.boto
),所以看看您是否可以这样配置它。set_file_logger
调用只是将一个用户定义的文件添加到日志记录设置中,因此不能使用它来关闭日志记录。我把boto3的答案从评论(即charneykaye和gene_wood)移到正确的答案:
要让所有的伐木工人遵循response from leobarcellos:
相关问题 更多 >
编程相关推荐