botoファイルを変更せずのbotoロギングを無効にします
-
12-09-2019 - |
質問
私はAWSに話を後のBotoライブラリを使用しています。私は、ログを無効にしたいです。 (または/ dev / nullまたは他のファイルにリダイレクト)。私はこれを行うには明白な方法を見つける傾けます。私はこれを試してみましたが、それは助けていないようです。
import boto
boto.set_file_logger('boto', 'logs/boto.log')
このは、それが可能であると言い、
解決
あなたが試みることができる。
import logging
logging.getLogger('boto').setLevel(logging.CRITICAL)
はエラー(CRITICAL除く)全てを抑制します。
後のBotoは、ロギング構成ファイル(例えば/etc/boto.cfg
、~/.boto
)を使用していますので、あなたのニーズにそのようにそれを設定することができるかどうかを確認ます。
set_file_logger
コールは、単にあなたがログオフ回すためにそれを使用することはできませんので、ログの設定をユーザー定義ファイルを追加します。
他のヒント
私は、適切な答えにコメント(つまりcharneykayeとgene_wood)からboto3の答えを移動します:
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)
取得するには、すべてのロガーはleobarcellosするからの応答に従ってください>
import logging
loggers_dict = logging.Logger.manager.loggerDict
いっそのこと、のbotoためpropagate
を無効にします:
import boto
boto.set_file_logger('boto', 'logs/boto.log')
logging.getLogger('boto').propagate = False
所属していません StackOverflow