diff --git a/engine/src/main/java/org/archive/crawler/framework/CrawlController.java b/engine/src/main/java/org/archive/crawler/framework/CrawlController.java index 5193a8ce..6139aea2 100644 --- a/engine/src/main/java/org/archive/crawler/framework/CrawlController.java +++ b/engine/src/main/java/org/archive/crawler/framework/CrawlController.java @@ -321,7 +321,8 @@ implements Serializable, // suppress duplicate state-reports return; } - this.state = newState; + this.state = newState; + LOGGER.fine("reached CrawlController.State " + this.state + ", notifying listeners"); CrawlStateEvent event = new CrawlStateEvent(this,newState,status.getDescription()); appCtx.publishEvent(event); } diff --git a/engine/src/main/java/org/archive/crawler/frontier/AbstractFrontier.java b/engine/src/main/java/org/archive/crawler/frontier/AbstractFrontier.java index 7f63d5ac..7d88d7f5 100644 --- a/engine/src/main/java/org/archive/crawler/frontier/AbstractFrontier.java +++ b/engine/src/main/java/org/archive/crawler/frontier/AbstractFrontier.java @@ -386,13 +386,14 @@ public abstract class AbstractFrontier } break; case FINISH: + logger.fine("FINISH requested, waiting for in process urls to finish"); // prevent all outbound takes outboundLock.writeLock().lock(); // process all inbound while (getInProcessCount()>0) { Thread.sleep(1000); } - + logger.fine("0 urls in process, running final tasks"); finalTasks(); // TODO: more cleanup? reachedState(State.FINISH); @@ -437,6 +438,7 @@ public abstract class AbstractFrontier */ protected void reachedState(State justReached) { if(justReached != lastReachedState) { + logger.fine("reached Frontier.State " + this.lastReachedState + ", notifying listeners"); controller.noteFrontierState(justReached); lastReachedState = justReached; } diff --git a/engine/src/main/java/org/archive/crawler/reporting/StatisticsTracker.java b/engine/src/main/java/org/archive/crawler/reporting/StatisticsTracker.java index b2144178..09af0b47 100644 --- a/engine/src/main/java/org/archive/crawler/reporting/StatisticsTracker.java +++ b/engine/src/main/java/org/archive/crawler/reporting/StatisticsTracker.java @@ -338,6 +338,8 @@ public class StatisticsTracker public void stop() { isRunning = false; executor.shutdownNow(); + progressStatisticsEvent(); + dumpReports(); } @SuppressWarnings("unchecked") @@ -560,10 +562,8 @@ public class StatisticsTracker } public void crawlEnded(String sExitMessage) { - logNote("CRAWL ENDED - " + sExitMessage); crawlEndTime = System.currentTimeMillis(); - progressStatisticsEvent(); - dumpReports(); + logNote("CRAWL ENDED - " + sExitMessage); } /**