def save(self, data, *args, **kwargs):
        """
        inserts data (dict or list of dicts)
        expected kwargs:
            collection_name: by default uses MONGODB_DEFAULT_COLLECTION
            w: by default set to 0 to disable write acknowledgement
        assumes that data has been verified / validated
        """
        try:
            collection_name = kwargs.get('collection_name',
                                         MONGODB_DEFAULT_COLLECTION)
            w = kwargs.get('w', 0)

            if not self.collection:
                self.set_collection(collection_name)

            self.collection.insert(data, w)
        except (ConnectionFailure, AutoReconnect, InvalidURI), e:
            # fail silently - just log and die ...
            if ADD_LOG_FAILURES:
                logging.exception(
                    'Error connection to %s, unable to insert %s' % (
                        MONGODB_URI, data))