You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2015/07/15 09:53:44 UTC

[1/3] incubator-kylin git commit: KYLIN-893 Remove the dependency on quartz and metrics

Repository: incubator-kylin
Updated Branches:
  refs/heads/0.8 d109e27bb -> fb73fa5a4


KYLIN-893 Remove the dependency on quartz and metrics

Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/8502fc38
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/8502fc38
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/8502fc38

Branch: refs/heads/0.8
Commit: 8502fc3874ed36c5597c6234a91a35061501a933
Parents: d109e27
Author: shaofengshi <sh...@apache.org>
Authored: Wed Jul 15 15:40:01 2015 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Wed Jul 15 15:40:01 2015 +0800

----------------------------------------------------------------------
 pom.xml                                |  9 +++++-
 script/package.sh                      | 19 ++++++++++-
 server/pom.xml                         | 25 ---------------
 server/src/main/webapp/WEB-INF/web.xml | 49 +----------------------------
 4 files changed, 27 insertions(+), 75 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/8502fc38/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 8276824..c64cd87 100644
--- a/pom.xml
+++ b/pom.xml
@@ -466,7 +466,14 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-war-plugin</artifactId>
-                    <version>2.0.2</version>
+                    <version>2.6</version>
+                    <configuration>
+                        <packagingExcludes>
+                            WEB-INF/lib/servlet-api-*.jar,
+                            WEB-INF/lib/zookeeper-*.jar,
+                            WEB-INF/lib/metrics-*.jar
+                        </packagingExcludes>
+                    </configuration>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/8502fc38/script/package.sh
----------------------------------------------------------------------
diff --git a/script/package.sh b/script/package.sh
index 648caa0..a4bda3f 100755
--- a/script/package.sh
+++ b/script/package.sh
@@ -36,7 +36,24 @@ echo "kylin version: ${version}"
 export version
 
 #commit id
-git rev-parse HEAD > commit_SHA1
+cat << EOF > commit_SHA1
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+EOF
+git rev-parse HEAD >> commit_SHA1
 
 sh script/download-tomcat.sh || { exit 1; }
 sh script/build.sh || { exit 1; }

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/8502fc38/server/pom.xml
----------------------------------------------------------------------
diff --git a/server/pom.xml b/server/pom.xml
index 1578c62..bacd39d 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -200,31 +200,6 @@
             <version>2.8.1</version>
         </dependency>
         <dependency>
-            <groupId>com.codahale.metrics</groupId>
-            <artifactId>metrics-core</artifactId>
-            <version>${metrics.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.codahale.metrics</groupId>
-            <artifactId>metrics-servlets</artifactId>
-            <version>${metrics.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.codahale.metrics</groupId>
-            <artifactId>metrics-servlet</artifactId>
-            <version>${metrics.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.codahale.metrics</groupId>
-            <artifactId>metrics-ganglia</artifactId>
-            <version>${metrics.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.ryantenney.metrics</groupId>
-            <artifactId>metrics-spring</artifactId>
-            <version>3.0.0</version>
-        </dependency>
-        <dependency>
             <groupId>cglib</groupId>
             <artifactId>cglib</artifactId>
             <version>2.2.2</version>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/8502fc38/server/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/server/src/main/webapp/WEB-INF/web.xml b/server/src/main/webapp/WEB-INF/web.xml
index bd6bded..f41dcbc 100644
--- a/server/src/main/webapp/WEB-INF/web.xml
+++ b/server/src/main/webapp/WEB-INF/web.xml
@@ -36,14 +36,6 @@
     <listener>
         <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
     </listener>
-    
-    <listener>
-    	<listener-class>com.ryantenney.metrics.spring.servlets.MetricsServletsContextListener</listener-class>
-    </listener>
-    <listener>
-    	<listener-class>org.apache.kylin.rest.metrics.KylinInstrumentedFilterContextListener</listener-class>
-    </listener>
-
 	<listener>
 		<listener-class>
 			org.springframework.security.web.session.HttpSessionEventPublisher
@@ -84,15 +76,6 @@
         <url-pattern>/*</url-pattern>
     </filter-mapping>
 
-	<filter>
-	    <filter-name>instrumentedFilter</filter-name>
-	    <filter-class>com.codahale.metrics.servlet.InstrumentedFilter</filter-class>
-	</filter>
-	<filter-mapping>
-	    <filter-name>instrumentedFilter</filter-name>
-	    <url-pattern>/*</url-pattern>
-	</filter-mapping>
-
     <!--request log filter-->
     <filter>
         <filter-name>requestLoggingFilter</filter-name>
@@ -129,36 +112,6 @@
         <servlet-name>kylin</servlet-name>
         <url-pattern>/api/*</url-pattern>
     </servlet-mapping>
-    <servlet>
-        <servlet-name>metricsservlet</servlet-name>
-        <servlet-class>com.codahale.metrics.servlets.MetricsServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-    <servlet-mapping>
-        <servlet-name>metricsservlet</servlet-name>
-        <url-pattern>/metrics/*</url-pattern>
-    </servlet-mapping>
-    
-    <servlet>
-        <servlet-name>metricsadminservlet</servlet-name>
-        <servlet-class>com.codahale.metrics.servlets.AdminServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-    <servlet-mapping>
-        <servlet-name>metricsadminservlet</servlet-name>
-        <url-pattern>/metricsadmin/*</url-pattern>
-    </servlet-mapping>
-    
-	<!-- 
-	<servlet>
-        <servlet-name>matricsadmin</servlet-name>
-        <servlet-class>com.codahale.metrics.servlets.MetricsServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-    <servlet-mapping>
-        <servlet-name>matricsadmin</servlet-name>
-        <url-pattern>/matrics/*</url-pattern>
-    </servlet-mapping>
-     -->
+
     <distributable />
 </web-app>


[3/3] incubator-kylin git commit: KYLIN-893 remove Metrics codes Conflicts: pom.xml server/src/main/java/org/apache/kylin/rest/controller/BasicController.java server/src/main/java/org/apache/kylin/rest/controller/CubeController.java server/src/main/j

Posted by sh...@apache.org.
KYLIN-893 remove Metrics codes
Conflicts:
	pom.xml
	server/src/main/java/org/apache/kylin/rest/controller/BasicController.java
	server/src/main/java/org/apache/kylin/rest/controller/CubeController.java
	server/src/main/java/org/apache/kylin/rest/controller/PerformanceController.java
	server/src/main/java/org/apache/kylin/rest/controller/QueryController.java
	server/src/main/resources/applicationContext.xml


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/fb73fa5a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/fb73fa5a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/fb73fa5a

Branch: refs/heads/0.8
Commit: fb73fa5a49d970be005cf077a3ac1b1855dc3462
Parents: f7f1037
Author: shaofengshi <sh...@apache.org>
Authored: Wed Jul 15 15:30:26 2015 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Wed Jul 15 15:51:36 2015 +0800

----------------------------------------------------------------------

----------------------------------------------------------------------



[2/3] incubator-kylin git commit: KYLIN-893 remove Metrics codes

Posted by sh...@apache.org.
KYLIN-893 remove Metrics codes

Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/f7f1037e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/f7f1037e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/f7f1037e

Branch: refs/heads/0.8
Commit: f7f1037e9589e07650750b23699029b63ad240c5
Parents: 8502fc3
Author: shaofengshi <sh...@apache.org>
Authored: Wed Jul 15 15:50:53 2015 +0800
Committer: shaofengshi <sh...@apache.org>
Committed: Wed Jul 15 15:50:53 2015 +0800

----------------------------------------------------------------------
 pom.xml                                         |  5 --
 .../kylin/rest/controller/BasicController.java  |  6 +-
 .../kylin/rest/controller/CubeController.java   | 11 ---
 .../kylin/rest/controller/ModelController.java  |  5 --
 .../rest/controller/PerformanceController.java  |  6 --
 .../rest/controller/ProjectController.java      |  5 --
 .../kylin/rest/controller/QueryController.java  |  7 --
 .../kylin/rest/controller/TableController.java  |  2 -
 .../apache/kylin/rest/metrics/JobMetrics.java   | 51 ------------
 .../KylinInstrumentedFilterContextListener.java | 57 --------------
 .../apache/kylin/rest/metrics/QueryMetrics.java | 82 --------------------
 .../kylin/rest/service/MetricsService.java      | 53 -------------
 .../apache/kylin/rest/service/QueryService.java |  5 --
 .../src/main/resources/applicationContext.xml   | 32 --------
 14 files changed, 2 insertions(+), 325 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index c64cd87..35dace6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -87,10 +87,6 @@
 
         <!-- Calcite Version -->
         <calcite.version>1.3.0-incubating</calcite.version>
-
-        <!-- Metrics Codahale Version -->
-        <metrics.version>3.0.1</metrics.version>
-
         <!-- Curator.version Version -->
         <curator.version>2.6.0</curator.version>
 
@@ -471,7 +467,6 @@
                         <packagingExcludes>
                             WEB-INF/lib/servlet-api-*.jar,
                             WEB-INF/lib/zookeeper-*.jar,
-                            WEB-INF/lib/metrics-*.jar
                         </packagingExcludes>
                     </configuration>
                 </plugin>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/BasicController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/BasicController.java b/server/src/main/java/org/apache/kylin/rest/controller/BasicController.java
index 3a6c530..521a6a1 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/BasicController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/BasicController.java
@@ -22,7 +22,6 @@ import org.apache.kylin.rest.exception.BadRequestException;
 import org.apache.kylin.rest.exception.ForbiddenException;
 import org.apache.kylin.rest.exception.NotFoundException;
 import org.apache.kylin.rest.response.ErrorResponse;
-import org.apache.kylin.rest.service.MetricsService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,6 +31,8 @@ import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.ResponseStatus;
 
 import javax.servlet.http.HttpServletRequest;
+import org.apache.kylin.rest.exception.BadRequestException;
+import org.apache.kylin.rest.exception.NotFoundException;
 
 /**
  */
@@ -39,9 +40,6 @@ public class BasicController {
 
     private static final Logger logger = LoggerFactory.getLogger(BasicController.class);
 
-    @Autowired
-    protected MetricsService metricsService;
-
     @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
     @ExceptionHandler(Exception.class)
     @ResponseBody

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/CubeController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/CubeController.java b/server/src/main/java/org/apache/kylin/rest/controller/CubeController.java
index 53ba6b6..f21ad6d 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/CubeController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/CubeController.java
@@ -56,7 +56,6 @@ import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 
-import com.codahale.metrics.annotation.Metered;
 import com.fasterxml.jackson.core.JsonParseException;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.JsonMappingException;
@@ -79,7 +78,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "", method = { RequestMethod.GET })
     @ResponseBody
-    @Metered(name = "listCubes")
     public List<CubeInstance> getCubes(@RequestParam(value = "cubeName", required = false) String cubeName, @RequestParam(value = "modelName", required = false) String modelName, @RequestParam(value = "projectName", required = false) String projectName, @RequestParam(value = "limit", required = false) Integer limit, @RequestParam(value = "offset", required = false) Integer offset) {
         return cubeService.getCubes(cubeName, projectName, modelName, limit, offset);
     }
@@ -134,7 +132,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "/{cubeName}/cost", method = { RequestMethod.PUT })
     @ResponseBody
-    @Metered(name = "updateCubeCost")
     public CubeInstance updateCubeCost(@PathVariable String cubeName, @RequestParam(value = "cost") int cost) {
         try {
             return cubeService.updateCubeCost(cubeName, cost);
@@ -200,7 +197,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "/{cubeName}/disable", method = { RequestMethod.PUT })
     @ResponseBody
-    @Metered(name = "disableCube")
     public CubeInstance disableCube(@PathVariable String cubeName) {
         try {
             CubeInstance cube = cubeService.getCubeManager().getCube(cubeName);
@@ -219,7 +215,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "/{cubeName}/purge", method = { RequestMethod.PUT })
     @ResponseBody
-    @Metered(name = "purgeCube")
     public CubeInstance purgeCube(@PathVariable String cubeName) {
         try {
             CubeInstance cube = cubeService.getCubeManager().getCube(cubeName);
@@ -238,7 +233,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "/{cubeName}/enable", method = { RequestMethod.PUT })
     @ResponseBody
-    @Metered(name = "enableCube")
     public CubeInstance enableCube(@PathVariable String cubeName) {
         try {
             CubeInstance cube = cubeService.getCubeManager().getCube(cubeName);
@@ -256,7 +250,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "/{cubeName}", method = { RequestMethod.DELETE })
     @ResponseBody
-    @Metered(name = "deleteCube")
     public void deleteCube(@PathVariable String cubeName) {
         CubeInstance cube = cubeService.getCubeManager().getCube(cubeName);
         if (null == cube) {
@@ -279,7 +272,6 @@ public class CubeController extends BasicController {
      */
     @RequestMapping(value = "", method = { RequestMethod.POST })
     @ResponseBody
-    @Metered(name = "saveCube")
     public CubeRequest saveCubeDesc(@RequestBody CubeRequest cubeRequest) {
 
         CubeDesc desc = deserializeCubeDesc(cubeRequest);
@@ -316,7 +308,6 @@ public class CubeController extends BasicController {
      */
     @RequestMapping(value = "", method = { RequestMethod.PUT })
     @ResponseBody
-    @Metered(name = "updateCube")
     public CubeRequest updateCubeDesc(@RequestBody CubeRequest cubeRequest) throws JsonProcessingException {
 
         //update cube
@@ -371,7 +362,6 @@ public class CubeController extends BasicController {
      */
     @RequestMapping(value = "/{cubeName}/hbase", method = { RequestMethod.GET })
     @ResponseBody
-    @Metered(name = "getHBaseInfo")
     public List<HBaseResponse> getHBaseInfo(@PathVariable String cubeName) {
         List<HBaseResponse> hbase = new ArrayList<HBaseResponse>();
 
@@ -410,7 +400,6 @@ public class CubeController extends BasicController {
 
     @RequestMapping(value = "/{cubeName}/segments", method = {RequestMethod.POST})
     @ResponseBody
-    @Metered(name = "appendSegment")
     public CubeSegmentRequest appendSegment(@PathVariable String cubeName, @RequestBody CubeSegmentRequest cubeSegmentRequest) {
         CubeInstance cube = cubeService.getCubeManager().getCube(cubeName);
         if (null == cube) {

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java b/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
index 9eb5a41..8a54442 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
@@ -18,7 +18,6 @@
 
 package org.apache.kylin.rest.controller;
 import java.util.Iterator;
-import com.codahale.metrics.annotation.Metered;
 import com.fasterxml.jackson.core.JsonParseException;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.JsonMappingException;
@@ -58,7 +57,6 @@ public class ModelController extends BasicController {
 
     @RequestMapping(value = "", method = {RequestMethod.GET})
     @ResponseBody
-    @Metered(name = "listModels")
     public List<DataModelDesc> getModels(@RequestParam(value = "modelName", required = false) String modelName, @RequestParam(value = "projectName", required = false) String projectName, @RequestParam(value="limit",required=false) Integer limit, @RequestParam(value="offset",required=false) Integer offset) {
         try{
             return modelService.getModels(modelName, projectName, limit, offset);
@@ -76,7 +74,6 @@ public class ModelController extends BasicController {
      */
     @RequestMapping(value = "", method = {RequestMethod.POST})
     @ResponseBody
-    @Metered(name = "saveModel")
     public ModelRequest saveModelDesc(@RequestBody ModelRequest modelRequest) {
         //Update Model
         DataModelDesc modelDesc = deserializeDataModelDesc(modelRequest);
@@ -106,7 +103,6 @@ public class ModelController extends BasicController {
 
     @RequestMapping(value = "", method = {RequestMethod.PUT})
     @ResponseBody
-    @Metered(name = "updateModel")
     public ModelRequest updateModelDesc(@RequestBody ModelRequest modelRequest) throws JsonProcessingException {
         DataModelDesc modelDesc = deserializeDataModelDesc(modelRequest);
         if (modelDesc == null) {
@@ -134,7 +130,6 @@ public class ModelController extends BasicController {
 
     @RequestMapping(value = "/{modelName}", method = {RequestMethod.DELETE})
     @ResponseBody
-    @Metered(name = "deleteModel")
     public void deleteModel(@PathVariable String modelName) {
         DataModelDesc desc = modelService.getMetadataManager().getDataModelDesc(modelName);
         if (null == desc) {

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/PerformanceController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/PerformanceController.java b/server/src/main/java/org/apache/kylin/rest/controller/PerformanceController.java
index 1735165..fd6cb19 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/PerformanceController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/PerformanceController.java
@@ -1,14 +1,8 @@
 package org.apache.kylin.rest.controller;
 
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.scheduling.annotation.EnableScheduling;
-import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
 /**
  * Created by jiazhong on 2015/4/13.
  */

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/ProjectController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/ProjectController.java b/server/src/main/java/org/apache/kylin/rest/controller/ProjectController.java
index bb984af..2795987 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/ProjectController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/ProjectController.java
@@ -38,8 +38,6 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.codahale.metrics.annotation.Metered;
-
 /**
  * @author xduo
  */
@@ -65,7 +63,6 @@ public class ProjectController extends BasicController {
 
     @RequestMapping(value = "", method = { RequestMethod.POST })
     @ResponseBody
-    @Metered(name = "saveProject")
     public ProjectInstance saveProject(@RequestBody CreateProjectRequest projectRequest) {
         if (StringUtils.isEmpty(projectRequest.getName())) {
             throw new InternalErrorException("A project name must be given to create a project");
@@ -84,7 +81,6 @@ public class ProjectController extends BasicController {
 
     @RequestMapping(value = "", method = { RequestMethod.PUT })
     @ResponseBody
-    @Metered(name = "updateProject")
     public ProjectInstance updateProject(@RequestBody UpdateProjectRequest projectRequest) {
         if (StringUtils.isEmpty(projectRequest.getFormerProjectName())) {
             throw new InternalErrorException("A project name must be given to update a project");
@@ -104,7 +100,6 @@ public class ProjectController extends BasicController {
 
     @RequestMapping(value = "/{projectName}", method = { RequestMethod.DELETE })
     @ResponseBody
-    @Metered(name = "deleteProject")
     public void deleteProject(@PathVariable String projectName) {
         try {
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/QueryController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/QueryController.java b/server/src/main/java/org/apache/kylin/rest/controller/QueryController.java
index 9088c95..4280c73 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/QueryController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/QueryController.java
@@ -18,7 +18,6 @@
 
 package org.apache.kylin.rest.controller;
 
-import com.codahale.metrics.annotation.Timed;
 import com.google.common.base.Preconditions;
 import net.sf.ehcache.Cache;
 import net.sf.ehcache.CacheManager;
@@ -87,7 +86,6 @@ public class QueryController extends BasicController {
 
     @RequestMapping(value = "/query", method = RequestMethod.POST)
     @ResponseBody
-    @Timed(name = "query")
     public SQLResponse query(@RequestBody SQLRequest sqlRequest) {
         return doQuery(sqlRequest);
     }
@@ -95,14 +93,12 @@ public class QueryController extends BasicController {
     // TODO should be just "prepare" a statement, get back expected ResultSetMetaData
     @RequestMapping(value = "/query/prestate", method = RequestMethod.POST, produces = "application/json")
     @ResponseBody
-    @Timed(name = "query")
     public SQLResponse prepareQuery(@RequestBody PrepareSqlRequest sqlRequest) {
         return doQuery(sqlRequest);
     }
 
     @RequestMapping(value = "/saved_queries", method = RequestMethod.POST)
     @ResponseBody
-    @Timed(name = "saveQuery")
     public void saveQuery(@RequestBody SaveSqlRequest sqlRequest) throws IOException {
         String creator = SecurityContextHolder.getContext().getAuthentication().getName();
         Query newQuery = new Query(sqlRequest.getName(), sqlRequest.getProject(), sqlRequest.getSql(), sqlRequest.getDescription());
@@ -112,7 +108,6 @@ public class QueryController extends BasicController {
 
     @RequestMapping(value = "/saved_queries/{id}", method = RequestMethod.DELETE)
     @ResponseBody
-    @Timed(name = "removeQuery")
     public void removeQuery(@PathVariable String id) throws IOException {
         String creator = SecurityContextHolder.getContext().getAuthentication().getName();
         queryService.removeQuery(creator, id);
@@ -120,7 +115,6 @@ public class QueryController extends BasicController {
 
     @RequestMapping(value = "/saved_queries", method = RequestMethod.GET)
     @ResponseBody
-    @Timed(name = "getQueries")
     public List<Query> getQueries() throws IOException {
         String creator = SecurityContextHolder.getContext().getAuthentication().getName();
         return queryService.getQueries(creator);
@@ -128,7 +122,6 @@ public class QueryController extends BasicController {
 
     @RequestMapping(value = "/query/format/{format}", method = RequestMethod.GET)
     @ResponseBody
-    @Timed(name = "downloadResult")
     public void downloadQueryResult(@PathVariable String format, SQLRequest sqlRequest, HttpServletResponse response) {
         SQLResponse result = doQuery(sqlRequest);
         response.setContentType("text/" + format + ";charset=utf-8");

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/controller/TableController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/TableController.java b/server/src/main/java/org/apache/kylin/rest/controller/TableController.java
index 99b0875..631ac4e 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/TableController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/TableController.java
@@ -18,7 +18,6 @@
 
 package org.apache.kylin.rest.controller;
 
-import com.codahale.metrics.annotation.Metered;
 import org.apache.commons.lang.StringUtils;
 import org.apache.kylin.metadata.MetadataConstants;
 import org.apache.kylin.metadata.model.ColumnDesc;
@@ -56,7 +55,6 @@ public class TableController extends BasicController {
      */
     @RequestMapping(value = "", method = {RequestMethod.GET})
     @ResponseBody
-    @Metered(name = "listSourceTables")
     public List<TableDesc> getHiveTables(@RequestParam(value = "ext", required = false) boolean withExt, @RequestParam(value = "project", required = false) String project) {
         long start = System.currentTimeMillis();
         List<TableDesc> tables = null;

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/metrics/JobMetrics.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/metrics/JobMetrics.java b/server/src/main/java/org/apache/kylin/rest/metrics/JobMetrics.java
deleted file mode 100644
index 4924c95..0000000
--- a/server/src/main/java/org/apache/kylin/rest/metrics/JobMetrics.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-*/
-
-package org.apache.kylin.rest.metrics;
-
-import com.codahale.metrics.Metric;
-import com.codahale.metrics.MetricSet;
-
-import java.util.Collections;
-import java.util.Map;
-
-/**
- * @author xduo
- * 
- */
-public class JobMetrics implements MetricSet {
-
-    static class JobMetricsHolder {
-        static final JobMetrics INSTANCE = new JobMetrics();
-    }
-
-    public static JobMetrics getInstance() {
-        return JobMetricsHolder.INSTANCE;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see com.codahale.metrics.MetricSet#getMetrics()
-     */
-    @Override
-    public Map<String, Metric> getMetrics() {
-        return Collections.emptyMap();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/metrics/KylinInstrumentedFilterContextListener.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/metrics/KylinInstrumentedFilterContextListener.java b/server/src/main/java/org/apache/kylin/rest/metrics/KylinInstrumentedFilterContextListener.java
deleted file mode 100644
index fa15451..0000000
--- a/server/src/main/java/org/apache/kylin/rest/metrics/KylinInstrumentedFilterContextListener.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-*/
-
-package org.apache.kylin.rest.metrics;
-
-import javax.servlet.ServletContextEvent;
-import javax.servlet.ServletContextListener;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.context.support.WebApplicationContextUtils;
-
-import com.codahale.metrics.MetricRegistry;
-import com.codahale.metrics.servlet.InstrumentedFilterContextListener;
-
-public class KylinInstrumentedFilterContextListener implements ServletContextListener {
-
-    @Autowired
-    private MetricRegistry metricRegistry;
-
-    private final InnerKylinInstrumentedFilterContextListener innerKylinInstrumentedFilterContextListener = new InnerKylinInstrumentedFilterContextListener();
-
-    @Override
-    public void contextInitialized(ServletContextEvent event) {
-        WebApplicationContextUtils.getRequiredWebApplicationContext(event.getServletContext()).getAutowireCapableBeanFactory().autowireBean(this);
-
-        innerKylinInstrumentedFilterContextListener.contextInitialized(event);
-    }
-
-    @Override
-    public void contextDestroyed(ServletContextEvent event) {
-    }
-
-    class InnerKylinInstrumentedFilterContextListener extends InstrumentedFilterContextListener {
-
-        @Override
-        protected MetricRegistry getMetricRegistry() {
-            return metricRegistry;
-        }
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/metrics/QueryMetrics.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/metrics/QueryMetrics.java b/server/src/main/java/org/apache/kylin/rest/metrics/QueryMetrics.java
deleted file mode 100644
index 8793702..0000000
--- a/server/src/main/java/org/apache/kylin/rest/metrics/QueryMetrics.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-*/
-
-package org.apache.kylin.rest.metrics;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.Metric;
-import com.codahale.metrics.MetricSet;
-
-/**
- * @author xduo
- * 
- */
-public class QueryMetrics implements MetricSet {
-
-    private Map<String, Float> metrics = new HashMap<String, Float>();
-
-    private QueryMetrics() {
-        // register query metrics
-        this.increase("duration", (float) 0);
-        this.increase("totalScanCount", (float) 0);
-        this.increase("count", (float) 0);
-    }
-
-    static class QueryMetricsHolder {
-        static final QueryMetrics INSTANCE = new QueryMetrics();
-    }
-
-    public static QueryMetrics getInstance() {
-        return QueryMetricsHolder.INSTANCE;
-    }
-
-    public synchronized void increase(String key, Float value) {
-        if (metrics.containsKey(key)) {
-            metrics.put(key, metrics.get(key) + value);
-        } else {
-            metrics.put(key, value);
-        }
-    }
-
-    public synchronized Float getAndReset(String key) {
-        float value = metrics.get(key);
-        metrics.put(key, (float) 0);
-
-        return value;
-    }
-
-    public synchronized Map<String, Metric> getMetrics() {
-        Map<String, Metric> metricSet = new HashMap<String, Metric>();
-
-        for (final String key : metrics.keySet()) {
-            metricSet.put(key, new Gauge<Float>() {
-                @Override
-                public Float getValue() {
-                    float value = getAndReset(key);
-
-                    return value;
-                }
-            });
-        }
-
-        return metricSet;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/service/MetricsService.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/service/MetricsService.java b/server/src/main/java/org/apache/kylin/rest/service/MetricsService.java
deleted file mode 100644
index 15005dc..0000000
--- a/server/src/main/java/org/apache/kylin/rest/service/MetricsService.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-*/
-
-package org.apache.kylin.rest.service;
-
-import com.codahale.metrics.MetricRegistry;
-import org.apache.kylin.rest.metrics.QueryMetrics;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-/**
- * @author xduo
- * 
- */
-@Component("metricsService")
-public class MetricsService implements InitializingBean {
-
-    @Autowired
-    @Qualifier("metrics")
-    private MetricRegistry metricRegistry;
-
-    public void registerQueryMetrics() {
-        metricRegistry.register("QueryMetrics", QueryMetrics.getInstance());
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see
-     * org.springframework.beans.factory.InitializingBean#afterPropertiesSet()
-     */
-    @Override
-    public void afterPropertiesSet() throws Exception {
-        registerQueryMetrics();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/java/org/apache/kylin/rest/service/QueryService.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/service/QueryService.java b/server/src/main/java/org/apache/kylin/rest/service/QueryService.java
index de413c7..2a78e21 100644
--- a/server/src/main/java/org/apache/kylin/rest/service/QueryService.java
+++ b/server/src/main/java/org/apache/kylin/rest/service/QueryService.java
@@ -46,7 +46,6 @@ import org.apache.kylin.cube.CubeManager;
 import org.apache.kylin.cube.cuboid.Cuboid;
 import org.apache.kylin.query.relnode.OLAPContext;
 import org.apache.kylin.rest.constant.Constant;
-import org.apache.kylin.rest.metrics.QueryMetrics;
 import org.apache.kylin.rest.model.ColumnMeta;
 import org.apache.kylin.rest.model.Query;
 import org.apache.kylin.rest.model.SelectedColumnMeta;
@@ -214,10 +213,6 @@ public class QueryService extends BasicService {
             resultRowCount = response.getResults().size();
         }
 
-        QueryMetrics.getInstance().increase("duration", duration);
-        QueryMetrics.getInstance().increase("totalScanCount", (float) totalScanCount);
-        QueryMetrics.getInstance().increase("count", (float) 1);
-
         String newLine = System.getProperty("line.separator");
         StringBuilder stringBuilder = new StringBuilder();
         stringBuilder.append(newLine);

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f7f1037e/server/src/main/resources/applicationContext.xml
----------------------------------------------------------------------
diff --git a/server/src/main/resources/applicationContext.xml b/server/src/main/resources/applicationContext.xml
index b2f5387..84d800d 100644
--- a/server/src/main/resources/applicationContext.xml
+++ b/server/src/main/resources/applicationContext.xml
@@ -3,7 +3,6 @@
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:mvc="http://www.springframework.org/schema/mvc"
        xmlns:task="http://www.springframework.org/schema/task"
-       xmlns:metrics="http://www.ryantenney.com/schema/metrics"
        xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:cache="http://www.springframework.org/schema/cache"
        xmlns:p="http://www.springframework.org/schema/p"
@@ -15,8 +14,6 @@
     http://www.springframework.org/schema/task/spring-task-3.1.xsd
     http://www.springframework.org/schema/mvc
     http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
-    http://www.ryantenney.com/schema/metrics
-    http://www.ryantenney.com/schema/metrics/metrics-3.0.xsd
     http://www.springframework.org/schema/aop
     http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
     http://www.springframework.org/schema/cache
@@ -29,30 +26,6 @@
 
     <context:component-scan base-package="org.apache.kylin.rest"/>
 
-    <!-- Matric Spring -->
-    <!-- Registry should be defined in only one context XML file -->
-    <metrics:metric-registry id="metrics"/>
-
-    <!-- annotation-driven must be included in all context files -->
-    <metrics:annotation-driven metric-registry="metrics"/>
-
-    <!--&lt;!&ndash; (Optional) Registry should be defined in only one context XML file &ndash;&gt;-->
-    <!--<metrics:reporter type="ganglia" metric-registry="metrics"-->
-    <!--group="${ganglia.group}" port="${ganglia.port}" udp-mode="MULTICAST"-->
-    <!--ttl="100" period="1m" />-->
-
-    <!-- (Optional) The metrics in this example require the metrics-jvm jar -->
-    <metrics:register metric-registry="metrics">
-        <bean metrics:name="jvm.gc"
-              class="com.codahale.metrics.jvm.GarbageCollectorMetricSet"/>
-        <bean metrics:name="jvm.memory" class="com.codahale.metrics.jvm.MemoryUsageGaugeSet"/>
-        <bean metrics:name="jvm.thread-states"
-              class="com.codahale.metrics.jvm.ThreadStatesGaugeSet"/>
-        <!--<bean metrics:name="jvm.fd.usage" class="com.codahale.metrics.jvm.FileDescriptorRatioGauge"
-            /> -->
-    </metrics:register>
-    <!-- Matric Spring -->
-
     <bean class="org.apache.kylin.rest.security.PasswordPlaceholderConfigurer">
         <property name="ignoreResourceNotFound" value="true"/>
     </bean>
@@ -112,8 +85,6 @@
     <!-- Cache Config -->
     <cache:annotation-driven/>
 
-
-
     <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"
           p:cacheManager-ref="ehcache"/>
     <beans profile="default">
@@ -138,7 +109,4 @@
         <bean id="aclHBaseStorage" class="org.apache.kylin.rest.security.MockAclHBaseStorage"/>
         <bean id="jobLock" class="org.apache.kylin.common.lock.MockJobLock"/>
     </beans>
-
-
-
 </beans>
\ No newline at end of file