Added detailed trace logging for FATE #1316#1527
Conversation
|
@keith-turner do you think this invalidates the need for #1249? I have been looking into this ticket and working to create a dedicated Fate logger with standardized output for each operation. |
I don't think it does. I think materializing the goal and status info into a human readable form would still be useful. Could possibly store that info in FATE properties. Also, the work in the PR is extremely low level and very verbose. I suspect no one would turn this on w/o a good reason. |
|
@keith-turner Ok thanks! I will continue to look into the ticket. Where are the FATE properties to which you refer? |
@jmark99 I was thinking of the following. Maybe could do something like |
|
@keith-turner thanks for the reference |
core/src/main/java/org/apache/accumulo/core/logging/FateLogger.java
Outdated
Show resolved
Hide resolved
server/master/src/main/java/org/apache/accumulo/master/tableOps/TraceRepo.java
Show resolved
Hide resolved
phrocker
left a comment
There was a problem hiding this comment.
I added some minor comments. The changes look good on the whole. Feel free to take note of them and make changes or ignore them. I'm not particularly tied to them so +1 is warranted.
ctubbsii
left a comment
There was a problem hiding this comment.
Looks fine to me. I'm curious about investigating the workaround you adopted for Gson serialization of Repo objects, to see if there's a better solution, but moving it to Master seems fine to me if it works there.
|
Oh @keith-turner , you should probably test with log4j2 configuration files, since those changes were already merged and your description above mentions the old log4j1 files. |
This change add detailed trace logging for FATE. To enable this add the following to
log4j-service.propertiesThe following is logging output when trace is enabled for create table FATE transaction.
The following is for rename table
The following is for delete table.
Seeing this output makes me wish we stored FATE Repos in Zookeeper as JSon instead of using java serialization because whats in ZK would be human readable.