'Called by the field as it saves.'

def at_update(self, obj, fieldname):

    to_delete = []
    if ((obj in self.monitors) and (fieldname in self.monitors[obj])):
        for (idstring, (callback, persistent, kwargs)) in self.monitors[obj][fieldname].iteritems():
            try:
                callback(obj=obj, fieldname=fieldname, **kwargs)
            except Exception:
                to_delete.append((obj, fieldname, idstring))
                logger.log_trace('Monitor    callback    was    removed.')
    for (obj, fieldname, idstring) in to_delete:
        del self.monitors[obj][fieldname][idstring]
