-
Notifications
You must be signed in to change notification settings - Fork 478
Implement lifecycle logging #1316
Description
Following the lifecycle of certain events in Accumulo via documented logical loggers would be really nice. For example it would be nice to be able to follow the lifecycle of a write ahead log across the master, tserver, and GC using a logger name like org.apache.accumulo.log.wal that does not correspond to any class. These logical loggers could be documented in the Accumulo user manual, like Fluo does.
Could have life cycle logging for the following events to start with
- Write ahead logs
- Tablet events (like assignment, loading, compaction, scan, update, unload, recovery, etc). All tablet events could be logged under
org.apache.accumulo.log.tablet. Something like scan could be logged underorg.apache.accumulo.log.tablet.scanat trace allowing a user to turn on trace scanning for scans only. - FATE operations like bulk import could log everything related to bulk import in client, master, and tserver under
org.apache.accumulo.log.bulk.
One way to implement this would be to create class with static methods for each life-cycle we want to log. For example all logging of tablet lifecycle events would be done in a single class via static methods. The advantage of this approach is that it brings all of the logging together in one place in the code which will lead to more consistent log messages.
Most existing log messages should not follow this approach.