Skip to content

Commit ffc9ad5

Browse files
c-dilkstongtongcao
authored andcommitted
fix: doubled log messages when SplitLogManager.configureHandlers is called twice (#1043)
Some classes call `SplitLogManager.configureHandlers` to make the prefix quieter, _e.g._, `DatabaseConstantProvider`; this was causing log messages to double. This PR fixes the issue, and adjusts the formatting a bit to be more consistent with the database classes' log messages.
1 parent 2d98241 commit ffc9ad5

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

common-tools/clas-logging/src/main/java/org/jlab/logging/SplitLogManager.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,15 @@ public static void configureHandlers(Logger logger, boolean includePrefix) {
4545

4646
// clear handlers
4747
logger.setUseParentHandlers(false);
48+
for(var handler : logger.getHandlers())
49+
logger.removeHandler(handler);
4850

4951
// log message formatting
5052
if(includePrefix)
5153
// "[source] level: message throwable_backtrace\n"
5254
System.setProperty(
5355
"java.util.logging.SimpleFormatter.format",
54-
"[" + logger.getName().replaceAll(".*\\.","") + "] %4$s: %5$s%6$s%n");
56+
"%4$s: [" + logger.getName().replaceAll(".*\\.","") + "] %5$s%6$s%n");
5557
else
5658
// "level: message throwable_backtrace\n"
5759
System.setProperty(

0 commit comments

Comments
 (0)