private void logProfiling(long start, Configuration config) { if (config.getBoolean(CoreProperties.PROFILING_LOG_PROPERTY).orElse(false)) { long duration = System.currentTimeMillis() - start; LOG.info("\n -------- Profiling for purge: " + TimeUtils.formatDuration(duration) + " --------\n"); profiler.dump(duration, LOG); LOG.info("\n -------- End of profiling for purge --------\n"); } } }
@Test public void no_profiling_when_property_is_false() { settings.setProperty(CoreProperties.PROFILING_LOG_PROPERTY, false); underTest.purge(mock(DbSession.class), mock(IdUuidPair.class), settings.asConfig(), emptyList()); verify(profiler, never()).dump(anyLong(), any()); }
@Test public void profiling_when_property_is_true() { settings.setProperty(CoreProperties.PROFILING_LOG_PROPERTY, true); underTest.purge(mock(DbSession.class), mock(IdUuidPair.class), settings.asConfig(), emptyList()); verify(profiler).dump(anyLong(), any()); }
@Test public void shouldProfilePurge() { profiler.start("foo"); clock.sleep(10); profiler.stop(); profiler.start("bar"); clock.sleep(5); profiler.stop(); profiler.start("foo"); clock.sleep(8); profiler.stop(); profiler.dump(50, logger); verify(logger).info(contains("foo: 18ms")); verify(logger).info(contains("bar: 5ms")); }
@Test public void shouldResetPurgeProfiling() { profiler.start("foo"); clock.sleep(10); profiler.stop(); profiler.reset(); profiler.start("bar"); clock.sleep(5); profiler.stop(); profiler.start("foo"); clock.sleep(8); profiler.stop(); profiler.dump(50, logger); verify(logger).info(contains("foo: 8ms")); verify(logger).info(contains("bar: 5ms")); }
private void logProfiling(long start, Configuration config) { if (config.getBoolean(CoreProperties.PROFILING_LOG_PROPERTY).orElse(false)) { long duration = System.currentTimeMillis() - start; LOG.info("\n -------- Profiling for purge: " + TimeUtils.formatDuration(duration) + " --------\n"); profiler.dump(duration, LOG); LOG.info("\n -------- End of profiling for purge --------\n"); } } }