You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by ts...@apache.org on 2016/03/16 17:56:18 UTC
[04/17] wicket git commit: Wicket Metrics - Simplified time
measurement
Wicket Metrics - Simplified time measurement
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/c4ac72e5
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/c4ac72e5
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/c4ac72e5
Branch: refs/heads/master
Commit: c4ac72e5eb1861f5249448a8e10414e9ed8cfc2d
Parents: 5f8b9fe
Author: Tobias Soloschenko <ts...@apache.org>
Authored: Thu Mar 10 14:12:21 2016 +0100
Committer: Tobias Soloschenko <ts...@apache.org>
Committed: Wed Mar 16 17:55:10 2016 +0100
----------------------------------------------------------------------
.../apache/wicket/metrics/WicketMetrics.java | 30 ++++++++++++++++++--
.../metrics/aspects/ApplicationAspect.java | 12 +-------
2 files changed, 29 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/c4ac72e5/wicket-metrics/src/main/java/org/apache/wicket/metrics/WicketMetrics.java
----------------------------------------------------------------------
diff --git a/wicket-metrics/src/main/java/org/apache/wicket/metrics/WicketMetrics.java b/wicket-metrics/src/main/java/org/apache/wicket/metrics/WicketMetrics.java
index 055b07f..9c4eb59 100644
--- a/wicket-metrics/src/main/java/org/apache/wicket/metrics/WicketMetrics.java
+++ b/wicket-metrics/src/main/java/org/apache/wicket/metrics/WicketMetrics.java
@@ -16,6 +16,8 @@
*/
package org.apache.wicket.metrics;
+import org.aspectj.lang.ProceedingJoinPoint;
+
import com.codahale.metrics.JmxReporter;
import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.Timer.Context;
@@ -56,7 +58,7 @@ public class WicketMetrics
* @param name
* the name of the meter to be marked
*/
- protected void mark(String name)
+ public void mark(String name)
{
if (WicketMetrics.enabled)
{
@@ -71,7 +73,7 @@ public class WicketMetrics
* the name of the timer context
* @return the timer context
*/
- protected Context context(String name)
+ public Context context(String name)
{
if (WicketMetrics.enabled)
{
@@ -98,6 +100,30 @@ public class WicketMetrics
}
/**
+ * Simply measure the time for a {@literal @}around
+ *
+ * @param name
+ * the name of the timer context
+ * @param joinPoint
+ * the joinPoint to be proceed
+ * @return the value of the join point
+ * @throws Throwable
+ * if there is an exception while execution
+ */
+ public Object measureTime(String name, ProceedingJoinPoint joinPoint) throws Throwable
+ {
+ Context context = context(name);
+ try
+ {
+ return joinPoint.proceed();
+ }
+ finally
+ {
+ stopQuietly(context);
+ }
+ }
+
+ /**
* Starts the jmx reporter
*/
public static void startJmxReporter()
http://git-wip-us.apache.org/repos/asf/wicket/blob/c4ac72e5/wicket-metrics/src/main/java/org/apache/wicket/metrics/aspects/ApplicationAspect.java
----------------------------------------------------------------------
diff --git a/wicket-metrics/src/main/java/org/apache/wicket/metrics/aspects/ApplicationAspect.java b/wicket-metrics/src/main/java/org/apache/wicket/metrics/aspects/ApplicationAspect.java
index 10d51a8..45fe51d 100644
--- a/wicket-metrics/src/main/java/org/apache/wicket/metrics/aspects/ApplicationAspect.java
+++ b/wicket-metrics/src/main/java/org/apache/wicket/metrics/aspects/ApplicationAspect.java
@@ -21,8 +21,6 @@ import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
-import com.codahale.metrics.Timer.Context;
-
/**
* Aspect to handle basic web application information
*
@@ -46,14 +44,6 @@ public class ApplicationAspect extends WicketMetrics
@Around("execution(* org.apache.wicket.protocol.http.WicketFilter.processRequest(..))")
public Object aroundRequestProcessed(ProceedingJoinPoint joinPoint) throws Throwable
{
- Context context = context("core/application/request");
- try
- {
- return joinPoint.proceed();
- }
- finally
- {
- stopQuietly(context);
- }
+ return measureTime("core/application/request", joinPoint);
}
}