@After public void printReport() { reporter.report(); reporter.stop(); }
@After public void printReport() { reporter.report(); reporter.stop(); }
@After public void printMetricsBeforeShutdown() { //stop the log reporter and print the last report reporter.stop(); reporter.report(); }
@After public void tearDown() throws Exception { reporter.stop(); reporter.report(); if(writeExecutor != null && !writeExecutor.isShutdown()){ writeExecutor.shutdownNow(); writeExecutor.awaitTermination(5000, TimeUnit.MILLISECONDS); } if(deleteExecutor != null && !deleteExecutor.isShutdown()){ deleteExecutor.shutdownNow(); deleteExecutor.awaitTermination(5000, TimeUnit.MILLISECONDS); } Thread.sleep(3000); }
@Override public void report() { reporter.report(); } }
public void logMetrics() { reporter.report(); }
public void logMetrics(final Map<String, Timer> stats) { final SortedMap<String, Timer> m = new TreeMap<String, Timer>(); m.putAll(stats); this.reporter.report(EMPTY_GUAGES, EMPTY_COUNTERS, EMPTY_HISTOGRAMS, EMPTY_METERS, m); }
public void generate() { logReporter.report(); } }
public void report(Logger logger) { getReporter(logger).report(); }
public void report(Logger logger) { getReporter(logger).report(); }
private void test(DataSource dataSource) throws SQLException { for (int i = 0; i < callCount; i++) { long startNanos = System.nanoTime(); try (Connection connection = dataSource.getConnection()) { } timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); } logReporter.report(); }
public void reportToLog() { logger.info("-- BEGIN METRICS DETAIL --"); Slf4jReporter reporter = Slf4jReporter.forRegistry(ActivityMetrics.getMetricRegistry()) .convertDurationsTo(TimeUnit.MICROSECONDS) .convertRatesTo(TimeUnit.SECONDS) .filter(MetricFilter.ALL) .outputTo(logger) .build(); reporter.report(); logger.info("-- END METRICS DETAIL --"); }
protected void compileQueries( Function<EntityManager, Query> query1, Function<EntityManager, Query> query2) { LOGGER.info("Warming up"); doInJPA(entityManager -> { for (int i = 0; i < 10000; i++) { query1.apply(entityManager); query2.apply(entityManager); } }); LOGGER.info("Compile queries for plan cache size {}", planCacheMaxSize); doInJPA(entityManager -> { for (int i = 0; i < 2500; i++) { long startNanos = System.nanoTime(); query1.apply(entityManager); timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); startNanos = System.nanoTime(); query2.apply(entityManager); timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); } }); logReporter.report(); }
public void testInternal(String sql) { doInJDBC(connection -> { for (int i = 0; i < runCount(); i++) { try (PreparedStatement statement = connection.prepareStatement( sql )) { statement.execute(); long startNanos = System.nanoTime(); ResultSet resultSet = statement.getResultSet(); while (resultSet.next()) { Object[] values = new Object[resultSet.getMetaData().getColumnCount()]; for (int j = 0; j < values.length; j++) { values[j] = resultSet.getObject(j + 1); } } timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); } catch (SQLException e) { fail(e.getMessage()); } } }); LOGGER.info("{} Result Set statement {}", dataSourceProvider().database(), sql); logReporter.report(); }
@Test @Ignore public void testIdentifierGenerator() throws InterruptedException, ExecutionException { LOGGER.debug("testIdentifierGenerator, database: {}, entityProvider: {}, threadCount: {}", dataSourceProvider.database(), entityProvider.getClass().getSimpleName(), threadCount); //warming-up doInJPA(entityManager -> { for (int i = 0; i < insertCount * executionCount; i++) { entityManager.persist(entityProvider.newPost()); } }); List<Worker> workers = new ArrayList<>(threadCount); for (int i = 0; i < threadCount; i++) { workers.add(new Worker()); } List<Future<Boolean>> futures = executorService.invokeAll(workers); for(Future<Boolean> future : futures) { future.get(); } logReporter.report(); }
public void testInternal(int resultSetType, int resultSetConcurrency) { doInJDBC(connection -> { for (int i = 0; i < runCount(); i++) { long startNanos = System.nanoTime(); try (PreparedStatement statement = connection.prepareStatement( SELECT_ALL , resultSetType, resultSetConcurrency)) { statement.execute(); ResultSet resultSet = statement.getResultSet(); while (resultSet.next()) { Object[] values = new Object[resultSet.getMetaData().getColumnCount()]; for (int j = 0; j < values.length; j++) { values[j] = resultSet.getObject(j + 1); } } timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); } catch (SQLException e) { fail(e.getMessage()); } } }); LOGGER.info("{} Result Set Type {} and Concurrency {}", dataSourceProvider().database(), resultSetType == ResultSet.TYPE_FORWARD_ONLY ? "ResultSet.TYPE_FORWARD_ONLY" : "ResultSet.TYPE_SCROLL_SENSITIVE", resultSetConcurrency == ResultSet.CONCUR_READ_ONLY ? "ResultSet.CONCUR_READ_ONLY" : "ResultSet.CONCUR_UPDATABLE"); logReporter.report(); }
@Test @Ignore public void testIdentifierGenerator() throws InterruptedException, ExecutionException { LOGGER.debug("testIdentifierGenerator, database: {}, entityProvider: {}", dataSourceProvider.database(), entityProvider.getClass().getSimpleName()); //warming-up doInJPA(entityManager -> { for (int i = 0; i < insertCount; i++) { entityManager.persist(entityProvider.newPost()); } }); doInJPA(entityManager -> { for (int i = 0; i < executionCount; i++) { for (int j = 0; j < insertCount; j++) { long startNanos = System.nanoTime(); entityManager.persist(entityProvider.newPost()); timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); } entityManager.flush(); entityManager.clear(); } }); logReporter.report(); sleep(100); }
@Test @Ignore public void testReadOnlyFetchPerformance() { //warming-up doInJPA(entityManager -> { for (long i = 0; i < 10000; i++) { Post post = entityManager.find(Post.class, i % insertCount); //PostDetails details = entityManager.find(PostDetails.class, i); assertNotNull(post); } }); doInJPA(entityManager -> { long startNanos = System.nanoTime(); for (long i = 0; i < insertCount; i++) { Post post = entityManager.find(Post.class, i); //PostDetails details = entityManager.find(PostDetails.class, i); } timer.update(System.nanoTime() - startNanos, TimeUnit.NANOSECONDS); }); logReporter.report(); }
@Test @Ignore public void test() { int rank = 3; int iterations = 25; for (int i = 0; i < iterations; i++) { for (long postId = 0; postId < postCount; postId++) { List<PostCommentScore> result = postCommentScores(postId, rank); assertNotNull(result); } } logReporter.report(); }
@Test @Ignore public void test() { int rank = 3; for (long postId = 0; postId < postCount; postId++) { List<PostCommentScore> result = postCommentScores(postId, rank); assertNotNull(result); } logReporter.report(); }