You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by rm...@apache.org on 2013/11/07 09:13:02 UTC
svn commit: r1539545 - in /incubator/sirona/trunk/src/site: ./ markdown/
Author: rmannibucau
Date: Thu Nov 7 08:13:01 2013
New Revision: 1539545
URL: http://svn.apache.org/r1539545
Log:
adding highlighting to code snippet in site
Modified:
incubator/sirona/trunk/src/site/markdown/basis.md
incubator/sirona/trunk/src/site/markdown/collector.md
incubator/sirona/trunk/src/site/markdown/concepts.md
incubator/sirona/trunk/src/site/markdown/cube.md
incubator/sirona/trunk/src/site/markdown/graphite.md
incubator/sirona/trunk/src/site/markdown/instrumentation.md
incubator/sirona/trunk/src/site/markdown/jpa.md
incubator/sirona/trunk/src/site/markdown/jta.md
incubator/sirona/trunk/src/site/markdown/plugins.md
incubator/sirona/trunk/src/site/markdown/reporting.md
incubator/sirona/trunk/src/site/markdown/web.md
incubator/sirona/trunk/src/site/site.xml
Modified: incubator/sirona/trunk/src/site/markdown/basis.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/basis.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/basis.md (original)
+++ incubator/sirona/trunk/src/site/markdown/basis.md Thu Nov 7 08:13:01 2013
@@ -18,31 +18,35 @@ under the License.
-->
## Do a measure manually using a StopWatch
- final Counter counter = Repository.INSTANCE.getCounter(new Counter.Key(Role.PERFORMANCES, "my counter"));
- final StopWatch stopWatch = Repository.INSTANCE.start(counter);
- // do something
- stopwatch.stop();
+<pre class="prettyprint linenums"><![CDATA[
+final Counter counter = Repository.INSTANCE.getCounter(new Counter.Key(Role.PERFORMANCES, "my counter"));
+final StopWatch stopWatch = Repository.INSTANCE.start(counter);
+// do something
+stopwatch.stop();
+]]></pre>
## Create a custom Gauge
- public class MyRandomGauge implements Gauge {
- public static final Role MY_RANDOM_ROLE = new Role("Random", Unit.UNARY);
+<pre class="prettyprint linenums"><![CDATA[
+public class MyRandomGauge implements Gauge {
+ public static final Role MY_RANDOM_ROLE = new Role("Random", Unit.UNARY);
+
+ @Override
+ public Role role() {
+ return MY_RANDOM_ROLE;
+ }
+
+ @Override
+ public double value() {
+ return new Random(System.currentTimeMillis()).nextDouble();
+ }
- @Override
- public Role role() {
- return MY_RANDOM_ROLE;
- }
-
- @Override
- public double value() {
- return new Random(System.currentTimeMillis()).nextDouble();
- }
-
- @Override
- public long period() { // millisecond
- return 4000;
- }
+ @Override
+ public long period() { // millisecond
+ return 4000;
}
+}
+]]></pre>
The role identifies the gauge specifying its unit (Unit.UNARY means "value" - absolute, percent...).
@@ -54,7 +58,9 @@ Period method defines when to do a measu
Gauges values are retrieved by interval:
- Map<Long, Double> sortedValueByIncreasingDate = Repository.INSTANCE.getGaugeValues(start, end, gaugeRole);
+<pre class="prettyprint linenums"><![CDATA[
+Map<Long, Double> sortedValueByIncreasingDate = Repository.INSTANCE.getGaugeValues(start, end, gaugeRole);
+]]></pre>
## Monitor JDBC
Modified: incubator/sirona/trunk/src/site/markdown/collector.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/collector.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/collector.md (original)
+++ incubator/sirona/trunk/src/site/markdown/collector.md Thu Nov 7 08:13:01 2013
@@ -36,9 +36,9 @@ Just use the collector `DataStoreFactory
For instance your `commons-monitoring.properties` can look like:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.store.DataStore = org.apache.sirona.collector.server.store.CollectorDataStoreFactory
-```
+]]></pre>
The `GaugeDataStore` can be configured through `org.apache.sirona.collector.gauge.store-class` property.
By default it uses the in memory implementation but you can set your own one if you want.
@@ -59,12 +59,42 @@ The input is an array of event. Events a
Here is an array with a single gauge:
-```json
-[{"type": "gauge","time": "-","data": {"unit":"u","marker":"client1","value":0.0,"role":"mock"}}]
-```
+<pre class="prettyprint linenums"><![CDATA[
+[
+ {
+ "type": "gauge",
+ "time": "-",
+ "data": {
+ "unit": "u",
+ "marker": "client1",
+ "value": 0.0,
+ "role": "mock"
+ }
+ }
+]
+]]></pre>
And here is an array with a single counter:
-```json
-[{"type": "counter","time": "2013-10-21T12:50:40Z","data": {"min":1.4,"unit":"ns","hits":4,"max":2.9,"marker":"client1","name":"test","concurrency":0,"m2":1.4099999999999997,"sum":8.2,"mean":2.05,"role":"performances","variance":0.4699999999999999}}]
-```
+<pre class="prettyprint linenums"><![CDATA[
+[
+ {
+ "type": "counter",
+ "time": "2013-10-21T12:50:40Z",
+ "data": {
+ "min": 1.4,
+ "unit": "ns",
+ "hits": 4,
+ "max": 2.9,
+ "marker": "client1",
+ "name": "test",
+ "concurrency": 0,
+ "m2": 1.4099999999999997,
+ "sum": 8.2,
+ "mean": 2.05,
+ "role": "performances",
+ "variance": 0.4699999999999999
+ }
+ }
+]
+]]></pre>
Modified: incubator/sirona/trunk/src/site/markdown/concepts.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/concepts.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/concepts.md (original)
+++ incubator/sirona/trunk/src/site/markdown/concepts.md Thu Nov 7 08:13:01 2013
@@ -20,59 +20,66 @@ under the License.
The repository is a singleton for the JVM. It is the entry point to get access to counters and gauges.
- public interface Repository extends Iterable<Counter> {
- Counter getCounter(Counter.Key key);
- void clear();
- StopWatch start(Counter counter);
-
- Map<Long, Double> getGaugeValues(long start, long end, Role role);
- void stopGauge(Role role);
- }
+<pre class="prettyprint linenums"><![CDATA[
+public interface Repository extends Iterable<Counter> {
+ Counter getCounter(Counter.Key key);
+ void clear();
+ StopWatch start(Counter counter);
+
+ Map<Long, Double> getGaugeValues(long start, long end, Role role);
+ void stopGauge(Role role);
+}
+]]></pre>
# Counter
A counter is a statistic and concurrency holder. It aggregates the information provided computing
the average, min, max, sum of logs, ....
-
- public interface Counter {
- Key getKey();
- void reset();
-
- void add(double delta);
-
- AtomicInteger currentConcurrency();
- int getMaxConcurrency();
-
- double getMax();
- double getMin();
- long getHits();
- double getSum();
- double getStandardDeviation();
- double getVariance();
- double getMean();
- double getSecondMoment();
- }
+<pre class="prettyprint linenums"><![CDATA[
+public interface Counter {
+ Key getKey();
+ void reset();
+
+ void add(double delta);
+
+ AtomicInteger currentConcurrency();
+ int getMaxConcurrency();
+
+ double getMax();
+ double getMin();
+ long getHits();
+ double getSum();
+ double getStandardDeviation();
+ double getVariance();
+ double getMean();
+ double getSecondMoment();
+}
+]]></pre>
# Gauge
A gauge is a way to get a measure. It is intended to get a history of a metric.
- public interface Gauge {
- Role role();
- double value();
- long period();
- }
+<pre class="prettyprint linenums"><![CDATA[
+public interface Gauge {
+ Role role();
+ double value();
+ long period();
+}
+]]></pre>
# StopWatch
A StopWatch is just a handler for a measure with a counter.
- public interface StopWatch {
- long getElapsedTime();
+<pre class="prettyprint linenums"><![CDATA[
+public interface StopWatch {
+ long getElapsedTime();
- StopWatch stop();
- }
+ StopWatch stop();
+}
+]]></pre>
# Node status
@@ -82,11 +89,11 @@ and `META-INF/services/org.apache.sirona
`Validation` API is the following one:
-```java
+<pre class="prettyprint linenums"><![CDATA[
public interface Validation {
ValidationResult validate();
}
-```
+]]></pre>
A `ValidationResult` is just a message, a validation name and a status. It is aggregated by node to compute
the node status keeping the lowest of all statuses of validation results.
Modified: incubator/sirona/trunk/src/site/markdown/cube.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/cube.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/cube.md (original)
+++ incubator/sirona/trunk/src/site/markdown/cube.md Thu Nov 7 08:13:01 2013
@@ -31,9 +31,9 @@ org.apache.sirona.cube.CubeBuilder.colle
For instance your `commons-monitoring.properties` can look like:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.cube.CubeBuilder.collector = http://localhost:1234/collector/1.0/event/put
-```
+]]></pre>
## DataStore
@@ -41,9 +41,9 @@ To push metrics (Gauges + Counters) to C
Simply add to `commons-monitoring.properties` the line:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.store.DataStore = org.apache.sirona.cube.CubeDataStore
-```
+]]></pre>
### Counters
Modified: incubator/sirona/trunk/src/site/markdown/graphite.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/graphite.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/graphite.md (original)
+++ incubator/sirona/trunk/src/site/markdown/graphite.md Thu Nov 7 08:13:01 2013
@@ -28,19 +28,20 @@ Graphite module allows to push counters
For instance your `commons-monitoring.properties` can look like:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.graphite.GraphiteBuilder.address = localhost
org.apache.sirona.graphite.GraphiteBuilder.port = 1234
-```
+]]></pre>
+
## DataStore
To push metrics (Gauges + Counters) to Graphite you can use the dedicated `DataStore`: `org.apache.sirona.graphite.GraphiteDataStore`.
Simply add to `commons-monitoring.properties` the line:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.store.DataStore = org.apache.sirona.graphite.GraphiteDataStore
-```
+]]></pre>
### Counters
Modified: incubator/sirona/trunk/src/site/markdown/instrumentation.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/instrumentation.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/instrumentation.md (original)
+++ incubator/sirona/trunk/src/site/markdown/instrumentation.md Thu Nov 7 08:13:01 2013
@@ -27,9 +27,9 @@ to use javassist you set it to `org.apac
Then the API is quite simple:
-```java
+<pre class="prettyprint linenums"><![CDATA[
final MyClient client = MonitoringProxyFactory.monitor(MyClient.class, getMyClientInstance());
-```
+]]></pre>
# CDI
@@ -37,14 +37,15 @@ You just need to decorate your CDI bean/
For instance:
-
- @Monitored
- @ApplicationScoped
- public class MyMonitoredBean {
- public void myMethod() {
- // ...
- }
+<pre class="prettyprint linenums"><![CDATA[
+@Monitored
+@ApplicationScoped
+public class MyMonitoredBean {
+ public void myMethod() {
+ // ...
}
+}
+]]></pre>
Note: in some (old) CDI implementation you'll need to activate the monitoring interceptor: `org.apache.sirona.cdi.SironaInterceptor`.
@@ -53,22 +54,24 @@ value is a list of predicate (`regex:<re
For instance:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.cdi.performance = prefix:org.superbiz.MyService,regex:.*Bean
-```
+]]></pre>
# Spring
Using `org.apache.sirona.spring.BeanNameMonitoringAutoProxyCreator` you can automatically
add monitoring to selected beans.
- <bean class="org.apache.sirona.spring.BeanNameMonitoringAutoProxyCreator">
- <property name="beanNames">
- <list>
- <value>*Service</value>
- </list>
- </property>
- </bean>
+<pre class="prettyprint linenums"><![CDATA[
+<bean class="org.apache.sirona.spring.BeanNameMonitoringAutoProxyCreator">
+ <property name="beanNames">
+ <list>
+ <value>*Service</value>
+ </list>
+ </property>
+</bean>
+]]></pre>
An alternative is to use `org.apache.sirona.spring.PointcutMonitoringAutoProxyCreator` which uses
a `org.springframework.aop.Pointcut` to select beans to monitor.
@@ -78,18 +81,20 @@ a `org.springframework.aop.Pointcut` to
To use AspectJ weaver (it works with build time enhancement too but it is often less relevant) just configure a custom
concrete aspect defining the pointcut to monitor:
- <aspectj>
- <aspects>
- <concrete-aspect name="org.apache.commons.aspectj.MyMonitoringAspectJ"
- extends="org.apache.sirona.aspectj.SironaAspect">
- <pointcut name="pointcut" expression="execution(* org.apache.sirona.aspectj.AspectJMonitoringTest$MonitorMe.*(..))"/>
- </concrete-aspect>
- </aspects>
-
- <weaver>
- <include within="org.apache.sirona.aspectj.AspectJMonitoringTest$MonitorMe"/>
- </weaver>
- </aspectj>
+<pre class="prettyprint linenums"><![CDATA[
+<aspectj>
+ <aspects>
+ <concrete-aspect name="org.apache.commons.aspectj.MyMonitoringAspectJ"
+ extends="org.apache.sirona.aspectj.SironaAspect">
+ <pointcut name="pointcut" expression="execution(* org.apache.sirona.aspectj.AspectJMonitoringTest$MonitorMe.*(..))"/>
+ </concrete-aspect>
+ </aspects>
+
+ <weaver>
+ <include within="org.apache.sirona.aspectj.AspectJMonitoringTest$MonitorMe"/>
+ </weaver>
+</aspectj>
+]]></pre>
See [AspectJ documentation](http://eclipse.org/aspectj/doc/next/progguide/language-joinPoints.html) for more information.
@@ -107,23 +112,23 @@ Here a sample of the behavior associated
`threshold` to 100 milliseconds. If `xxx ms` represent an invocation of xxx milliseconds and `*` represent a call
which was measured, here is an invocation sequence:
- ```
- 500 ms*
- 5 ms*
- 500 ms
- 500 ms
- 500 ms
- 500 ms
- 500 ms
- 20 ms*
- 200 ms
- 200 ms
- 200 ms
- 200 ms
- 200 ms
- 500 ms*
- 500 ms*
- ```
+<pre class="prettyprint linenums"><![CDATA[
+500 ms*
+5 ms*
+500 ms
+500 ms
+500 ms
+500 ms
+500 ms
+20 ms*
+200 ms
+200 ms
+200 ms
+200 ms
+200 ms
+500 ms*
+500 ms*
+]]></pre>
Note: the idea is to reduce the overhead of the interception. This is pretty efficient in general but particularly with AspectJ.
Note 2: if your invocations are pretty unstable this is not really usable since since you'll not get a good threshold value.
Modified: incubator/sirona/trunk/src/site/markdown/jpa.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/jpa.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/jpa.md (original)
+++ incubator/sirona/trunk/src/site/markdown/jpa.md Thu Nov 7 08:13:01 2013
@@ -29,7 +29,7 @@ If you have in your environment a single
case of if you want to force the implementation set the property `org.apache.sirona.jpa.provider`
to the real implementation you want. For instance:
-```xml
+<pre class="prettyprint linenums"><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0"
xmlns="http://java.sun.com/xml/ns/persistence"
@@ -45,6 +45,6 @@ to the real implementation you want. For
</properties>
</persistence-unit>
</persistence>
-```
+]]></pre>
Note: it works for JTA transaction-type units too.
Modified: incubator/sirona/trunk/src/site/markdown/jta.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/jta.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/jta.md (original)
+++ incubator/sirona/trunk/src/site/markdown/jta.md Thu Nov 7 08:13:01 2013
@@ -25,14 +25,16 @@ This module aims to monitor commits/roll
`sirona-jta` should be added to your webapp. You need to register the jta gauges. To do it the easiest is
to add `commons-monitoring-web` to your webapp and register the listener `org.apache.sirona.web.discovery.GaugeDiscoveryListener`:
- <web-app xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- version="2.5">
- <listener>
- <listener-class>org.apache.sirona.web.discovery.GaugeDiscoveryListener</listener-class>
- </listener>
- </web-app>
+<pre class="prettyprint linenums"><![CDATA[
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+ version="2.5">
+ <listener>
+ <listener-class>org.apache.sirona.web.discovery.GaugeDiscoveryListener</listener-class>
+ </listener>
+</web-app>
+]]></pre>
Note: you can register it manually using `org.apache.sirona.gauges.Gauge$LoaderHelper` or `org.apache.sirona.repositories.Repository#addGauge`.
Note 2: in a servlet 3 container it is done automatically if `org.apache.sirona.web.activated` is true (by default)
@@ -48,6 +50,6 @@ and listing predicates as values (see CD
For instance:
-```
+<pre class="prettyprint linenums"><![CDATA[
org.apache.sirona.cdi.jta = prefix:org.superbiz.MyService,regex:.*Bean
-```
+]]></pre>
Modified: incubator/sirona/trunk/src/site/markdown/plugins.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/plugins.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/plugins.md (original)
+++ incubator/sirona/trunk/src/site/markdown/plugins.md Thu Nov 7 08:13:01 2013
@@ -34,12 +34,14 @@ What is GaugeFactory designed for? Imagi
several times with different parameters. If you use Gauge SPI you'll need to do N implementations (which makes the parameters useless).
With GaugeFactory you just need to return the built instances:
- public class MyGaugeFactory implements GaugeFactory {
- @Override
- public Gauge[] gauges() {
- return new Gauge[] { new MyGauge(1); new MyGauge(2); };
- }
+<pre class="prettyprint linenums"><![CDATA[
+public class MyGaugeFactory implements GaugeFactory {
+ @Override
+ public Gauge[] gauges() {
+ return new Gauge[] { new MyGauge(1); new MyGauge(2); };
}
+}
+]]></pre>
## Extend the reporting GUI
@@ -48,11 +50,13 @@ relies on java ServiceLoader (SPI) mecan
Here is the Plugin interface:
- public interface Plugin {
- String name();
- Class<?> endpoints();
- String mapping();
- }
+<pre class="prettyprint linenums"><![CDATA[
+public interface Plugin {
+ String name();
+ Class<?> endpoints();
+ String mapping();
+}
+]]></pre>
A plugin has basically a name (what will identify it in the webapp and in the GUI - it will be the name of the plugin tab),
@@ -64,37 +68,40 @@ To make it more concrete we'll use a sam
So first we define our HelloPlugin:
- public class HelloPlugin implements Plugin {
- public String name() {
- return "Hello";
- }
-
- public Class<?> endpoints() {
- return HelloEndpoints.class;
- }
-
- public String mapping() {
- return "/hello";
- }
+<pre class="prettyprint linenums"><![CDATA[
+public class HelloPlugin implements Plugin {
+ public String name() {
+ return "Hello";
+ }
+
+ public Class<?> endpoints() {
+ return HelloEndpoints.class;
}
+ public String mapping() {
+ return "/hello";
+ }
+}
+]]></pre>
+
### Define the endpoints
The `HelloEndpoints` class defines all the urls accessible for the hello plugin. It uses the `org.apache.sirona.reporting.web.handler.api.Regex`
annotation:
+<pre class="prettyprint linenums"><![CDATA[
+public class HelloEndpoints {
+ @Regex // will match "/hello"
+ public Template home() {
+ return new Template("hello/home.vm", new MapBuilder<String, Object>().set("name", "world).build());
+ }
- public class HelloEndpoints {
- @Regex // will match "/hello"
- public Template home() {
- return new Template("hello/home.vm", new MapBuilder<String, Object>().set("name", "world).build());
- }
-
- @Regex("/world/([0-9]*)/([0-9]*)") // will match "/hello/world/1/2"
- public String jsonWorld(final long start, final long end) {
- return "{ \"name\": \world\", \"start\":\"" + long1 + "\",\"end\":\"" + long2 + "\"}";
- }
+ @Regex("/world/([0-9]*)/([0-9]*)") // will match "/hello/world/1/2"
+ public String jsonWorld(final long start, final long end) {
+ return "{ \"name\": \world\", \"start\":\"" + long1 + "\",\"end\":\"" + long2 + "\"}";
}
+}
+]]></pre>
The first home method uses a template. The GUI relies on velocity and html templates needs to be in the classloader in templates directory.
@@ -103,10 +110,12 @@ So basically the home method will search
Here is a sample:
- <h1>Hello</h1>
- <div>
- Welcome to $name
- </div>
+<pre class="prettyprint linenums"><![CDATA[
+<h1>Hello</h1>
+<div>
+ Welcome to $name
+</div>
+]]></pre>
If you need resources put them in the classloader too in "resources" folder.
@@ -114,10 +123,12 @@ Note: if you want to do links in the tem
If you want to filter some resources you can add a custom endpoint:
- @Regex("/resources/myresource.css")
- public void filterCss(final TemplateHelper helper) {
- helper.renderPlain("/resources/myresource.css");
- }
+<pre class="prettyprint linenums"><![CDATA[
+@Regex("/resources/myresource.css")
+public void filterCss(final TemplateHelper helper) {
+ helper.renderPlain("/resources/myresource.css");
+}
+]]></pre>
#### `@Regex`
Modified: incubator/sirona/trunk/src/site/markdown/reporting.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/reporting.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/reporting.md (original)
+++ incubator/sirona/trunk/src/site/markdown/reporting.md Thu Nov 7 08:13:01 2013
@@ -33,30 +33,32 @@ Note 2: if you use commons-monitoring-jd
Just adding commons-monitoring-reporting jar (classifier `classes` if you use maven) in your application
you can embed it. You'll need to update your web.xml to declare the monitoring filter:
- <web-app xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- version="2.5">
-
- <listener>
- <listener-class>org.apache.sirona.reporting.web.listener.MonitoringListener</listener-class>
- </listener>
-
- <filter>
- <filter-name>Monitoring</filter-name>
- <filter-class>org.apache.sirona.reporting.web.MonitoringController</filter-class>
- <init-param> <!-- should match your filter mapping base -->
- <param-name>monitoring-mapping</param-name>
- <param-value>/monitoring/</param-value>
- </init-param>
- </filter>
-
- <filter-mapping>
- <filter-name>Monitoring</filter-name>
- <url-pattern>/monitoring/*</url-pattern>
- </filter-mapping>
+<pre class="prettyprint linenums"><![CDATA[
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+ version="2.5">
+
+ <listener>
+ <listener-class>org.apache.sirona.reporting.web.listener.MonitoringListener</listener-class>
+ </listener>
+
+ <filter>
+ <filter-name>Monitoring</filter-name>
+ <filter-class>org.apache.sirona.reporting.web.MonitoringController</filter-class>
+ <init-param> <!-- should match your filter mapping base -->
+ <param-name>monitoring-mapping</param-name>
+ <param-value>/monitoring/</param-value>
+ </init-param>
+ </filter>
+
+ <filter-mapping>
+ <filter-name>Monitoring</filter-name>
+ <url-pattern>/monitoring/*</url-pattern>
+ </filter-mapping>
- </web-app>
+</web-app>
+]]></pre>
Note: in a servlet 3.0 container you can just configure it through init parameters:
Modified: incubator/sirona/trunk/src/site/markdown/web.md
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/markdown/web.md?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/markdown/web.md (original)
+++ incubator/sirona/trunk/src/site/markdown/web.md Thu Nov 7 08:13:01 2013
@@ -28,14 +28,16 @@ Add commons-monitoring-web to your webap
Simply add the filter `org.apache.sirona.web.servlet.MonitoringFilter`:
- <filter>
- <filter-name>monitoring-request</filter-name>
- <filter-class>org.apache.sirona.web.servlet.MonitoringFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>monitoring-request</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
+<pre class="prettyprint linenums"><![CDATA[
+<filter>
+ <filter-name>monitoring-request</filter-name>
+ <filter-class>org.apache.sirona.web.servlet.MonitoringFilter</filter-class>
+</filter>
+<filter-mapping>
+ <filter-name>monitoring-request</filter-name>
+ <url-pattern>/*</url-pattern>
+</filter-mapping>
+]]></pre>
Note: in a servlet 3 container you can simply configure `org.apache.sirona.web.monitored-urls` to the
servlet pattern you want to match. If you want to register the `MonitoringFilter` yourself just set the
@@ -45,9 +47,11 @@ init parameter `org.apache.sirona.web.ac
Simply add the listener `org.apache.sirona.web.servlet.MonitoringFilter`:
- <listener>
- <listener-class>org.apache.sirona.web.session.MonitoringSessionListener</listener-class>
- </listener>
+<pre class="prettyprint linenums"><![CDATA[
+<listener>
+ <listener-class>org.apache.sirona.web.session.MonitoringSessionListener</listener-class>
+</listener>
+]]></pre>
Note: in a servlet 3 container and if `org.apache.sirona.web.activated` is not set to false it is added by default.
Modified: incubator/sirona/trunk/src/site/site.xml
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/src/site/site.xml?rev=1539545&r1=1539544&r2=1539545&view=diff
==============================================================================
--- incubator/sirona/trunk/src/site/site.xml (original)
+++ incubator/sirona/trunk/src/site/site.xml Thu Nov 7 08:13:01 2013
@@ -15,15 +15,15 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="Apache Common Monitoring"
+<project name="Apache Sirona"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/DECORATION/1.0.1"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.1
http://maven.apache.org/xsd/decoration-1.0.1.xsd">
<bannerLeft>
- <name>Apache Commons</name>
+ <name>Apache Sirona</name>
<src>/images/commons-logo.png</src>
- <alt>Apache Commons logo</alt>
+ <alt>Apache Sirona logo</alt>
<href>/index.html</href>
</bannerLeft>
@@ -31,7 +31,6 @@
<fluidoSkin>
<topBarEnabled>true</topBarEnabled>
<topBarIcon />
- <sideBarEnabled>false</sideBarEnabled>
<sourceLineNumbersEnabled>true</sourceLineNumbersEnabled>
</fluidoSkin>
</custom>