class OnesnooperServer::Stores::MongodbStore

MongoDB-based store for production deployments and dynamic document structure.

Constants

MONGO_COLL_NAME

constant collection name

Public Class Methods

new(params = {}) click to toggle source
Calls superclass method OnesnooperServer::Store::new
# File lib/onesnooper_server/stores/mongodb_store.rb, line 10
def initialize(params = {})
  super
  @db_conn = ::Mongo::MongoClient.new(params[:host], params[:port])
  @db_active_db = @db_conn.db(params[:database])
  @db_coll = @db_active_db.create_collection(MONGO_COLL_NAME)
end

Public Instance Methods

save!(timestamp, data) click to toggle source
# File lib/onesnooper_server/stores/mongodb_store.rb, line 17
def save!(timestamp, data)
  ::OnesnooperServer::Log.debug "[#{self.class.name}] Saving #{timestamp.to_s} => #{data.inspect}"
  data['TIMESTAMP'] = timestamp.to_time.utc
  @db_coll.insert data
end