You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2014/09/05 14:19:16 UTC
git commit: Added camel-metrics to rest example.
Repository: camel
Updated Branches:
refs/heads/master ae7eafc67 -> 96a2dcc00
Added camel-metrics to rest example.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/96a2dcc0
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/96a2dcc0
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/96a2dcc0
Branch: refs/heads/master
Commit: 96a2dcc006a9d4b099deb86951d0b56726342226
Parents: ae7eafc
Author: Claus Ibsen <da...@apache.org>
Authored: Fri Sep 5 14:18:57 2014 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Fri Sep 5 14:18:57 2014 +0200
----------------------------------------------------------------------
examples/camel-example-servlet-rest-tomcat/pom.xml | 4 ++++
.../org/apache/camel/example/rest/UserService.java | 13 +++++++++++++
.../src/main/resources/camel-config-xml.xml | 3 +++
.../src/main/resources/camel-config.xml | 5 ++---
.../src/main/webapp/index.html | 2 ++
5 files changed, 24 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/96a2dcc0/examples/camel-example-servlet-rest-tomcat/pom.xml
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/pom.xml b/examples/camel-example-servlet-rest-tomcat/pom.xml
index 3f68013..0438109 100755
--- a/examples/camel-example-servlet-rest-tomcat/pom.xml
+++ b/examples/camel-example-servlet-rest-tomcat/pom.xml
@@ -46,6 +46,10 @@
<groupId>org.apache.camel</groupId>
<artifactId>camel-servlet</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-metrics</artifactId>
+ </dependency>
<!-- swagger api -->
<dependency>
http://git-wip-us.apache.org/repos/asf/camel/blob/96a2dcc0/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserService.java
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserService.java b/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserService.java
index 26abd73..a94942e 100644
--- a/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserService.java
+++ b/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserService.java
@@ -18,6 +18,7 @@ package org.apache.camel.example.rest;
import java.util.Collection;
import java.util.Map;
+import java.util.Random;
import java.util.TreeMap;
/**
@@ -28,9 +29,12 @@ public class UserService {
// use a tree map so they become sorted
private final Map<String, User> users = new TreeMap<String, User>();
+ private Random ran = new Random();
+
public UserService() {
users.put("123", new User(123, "John Doe"));
users.put("456", new User(456, "Donald Duck"));
+ users.put("789", new User(789, "Slow Turtle"));
}
/**
@@ -40,6 +44,15 @@ public class UserService {
* @return the user, or <tt>null</tt> if no user exists
*/
public User getUser(String id) {
+ if ("789".equals(id)) {
+ // simulate some cpu processing time when returning the slow turtle
+ int delay = 500 + ran.nextInt(1500);
+ try {
+ Thread.sleep(delay);
+ } catch (Exception e) {
+ // ignore
+ }
+ }
return users.get(id);
}
http://git-wip-us.apache.org/repos/asf/camel/blob/96a2dcc0/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config-xml.xml
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config-xml.xml b/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config-xml.xml
index 5dc4bd3..4977bef 100755
--- a/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config-xml.xml
+++ b/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config-xml.xml
@@ -23,6 +23,9 @@
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
+ <!-- use camel-metrics route policy to gather metrics for all routes -->
+ <bean id="metricsRoutePolicyFactory" class="org.apache.camel.component.metrics.routepolicy.MetricsRoutePolicyFactory"/>
+
<!-- a bean for user services -->
<bean id="userService" class="org.apache.camel.example.rest.UserService"/>
http://git-wip-us.apache.org/repos/asf/camel/blob/96a2dcc0/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config.xml
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config.xml b/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config.xml
index e9674d8..6c58d71 100755
--- a/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config.xml
+++ b/examples/camel-example-servlet-rest-tomcat/src/main/resources/camel-config.xml
@@ -23,9 +23,8 @@
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
- <!--<bean id="generator" class="org.apache.camel.example.rest.DeleteMe" init-method="generate">-->
- <!--<property name="camelContext" ref="myCamel"/>-->
- <!--</bean>-->
+ <!-- use camel-metrics route policy to gather metrics for all routes -->
+ <bean id="metricsRoutePolicyFactory" class="org.apache.camel.component.metrics.routepolicy.MetricsRoutePolicyFactory"/>
<!-- a rest service which uses binding to/from pojos -->
<bean id="userRoutes" class="org.apache.camel.example.rest.UserRouteBuilder"/>
http://git-wip-us.apache.org/repos/asf/camel/blob/96a2dcc0/examples/camel-example-servlet-rest-tomcat/src/main/webapp/index.html
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/src/main/webapp/index.html b/examples/camel-example-servlet-rest-tomcat/src/main/webapp/index.html
index 1ea929a..0597a0f 100644
--- a/examples/camel-example-servlet-rest-tomcat/src/main/webapp/index.html
+++ b/examples/camel-example-servlet-rest-tomcat/src/main/webapp/index.html
@@ -54,6 +54,8 @@ From the command shell you can use curl to access the service as shown below:
curl -X PUT -d "{ \"id\": 666, \"name\": \"The devil\"}" -H "Accept: application/json" http://localhost:8080/camel-example-servlet-rest-tomcat/rest/user
</pre>
+Notice when trying to get user with id 789 then there is a built-in delay of 0.5-2 seconds, to simulate some slowness in the service.
+
<p/>
This example offers an API browser using Swagger which is accessible from the following link
<ul>