@Override public Collection<String> getDynamicChildrenNames(EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) { Set<String> result = new HashSet<>(); org.hibernate.stat.Statistics stats = getBaseStatistics(entityManagerFactoryLookup.entityManagerFactory(pathAddress.getValue(HibernateStatistics.PROVIDER_LABEL))); if (stats != null) { String[] queries = stats.getQueries(); if (queries != null) { for (String query : queries) { result.add(QueryName.queryName(query).getDisplayName()); } } } return result; }
@Override public Collection<String> getDynamicChildrenNames(EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) { Set<String> result = new HashSet<>(); org.hibernate.stat.Statistics stats = getBaseStatistics(entityManagerFactoryLookup.entityManagerFactory(pathAddress.getValue(HibernateStatistics.PROVIDER_LABEL))); if (stats != null) { String[] queries = stats.getQueries(); if (queries != null) { for (String query : queries) { result.add(QueryName.queryName(query).getDisplayName()); } } } return result; }
@Override public Collection<String> getDynamicChildrenNames(EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) { Set<String> result = new HashSet<>(); org.hibernate.stat.Statistics stats = getBaseStatistics(entityManagerFactoryLookup.entityManagerFactory(pathAddress.getValue(HibernateStatistics.PROVIDER_LABEL))); if (stats != null) { String[] queries = stats.getQueries(); if (queries != null) { for (String query : queries) { result.add(QueryName.queryName(query).getDisplayName()); } } } return result; }
@Override public Collection<String> getDynamicChildrenNames(EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) { Set<String> result = new HashSet<>(); org.hibernate.stat.Statistics stats = getBaseStatistics(entityManagerFactoryLookup.entityManagerFactory(pathAddress.getValue(HibernateStatistics.PROVIDER_LABEL))); if (stats != null) { String[] queries = stats.getQueries(); if (queries != null) { for (String query : queries) { result.add(QueryName.queryName(query).getDisplayName()); } } } return result; }
@Override public Collection<String> getDynamicChildrenNames( EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) { Set<String> result = new HashSet<>(); org.hibernate.stat.Statistics stats = getBaseStatistics( entityManagerFactoryLookup.entityManagerFactory( pathAddress.getValue( HibernateStatistics.PROVIDER_LABEL ) ) ); if ( stats != null ) { String[] queries = stats.getQueries(); if ( queries != null ) { for ( String query : queries ) { result.add( QueryName.queryName( query ).getDisplayName() ); } } } return result; }
json.put("Queries", queryStats); String[] queries = statistics.getQueries(); for (String query : queries) { queryStats.put(query, statistics.getQueryStatistics(query));
@Override public Object invoke(Object... args) { String displayQueryName = getQueryName( args ); EntityManagerFactory entityManagerFactory = getEntityManagerFactory( args ); if ( displayQueryName != null && entityManagerFactory != null ) { SessionFactory sessionFactory = entityManagerFactory.unwrap( SessionFactory.class ); // convert displayed (transformed by QueryNames) query name to original query name if ( sessionFactory != null ) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if ( originalQueryNames != null ) { for ( String originalQueryName : originalQueryNames ) { if ( QueryName.queryName( originalQueryName ) .getDisplayName() .equals( displayQueryName ) ) { return originalQueryName; } } } } } return null; } };
@Override public Object invoke(Object... args) { String displayQueryName = getQueryName(args); EntityManagerFactory entityManagerFactory = getEntityManagerFactory(args); if (displayQueryName != null && entityManagerFactory != null) { SessionFactory sessionFactory = entityManagerFactory.unwrap(SessionFactory.class); // convert displayed (transformed by QueryNames) query name to original query name if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return originalQueryName; } } } } } return null; } };
@Override public Object invoke(Object... args) { String displayQueryName = getQueryName(args); EntityManagerFactory entityManagerFactory = getEntityManagerFactory(args); if (displayQueryName != null && entityManagerFactory != null) { SessionFactory sessionFactory = entityManagerFactory.unwrap(SessionFactory.class); // convert displayed (transformed by QueryNames) query name to original query name if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return originalQueryName; } } } } } return null; } };
@Override public Object invoke(Object... args) { String displayQueryName = getQueryName(args); EntityManagerFactory entityManagerFactory = getEntityManagerFactory(args); if (displayQueryName != null && entityManagerFactory != null) { HibernateEntityManagerFactory entityManagerFactoryImpl = (HibernateEntityManagerFactory) entityManagerFactory; SessionFactory sessionFactory = entityManagerFactoryImpl.getSessionFactory(); // convert displayed (transformed by QueryNames) query name to original query name if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return originalQueryName; } } } } } return null; } };
private org.hibernate.stat.QueryStatistics getStatistics( EntityManagerFactory entityManagerFactory, String displayQueryName) { if ( entityManagerFactory == null ) { return null; } SessionFactory sessionFactory = entityManagerFactory.unwrap( SessionFactory.class ); // convert displayed (transformed by QueryNames) query name to original query name to look up query statistics if ( sessionFactory != null ) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if ( originalQueryNames != null ) { for ( String originalQueryName : originalQueryNames ) { if ( QueryName.queryName( originalQueryName ).getDisplayName().equals( displayQueryName ) ) { return sessionFactory.getStatistics().getQueryStatistics( originalQueryName ); } } } } return null; }
private org.hibernate.stat.QueryStatistics getStatistics(EntityManagerFactory entityManagerFactory, String displayQueryName) { if (entityManagerFactory == null) { return null; } SessionFactory sessionFactory = entityManagerFactory.unwrap(SessionFactory.class); // convert displayed (transformed by QueryNames) query name to original query name to look up query statistics if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return sessionFactory.getStatistics().getQueryStatistics(originalQueryName); } } } } return null; }
private org.hibernate.stat.QueryStatistics getStatistics(EntityManagerFactory entityManagerFactory, String displayQueryName) { if (entityManagerFactory == null) { return null; } SessionFactory sessionFactory = entityManagerFactory.unwrap(SessionFactory.class); // convert displayed (transformed by QueryNames) query name to original query name to look up query statistics if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return sessionFactory.getStatistics().getQueryStatistics(originalQueryName); } } } } return null; }
private org.hibernate.stat.QueryStatistics getStatistics(EntityManagerFactory entityManagerFactory, String displayQueryName) { if (entityManagerFactory == null) { return null; } HibernateEntityManagerFactory entityManagerFactoryImpl = (HibernateEntityManagerFactory) entityManagerFactory; SessionFactory sessionFactory = entityManagerFactoryImpl.getSessionFactory(); // convert displayed (transformed by QueryNames) query name to original query name to look up query statistics if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return sessionFactory.getStatistics().getQueryStatistics(originalQueryName); } } } } return null; }
private org.hibernate.stat.QueryStatistics getStatistics(EntityManagerFactory entityManagerFactory, String displayQueryName) { if (entityManagerFactory == null) { return null; } HibernateEntityManagerFactory entityManagerFactoryImpl = (HibernateEntityManagerFactory) entityManagerFactory; SessionFactory sessionFactory = entityManagerFactoryImpl.getSessionFactory(); // convert displayed (transformed by QueryNames) query name to original query name to look up query statistics if (sessionFactory != null) { String[] originalQueryNames = sessionFactory.getStatistics().getQueries(); if (originalQueryNames != null) { for (String originalQueryName : originalQueryNames) { if (QueryName.queryName(originalQueryName).getDisplayName().equals(displayQueryName)) { return sessionFactory.getStatistics().getQueryStatistics(originalQueryName); } } } } return null; }
@Test public void testFiltersAreApplied() { doInHibernate( this::sessionFactory, session -> { session.enableFilter( "ID" ).setParameter( "id", 3L ); List result = session.createQuery( "from Customer order by id" ).list(); assertFalse( result.isEmpty() ); Customer customer = (Customer) result.get( 0 ); assertSame( customer.getCustomerId(), 3L ); assertSame( customer.getOrders().size(), 2 ); SessionStatistics statistics = session.getStatistics(); assertSame( statistics.getEntityCount(), 9 ); Statistics sfStatistics = session.getSessionFactory().getStatistics(); assertSame( sfStatistics.getCollectionFetchCount(), 1L ); assertSame( sfStatistics.getQueries().length, 1 ); } ); }
private void addMetricsForQuery(PerQuerySamples samples, ValueProviderPerQuery provider) { for (Entry<String, SessionFactory> entry : sessionFactories.entrySet()) { SessionFactory sessionFactory = entry.getValue(); Statistics stats = sessionFactory.getStatistics(); String unitName = entry.getKey(); for (String query : stats.getQueries()) { samples.addMetric(Arrays.asList(unitName, query), provider.getValue(stats, query)); } } }
/** * {@inheritDoc} * * @see net.sf.ehcache.hibernate.management.api.HibernateStats#getQueryStats() */ public TabularData getQueryStats() { List<CompositeData> result = new ArrayList<CompositeData>(); Statistics statistics = getStatistics(); for (String query : statistics.getQueries()) { QueryStats queryStats = new QueryStats(query, statistics.getQueryStatistics(query)); result.add(queryStats.toCompositeData()); } TabularData td = QueryStats.newTabularDataInstance(); td.putAll(result.toArray(new CompositeData[result.size()])); return td; }
/** * Convenience method to print out the hibernate cache usage stats to the log */ private void showUsageStatistics() { if (sessionFactory.getStatistics().isStatisticsEnabled()) { log.debug("Getting query statistics: "); Statistics stats = sessionFactory.getStatistics(); for (String query : stats.getQueries()) { log.info("QUERY: " + query); QueryStatistics qstats = stats.getQueryStatistics(query); log.info("Cache Hit Count : " + qstats.getCacheHitCount()); log.info("Cache Miss Count: " + qstats.getCacheMissCount()); log.info("Cache Put Count : " + qstats.getCachePutCount()); log.info("Execution Count : " + qstats.getExecutionCount()); log.info("Average time : " + qstats.getExecutionAvgTime()); log.info("Row Count : " + qstats.getExecutionRowCount()); } } }
@Override public Collection<String> getDynamicChildrenNames(EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) { Set<String> result = new HashSet<String>(); String[] queries = getBaseStatistics(entityManagerFactoryLookup.entityManagerFactory(pathAddress.getValue(HibernateStatistics.PROVIDER_LABEL))).getQueries(); if (queries != null) { for (String query : queries) { result.add(QueryName.queryName(query).getDisplayName()); } } return result; }