2009-11-02 29 views
28

Tôi đang sử dụng thư viện Boto để nói chuyện với AWS. Tôi muốn tắt ghi nhật ký. (Hoặc chuyển hướng đến/dev/null hoặc tệp khác). Tôi không thể tìm thấy một cách rõ ràng để làm điều này. Tôi đã thử điều này, nhưng điều đó dường như không giúp được gì.Tắt ghi nhật ký boto mà không sửa đổi các tệp boto

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

Điều này cho biết có thể, http://developer.amazonwebservices.com/connect/thread.jspa?messageID=52727&#52727 nhưng AFAIK tài liệu không cho biết cách thực hiện.

Trả lời

57

Bạn có thể thử

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

mà sẽ ngăn chặn tất cả (trừ QUAN TRỌNG) lỗi.

Boto sử dụng tệp cấu hình ghi nhật ký (ví dụ: /etc/boto.cfg, ~/.boto) để xem bạn có thể định cấu hình nó theo nhu cầu của bạn theo cách đó không.

Cuộc gọi set_file_logger chỉ cần thêm tệp do người dùng xác định vào thiết lập ghi nhật ký, vì vậy bạn không thể sử dụng tệp đó để tắt ghi nhật ký.

+0

Cảm ơn Vinay, mà làm việc! – rocketmonkeys

+0

Cảm ơn vì điều này. Đối với một số lý do tôi không thể có được các tập tin cấu hình boto để tắt đăng nhập. http://code.google.com/p/boto/issues/detail?id=476 – michela

+0

Trong cài đặt django, điều này giống như sau: '' 'LOGGING ['loggers']. ({ 'boto': { 'level': 'CRITICAL', } }) '' ' – dashesy

4

Hơn thế nữa, vô hiệu hóa propagate cho boto:

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

Tôi không chắc đây có phải là tính năng mới hay không, nhưng đây là câu trả lời được chấp nhận hiện nay. – kadrach

Các vấn đề liên quan