diff --git a/common/src/main/java/bisq/common/app/Log.java b/common/src/main/java/bisq/common/app/Log.java index efef9ec0e3e..2879d35bf47 100644 --- a/common/src/main/java/bisq/common/app/Log.java +++ b/common/src/main/java/bisq/common/app/Log.java @@ -18,18 +18,22 @@ package bisq.common.app; import org.slf4j.LoggerFactory; +import org.slf4j.Marker; import ch.qos.logback.classic.Level; import ch.qos.logback.classic.Logger; import ch.qos.logback.classic.LoggerContext; import ch.qos.logback.classic.encoder.PatternLayoutEncoder; import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.classic.turbo.TurboFilter; import ch.qos.logback.core.rolling.FixedWindowRollingPolicy; import ch.qos.logback.core.rolling.RollingFileAppender; import ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy; +import ch.qos.logback.core.spi.FilterReply; import ch.qos.logback.core.util.FileSize; public class Log { + public static final String JAVA_FX_THREAD_NAME = "JavaFX Application Thread"; private static Logger logbackLogger; public static final Level DEFAULT_LOG_LEVEL = Level.INFO; @@ -74,4 +78,19 @@ public static void setup(String fileName) { public static void setCustomLogLevel(String pattern, Level logLevel) { ((Logger) LoggerFactory.getLogger(pattern)).setLevel(logLevel); } + + public static void filterByThreadName(String threadName) { + logbackLogger.getLoggerContext().addTurboFilter(new TurboFilter() { + @Override + public FilterReply decide(Marker marker, Logger logger, Level level, String format, + Object[] params, Throwable t) { + return threadName.equals(Thread.currentThread().getName()) ? + FilterReply.ACCEPT : FilterReply.DENY; + } + }); + } + + public static void clearFilters() { + logbackLogger.getLoggerContext().resetTurboFilterList(); + } } diff --git a/common/src/main/java/bisq/common/util/GcUtil.java b/common/src/main/java/bisq/common/util/GcUtil.java index 687c3970945..13c4acef1a4 100644 --- a/common/src/main/java/bisq/common/util/GcUtil.java +++ b/common/src/main/java/bisq/common/util/GcUtil.java @@ -64,10 +64,11 @@ private static void maybeReleaseMemory(long trigger) { long postGcMemory = Runtime.getRuntime().totalMemory(); long duration = System.currentTimeMillis() - ts; totalGCTime += duration; - log.info("GC reduced memory by {}. Total memory before/after: {}/{}. Took {} ms. Total GC invocations: {} / Total GC time {} sec", + log.info("GC reduced memory by {}. Total memory before/after: {}/{}. Free memory: {}. Took {} ms. Total GC invocations: {} / Total GC time {} sec", Utilities.readableFileSize(preGcMemory - postGcMemory), Utilities.readableFileSize(preGcMemory), Utilities.readableFileSize(postGcMemory), + Utilities.readableFileSize(Runtime.getRuntime().freeMemory()), duration, totalInvocations, totalGCTime / 1000d); diff --git a/desktop/src/main/java/bisq/desktop/components/chart/ChartView.java b/desktop/src/main/java/bisq/desktop/components/chart/ChartView.java index 98018b0fedf..5375d12e303 100644 --- a/desktop/src/main/java/bisq/desktop/components/chart/ChartView.java +++ b/desktop/src/main/java/bisq/desktop/components/chart/ChartView.java @@ -603,7 +603,7 @@ private void onTimelineChanged() { updateTimeLinePositions(); model.invalidateCache(); - applyDataAndUpdate(); //3 + applyDataAndUpdate(); } private void updateTimeLinePositions() {