Permalink
Browse files

Add Metrics support; remove legacy monitoring

  • Loading branch information...
1 parent 9577669 commit 88a3eca3b6f24511b7cb0862b13c6e291d9a240b @jmarin jmarin committed Oct 16, 2012
View
@@ -24,6 +24,7 @@
<jackson.version>1.9.9</jackson.version>
<jaxb.version>2.2.6</jaxb.version>
<jamon.version>2.4</jamon.version>
+ <metrics.version>2.1.2</metrics.version>
</properties>
@@ -251,12 +252,23 @@
</dependency>
<!-- Monitoring -->
+
<dependency>
- <groupId>com.jamonapi</groupId>
- <artifactId>jamon</artifactId>
- <version>${jamon.version}</version>
-
+ <groupId>com.yammer.metrics</groupId>
+ <artifactId>metrics-core</artifactId>
+ <version>${metrics.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.yammer.metrics</groupId>
+ <artifactId>metrics-web</artifactId>
+ <version>${metrics.version}</version>
</dependency>
+ <dependency>
+ <groupId>com.yammer.metrics</groupId>
+ <artifactId>metrics-jersey</artifactId>
+ <version>${metrics.version}</version>
+ </dependency>
+
<!-- Testing -->
<dependency>
@@ -1,29 +0,0 @@
-package org.geo.spatialsearch.monitor;
-
-import java.util.Date;
-
-/**
- *
- * @author Santosh Moghulla
- *
- */
-public interface GlobalMonitorStatistics {
-
- long getCallsCount();
-
- long getTotalCallTime();
-
- Date getLastAccessTime();
-
- long lastCallTime(String methodName);
-
- long callCount(String methodName);
-
- long averageCallTime(String methodName);
-
- long totalCallTime(String methodName);
-
- long minimumCallTime(String methodName);
-
- long maximumCallTime(String methodName);
-}
@@ -1,13 +0,0 @@
-package org.geo.spatialsearch.monitor;
-
-/**
- *
- * @author Santosh Moghulla
- *
- */
-public interface Monitor {
-
- Monitor start();
-
- Monitor stop();
-}
@@ -1,11 +0,0 @@
-package org.geo.spatialsearch.monitor;
-
-/**
- *
- * @author Santosh Moghulla
- *
- */
-public interface MonitorFactory {
-
- Monitor start(String name);
-}
@@ -1,24 +0,0 @@
-package org.geo.spatialsearch.monitor;
-
-/**
- *
- * @author Santosh Moghulla
- *
- */
-public interface MonitorStatistics {
-
- String getName();
-
- long getLastCallTime();
-
- long getCallCount();
-
- long getAverageCallTime();
-
- long getTotalCallTime();
-
- long getMinimumCallTime();
-
- long getMaximumCallTime();
-
-}
@@ -1,69 +0,0 @@
-package org.geo.spatialsearch.monitor.jamon;
-
-import org.geo.spatialsearch.monitor.Monitor;
-import org.geo.spatialsearch.monitor.MonitorStatistics;
-
-/**
- *
- * @author Santosh Moghulla
- *
- */
-public class JamonMonitor implements Monitor, MonitorStatistics {
-
- private com.jamonapi.Monitor monitor;
-
- public JamonMonitor(com.jamonapi.Monitor monitor) {
- this.monitor = monitor;
- }
-
- public Monitor start() {
- monitor.start();
- return this;
- }
-
- public Monitor stop() {
- monitor.stop();
- return this;
- }
-
- public String getName() {
- return monitor.getLabel();
- }
-
- public long getCallCount() {
- return (long) monitor.getHits();
- }
-
- public long getAverageCallTime() {
- return (long) monitor.getAvg();
- }
-
- public long getLastCallTime() {
- return (long) monitor.getLastValue();
- }
-
- public long getMaximumCallTime() {
- return (long) monitor.getMax();
- }
-
- public long getMinimumCallTime() {
- return (long) monitor.getMin();
- }
-
- public long getTotalCallTime() {
- return (long) monitor.getTotal();
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append(monitor.getLabel()).append(": ");
- sb.append("Last=").append(monitor.getLastValue()).append(", ");
- sb.append("Calls=").append(monitor.getHits()).append(", ");
- sb.append("Avg=").append(monitor.getAvg()).append(", ");
- sb.append("Total=").append(monitor.getTotal()).append(", ");
- sb.append("Min=").append(monitor.getMin()).append(", ");
- sb.append("Max=").append(monitor.getMax());
- return sb.toString();
- }
-}
@@ -1,75 +0,0 @@
-package org.geo.spatialsearch.monitor.jamon;
-
-
-import java.util.Date;
-
-import org.geo.spatialsearch.monitor.GlobalMonitorStatistics;
-import org.geo.spatialsearch.monitor.Monitor;
-import org.geo.spatialsearch.monitor.MonitorFactory;
-
-import com.jamonapi.MonitorComposite;
-
-/**
- *
- * @author Santosh Moghulla
- *
- */
-public class JamonMonitorFactory implements MonitorFactory, GlobalMonitorStatistics {
-
- private com.jamonapi.MonitorFactoryInterface monitorFactory = com.jamonapi.MonitorFactory.getFactory();
-
- @Override
- public Monitor start(String name) {
- return new JamonMonitor(monitorFactory.start(name));
- }
-
- @Override
- public long getCallsCount() {
- return (long) getMonitors().getHits();
- }
-
- @Override
- public long getTotalCallTime() {
- return (long) getMonitors().getTotal();
- }
-
- @Override
- public Date getLastAccessTime() {
- return getMonitors().getLastAccess();
- }
-
- public MonitorComposite getMonitors() {
- return monitorFactory.getRootMonitor();
- }
-
- @Override
- public long averageCallTime(String methodName) {
- return (long) monitorFactory.getMonitor(methodName, "ms.").getAvg();
- }
-
- @Override
- public long callCount(String methodName) {
- return (long) monitorFactory.getMonitor(methodName, "ms.").getHits();
- }
-
- @Override
- public long lastCallTime(String methodName) {
- return (long) monitorFactory.getMonitor(methodName, "ms.").getLastValue();
- }
-
- @Override
- public long maximumCallTime(String methodName) {
- return (long) monitorFactory.getMonitor(methodName, "ms.").getMax();
- }
-
- @Override
- public long minimumCallTime(String methodName) {
- return (long) monitorFactory.getMonitor(methodName, "ms.").getMin();
- }
-
- @Override
- public long totalCallTime(String methodName) {
- return (long) monitorFactory.getMonitor(methodName, "ms.").getTotal();
- }
-
-}
@@ -24,9 +24,6 @@
protected List<String> messageList = new ArrayList<String>();
@XmlAttribute
- protected Long responseTime;
-
- @XmlAttribute
private String status;
public void setStatus(String status) {
@@ -36,15 +33,7 @@ public void setStatus(String status) {
public String getStatus() {
return status;
}
-
- public Long getResponseTime() {
- return responseTime;
- }
-
- public void setResponseTime(Long responseTime) {
- this.responseTime = responseTime;
- }
-
+
public List<String> getMessageList() {
if (messageList == null) {
messageList = new ArrayList<String>();
@@ -22,6 +22,8 @@
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
+import com.yammer.metrics.annotation.Timed;
+
/**
*
* @author Juan Marin
@@ -43,13 +45,14 @@
@Qualifier("exceptionHandler")
private ExceptionHandler handler;
-// private static final String CENSUS_BY_COORDINATES = "Census-findByCoordinates";
-// private static final String CENSUS_BY_FIPSCODE = "Census-findGeographyByFips";
-// private static final String CENSUS_BY_GEOGRAPHY_NAME = "Census-findGeographyByName";
+ //private static final String CENSUS_BY_COORDINATES = "Census-findByCoordinates";
+ //private static final String CENSUS_BY_FIPSCODE = "Census-findGeographyByFips";
+ //private static final String CENSUS_BY_GEOGRAPHY_NAME = "Census-findGeographyByName";
@Override
@Path(value = "{geography}")
@GET
+ @Timed
public Response findByCoordinates(@Context UriInfo uriInfo,
@PathParam(value = "geography") String geography,
@QueryParam(value = "latitude") double latitude,
@@ -66,7 +69,6 @@ public Response findByCoordinates(@Context UriInfo uriInfo,
} catch (Exception ex) {
handler.handle(apiResponse, ex);
exception = ex;
- // System.out.println(ex.getStackTrace());
}
//APIStatsProfiler.captureStatistics(CENSUS_BY_COORDINATES, apiResponse,uriInfo, true, exception);
Response response = RestFormatUtil
@@ -14,7 +14,6 @@
import org.geo.spatialsearch.service.CensusService;
import org.geo.spatialsearch.util.GeometryUtil;
import org.geo.spatialsearch.util.Message;
-import org.geo.spatialsearch.util.ResponseTime;
import org.geo.spatialsearch.util.ValidationUtil;
import org.hibernate.Criteria;
import org.hibernate.spatial.criterion.SpatialRestrictions;
@@ -33,7 +32,6 @@
@Override
@Transactional(readOnly = true)
- @ResponseTime
public CensusGeoBaseObject findById(CensusGeographyEnum geographyType,
Long id) {
CensusGeoBaseObject geoEntity = null;
@@ -47,7 +45,6 @@ public CensusGeoBaseObject findById(CensusGeographyEnum geographyType,
@Override
@Transactional(readOnly = true)
- @ResponseTime
public CensusLookupResponse findByCoordinates(
CensusGeographyEnum geographyType, double longitude, double latitude) {
Oops, something went wrong.

0 comments on commit 88a3eca

Please sign in to comment.