# Adapted from https://github.com/le0pard/mongodb_logger module MongoRequestLogger module Adapters class Base attr_reader :configuration, :connection, :connection_type, :collection, :authenticated def collection_name options[:collection] || 'server_log' end # Capsize in bytes def capsize options[:capsize] * 1024 * 1024 end def authenticated? @authenticated end def check_for_collection # setup the capped collection if it doesn't already exist create_collection unless @connection.collection_names.include?(collection_name) @collection = @connection[collection_name] end def reset_collection if @connection && @collection @collection.drop create_collection end end def reconnect end def collection_stats_hash(stats) { :is_capped => (stats["capped"] && ([1, true].include?(stats["capped"]))), :count => stats["count"].to_i, :size => stats["size"].to_f, :storageSize => stats["storageSize"].to_f, :collection => collection_name } end def create_collection raise "Not implemented" end end end end