List of usage examples for org.hibernate.stat Statistics getQueries
String[] getQueries();
From source file:com.francetelecom.clara.cloud.scalability.helper.StatisticsHelper.java
License:Apache License
/** * Log the current statistics/* w w w.j ava2 s . c o m*/ * * @param stats hibernate statistics */ public static void logStats(Statistics stats) { logger.info("Database statistics"); logger.info(" Number of connection requests : " + stats.getConnectCount()); logger.info(" Session flushes : " + stats.getFlushCount()); logger.info(" Transactions : " + stats.getTransactionCount()); logger.info(" Successful transactions : " + stats.getSuccessfulTransactionCount()); logger.info(" Sessions opened : " + stats.getSessionOpenCount()); logger.info(" Sessions closed : " + stats.getSessionCloseCount()); logger.info(" Queries executed : " + stats.getQueryExecutionCount()); logger.info(" Max query time : " + stats.getQueryExecutionMaxTime()); logger.info(" Max time query : " + stats.getQueryExecutionMaxTimeQueryString()); logger.info("Collection statistics"); logger.info(" Collections fetched : " + stats.getCollectionFetchCount()); logger.info(" Collections loaded : " + stats.getCollectionLoadCount()); logger.info(" Collections rebuilt : " + stats.getCollectionRecreateCount()); logger.info(" Collections batch deleted : " + stats.getCollectionRemoveCount()); logger.info(" Collections batch updated : " + stats.getCollectionUpdateCount()); logger.info("Object statistics"); logger.info(" Objects fetched : " + stats.getEntityFetchCount()); logger.info(" Objects loaded : " + stats.getEntityLoadCount()); logger.info(" Objects inserted : " + stats.getEntityInsertCount()); logger.info(" Objects deleted : " + stats.getEntityDeleteCount()); logger.info(" Objects updated : " + stats.getEntityUpdateCount()); logger.info("Cache statistics"); double chit = stats.getQueryCacheHitCount(); double cmiss = stats.getQueryCacheMissCount(); logger.info(" Cache hit count : " + chit); logger.info(" Cache miss count : " + cmiss); logger.info(" Cache hit ratio : " + (chit / (chit + cmiss))); String[] entityNames = stats.getEntityNames(); Arrays.sort(entityNames); for (String entityName : entityNames) { Class<?> entityClass = null; try { entityClass = Class.forName(entityName); } catch (ClassNotFoundException e) { logger.error("Unable to load class for " + entityName, e); } entityStats(stats, entityClass); } //Uncomment these lines to trace every query (can generate a lot of logs) String[] qs = stats.getQueries(); for (String q : qs) { queryStats(stats, q); } String[] slcrn = stats.getSecondLevelCacheRegionNames(); for (String s : slcrn) { secondLevelStats(stats, s); } }
From source file:com.openkm.servlet.admin.HibernateStatsServlet.java
License:Open Source License
/** * Refresh stats// w w w.ja va2s .co m */ private synchronized void refresh() { Statistics statistics = HibernateUtil.getSessionFactory().getStatistics(); generalStatistics.set(0, statistics.getConnectCount()); generalStatistics.set(1, statistics.getFlushCount()); generalStatistics.set(2, statistics.getPrepareStatementCount()); generalStatistics.set(3, statistics.getCloseStatementCount()); generalStatistics.set(4, statistics.getSessionCloseCount()); generalStatistics.set(5, statistics.getSessionOpenCount()); generalStatistics.set(6, statistics.getTransactionCount()); generalStatistics.set(7, statistics.getSuccessfulTransactionCount()); generalStatistics.set(8, statistics.getOptimisticFailureCount()); queryStatistics.clear(); String[] names = statistics.getQueries(); if (names != null && names.length > 0) { for (int i = 0; i < names.length; i++) { queryStatistics.put(names[i], statistics.getQueryStatistics(names[i])); } } entityStatistics.clear(); names = statistics.getEntityNames(); if (names != null && names.length > 0) { for (int i = 0; i < names.length; i++) { entityStatistics.put(names[i], statistics.getEntityStatistics(names[i])); } } collectionStatistics.clear(); names = statistics.getCollectionRoleNames(); if (names != null && names.length > 0) { for (int i = 0; i < names.length; i++) { collectionStatistics.put(names[i], statistics.getCollectionStatistics(names[i])); } } secondLevelCacheStatistics.clear(); names = statistics.getSecondLevelCacheRegionNames(); if (names != null && names.length > 0) { for (int i = 0; i < names.length; i++) { secondLevelCacheStatistics.put(names[i], statistics.getSecondLevelCacheStatistics(names[i])); } } }
From source file:com.thoughtworks.go.server.service.support.HibernateInformationProvider.java
License:Apache License
@Override public Map<String, Object> asJson() { LinkedHashMap<String, Object> json = new LinkedHashMap<>(); Statistics statistics = sessionFactory.getStatistics(); if (!statistics.isStatisticsEnabled()) { return json; }/*from ww w .j ava2s . com*/ json.put("EntityDeleteCount", statistics.getEntityDeleteCount()); json.put("EntityInsertCount", statistics.getEntityInsertCount()); json.put("EntityLoadCount", statistics.getEntityLoadCount()); json.put("EntityFetchCount", statistics.getEntityFetchCount()); json.put("EntityUpdateCount", statistics.getEntityUpdateCount()); json.put("QueryExecutionCount", statistics.getQueryExecutionCount()); json.put("QueryExecutionMaxTime", statistics.getQueryExecutionMaxTime()); json.put("QueryExecutionMaxTimeQueryString", statistics.getQueryExecutionMaxTimeQueryString()); json.put("QueryCacheHitCount", statistics.getQueryCacheHitCount()); json.put("QueryCacheMissCount", statistics.getQueryCacheMissCount()); json.put("QueryCachePutCount", statistics.getQueryCachePutCount()); json.put("FlushCount", statistics.getFlushCount()); json.put("ConnectCount", statistics.getConnectCount()); json.put("SecondLevelCacheHitCount", statistics.getSecondLevelCacheHitCount()); json.put("SecondLevelCacheMissCount", statistics.getSecondLevelCacheMissCount()); json.put("SecondLevelCachePutCount", statistics.getSecondLevelCachePutCount()); json.put("SessionCloseCount", statistics.getSessionCloseCount()); json.put("SessionOpenCount", statistics.getSessionOpenCount()); json.put("CollectionLoadCount", statistics.getCollectionLoadCount()); json.put("CollectionFetchCount", statistics.getCollectionFetchCount()); json.put("CollectionUpdateCount", statistics.getCollectionUpdateCount()); json.put("CollectionRemoveCount", statistics.getCollectionRemoveCount()); json.put("CollectionRecreateCount", statistics.getCollectionRecreateCount()); json.put("StartTime", statistics.getStartTime()); json.put("SecondLevelCacheRegionNames", statistics.getSecondLevelCacheRegionNames()); json.put("SuccessfulTransactionCount", statistics.getSuccessfulTransactionCount()); json.put("TransactionCount", statistics.getTransactionCount()); json.put("PrepareStatementCount", statistics.getPrepareStatementCount()); json.put("CloseStatementCount", statistics.getCloseStatementCount()); json.put("OptimisticFailureCount", statistics.getOptimisticFailureCount()); LinkedHashMap<String, Object> queryStats = new LinkedHashMap<>(); json.put("Queries", queryStats); String[] queries = statistics.getQueries(); for (String query : queries) { queryStats.put(query, statistics.getQueryStatistics(query)); } LinkedHashMap<String, Object> entityStatistics = new LinkedHashMap<>(); json.put("EntityStatistics", entityStatistics); String[] entityNames = statistics.getEntityNames(); for (String entityName : entityNames) { entityStatistics.put(entityName, statistics.getEntityStatistics(entityName)); } LinkedHashMap<String, Object> roleStatistics = new LinkedHashMap<>(); json.put("RoleStatistics", roleStatistics); String[] roleNames = statistics.getCollectionRoleNames(); for (String roleName : roleNames) { roleStatistics.put(roleName, statistics.getCollectionStatistics(roleName)); } return json; }
From source file:de.iew.framework.hibernate.statistics.StatisticsLogger.java
License:Apache License
public void logStatistics() { Statistics statistics = this.sessionFactory.getStatistics(); statistics.setStatisticsEnabled(true); StringBuilder sb = new StringBuilder("\nStatistics"); sb.append("\nCloseStatementCount: ").append(statistics.getCloseStatementCount()); sb.append("\nEntityDeleteCount: ").append(statistics.getEntityDeleteCount()); sb.append("\nEntityInsertCount: ").append(statistics.getEntityInsertCount()); sb.append("\nEntityLoadCount: ").append(statistics.getEntityLoadCount()); sb.append("\nEntityFetchCount: ").append(statistics.getEntityFetchCount()); sb.append("\nEntityUpdateCount: ").append(statistics.getEntityUpdateCount()); sb.append("\nQueryExecutionCount: ").append(statistics.getQueryExecutionCount()); sb.append("\nQueryExecutionMaxTime: ").append(statistics.getQueryExecutionMaxTime()); sb.append("\nQueryExecutionMaxTimeQueryString: ").append(statistics.getQueryExecutionMaxTimeQueryString()); sb.append("\nQueryCacheHitCount: ").append(statistics.getQueryCacheHitCount()); sb.append("\nQueryCacheMissCount: ").append(statistics.getQueryCacheMissCount()); sb.append("\nQueryCachePutCount: ").append(statistics.getQueryCachePutCount()); sb.append("\nNaturalIdQueryExecutionCount: ").append(statistics.getNaturalIdQueryExecutionCount()); sb.append("\nNaturalIdQueryExecutionMaxTime: ").append(statistics.getNaturalIdQueryExecutionMaxTime()); sb.append("\nNaturalIdQueryExecutionMaxTimeRegion: ") .append(statistics.getNaturalIdQueryExecutionMaxTimeRegion()); sb.append("\nNaturalIdCacheHitCount: ").append(statistics.getNaturalIdCacheHitCount()); sb.append("\nNaturalIdCacheMissCount: ").append(statistics.getNaturalIdCacheMissCount()); sb.append("\nNaturalIdCachePutCount: ").append(statistics.getNaturalIdCachePutCount()); sb.append("\nUpdateTimestampsCacheHitCount: ").append(statistics.getUpdateTimestampsCacheHitCount()); sb.append("\nUpdateTimestampsCacheMissCount: ").append(statistics.getUpdateTimestampsCacheMissCount()); sb.append("\nUpdateTimestampsCachePutCount: ").append(statistics.getUpdateTimestampsCachePutCount()); sb.append("\nFlushCount: ").append(statistics.getFlushCount()); sb.append("\nConnectCount: ").append(statistics.getConnectCount()); sb.append("\nSecondLevelCacheHitCount: ").append(statistics.getSecondLevelCacheHitCount()); sb.append("\nSecondLevelCacheMissCount: ").append(statistics.getSecondLevelCacheMissCount()); sb.append("\nSecondLevelCachePutCount: ").append(statistics.getSecondLevelCachePutCount()); sb.append("\nSessionCloseCount: ").append(statistics.getSessionCloseCount()); sb.append("\nSessionOpenCount: ").append(statistics.getSessionOpenCount()); sb.append("\nCollectionLoadCount: ").append(statistics.getCollectionLoadCount()); sb.append("\nCollectionFetchCount: ").append(statistics.getCollectionFetchCount()); sb.append("\nCollectionUpdateCount: ").append(statistics.getCollectionUpdateCount()); sb.append("\nCollectionRemoveCount: ").append(statistics.getCollectionRemoveCount()); sb.append("\nCollectionRecreateCount: ").append(statistics.getCollectionRecreateCount()); sb.append("\nStartTime: ").append(statistics.getStartTime()); sb.append("\nQueries: ").append(statistics.getQueries()); sb.append("\nEntityNames: ").append(statistics.getEntityNames()); sb.append("\nCollectionRoleNames: ").append(statistics.getCollectionRoleNames()); sb.append("\nSecondLevelCacheRegionNames: ").append(statistics.getSecondLevelCacheRegionNames()); sb.append("\nSuccessfulTransactionCount: ").append(statistics.getSuccessfulTransactionCount()); sb.append("\nTransactionCount: ").append(statistics.getTransactionCount()); sb.append("\nPrepareStatementCount: ").append(statistics.getPrepareStatementCount()); sb.append("\nCloseStatementCount: ").append(statistics.getCloseStatementCount()); sb.append("\nOptimisticFailureCount: ").append(statistics.getOptimisticFailureCount()); if (log.isDebugEnabled()) { log.debug(sb);/*w w w . j a v a 2 s . c o m*/ } }
From source file:es.ua.datos.cad.CAD.java
public void writeStatisticsLog(Statistics stats) { // Number of connection requests. Note that this number represents // the number of times Hibernate asked for a connection, and // NOT the number of connections (which is determined by your // pooling mechanism). Date date = new Date(); System.out.println("HORA: " + date); System.out.println("getConnectCount(): " + stats.getConnectCount()); // Number of flushes done on the session (either by client code or // by hibernate). System.out.println("getFlushCount(): " + stats.getFlushCount()); // The number of completed transactions (failed and successful). System.out.println("getTransactionCount(): " + stats.getTransactionCount()); // The number of transactions completed without failure System.out.println("getSuccessfulTransactionCount(): " + stats.getSuccessfulTransactionCount()); // The number of sessions your code has opened. System.out.println("getSessionOpenCount(): " + stats.getSessionOpenCount()); // The number of sessions your code has closed. System.out.println("getSessionCloseCount(): " + stats.getSessionCloseCount()); // All of the queries that have executed. System.out.println("getQueries(): " + stats.getQueries()); // Total number of queries executed. System.out.println("getQueryExecutionCount(): " + stats.getQueryExecutionCount()); // Time of the slowest query executed. System.out.println("getQueryExecutionMaxTime(): " + stats.getQueryExecutionMaxTime()); }
From source file:net.sf.ehcache.hibernate.management.impl.HibernateStatsImpl.java
License:Apache License
/** * {@inheritDoc}/*from w w w . j a va2s. co m*/ * * @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; }
From source file:org.bedework.calcore.hibernate.DbStatistics.java
License:Apache License
/** Get the current statistics * * @param dbStats// w w w . j av a 2 s .c o m * @return Collection */ public static Collection<StatsEntry> getStats(Statistics dbStats) { /* XXX this ought to be property driven to some extent. The cache stats in * particular. */ ArrayList<StatsEntry> al = new ArrayList<StatsEntry>(); if (dbStats == null) { return al; } al.add(new StatsEntry("Database statistics")); al.add(new StatsEntry("Number of connection requests", dbStats.getConnectCount())); al.add(new StatsEntry("Session flushes", dbStats.getFlushCount())); al.add(new StatsEntry("Transactions", dbStats.getTransactionCount())); al.add(new StatsEntry("Successful transactions", dbStats.getSuccessfulTransactionCount())); al.add(new StatsEntry("Sessions opened", dbStats.getSessionOpenCount())); al.add(new StatsEntry("Sessions closed", dbStats.getSessionCloseCount())); al.add(new StatsEntry("Queries executed", dbStats.getQueryExecutionCount())); al.add(new StatsEntry("Max query time", dbStats.getQueryExecutionMaxTime())); al.add(new StatsEntry("Max time query", dbStats.getQueryExecutionMaxTimeQueryString())); al.add(new StatsEntry("Collection statistics")); al.add(new StatsEntry("Collections fetched", dbStats.getCollectionFetchCount())); al.add(new StatsEntry("Collections loaded", dbStats.getCollectionLoadCount())); al.add(new StatsEntry("Collections rebuilt", dbStats.getCollectionRecreateCount())); al.add(new StatsEntry("Collections batch deleted", dbStats.getCollectionRemoveCount())); al.add(new StatsEntry("Collections batch updated", dbStats.getCollectionUpdateCount())); al.add(new StatsEntry("Object statistics")); al.add(new StatsEntry("Objects fetched", dbStats.getEntityFetchCount())); al.add(new StatsEntry("Objects loaded", dbStats.getEntityLoadCount())); al.add(new StatsEntry("Objects inserted", dbStats.getEntityInsertCount())); al.add(new StatsEntry("Objects deleted", dbStats.getEntityDeleteCount())); al.add(new StatsEntry("Objects updated", dbStats.getEntityUpdateCount())); al.add(new StatsEntry("Cache statistics")); double chit = dbStats.getQueryCacheHitCount(); double cmiss = dbStats.getQueryCacheMissCount(); al.add(new StatsEntry("Cache hit count", chit)); al.add(new StatsEntry("Cache miss count", cmiss)); al.add(new StatsEntry("Cache hit ratio", chit / (chit + cmiss))); entityStats(al, dbStats, BwCalendar.class); entityStats(al, dbStats, BwEventObj.class); entityStats(al, dbStats, BwEventAnnotation.class); entityStats(al, dbStats, BwCategory.class); entityStats(al, dbStats, BwLocation.class); entityStats(al, dbStats, BwContact.class); entityStats(al, dbStats, BwUser.class); collectionStats(al, dbStats, BwCalendar.class, "children"); collectionStats(al, dbStats, BwEventObj.class, "attendees"); collectionStats(al, dbStats, BwEventObj.class, "categories"); collectionStats(al, dbStats, BwEventObj.class, "descriptions"); collectionStats(al, dbStats, BwEventObj.class, "summaries"); collectionStats(al, dbStats, BwEventObj.class, "rrules"); collectionStats(al, dbStats, BwEventObj.class, "rdates"); collectionStats(al, dbStats, BwEventObj.class, "exdates"); collectionStats(al, dbStats, BwEventAnnotation.class, "attendees"); collectionStats(al, dbStats, BwEventAnnotation.class, "categories"); collectionStats(al, dbStats, BwEventAnnotation.class, "descriptions"); collectionStats(al, dbStats, BwEventAnnotation.class, "summaries"); collectionStats(al, dbStats, BwEventAnnotation.class, "rrules"); collectionStats(al, dbStats, BwEventAnnotation.class, "rdates"); collectionStats(al, dbStats, BwEventAnnotation.class, "exdates"); String[] qs = dbStats.getQueries(); for (String q : qs) { queryStats(al, dbStats, q); } String[] slcrn = dbStats.getSecondLevelCacheRegionNames(); for (String s : slcrn) { secondLevelStats(al, dbStats, s); } return al; }
From source file:org.jboss.as.jpa.hibernate4.management.HibernateQueryCacheStatistics.java
License:Open Source License
@Override public Collection<String> getDynamicChildrenNames(EntityManagerFactoryAccess entityManagerFactoryLookup, PathAddress pathAddress) {/* www .j av a 2 s .c o m*/ 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; }
From source file:org.jboss.as.jpa.hibernate4.management.HibernateStatisticsResource.java
License:Open Source License
private Set<String> getQueryNames() { final Statistics stats = getStatistics(); if (stats == null) { return Collections.emptySet(); } else {//from w w w . ja v a2s .com Set<String> result = new HashSet<String>(); String[] queries = stats.getQueries(); if (queries != null) { for (String query : queries) { result.add(QueryName.queryName(query).getDisplayName()); } } return result; } }
From source file:org.jboss.as.test.integration.hibernate.Hibernate4NativeSetupwithCriteriaTestCase.java
License:Open Source License
@Test public void testMetaData() throws Exception { SFSBHibernatewithCriteriaSession sfsb = lookup("SFSBHibernatewithCriteriaSession", SFSBHibernatewithCriteriaSession.class); // setup Configuration and SessionFactory sfsb.setupConfig();/*from w w w .jav a 2 s . c o m*/ try { Set<Satellite> satellites1 = new HashSet<Satellite>(); Satellite sat = new Satellite(); sat.setId(new Integer(1)); sat.setName("MOON"); satellites1.add(sat); Set<Satellite> satellites2 = new HashSet<Satellite>(); Satellite sat2 = new Satellite(); sat2.setId(new Integer(2)); sat2.setName("TRITON"); satellites2.add(sat2); Planet s1 = sfsb.prepareData("EARTH", "MILKY WAY", "SUN", satellites1, new Integer(1)); Planet s2 = sfsb.prepareData("NEPTUNE", "MILKY WAY", "SUN", satellites2, new Integer(2)); Query data = sfsb.fetchwithHQL(); assertNotNull(data); List critdata = sfsb.fetchwithCriteria(); for (Iterator it = critdata.iterator(); it.hasNext();) { Planet planet = (Planet) it.next(); assertEquals("EARTH", planet.getPlanetName()); } // fetch statistics Statistics stats = sfsb.getStatistics(); // fetch queries from statistics String[] queryList = stats.getQueries(); // test list of queries obtained from statistics for (int i = 0; i < queryList.length; i++) { System.out.println("Query obtained from statistics::" + queryList[i]); } } finally { sfsb.cleanup(); } }