Watching the oplog is probably your best bet, as mentioned in this question.
- Get notification for changed documents in mongodb
- Replication Internals - includes a bunch of detail on the oplog
If you're using mongoskin
you can try a variant on this example from their wiki:
skin = require "mongoskin"
db = skin.db "localhost:27017/local"
#Cursor on oplog (a capped collection) which maintains a history for replication
#oplog can be used only when replication is enabled
# Use oplog.rs instead of oplog.$main if you are using replica set
oplog = db.collection "oplog.$main"
cursor = oplog.find({'ns': "icanvc.projects"},{tailable: yes, awaitData: yes})
#Using cursor.nextObject will be slow
cursor.each (err, log)->
console.error err if err
console.log log if not err