2012-01-09 34 views
6

Tôi có ứng dụng Rails sử dụng MongoDb ở mặt sau. Tôi có các thông báo nói rằng MONGODB [WARNING] Please note that logging negatively impacts client-side performance. You should set your logging level no lower than :info in production trong nhật ký của mình. OK, tôi không bao giờ lo lắng về nó nhưng đã quyết định tìm kiếm nó ngay bây giờ.làm cách nào để đặt mức ghi nhật ký thành thông tin cho MongoDb?

This page on the mongo site không thực sự thảo luận mức độ ghi nhật ký, nhưng nó thảo luận -v so với -vvvv cho độ dài. Đó là điều tương tự như cấp độ đăng nhập? Như trong -vvvvv giống với cấp độ nhật ký gỡ lỗi và -v giống với cấp nhật ký lỗi? Các tài liệu không rõ ràng về chủ đề này.

Trả lời

1

Mức ghi nhật ký đề cập đến mức độ ghi nhật ký của đường ray trong khi cờ -v đề cập đến độ dài.

Đường ray tự động đặt mức ghi nhật ký cao hơn trong quá trình sản xuất so với khi đang phát triển, do đó bạn không nên lo lắng về điều gì.

+1

Tôi không chắc là vậy - tôi đã cập nhật OP. Thông báo cụ thể nói rằng nó từ MONGODB và có rất nhiều thông điệp Mongo trong nhật ký của tôi như 'MONGODB the_database ['users']. Tìm thấy ({: deleted_at => nil,: deleted => nil})'. Tôi tự hỏi nếu điều này đến từ Mongoid. – jcollum

+0

Có vẻ như đây là từ trình điều khiển Ruby ruby: http://api.mongodb.org/ruby/current/Mongo/Logging.html# (trong nguồn). – jcollum

+0

Ok là điều này trong sản xuất hay phát triển? –

6

Tôi đã có vấn đề với điều này trong các thử nghiệm của tôi, vì vậy tôi đã kết thúc cách làm như sau trong spec_helper.rb tôi:

Mongoid.logger.level = Logger::INFO 

Tuy nhiên, nếu bạn đang ở trong đường ray bạn nên có lẽ (chưa được kiểm tra) sử dụng để truy cập logger thay vì:

config.mongoid.logger 
+0

Đây chính xác là vấn đề của tôi, tôi đã có thông điệp tường trình bán phá giá để stdout khi chạy rspec với mongoid + sinatra. Cảm ơn! – radixhound

+0

Đây là liên kết đến [tài liệu hướng dẫn này] (http://mongoid.org/en/mongoid/docs/installation.html#logging) – toxaq

1

Nếu bạn đang sử dụng mongoid 2.2 hoặc cao hơn, bạn có thể đặt nó trong mongoid.yml:

production: 
    hosts: 
    ... 
    database: ... 
    logger: false 

Ngoài ra, điều này không có tác động hiệu suất. Khi tôi tắt đăng nhập mong muốn trong sản xuất, tôi thấy ít bộ sưu tập rác hơn và dung lượng bộ nhớ của ứng dụng nhỏ hơn khoảng 15 megabyte trong các thử nghiệm tải 30 phút sử dụng apachebench.

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