Need to add DEBUG/INFO/WARN/FATAL specific logging in the new driver.
Generic Operation Logging.
Events fired for each.
Hooks for Instrumentation (New Relic).
DEBUG:
- Query with RTT
- Command with RTT
- Map/Reduce with RTT
- Aggregation with RTT
- Bulk Delete with RTT
- Bulk Insert with RTT
- Bulk Update with RTT
- List Collections with RTT
- List indexes with RTT
- Get More with RTT
- Insert with RTT
- Update with RTT
- Delete with RTT
- Create User with RTT
- Remove User with RTT
- Ensure Index with RTT
- Drop Index with RTT
- Insert file into GridFS with RTT
- Find file in GridFS with RTT
- Remove file in GridFS with RTT
INFO:
- Server added to cluster.
- Connection added to pool.
WARN:
- Server description change.
- Server removed from cluster.
FATAL (do we even want fatal logging or should we be raising exceptions for all?)