You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nutch.apache.org by jn...@apache.org on 2014/04/09 10:36:16 UTC

svn commit: r1585905 - in /nutch/trunk: CHANGES.txt src/java/org/apache/nutch/fetcher/Fetcher.java

Author: jnioche
Date: Wed Apr  9 08:36:15 2014
New Revision: 1585905

URL: http://svn.apache.org/r1585905
Log:
NUTCH-1750 Improvement of Fetcher's reportStatus

Modified:
    nutch/trunk/CHANGES.txt
    nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java

Modified: nutch/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/nutch/trunk/CHANGES.txt?rev=1585905&r1=1585904&r2=1585905&view=diff
==============================================================================
--- nutch/trunk/CHANGES.txt (original)
+++ nutch/trunk/CHANGES.txt Wed Apr  9 08:36:15 2014
@@ -2,6 +2,8 @@ Nutch Change Log
 
 Nutch Current Development
 
+* NUTCH-1750 Improvement of Fetcher's reportStatus (jnioche)
+
 * NUTCH-1747 Use AtomicInteger as semaphore in Fetcher (jnioche)
 
 * NUTCH-1735 code dedup fetcher queue redirects (snagel)

Modified: nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java
URL: http://svn.apache.org/viewvc/nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java?rev=1585905&r1=1585904&r2=1585905&view=diff
==============================================================================
--- nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java (original)
+++ nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java Wed Apr  9 08:36:15 2014
@@ -1110,20 +1110,21 @@ public class Fetcher extends Configured 
 
 
   private void reportStatus(int pagesLastSec, int bytesLastSec) throws IOException {
-    String status;
-    long elapsed = (System.currentTimeMillis() - start)/1000;
+    StringBuilder status = new StringBuilder();
+    Long elapsed = new Long((System.currentTimeMillis() - start)/1000);
 
-    float avgPagesSec = Math.round(((float)pages.get()*10)/elapsed)/10;
-    float avgBytesSec = Math.round(((((float)bytes.get())*8)/1000)/elapsed);
+    float avgPagesSec =  (float) pages.get() / elapsed.floatValue();
+    long avgBytesSec =  (bytes.get() /125l) / elapsed.longValue();
 
-    status = activeThreads + " threads, " +
-     fetchQueues.getQueueCount() + " queues, "+
-     fetchQueues.getTotalSize() + " URLs queued, "+
-      pages+" pages, "+errors+" errors, "
-      + avgPagesSec + " (" + pagesLastSec + ") pages/s, "
-      + avgBytesSec + " (" + bytesLastSec + ") kbits/s, ";
+    status.append(activeThreads).append(" threads, ");
+    status.append(fetchQueues.getQueueCount()).append(" queues, ");
+    status.append(fetchQueues.getTotalSize()).append(" URLs queued, ");
+    status.append(pages).append(" pages, ").append(errors).append(" errors, ");
+    status.append(String.format("%.2f", avgPagesSec)).append(" pages/s (");
+    status.append(pagesLastSec).append(" last sec), ");
+    status.append(avgBytesSec).append(" kbits/s (").append((bytesLastSec / 125)).append(" last sec)");
 
-    reporter.setStatus(status);
+    reporter.setStatus(status.toString());
   }
 
   public void configure(JobConf job) {