more monitor status
parent
018061d2cd
commit
375e64e845
|
@ -18,10 +18,7 @@ import us.codecraft.webmagic.utils.UrlUtils;
|
||||||
|
|
||||||
import java.io.Closeable;
|
import java.io.Closeable;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.UUID;
|
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.concurrent.atomic.AtomicLong;
|
import java.util.concurrent.atomic.AtomicLong;
|
||||||
|
@ -103,6 +100,8 @@ public class Spider implements Runnable, Task {
|
||||||
|
|
||||||
private final AtomicLong pageCount = new AtomicLong(0);
|
private final AtomicLong pageCount = new AtomicLong(0);
|
||||||
|
|
||||||
|
private Date startTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* create a spider with pageProcessor.
|
* create a spider with pageProcessor.
|
||||||
*
|
*
|
||||||
|
@ -288,6 +287,7 @@ public class Spider implements Runnable, Task {
|
||||||
}
|
}
|
||||||
startRequests.clear();
|
startRequests.clear();
|
||||||
}
|
}
|
||||||
|
startTime = new Date();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -685,6 +685,10 @@ public class Spider implements Runnable, Task {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Date getStartTime() {
|
||||||
|
return startTime;
|
||||||
|
}
|
||||||
|
|
||||||
public Scheduler getScheduler() {
|
public Scheduler getScheduler() {
|
||||||
return scheduler;
|
return scheduler;
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ import org.slf4j.LoggerFactory;
|
||||||
import us.codecraft.webmagic.Spider;
|
import us.codecraft.webmagic.Spider;
|
||||||
import us.codecraft.webmagic.scheduler.MonitorableScheduler;
|
import us.codecraft.webmagic.scheduler.MonitorableScheduler;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -76,4 +77,15 @@ public class SpiderStatus implements SpiderStatusMXBean {
|
||||||
spider.stop();
|
spider.stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Date getStartTime() {
|
||||||
|
return spider.getStartTime();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPagePerSecond() {
|
||||||
|
int runSeconds = (int) (System.currentTimeMillis() - getStartTime().getTime()) / 1000;
|
||||||
|
return getSuccessPageCount() / runSeconds;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package us.codecraft.webmagic.monitor;
|
package us.codecraft.webmagic.monitor;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -27,4 +28,8 @@ public interface SpiderStatusMXBean {
|
||||||
public void start();
|
public void start();
|
||||||
|
|
||||||
public void stop();
|
public void stop();
|
||||||
|
|
||||||
|
public Date getStartTime();
|
||||||
|
|
||||||
|
public int getPagePerSecond();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue