首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁用boto日志而不修改boto文件

禁用boto日志而不修改boto文件
EN

Stack Overflow用户
提问于 2009-11-02 21:15:49
回答 8查看 30.6K关注 0票数 61

我正在使用Boto库与AWS对话。我想禁用日志记录。(或者重定向到/dev/null或其他文件)。我找不到一种显而易见的方法来做到这一点。我试过了,但似乎没什么用:

代码语言:javascript
复制
import boto
boto.set_file_logger('boto', 'logs/boto.log')

这说明这是可能的,http://developer.amazonwebservices.com/connect/thread.jspa?messageID=52727췷,但据我所知,文档并没有说明是如何实现的。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-11-03 20:23:57

你可以试一试

代码语言:javascript
复制
import logging
logging.getLogger('boto').setLevel(logging.CRITICAL)

这将抑制所有(除严重错误以外)错误。

Boto使用日志配置文件(例如/etc/boto.cfg~/.boto),所以看看您是否可以根据需要对其进行配置。

set_file_logger调用只是在日志设置中添加了一个用户定义的文件,所以您不能用它来关闭日志。

票数 97
EN

Stack Overflow用户

发布于 2018-04-13 18:04:01

我将boto3的答案从评论(即charneykaye和gene_wood)中移至正确的答案:

代码语言:javascript
复制
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

代码语言:javascript
复制
import logging
loggers_dict = logging.Logger.manager.loggerDict
票数 42
EN

Stack Overflow用户

发布于 2016-03-24 01:00:22

更好的是,禁用boto的propagate

代码语言:javascript
复制
import boto
boto.set_file_logger('boto', 'logs/boto.log')
logging.getLogger('boto').propagate = False
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1661275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档