--- CircuitBreaker/src/dk/thoerup/circuitbreaker/web/ViewCircuitBreaker.java 2011/04/13 01:14:28 1291 +++ miscJava/CircuitBreaker/src/dk/thoerup/circuitbreaker/web/ViewCircuitBreaker.java 2015/03/20 08:52:49 2448 @@ -1,6 +1,7 @@ package dk.thoerup.circuitbreaker.web; import java.util.Date; +import java.util.Formatter; import java.util.LinkedList; import javax.servlet.http.HttpServletRequest; @@ -82,12 +83,25 @@ if (breaker instanceof AccountingCircuitBreaker) { AccountingCircuitBreaker acb = (AccountingCircuitBreaker) breaker; + + StringBuilder sbf = new StringBuilder(); + if (acb.getTotalCallCount() > 0) { + double failure_percentage = ((double) acb.getTotalFailureCount()*100) / ((double) acb.getTotalCallCount() ); + Formatter formatter = new Formatter(sbf); + formatter.format("%.2f", failure_percentage); + formatter.close(); + } else { + sbf.append("0.0"); + } + + sb.append("Accounting\n"); sb.append("Trip count").append( acb.getTripCount() ).append("\n"); sb.append("Re-trip count").append( acb.getRetripCount() ).append("\n"); sb.append("Block count").append( acb.getBlockCount() ).append("\n"); sb.append("Total failure count").append( acb.getTotalFailureCount() ).append("\n"); sb.append("Total Call count").append( acb.getTotalCallCount() ).append("\n"); + sb.append("Failure Percentage").append( sbf.toString() ).append("%\n"); sb.append("Last failure").append( formatDate(acb.getLastFailure()) ).append("\n"); sb.append("Last trip").append( formatDate(acb.getLastTrip()) ).append("\n"); sb.append("Last re-trip").append( formatDate(acb.getLastRetrip()) ).append("\n"); @@ -108,7 +122,7 @@ for (int i=0; i"); - sb.append( formatDate(entry.time) ).append(" : ").append(entry.event); + sb.append( entry.toString() ); sb.append(""); } } @@ -123,6 +137,9 @@ if (breaker instanceof AccountingCircuitBreaker ) { sb.append( actionBuilder(uri, "resetCounters", breaker.getName())).append("
\n"); } + if (breaker instanceof LoggingCircuitBreaker ) { + sb.append( actionBuilder(uri, "clearLog", breaker.getName())).append("
\n"); + } } else { sb.append("the CircuitBreakers can only be viewed"); }