You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by dg...@apache.org on 2021/09/10 08:44:30 UTC
[unomi] 01/01: UNOMI-507 : drop old performance tests module
This is an automated email from the ASF dual-hosted git repository.
dgriffon pushed a commit to branch remove-performance-tests
in repository https://gitbox.apache.org/repos/asf/unomi.git
commit ca4dbf95863003a5de3a91383ad2020d38df1346
Author: David Griffon <dg...@jahia.com>
AuthorDate: Fri Sep 10 10:44:15 2021 +0200
UNOMI-507 : drop old performance tests module
---
.gitignore | 1 -
BUILDING | 2 +-
buildAndRun.sh | 2 +-
buildAndRunNoTests.sh | 2 +-
generate-package.sh | 2 +-
.../src/main/asciidoc/building-and-deploying.adoc | 20 +-
performance-tests/.benchmarks.mv.db | Bin 16384 -> 0 bytes
performance-tests/pom.xml | 180 -----------------
.../apache/unomi/performancetests/BasicTest.java | 190 ------------------
.../resources/bodies/ContextLoad_request_0.json | 47 -----
.../resources/bodies/ContextLoad_request_1.json | 173 -----------------
.../src/test/resources/bodies/Form_request.json | 35 ----
.../src/test/resources/bodies/Search_request.json | 43 ----
.../test/resources/bodies/UserLogin_request.json | 27 ---
.../resources/bodies/admin/campaigns/average.json | 27 ---
.../bodies/admin/campaigns/engaged-users.json | 28 ---
.../resources/bodies/admin/campaigns/events.json | 29 ---
.../resources/bodies/admin/campaigns/events2.json | 40 ----
.../bodies/admin/campaigns/goal-report.json | 9 -
.../resources/bodies/admin/campaigns/goals.json | 29 ---
.../resources/bodies/admin/campaigns/list.json | 21 --
.../admin/campaigns/timeline-primary-goal.json | 47 -----
.../resources/bodies/admin/campaigns/timeline.json | 36 ----
.../admin/segments/segment-profile-count.json | 8 -
.../bodies/admin/segments/segment-query.json | 38 ----
.../bodies/admin/site-dashboard/goal-report.json | 9 -
.../bodies/admin/site-dashboard/goals.json | 28 ---
.../admin/site-dashboard/timeline-all-visits.json | 25 ---
.../admin/site-dashboard/timeline-new-visits.json | 33 ----
.../src/test/resources/data/ipList.txt | 6 -
.../src/test/resources/data/linklist.txt | 202 -------------------
.../src/test/resources/data/urllist.txt | 203 -------------------
.../src/test/resources/data/userAgent.txt | 18 --
.../src/test/resources/data/words.txt | 101 ----------
performance-tests/src/test/resources/gatling.conf | 155 ---------------
performance-tests/src/test/resources/logback.xml | 37 ----
performance-tests/src/test/resources/recorder.conf | 51 -----
performance-tests/src/test/scala/Engine.scala | 30 ---
.../src/test/scala/IDEPathHelper.scala | 39 ----
performance-tests/src/test/scala/Recorder.scala | 29 ---
.../src/test/scala/unomi/AdminScenario.scala | 216 ---------------------
.../src/test/scala/unomi/AdminSimulation.scala | 43 ----
.../src/test/scala/unomi/FullSimulation.scala | 44 -----
.../src/test/scala/unomi/Parameters.scala | 53 -----
.../src/test/scala/unomi/PrepareIndices.scala | 68 -------
.../src/test/scala/unomi/UserScenario.scala | 144 --------------
.../src/test/scala/unomi/UserSimulation.scala | 45 -----
pom.xml | 10 -
release-audit.sh | 2 +-
update-notice.sh | 2 +-
50 files changed, 7 insertions(+), 2622 deletions(-)
diff --git a/.gitignore b/.gitignore
index 6edcc38..3aef7a6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,7 +9,6 @@ node
/**/.idea
*.iml
.DS_Store
-/performance-tests/.cache
maven-metadata-local.xml
GeoLite2-City.mmdb
allCountries.zip
diff --git a/BUILDING b/BUILDING
index dddb2d8..55173c6 100644
--- a/BUILDING
+++ b/BUILDING
@@ -44,7 +44,7 @@ Building
This will compile Apache Unomi and run all of the tests in the
Apache Unomi source distribution. Alternatively, you can run
- $> mvn -P \!integration-tests,\!performance-tests clean install
+ $> mvn -P \!integration-tests clean install
This will compile Apache Unomi without running the tests and takes less
time to build.
diff --git a/buildAndRun.sh b/buildAndRun.sh
index 69106f4..df085ae 100755
--- a/buildAndRun.sh
+++ b/buildAndRun.sh
@@ -23,7 +23,7 @@ PROGNAME=`basename "$0"`
if [ -f "$DIRNAME/setenv.sh" ]; then
. "$DIRNAME/setenv.sh"
fi
-mvn clean install -P integration-tests,performance-tests,rat
+mvn clean install -P integration-tests,rat
if [ $? -ne 0 ]
then
exit 1;
diff --git a/buildAndRunNoTests.sh b/buildAndRunNoTests.sh
index 427e7a2..e3b2ece 100755
--- a/buildAndRunNoTests.sh
+++ b/buildAndRunNoTests.sh
@@ -23,7 +23,7 @@ PROGNAME=`basename "$0"`
if [ -f "$DIRNAME/setenv.sh" ]; then
. "$DIRNAME/setenv.sh"
fi
-mvn clean install -P \!integration-tests,\!performance-tests,rat,\!run-tests -DskipTests
+mvn clean install -P \!integration-tests,rat,\!run-tests -DskipTests
if [ $? -ne 0 ]
then
exit 1;
diff --git a/generate-package.sh b/generate-package.sh
index 7e452e1..73084b9 100755
--- a/generate-package.sh
+++ b/generate-package.sh
@@ -18,5 +18,5 @@
#
################################################################################
echo Building...
-mvn clean install -P !integration-tests,!performance-tests,rat
+mvn clean install -P !integration-tests,rat
echo Package building completed.
diff --git a/manual/src/main/asciidoc/building-and-deploying.adoc b/manual/src/main/asciidoc/building-and-deploying.adoc
index 19d9a8d..21d1fba 100644
--- a/manual/src/main/asciidoc/building-and-deploying.adoc
+++ b/manual/src/main/asciidoc/building-and-deploying.adoc
@@ -43,7 +43,7 @@ This will compile Apache Unomi and run all of the tests in the
+
[source]
----
- $> mvn -P \!integration-tests,\!performance-tests clean install
+ $> mvn -P \!integration-tests clean install
----
+
This will compile Apache Unomi without running the tests and takes less
@@ -213,24 +213,6 @@ To run the tests simply activate the following profile :
mvn -P integration-tests clean install
----
-==== Running the performance tests
-
-Performance tests are based on Gatling. You need to have a running context server or cluster of servers before
-executing the tests.
-
-Test parameteres are editable in the performance-tests/src/test/scala/unomi/Parameters.scala file. baseUrls should
-contains the URLs of all your cluster nodes
-
-Run the test by using the gatling.conf file in performance-tests/src/test/resources :
-
-[source]
-----
- export GATLING_CONF=<path>/performance-tests/src/test/resources
- gatling.sh
-----
-
-Reports are generated in performance-tests/target/results.
-
==== Testing with an example page
A default test page is provided at the following URL:
diff --git a/performance-tests/.benchmarks.mv.db b/performance-tests/.benchmarks.mv.db
deleted file mode 100644
index f3dffdd..0000000
Binary files a/performance-tests/.benchmarks.mv.db and /dev/null differ
diff --git a/performance-tests/pom.xml b/performance-tests/pom.xml
deleted file mode 100644
index d0c799a..0000000
--- a/performance-tests/pom.xml
+++ /dev/null
@@ -1,180 +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.
- -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.unomi</groupId>
- <artifactId>unomi-root</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
- <artifactId>unomi-performance-tests</artifactId>
- <name>Apache Unomi :: Performance Tests</name>
- <description>Apache Unomi Context Server performance tests</description>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.unomi</groupId>
- <artifactId>unomi-wab</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.unomi</groupId>
- <artifactId>unomi</artifactId>
- <version>${project.version}</version>
- <type>tar.gz</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpclient-osgi</artifactId>
- <type>bundle</type>
- </dependency>
- <dependency>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpcore-osgi</artifactId>
- </dependency>
-
- <!-- Dependencies for pax exam karaf container -->
- <dependency>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>pax-exam-container-karaf</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>pax-exam-junit4</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>pax-exam</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.ops4j.pax.url</groupId>
- <artifactId>pax-url-aether</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>javax.inject</groupId>
- <artifactId>javax.inject</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.carrotsearch</groupId>
- <artifactId>junit-benchmarks</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.h2database</groupId>
- <artifactId>h2</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>io.gatling</groupId>
- <artifactId>gatling-app</artifactId>
- </dependency>
- <dependency>
- <groupId>io.gatling</groupId>
- <artifactId>gatling-recorder</artifactId>
- </dependency>
- <dependency>
- <groupId>io.gatling.highcharts</groupId>
- <artifactId>gatling-charts-highcharts</artifactId>
- </dependency>
- <dependency>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-library</artifactId>
- </dependency>
-
- </dependencies>
-
- <profiles>
- <profile>
- <id>run-tests</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.servicemix.tooling</groupId>
- <artifactId>depends-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>generate-depends-file</id>
- <goals>
- <goal>generate-depends-file</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>net.alchim31.maven</groupId>
- <artifactId>scala-maven-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>testCompile</goal>
- </goals>
- <configuration>
- <args>
- <arg>-target:jvm-1.7</arg>
- <arg>-deprecation</arg>
- <arg>-feature</arg>
- <arg>-unchecked</arg>
- <arg>-language:implicitConversions</arg>
- <arg>-language:postfixOps</arg>
- </args>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
-
- </build>
- </profile>
- </profiles>
-
- <build>
- <testSourceDirectory>src/test/scala</testSourceDirectory>
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>net.alchim31.maven</groupId>
- <artifactId>scala-maven-plugin</artifactId>
- <version>${scala-maven-plugin.version}</version>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
-</project>
\ No newline at end of file
diff --git a/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java b/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java
deleted file mode 100644
index 59d4dd3..0000000
--- a/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java
+++ /dev/null
@@ -1,190 +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.unomi.performancetests;
-
-import com.carrotsearch.junitbenchmarks.BenchmarkOptions;
-import com.carrotsearch.junitbenchmarks.BenchmarkRule;
-import com.carrotsearch.junitbenchmarks.WriterConsumer;
-import org.apache.http.HttpEntity;
-import org.apache.http.client.methods.CloseableHttpResponse;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClients;
-import org.apache.http.util.EntityUtils;
-import org.apache.unomi.api.Metadata;
-import org.apache.unomi.api.services.SegmentService;
-import org.junit.Assert;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TestRule;
-import org.junit.runner.RunWith;
-import org.ops4j.pax.exam.Configuration;
-import org.ops4j.pax.exam.Option;
-import org.ops4j.pax.exam.junit.PaxExam;
-import org.ops4j.pax.exam.karaf.options.KarafDistributionOption;
-import org.ops4j.pax.exam.options.MavenArtifactUrlReference;
-import org.ops4j.pax.exam.options.MavenUrlReference;
-import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
-import org.ops4j.pax.exam.spi.reactors.PerClass;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.inject.Inject;
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.util.List;
-
-import static org.ops4j.pax.exam.CoreOptions.*;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.karafDistributionConfiguration;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.keepRuntimeFolder;
-
-@RunWith(PaxExam.class)
-@ExamReactorStrategy(PerClass.class)
-public class BasicTest {
-
- private final static Logger LOGGER = LoggerFactory.getLogger(BasicTest.class);
- @Inject
- protected SegmentService segmentService;
-
- /**
- * Enables the benchmark rule.
- */
- @Rule
- public TestRule getBenchmarkRun() {
- try {
- File benchmarks = new File("../../benchmarks");
- benchmarks.mkdirs();
- return new BenchmarkRule(new WriterConsumer(new FileWriter(new File(benchmarks,"benchmark.txt"),true)));
- } catch (IOException e) {
- LOGGER.error("Cannot get benchamrks",e);
- }
- return null;
- }
-
- @Configuration
- public Option[] config() {
- MavenArtifactUrlReference karafUrl = maven()
- .groupId("org.apache.unomi")
- .artifactId("unomi")
- .type("tar.gz")
- .versionAsInProject();
-
- String localRepository = System.getProperty("org.ops4j.pax.url.mvn.localRepository");
- if (localRepository == null) {
- localRepository = "";
- }
-
- List<Option> options = new ArrayList<>();
-
- Option[] commonOptions = new Option[]{
- KarafDistributionOption.debugConfiguration("5005", false),
- KarafDistributionOption.logLevel(LogLevel.INFO),
- KarafDistributionOption.editConfigurationFilePut("etc/org.ops4j.pax.url.mvn.cfg", "org.ops4j.pax.url.mvn.localRepository", localRepository),
- karafDistributionConfiguration()
- .frameworkUrl(karafUrl)
- .unpackDirectory(new File("target/exam"))
- .useDeployFolder(false),
- keepRuntimeFolder(),
- // we need to wrap the HttpComponents libraries ourselves since the OSGi bundles provided by the project are incorrect
- wrappedBundle(mavenBundle("org.apache.httpcomponents",
- "httpcore").versionAsInProject()),
- wrappedBundle(mavenBundle("org.apache.httpcomponents",
- "httpmime").versionAsInProject()),
- wrappedBundle(mavenBundle("org.apache.httpcomponents",
- "httpclient").versionAsInProject()),
- wrappedBundle(mavenBundle("com.carrotsearch",
- "junit-benchmarks", "0.7.2")),
-// wrappedBundle(mavenBundle("com.h2database",
-// "h2", "1.4.181"))
- };
-
- options.addAll(Arrays.asList(commonOptions));
-
- if (JavaVersionUtil.getMajorVersion() >= 9) {
- Option[] jdk9PlusOptions = new Option[]{
- new VMOption("--add-reads=java.xml=java.logging"),
- new VMOption("--add-exports=java.base/org.apache.karaf.specs.locator=java.xml,ALL-UNNAMED"),
- new VMOption("--patch-module"),
- new VMOption("java.base=lib/endorsed/org.apache.karaf.specs.locator-"
- + System.getProperty("karaf.version") + ".jar"),
- new VMOption("--patch-module"), new VMOption("java.xml=lib/endorsed/org.apache.karaf.specs.java.xml-"
- + System.getProperty("karaf.version") + ".jar"),
- new VMOption("--add-opens"),
- new VMOption("java.base/java.security=ALL-UNNAMED"),
- new VMOption("--add-opens"),
- new VMOption("java.base/java.net=ALL-UNNAMED"),
- new VMOption("--add-opens"),
- new VMOption("java.base/java.lang=ALL-UNNAMED"),
- new VMOption("--add-opens"),
- new VMOption("java.base/java.util=ALL-UNNAMED"),
- new VMOption("--add-opens"),
- new VMOption("java.naming/javax.naming.spi=ALL-UNNAMED"),
- new VMOption("--add-opens"),
- new VMOption("java.rmi/sun.rmi.transport.tcp=ALL-UNNAMED"),
- new VMOption("--add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED"),
- new VMOption("--add-exports=java.base/sun.net.www.protocol.https=ALL-UNNAMED"),
- new VMOption("--add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED"),
- new VMOption("--add-exports=jdk.naming.rmi/com.sun.jndi.url.rmi=ALL-UNNAMED"),
- new VMOption("-classpath"),
- new VMOption("lib/jdk9plus/*" + File.pathSeparator + "lib/boot/*")
-
- };
- options.addAll(Arrays.asList(jdk9PlusOptions));
- }
-
- return options.toArray(new Option[0]);
- }
-
- @BenchmarkOptions(benchmarkRounds = 100, warmupRounds = 0, concurrency = 10)
- @Test
- public void testContext() throws IOException {
-
- CloseableHttpClient httpclient = HttpClients.createDefault();
- HttpGet httpGet = new HttpGet("http://localhost:8181/cxs/context.js");
- CloseableHttpResponse response = httpclient.execute(httpGet);
- // The underlying HTTP connection is still held by the response object
- // to allow the response content to be streamed directly from the network socket.
- // In order to ensure correct deallocation of system resources
- // the user MUST call CloseableHttpResponse#close() from a finally clause.
- // Please note that if response content is not fully consumed the underlying
- // connection cannot be safely re-used and will be shut down and discarded
- // by the connection manager.
- String responseContent = null;
- try {
- HttpEntity entity = response.getEntity();
- // do something useful with the response body
- // and ensure it is fully consumed
- responseContent = EntityUtils.toString(entity);
- } finally {
- response.close();
- }
- }
-
- @BenchmarkOptions(benchmarkRounds = 100, warmupRounds = 0, concurrency = 10)
- @Test
- public void testSegments() {
- Assert.assertNotNull("Segment service should be available", segmentService);
- List<Metadata> segmentMetadatas = segmentService.getSegmentMetadatas(0, 50, null).getList();
- Assert.assertNotEquals("Segment metadata list should not be empty", 0, segmentMetadatas.size());
- LOGGER.info("Retrieved " + segmentMetadatas.size() + " segment metadata entries");
- }
-
-
-
-}
diff --git a/performance-tests/src/test/resources/bodies/ContextLoad_request_0.json b/performance-tests/src/test/resources/bodies/ContextLoad_request_0.json
deleted file mode 100644
index 453f6d9..0000000
--- a/performance-tests/src/test/resources/bodies/ContextLoad_request_0.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "source": {
- "itemType": "page",
- "scope": "ACMESPACE",
- "itemId": "${pageId}",
- "properties": {
- "pageInfo": {
- "pageID": "${pageId}",
- "pageName": "${pageName}",
- "pagePath": "${pagePath}",
- "destinationURL": "${destinationURL}",
- "referringURL": "${previousURL}",
- "language": "${language}"
- },
- "category": {},
- "attributes": {}
- }
- },
- "events": [
- {
- "eventType": "view",
- "scope": "ACMESPACE",
- "source": {
- "itemType": "site",
- "scope": "ACMESPACE",
- "itemId": "1a928b07-8813-4bc6-9f55-bd00041d9a01"
- },
- "target": {
- "itemType": "page",
- "scope": "ACMESPACE",
- "itemId": "59313149-6275-4512-b3d5-9fe3c515ec7e",
- "properties": {
- "pageInfo": {
- "pageID": "${pageId}",
- "pageName": "${pageName}",
- "pagePath": "${pagePath}",
- "destinationURL": "${destinationURL}",
- "referringURL": "${previousURL}",
- "language": "${language}"
- },
- "category": {},
- "attributes": {}
- }
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/ContextLoad_request_1.json b/performance-tests/src/test/resources/bodies/ContextLoad_request_1.json
deleted file mode 100644
index f1282c6..0000000
--- a/performance-tests/src/test/resources/bodies/ContextLoad_request_1.json
+++ /dev/null
@@ -1,173 +0,0 @@
-{
- "source": {
- "itemType": "page",
- "scope": "ACMESPACE",
- "itemId": "${pageId}",
- "properties": {
- "pageInfo": {
- "pageID": "${pageId}",
- "pageName": "${pageName}",
- "pagePath": "${pagePath}",
- "destinationURL": "${destinationURL}",
- "referringURL": "${previousURL}",
- "language": "${language}"
- },
- "category": {},
- "attributes": {}
- }
- },
- "events": [
- {
- "eventType": "view",
- "scope": "ACMESPACE",
- "source": {
- "itemType": "site",
- "scope": "ACMESPACE",
- "itemId": "1a928b07-8813-4bc6-9f55-bd00041d9a01"
- },
- "target": {
- "itemType": "page",
- "scope": "ACMESPACE",
- "itemId": "59313149-6275-4512-b3d5-9fe3c515ec7e",
- "properties": {
- "pageInfo": {
- "pageID": "${pageId}",
- "pageName": "${pageName}",
- "pagePath": "${pagePath}",
- "destinationURL": "${destinationURL}",
- "referringURL": "${previousURL}",
- "language": "${language}"
- },
- "category": {},
- "attributes": {}
- }
- }
- }
- ],
- "filters": [
- {
- "filterid": "1",
- "filters": [
- {
- "appliesOn": [{}],
- "condition": {
- "parameterValues": {
- "subConditions": [
- {
- "type": "profilePropertyCondition",
- "parameterValues": {
- "propertyValuesDateExpr": [],
- "propertyName": "properties.age",
- "comparisonOperator": "greaterThan",
- "propertyValueInteger": "${age}"
- }
- }
- ],
- "operator": "and"
- },
- "type": "booleanCondition"
- }
- }
- ]
- },
- {
- "filterid": "2",
- "filters": [
- {
- "appliesOn": [{}],
- "condition": {
- "parameterValues": {
- "subConditions": [
- {
- "type": "profilePropertyCondition",
- "parameterValues": {
- "propertyValuesDateExpr": [],
- "propertyName": "properties.gender",
- "comparisonOperator": "equals",
- "propertyValue": "${gender}"
- }
- }
- ],
- "operator": "and"
- },
- "type": "booleanCondition"
- }
- }
- ]
- },
- {
- "filterid": "3",
- "filters": [
- {
- "appliesOn": [{}],
- "condition": {
- "parameterValues": {
- "subConditions": [
- {
- "type": "profilePropertyCondition",
- "parameterValues": {
- "propertyValuesDateExpr": [],
- "propertyName": "properties.age",
- "comparisonOperator": "lessThan",
- "propertyValueInteger": "${age}"
- }
- }
- ],
- "operator": "and"
- },
- "type": "booleanCondition"
- }
- }
- ]
- },
- {
- "filterid": "4",
- "filters": [
- {
- "appliesOn": [{}],
- "condition": {
- "parameterValues": {
- "subConditions": [
- {
- "type": "profilePropertyCondition",
- "parameterValues": {
- "propertyValuesDateExpr": [],
- "propertyName": "properties.income",
- "comparisonOperator": "greaterThan",
- "propertyValueInteger": "${income}"
- }
- }
- ],
- "operator": "and"
- },
- "type": "booleanCondition"
- }
- }
- ]
- },
- {
- "filterid": "5",
- "filters": [
- {
- "appliesOn": [{}],
- "condition": {
- "parameterValues": {
- "subConditions": [
- {
- "type": "profilePropertyCondition",
- "parameterValues": {
- "propertyValuesDateExpr": [],
- "propertyName": "properties.gender",
- "comparisonOperator": "missing"
- }
- }
- ],
- "operator": "and"
- },
- "type": "booleanCondition"
- }
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/Form_request.json b/performance-tests/src/test/resources/bodies/Form_request.json
deleted file mode 100644
index 1c325e3..0000000
--- a/performance-tests/src/test/resources/bodies/Form_request.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "events": [
- {
- "scope": "ACMESPACE",
- "eventType": "form",
- "source": {
- "itemType": "page",
- "scope": "ACMESPACE",
- "itemId": "${pageId}",
- "properties": {
- "pageInfo": {
- "pageID": "${pageId}",
- "pageName": "${pageName}",
- "pagePath": "${pagePath}",
- "destinationURL": "${destinationURL}",
- "referringURL": "${previousURL}",
- "language": "${language}"
- },
- "category": {},
- "attributes": {}
- }
- },
- "target": {
- "itemType": "form",
- "scope": "ACMESPACE",
- "itemId": "testForm"
- },
- "properties": {
- "gender": "${gender}",
- "age": "${age}",
- "income": "${income}"
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/Search_request.json b/performance-tests/src/test/resources/bodies/Search_request.json
deleted file mode 100644
index fda0a04..0000000
--- a/performance-tests/src/test/resources/bodies/Search_request.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "events": [
- {
- "scope": "ACMESPACE",
- "eventType": "form",
- "source": {
- "itemType": "page",
- "scope": "ACMESPACE",
- "itemId": "${pageId}",
- "properties": {
- "pageInfo": {
- "pageID": "${pageId}",
- "pageName": "${pageName}",
- "pagePath": "${pagePath}",
- "destinationURL": "${destinationURL}",
- "referringURL": "${previousURL}",
- "language": "${language}"
- },
- "category": {},
- "attributes": {}
- }
- },
- "target": {
- "itemType": "form",
- "scope": "ACMESPACE",
- "itemId": "searchForm"
- },
- "properties": {
- "jcrMethodToCall": "get",
- "src_originSiteKey": "ACMESPACE",
- "src_terms[0].term": "${word}",
- "src_terms[0].applyFilter": "true",
- "src_terms[0].match": "all_words",
- "src_terms[0].fields.siteContent": "true",
- "src_terms[0].fields.tags": "true",
- "src_terms[0].fields.files": "true",
- "src_sites.values": "ACMESPACE",
- "src_sitesForReferences.values": "systemsite",
- "src_languages.values": "en"
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/UserLogin_request.json b/performance-tests/src/test/resources/bodies/UserLogin_request.json
deleted file mode 100644
index 9745dc4..0000000
--- a/performance-tests/src/test/resources/bodies/UserLogin_request.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "events": [
- {
- "eventType": "login",
- "scope": "ACMESPACE",
- "source": {
- "itemType": "site",
- "scope": "ACMESPACE",
- "itemId": "1a928b07-8813-4bc6-9f55-bd00041d9a01"
- },
- "target": {
- "itemType": "generatedUser",
- "scope": "ACMESPACE",
- "itemId": "xxx",
- "properties": {
- "gender": "${gender}",
- "age": "${age}",
- "income": "${income}",
- "faceBookId": "${faceBookId}",
- "email": "${email}",
- "phoneNumber": "${phoneNumber}",
- "leadAssignedTo": "${leadAssignedTo}"
- }
- }
- }
- ]
-}
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/average.json b/performance-tests/src/test/resources/bodies/admin/campaigns/average.json
deleted file mode 100644
index 1ef3fae..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/average.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "type":"booleanCondition",
- "parameterValues":{
- "operator":"and",
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"systemProperties.campaigns.${campaignId}Engaged",
- "comparisonOperator":"between",
- "propertyValuesDate":[
- "${startDate}",
- "${endDate}"
- ]
- }
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/engaged-users.json b/performance-tests/src/test/resources/bodies/admin/campaigns/engaged-users.json
deleted file mode 100644
index e4f5708..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/engaged-users.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "operator":"and",
- "subConditions":[
- {
- "parameterValues":{
- "propertyName":"systemProperties.campaigns.${campaignId}Engaged",
- "comparisonOperator":"exists"
- },
- "type":"profilePropertyCondition"
- },
- {
- "parameterValues":{
- "comparisonOperator":"missing",
- "propertyName":"mergedWith"
- },
- "type":"profilePropertyCondition"
- }
- ]
- },
- "type":"booleanCondition"
- },
- "limit":10,
- "offset":0,
- "sortby":"itemId:asc",
- "text":""
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/events.json b/performance-tests/src/test/resources/bodies/admin/campaigns/events.json
deleted file mode 100644
index 91e5522..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/events.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"campaignId",
- "comparisonOperator":"equals",
- "propertyValue":"${campaignId}"
- }
- }
- ],
- "operator":"and"
- },
- "type":"booleanCondition"
- },
- "limit":10,
- "offset":0,
- "sortby":null
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/events2.json b/performance-tests/src/test/resources/bodies/admin/campaigns/events2.json
deleted file mode 100644
index 5f84435..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/events2.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"campaignId",
- "comparisonOperator":"equals",
- "propertyValue":"${campaignId}"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"eventDate",
- "comparisonOperator":"between",
- "propertyValuesDate":[
- "${startDate}",
- "${endDate}"
- ]
- }
- }
- ],
- "operator":"and"
- },
- "type":"booleanCondition"
- },
- "limit":-1,
- "offset":0,
- "sortby":null
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/goal-report.json b/performance-tests/src/test/resources/bodies/admin/campaigns/goal-report.json
deleted file mode 100644
index 8b5194a..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/goal-report.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "aggregate":{
- "type":"date",
- "property":"timeStamp",
- "parameters":{
- "interval":"1d"
- }
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/goals.json b/performance-tests/src/test/resources/bodies/admin/campaigns/goals.json
deleted file mode 100644
index 7f63c8c..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/goals.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"campaignId",
- "comparisonOperator":"equals",
- "propertyValue":"${campaignId}"
- }
- }
- ],
- "operator":"and"
- },
- "type":"booleanCondition"
- },
- "limit":50,
- "offset":0,
- "sortby":null
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/list.json b/performance-tests/src/test/resources/bodies/admin/campaigns/list.json
deleted file mode 100644
index cd60fcf..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/list.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- }
- ],
- "operator":"and"
- },
- "type":"booleanCondition"
- },
- "limit":10,
- "offset":0,
- "sortby":"endDate:asc"
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/timeline-primary-goal.json b/performance-tests/src/test/resources/bodies/admin/campaigns/timeline-primary-goal.json
deleted file mode 100644
index eb915a0..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/timeline-primary-goal.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "aggregate":{
- "type":"date",
- "parameters":{
- "interval":"1d",
- "format":"yyyy-MM-dd"
- }
- },
- "condition":{
- "type":"booleanCondition",
- "parameterValues":{
- "operator":"and",
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"systemProperties.campaigns.${campaignId}Engaged",
- "comparisonOperator":"between",
- "propertyValuesDate":[
- "${startDate}",
- "${endDate}"
- ]
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"systemProperties.goals.${primaryGoalId}TargetReached",
- "comparisonOperator":"between",
- "propertyValuesDate":[
- "${startDate}",
- "${endDate}"
- ]
- }
- }
- ]
- }
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/campaigns/timeline.json b/performance-tests/src/test/resources/bodies/admin/campaigns/timeline.json
deleted file mode 100644
index 6751bc1..0000000
--- a/performance-tests/src/test/resources/bodies/admin/campaigns/timeline.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "aggregate":{
- "type":"date",
- "parameters":{
- "interval":"1d",
- "format":"yyyy-MM-dd"
- }
- },
- "condition":{
- "type":"booleanCondition",
- "parameterValues":{
- "operator":"and",
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"systemProperties.campaigns.${campaignId}Engaged",
- "comparisonOperator":"between",
- "propertyValuesDate":[
- "${startDate}",
- "${endDate}"
- ]
- }
- }
- ]
- }
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/segments/segment-profile-count.json b/performance-tests/src/test/resources/bodies/admin/segments/segment-profile-count.json
deleted file mode 100644
index ca34f81..0000000
--- a/performance-tests/src/test/resources/bodies/admin/segments/segment-profile-count.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "type":"profilePropertyCondition",
- "parameterValues":{
- "propertyName":"segments",
- "comparisonOperator":"equals",
- "propertyValue":"${segmentId}"
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/segments/segment-query.json b/performance-tests/src/test/resources/bodies/admin/segments/segment-query.json
deleted file mode 100644
index a85b438..0000000
--- a/performance-tests/src/test/resources/bodies/admin/segments/segment-query.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "subConditions":[
- {
- "parameterValues":{
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"systemscope"
- }
- }
- ],
- "operator":"or"
- },
- "type":"booleanCondition"
- }
- ],
- "operator":"and"
- },
- "type":"booleanCondition"
- },
- "limit":10,
- "offset":0,
- "sortby":null,
- "forceRefresh":false
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/site-dashboard/goal-report.json b/performance-tests/src/test/resources/bodies/admin/site-dashboard/goal-report.json
deleted file mode 100644
index 8b5194a..0000000
--- a/performance-tests/src/test/resources/bodies/admin/site-dashboard/goal-report.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "aggregate":{
- "type":"date",
- "property":"timeStamp",
- "parameters":{
- "interval":"1d"
- }
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/site-dashboard/goals.json b/performance-tests/src/test/resources/bodies/admin/site-dashboard/goals.json
deleted file mode 100644
index 1c135d7..0000000
--- a/performance-tests/src/test/resources/bodies/admin/site-dashboard/goals.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "condition":{
- "parameterValues":{
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"metadata.scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"campaignId",
- "comparisonOperator":"missing"
- }
- }
- ],
- "operator":"and"
- },
- "type":"booleanCondition"
- },
- "limit":50,
- "offset":0,
- "sortby":null
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/site-dashboard/timeline-all-visits.json b/performance-tests/src/test/resources/bodies/admin/site-dashboard/timeline-all-visits.json
deleted file mode 100644
index 4f9865d..0000000
--- a/performance-tests/src/test/resources/bodies/admin/site-dashboard/timeline-all-visits.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "aggregate":{
- "type":"date",
- "parameters":{
- "interval":"1M",
- "format":"yyyy-MM-dd"
- }
- },
- "condition":{
- "type":"booleanCondition",
- "parameterValues":{
- "operator":"and",
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- }
- ]
- }
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/bodies/admin/site-dashboard/timeline-new-visits.json b/performance-tests/src/test/resources/bodies/admin/site-dashboard/timeline-new-visits.json
deleted file mode 100644
index 376a798..0000000
--- a/performance-tests/src/test/resources/bodies/admin/site-dashboard/timeline-new-visits.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "aggregate":{
- "type":"date",
- "parameters":{
- "interval":"1M",
- "format":"yyyy-MM-dd"
- }
- },
- "condition":{
- "type":"booleanCondition",
- "parameterValues":{
- "operator":"and",
- "subConditions":[
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"scope",
- "comparisonOperator":"equals",
- "propertyValue":"ACMESPACE"
- }
- },
- {
- "type":"sessionPropertyCondition",
- "parameterValues":{
- "propertyName":"nbOfVisits",
- "comparisonOperator":"equals",
- "propertyValueInteger":1
- }
- }
- ]
- }
- }
-}
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/data/ipList.txt b/performance-tests/src/test/resources/data/ipList.txt
deleted file mode 100644
index ecd40be..0000000
--- a/performance-tests/src/test/resources/data/ipList.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-ip
-128.101.101.101
-37.0.54.250
-128.178.50.12
-220.181.55.246
-194.153.110.160
diff --git a/performance-tests/src/test/resources/data/linklist.txt b/performance-tests/src/test/resources/data/linklist.txt
deleted file mode 100644
index b3e6b4c..0000000
--- a/performance-tests/src/test/resources/data/linklist.txt
+++ /dev/null
@@ -1,202 +0,0 @@
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 9 9 14 14 2 2 6 6 11 11 10 12 12 13 13 16 16 17 17 18 18 19 20 21 22
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 23 2 3 4 1 3 4
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 24 2 3 4 1 2
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 25 2 3 4 1 2 4
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 26 5 1 27 28 29 30 31
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 32 6 7 8 1 16 16 19 19 17 17 20 20 18 18
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 33 6 7 8 1 6 16 16 17 17 18 18 34
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 35 6 7 8 1 6 16 16 19 19 17 17 20 20 18 18 21 21
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 37 9 10 11 12 13 1 11 11 10 10 13 13 12
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 38 39 40 41 42 43 41 43 43 40
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 59 9 10 11 12 13 1 9
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 60 1 9 61 62 63 64 65 66 67 68 69 70 69
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 71 14 1
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 1 37 37 71 71 23 23 32 32 44 44 38 59 59 60 60 72 72 73 73 74 74 75 76 77 78
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 72 7
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 73 7
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 74 7
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 75
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 76
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 77
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 78
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 2 23 24 25 15 24 25
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 3 23 24 25 15 23
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 4 23 24 25 15 23 25
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 5 26 15 79 80 81 82 83
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 79 5
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 80 5
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 81 5
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 82 5
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 83 5
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 6 32 33 35 15 72 72 75 75 73 73 76 76 74 74
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 7 32 33 35 15 32 72 72 73 73 74 74 84 84
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 84 7
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 8 32 33 35 15 32 72 72 75 75 73 73 76 76 74 74 77 77
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 86 6 7 8 1 6 34 34 22 22
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 9 37 38 44 59 60 15 44 44 38 38 60 60 59 59
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 10 88 89 90 91 92 90 92 92 89
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 40 40 41 41 42 42 43 43 93 41 43 43 40
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 94 39
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 95 39
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 39
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 93 94 39
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 11 96 97 98 99 100 101 102 103 104 105 106 107 108 109 103
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 110 45 46 47 48 49 50 51 52 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 111 45 46 47 48 49 50 51 52 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 112 45 46 47 48 49 50 51 53 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 113 45 46 47 48 49 50 51 56 58 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 114 45 46 47 48 49 50 51 54 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 115 45 46 47 48 49 50 51 55 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 116 45 46 47 48 49 50 51 57 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 117 41 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 118 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 119 53 56 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 120 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 121 55 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 122 56 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 123 11
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 12 37 38 44 59 60 15 37
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 13 15 37 124 125 126 127 128 129 130 131 132 133 132
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 62 63 64
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 134 135 63 134
-1 2 3 4 5 6 7 8 9 10 11 12 13 14
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 136 136
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 66
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 65 137 137
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 68 69 70 69
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 138 139 69 138
-1 2 3 4 5 6 7 8 9 10 11 12 13 14
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 140 141 69 140
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 14 71 15
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 16 33
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 17 33
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 18 33
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 19
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 20
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 21
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 22
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 27 26
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 28 26
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 29 26
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 30 26
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 31 26
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 34 33
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 86 32 33 35 15 32 84 84 78 78
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 86 32 33 35 15 32 84 84 78 78
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 144 6 7 8 1 6 16 16 19 19 17 17 20 20 18 18 21 21
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 89 89 90 90 91 91 92 92 145 90 92 92 89
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 146 88
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 147 88
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 88
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 145 146 88
-
-
-
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 110 96 97 98 99 100 101 102 103 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 111 96 97 98 99 100 101 102 103 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 112 96 97 98 99 100 101 102 104 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 113 96 97 98 99 100 101 102 107 109 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 114 96 97 98 99 100 101 102 105 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 115 96 97 98 99 100 101 102 106 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 116 96 97 98 99 100 101 102 108 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 155 41 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 156 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 157 53 56 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 158 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 159 55 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 160 56 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 161 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 110 96 97 98 99 100 101 102 103 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 111 96 97 98 99 100 101 102 103 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 112 96 97 98 99 100 101 102 104 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 113 96 97 98 99 100 101 102 107 109 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 114 96 97 98 99 100 101 102 105 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 115 96 97 98 99 100 101 102 106 104 105 106 107 108 109 103
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 116 96 97 98 99 100 101 102 108 104 105 106 107 108 109 103
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 117 41 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 118 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 119 53 56 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 120 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 121 55 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 122 56 11
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 123 11
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 125 126 127
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 162 163 126 162
-15 23 24 25 26 32 33 35 37 38 44 59 60 71
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 164 164
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 129
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 128 165 165
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 131 132 133 132
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 166 167 132 166
-15 23 24 25 26 32 33 35 37 38 44 59 60 71
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 168 169 132 168
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 62 170 171 173 174 175 63 170
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 65
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 68 176 177 178 173 179 180 69 176
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 70 181 182 183 173 184 185 69 181
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 86 6 7 8 1 6 34 34 22 22
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 144 32 33 35 15 32 72 72 75 75 73 73 76 76 74 74 77 77
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 144 32 33 35 15 32 72 72 75 75 73 73 76 76 74 74 77 77
-
-
-
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 110 45 46 47 48 49 50 51 52 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 111 45 46 47 48 49 50 51 52 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 112 45 46 47 48 49 50 51 53 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 113 45 46 47 48 49 50 51 56 58 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 114 45 46 47 48 49 50 51 54 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 115 45 46 47 48 49 50 51 55 53 54 55 56 57 58 52
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 116 45 46 47 48 49 50 51 57 53 54 55 56 57 58 52
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 155 41 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 156 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 157 53 56 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 158 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 159 55 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 160 56 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 161 44
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 125 187 188 189 190 191 192 126 187
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 128
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 131 193 195 190 196 197 132 193
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 133 198 200 190 201 202 132 198
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 62 174 175 63 171 172 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 62 174 175 63 171 172 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 62 174 175 63 171 172 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 62 174 175 63 171 172 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 61 62 174 175 63 171 172 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 68 179 180 69 177 178 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 68 179 180 69 177 178 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 68 179 180 69 177 178 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 68 179 180 69 177 178 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 68 179 180 69 177 178 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 70 184 185 69 182 183 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 70 184 185 69 182 183 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 70 184 185 69 182 183 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 70 184 185 69 182 183 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 9 13 67 70 184 185 69 182 183 173
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 144 6 7 8 1 6 16 16 19 19 17 17 20 20 18 18 21 21
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 125 191 192 126 188 189 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 125 191 192 126 188 189 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 125 191 192 126 188 189 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 125 191 192 126 188 189 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 124 125 191 192 126 188 189 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 131 196 197 132 194 195 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 131 196 197 132 194 195 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 131 196 197 132 194 195 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 131 196 197 132 194 195 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 131 196 197 132 194 195 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 133 201 202 132 199 200 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 133 201 202 132 199 200 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 133 201 202 132 199 200 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 133 201 202 132 199 200 190
-15 23 24 25 26 32 33 35 37 38 44 59 60 71 15 37 60 130 133 201 202 132 199 200 190
diff --git a/performance-tests/src/test/resources/data/urllist.txt b/performance-tests/src/test/resources/data/urllist.txt
deleted file mode 100644
index 8574e30..0000000
--- a/performance-tests/src/test/resources/data/urllist.txt
+++ /dev/null
@@ -1,203 +0,0 @@
-pageId,pageName,pagePath,destinationURL,language
-id123,home,/sites/ACMESPACE/home,http://localhost:8080/sites/ACMESPACE/home.html,en
-id123,activities,/sites/ACMESPACE/home/activities,http://localhost:8080/sites/ACMESPACE/home/activities.html,en
-id123,space-exploration,/sites/ACMESPACE/home/activities/space-exploration,http://localhost:8080/sites/ACMESPACE/home/activities/space-exploration.html,en
-id123,page,/sites/ACMESPACE/home/activities/page,http://localhost:8080/sites/ACMESPACE/home/activities/page.html,en
-id123,events,/sites/ACMESPACE/home/events,http://localhost:8080/sites/ACMESPACE/home/events.html,en
-id123,news,/sites/ACMESPACE/home/news,http://localhost:8080/sites/ACMESPACE/home/news.html,en
-id123,corporate-news,/sites/ACMESPACE/home/news/corporate-news,http://localhost:8080/sites/ACMESPACE/home/news/corporate-news.html,en
-id123,all-acme-space-news,/sites/ACMESPACE/home/news/all-acme-space-news,http://localhost:8080/sites/ACMESPACE/home/news/all-acme-space-news.html,en
-id123,community,/sites/ACMESPACE/home/community,http://localhost:8080/sites/ACMESPACE/home/community.html,en
-id123,space-blogs,/sites/ACMESPACE/home/community/space-blogs,http://localhost:8080/sites/ACMESPACE/home/community/space-blogs.html,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html,en
-id123,publication,/sites/ACMESPACE/home/community/publication,http://localhost:8080/sites/ACMESPACE/home/community/publication.html,en
-id123,forums,/sites/ACMESPACE/home/community/forums,http://localhost:8080/sites/ACMESPACE/home/community/forums.html,en
-id123,about-us,/sites/ACMESPACE/home/about-us,http://localhost:8080/sites/ACMESPACE/home/about-us.html,en
-id123,home,/sites/ACMESPACE/home,http://localhost:8080/fr/sites/ACMESPACE/home.html,fr
-id123,news_36-3.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36-3.detail,http://localhost:8080/sites/ACMESPACE/home/news/corporate-news/main/news_36-3.detail.html,en
-id123,news_36-2.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36-2.detail,http://localhost:8080/sites/ACMESPACE/home/news/corporate-news/main/news_36-2.detail.html,en
-id123,news_36.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36.detail,http://localhost:8080/sites/ACMESPACE/home/news/corporate-news/main/news_36.detail.html,en
-id123,news_36-2.detail,/sites/ACMESPACE/contents/projects-news/news_36-2.detail,http://localhost:8080/sites/ACMESPACE/contents/projects-news/news_36-2.detail.html,en
-id123,news_36-3.detail,/sites/ACMESPACE/contents/projects-news/news_36-3.detail,http://localhost:8080/sites/ACMESPACE/contents/projects-news/news_36-3.detail.html,en
-id123,news_36.detail,/sites/ACMESPACE/contents/projects-news/news_36.detail,http://localhost:8080/sites/ACMESPACE/contents/projects-news/news_36.detail.html,en
-id123,news_36-1.detail,/sites/ACMESPACE/contents/projects-news/news_36-1.detail,http://localhost:8080/sites/ACMESPACE/contents/projects-news/news_36-1.detail.html,en
-id123,activities,/sites/ACMESPACE/home/activities,http://localhost:8080/fr/sites/ACMESPACE/home/activities.html,fr
-id123,space-exploration,/sites/ACMESPACE/home/activities/space-exploration,http://localhost:8080/fr/sites/ACMESPACE/home/activities/space-exploration.html,fr
-id123,page,/sites/ACMESPACE/home/activities/page,http://localhost:8080/fr/sites/ACMESPACE/home/activities/page.html,fr
-id123,events,/sites/ACMESPACE/home/events,http://localhost:8080/fr/sites/ACMESPACE/home/events.html,fr
-id123,event_16.detail,/sites/ACMESPACE/home/events/events/event_16.detail,http://localhost:8080/sites/ACMESPACE/home/events/events/event_16.detail.html,en
-id123,event_12.detail,/sites/ACMESPACE/home/events/events/event_12.detail,http://localhost:8080/sites/ACMESPACE/home/events/events/event_12.detail.html,en
-id123,event_14.detail,/sites/ACMESPACE/home/events/events/event_14.detail,http://localhost:8080/sites/ACMESPACE/home/events/events/event_14.detail.html,en
-id123,event_13.detail,/sites/ACMESPACE/home/events/events/event_13.detail,http://localhost:8080/sites/ACMESPACE/home/events/events/event_13.detail.html,en
-id123,event_15.detail,/sites/ACMESPACE/home/events/events/event_15.detail,http://localhost:8080/sites/ACMESPACE/home/events/events/event_15.detail.html,en
-id123,news,/sites/ACMESPACE/home/news,http://localhost:8080/fr/sites/ACMESPACE/home/news.html,fr
-id123,corporate-news,/sites/ACMESPACE/home/news/corporate-news,http://localhost:8080/fr/sites/ACMESPACE/home/news/corporate-news.html,fr
-id123,news_36-1.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36-1.detail,http://localhost:8080/sites/ACMESPACE/home/news/corporate-news/main/news_36-1.detail.html,en
-id123,all-acme-space-news,/sites/ACMESPACE/home/news/all-acme-space-news,http://localhost:8080/fr/sites/ACMESPACE/home/news/all-acme-space-news.html,fr
-id123,all-acme-space-news.default,/sites/ACMESPACE/home/news/all-acme-space-news.default,http://localhost:8080/sites/ACMESPACE/home/news/all-acme-space-news.default.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=6&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=11&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,en
-id123,community,/sites/ACMESPACE/home/community,http://localhost:8080/fr/sites/ACMESPACE/home/community.html,fr
-id123,space-blogs,/sites/ACMESPACE/home/community/space-blogs,http://localhost:8080/fr/sites/ACMESPACE/home/community/space-blogs.html,fr
-id123,road-to-mars,/sites/ACMESPACE/home/community/space-blogs/road-to-mars,http://localhost:8080/sites/ACMESPACE/home/community/space-blogs/road-to-mars.html,en
-id123,i-love-my-planet,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/i-love-my-planet,http://localhost:8080/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/i-love-my-planet.html,en
-id123,appolo-11-on-the-moon,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/appolo-11-on-the-moon,http://localhost:8080/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/appolo-11-on-the-moon.html,en
-id123,discover-how,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/discover-how,http://localhost:8080/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/discover-how.html,en
-id123,an-incredible-planet,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/an-incredible-planet,http://localhost:8080/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/an-incredible-planet.html,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?displayTab=welcome&,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=A,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=E,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=J,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=M,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=N,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=S,en
-id123,atlantis---space-shuttle,/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle.html,en
-id123,earth,/sites/ACMESPACE/home/community/knowledge-base/earth,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/earth.html,en
-id123,moon,/sites/ACMESPACE/home/community/knowledge-base/moon,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/moon.html,en
-id123,neptune,/sites/ACMESPACE/home/community/knowledge-base/neptune,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/neptune.html,en
-id123,jupiter,/sites/ACMESPACE/home/community/knowledge-base/jupiter,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/jupiter.html,en
-id123,saturn,/sites/ACMESPACE/home/community/knowledge-base/saturn,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/saturn.html,en
-id123,jahia,/sites/ACMESPACE/home/community/knowledge-base/jahia,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/jahia.html,en
-id123,publication,/sites/ACMESPACE/home/community/publication,http://localhost:8080/fr/sites/ACMESPACE/home/community/publication.html,fr
-id123,forums,/sites/ACMESPACE/home/community/forums,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums.html,fr
-id123,mars-project,/sites/ACMESPACE/home/community/forums/mars-project,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project.html,en
-id123,travel-to-mars,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars.html,en
-id123,irina.forum-profile,/sites/ACMESPACE/en/users/jb/ac/eh/irina.forum-profile,http://localhost:8080/sites/ACMESPACE/en/users/jb/ac/eh/irina.forum-profile.html?jsite=38a62e3a-6a04-4d9e-b898-8b2d35476290,en
-id123,life-on-mars,/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars.html,en
-id123,satellites-questions,/sites/ACMESPACE/home/community/forums/satellites-questions,http://localhost:8080/sites/ACMESPACE/home/community/forums/satellites-questions.html,en
-id123,communication-satellites,/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites,http://localhost:8080/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites.html,en
-id123,space-exploration-questions,/sites/ACMESPACE/home/community/forums/space-exploration-questions,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions.html,en
-id123,apollo-11,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11.html,en
-id123,bill.forum-profile,/sites/ACMESPACE/en/users/hj/di/ac/bill.forum-profile,http://localhost:8080/sites/ACMESPACE/en/users/hj/di/ac/bill.forum-profile.html?jsite=38a62e3a-6a04-4d9e-b898-8b2d35476290,en
-id123,hubble-telescope,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope.html,en
-id123,about-us,/sites/ACMESPACE/home/about-us,http://localhost:8080/fr/sites/ACMESPACE/home/about-us.html,fr
-id123,news_36-3.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36-3.detail,http://localhost:8080/fr/sites/ACMESPACE/home/news/corporate-news/main/news_36-3.detail.html,fr
-id123,news_36-2.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36-2.detail,http://localhost:8080/fr/sites/ACMESPACE/home/news/corporate-news/main/news_36-2.detail.html,fr
-id123,news_36.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36.detail,http://localhost:8080/fr/sites/ACMESPACE/home/news/corporate-news/main/news_36.detail.html,fr
-id123,news_36-2.detail,/sites/ACMESPACE/contents/projects-news/news_36-2.detail,http://localhost:8080/fr/sites/ACMESPACE/contents/projects-news/news_36-2.detail.html,fr
-id123,news_36-3.detail,/sites/ACMESPACE/contents/projects-news/news_36-3.detail,http://localhost:8080/fr/sites/ACMESPACE/contents/projects-news/news_36-3.detail.html,fr
-id123,news_36.detail,/sites/ACMESPACE/contents/projects-news/news_36.detail,http://localhost:8080/fr/sites/ACMESPACE/contents/projects-news/news_36.detail.html,fr
-id123,news_36-1.detail,/sites/ACMESPACE/contents/projects-news/news_36-1.detail,http://localhost:8080/fr/sites/ACMESPACE/contents/projects-news/news_36-1.detail.html,fr
-id123,event_16.detail,/sites/ACMESPACE/home/events/events/event_16.detail,http://localhost:8080/fr/sites/ACMESPACE/home/events/events/event_16.detail.html,fr
-id123,event_12.detail,/sites/ACMESPACE/home/events/events/event_12.detail,http://localhost:8080/fr/sites/ACMESPACE/home/events/events/event_12.detail.html,fr
-id123,event_14.detail,/sites/ACMESPACE/home/events/events/event_14.detail,http://localhost:8080/fr/sites/ACMESPACE/home/events/events/event_14.detail.html,fr
-id123,event_13.detail,/sites/ACMESPACE/home/events/events/event_13.detail,http://localhost:8080/fr/sites/ACMESPACE/home/events/events/event_13.detail.html,fr
-id123,event_15.detail,/sites/ACMESPACE/home/events/events/event_15.detail,http://localhost:8080/fr/sites/ACMESPACE/home/events/events/event_15.detail.html,fr
-id123,news_36-1.detail,/sites/ACMESPACE/home/news/corporate-news/main/news_36-1.detail,http://localhost:8080/fr/sites/ACMESPACE/home/news/corporate-news/main/news_36-1.detail.html,fr
-id123,all-acme-space-news.default,/sites/ACMESPACE/home/news/all-acme-space-news.default,http://localhost:8080/fr/sites/ACMESPACE/home/news/all-acme-space-news.default.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=6&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=11&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,fr
-id123,all-acme-space-news,/sites/ACMESPACE/home/news/all-acme-space-news,http://localhost:8080/fr/sites/ACMESPACE/home/news/all-acme-space-news.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=6&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=11&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,fr
-id123,all-acme-space-news.default,/sites/ACMESPACE/home/news/all-acme-space-news.default,http://localhost:8080/sites/ACMESPACE/home/news/all-acme-space-news.default.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=0&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=5&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,en
-id123,road-to-mars,/sites/ACMESPACE/home/community/space-blogs/road-to-mars,http://localhost:8080/fr/sites/ACMESPACE/home/community/space-blogs/road-to-mars.html,fr
-id123,i-love-my-planet,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/i-love-my-planet,http://localhost:8080/fr/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/i-love-my-planet.html,fr
-id123,appolo-11-on-the-moon,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/appolo-11-on-the-moon,http://localhost:8080/fr/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/appolo-11-on-the-moon.html,fr
-id123,discover-how,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/discover-how,http://localhost:8080/fr/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/discover-how.html,fr
-id123,an-incredible-planet,/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/an-incredible-planet,http://localhost:8080/fr/sites/ACMESPACE/home/community/space-blogs/road-to-mars/blog-posts/an-incredible-planet.html,fr
-id123,bill,/sites/ACMESPACE/en/users/hj/di/ac/bill,http://localhost:8080/sites/ACMESPACE/en/users/hj/di/ac/bill.html,en
-id123,jay,/sites/ACMESPACE/en/users/je/ej/ba/jay,http://localhost:8080/sites/ACMESPACE/en/users/je/ej/ba/jay.html,en
-id123,irina,/sites/ACMESPACE/en/users/jb/ac/eh/irina,http://localhost:8080/sites/ACMESPACE/en/users/jb/ac/eh/irina.html,en
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?displayTab=welcome&,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=A,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=E,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=J,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=M,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=N,fr
-id123,knowledge-base.default,/sites/ACMESPACE/home/community/knowledge-base.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.default.html?letter=S,fr
-id123,atlantis---space-shuttle,/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle.html,fr
-id123,earth,/sites/ACMESPACE/home/community/knowledge-base/earth,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/earth.html,fr
-id123,moon,/sites/ACMESPACE/home/community/knowledge-base/moon,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/moon.html,fr
-id123,neptune,/sites/ACMESPACE/home/community/knowledge-base/neptune,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/neptune.html,fr
-id123,jupiter,/sites/ACMESPACE/home/community/knowledge-base/jupiter,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/jupiter.html,fr
-id123,saturn,/sites/ACMESPACE/home/community/knowledge-base/saturn,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/saturn.html,fr
-id123,jahia,/sites/ACMESPACE/home/community/knowledge-base/jahia,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/jahia.html,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?displayTab=welcome&,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?letter=A,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?letter=E,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?letter=J,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?letter=M,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?letter=N,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base.html?letter=S,fr
-id123,atlantis---space-shuttle.default,/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle.default.html?displayTab=pagecontent&,en
-id123,earth.default,/sites/ACMESPACE/home/community/knowledge-base/earth.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/earth.default.html?displayTab=pagecontent&,en
-id123,moon.default,/sites/ACMESPACE/home/community/knowledge-base/moon.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/moon.default.html?displayTab=pagecontent&,en
-id123,neptune.default,/sites/ACMESPACE/home/community/knowledge-base/neptune.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/neptune.default.html?displayTab=pagecontent&,en
-id123,jupiter.default,/sites/ACMESPACE/home/community/knowledge-base/jupiter.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/jupiter.default.html?displayTab=pagecontent&,en
-id123,saturn.default,/sites/ACMESPACE/home/community/knowledge-base/saturn.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/saturn.default.html?displayTab=pagecontent&,en
-id123,jahia.default,/sites/ACMESPACE/home/community/knowledge-base/jahia.default,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base/jahia.default.html?displayTab=pagecontent&,en
-id123,mars-project,/sites/ACMESPACE/home/community/forums/mars-project,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project.html,fr
-id123,travel-to-mars,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars.html,fr
-id123,irina.forum-profile,/sites/ACMESPACE/users/jb/ac/eh/irina.forum-profile,http://localhost:8080/fr/sites/ACMESPACE/users/jb/ac/eh/irina.forum-profile.html?jsite=38a62e3a-6a04-4d9e-b898-8b2d35476290,fr
-id123,life-on-mars,/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars.html,fr
-id123,satellites-questions,/sites/ACMESPACE/home/community/forums/satellites-questions,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/satellites-questions.html,fr
-id123,communication-satellites,/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites.html,fr
-id123,space-exploration-questions,/sites/ACMESPACE/home/community/forums/space-exploration-questions,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions.html,fr
-id123,apollo-11,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11.html,fr
-id123,bill.forum-profile,/sites/ACMESPACE/users/hj/di/ac/bill.forum-profile,http://localhost:8080/fr/sites/ACMESPACE/users/hj/di/ac/bill.forum-profile.html?jsite=38a62e3a-6a04-4d9e-b898-8b2d35476290,fr
-id123,hubble-telescope,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope.html,fr
-id123,travel-to-mars.forum-newTopic,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars.forum-newTopic,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars.forum-newTopic.html,en
-id123,travel-duration,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.html,en
-id123,life-on-mars.forum-newTopic,/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars.forum-newTopic,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars.forum-newTopic.html,en
-id123,communication-satellites.forum-newTopic,/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites.forum-newTopic,http://localhost:8080/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites.forum-newTopic.html,en
-id123,apollo-11.forum-newTopic,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11.forum-newTopic,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11.forum-newTopic.html,en
-id123,name-of-mission-members,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.html,en
-id123,hubble-telescope.forum-newTopic,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope.forum-newTopic,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope.forum-newTopic.html,en
-id123,size-of-pictures,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.html,en
-id123,all-acme-space-news,/sites/ACMESPACE/home/news/all-acme-space-news,http://localhost:8080/sites/ACMESPACE/home/news/all-acme-space-news.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=6&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=11&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,en
-id123,all-acme-space-news.default,/sites/ACMESPACE/home/news/all-acme-space-news.default,http://localhost:8080/fr/sites/ACMESPACE/home/news/all-acme-space-news.default.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=0&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=5&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,fr
-id123,all-acme-space-news,/sites/ACMESPACE/home/news/all-acme-space-news,http://localhost:8080/fr/sites/ACMESPACE/home/news/all-acme-space-news.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=0&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=5&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,fr
-id123,bill,/sites/ACMESPACE/users/hj/di/ac/bill,http://localhost:8080/fr/sites/ACMESPACE/users/hj/di/ac/bill.html,fr
-id123,jay,/sites/ACMESPACE/users/je/ej/ba/jay,http://localhost:8080/fr/sites/ACMESPACE/users/je/ej/ba/jay.html,fr
-id123,irina,/sites/ACMESPACE/users/jb/ac/eh/irina,http://localhost:8080/fr/sites/ACMESPACE/users/jb/ac/eh/irina.html,fr
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?displayTab=welcome&,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?letter=A,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?letter=E,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?letter=J,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?letter=M,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?letter=N,en
-id123,knowledge-base,/sites/ACMESPACE/home/community/knowledge-base,http://localhost:8080/sites/ACMESPACE/home/community/knowledge-base.html?letter=S,en
-id123,atlantis---space-shuttle.default,/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/atlantis---space-shuttle.default.html?displayTab=pagecontent&,fr
-id123,earth.default,/sites/ACMESPACE/home/community/knowledge-base/earth.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/earth.default.html?displayTab=pagecontent&,fr
-id123,moon.default,/sites/ACMESPACE/home/community/knowledge-base/moon.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/moon.default.html?displayTab=pagecontent&,fr
-id123,neptune.default,/sites/ACMESPACE/home/community/knowledge-base/neptune.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/neptune.default.html?displayTab=pagecontent&,fr
-id123,jupiter.default,/sites/ACMESPACE/home/community/knowledge-base/jupiter.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/jupiter.default.html?displayTab=pagecontent&,fr
-id123,saturn.default,/sites/ACMESPACE/home/community/knowledge-base/saturn.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/saturn.default.html?displayTab=pagecontent&,fr
-id123,jahia.default,/sites/ACMESPACE/home/community/knowledge-base/jahia.default,http://localhost:8080/fr/sites/ACMESPACE/home/community/knowledge-base/jahia.default.html?displayTab=pagecontent&,fr
-id123,travel-to-mars.forum-newTopic,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars.forum-newTopic,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars.forum-newTopic.html,fr
-id123,travel-duration,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.html,fr
-id123,life-on-mars.forum-newTopic,/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars.forum-newTopic,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/life-on-mars.forum-newTopic.html,fr
-id123,communication-satellites.forum-newTopic,/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites.forum-newTopic,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/satellites-questions/communication-satellites.forum-newTopic.html,fr
-id123,apollo-11.forum-newTopic,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11.forum-newTopic,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11.forum-newTopic.html,fr
-id123,name-of-mission-members,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.html,fr
-id123,hubble-telescope.forum-newTopic,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope.forum-newTopic,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope.forum-newTopic.html,fr
-id123,size-of-pictures,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.html,fr
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html,en
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=0104aa08-f23b-41a8-b417-cd81a2617a6d,en
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=0104aa08-f23b-41a8-b417-cd81a2617a6d"e=true,en
-id123,jay.forum-profile,/sites/ACMESPACE/en/users/je/ej/ba/jay.forum-profile,http://localhost:8080/sites/ACMESPACE/en/users/je/ej/ba/jay.forum-profile.html?jsite=38a62e3a-6a04-4d9e-b898-8b2d35476290,en
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=06ddea24-001b-4044-9e05-a1769144cd1c,en
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=06ddea24-001b-4044-9e05-a1769144cd1c"e=true,en
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html,en
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=9af3e2b4-c6d3-48cf-917f-fee55d27217e,en
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=9af3e2b4-c6d3-48cf-917f-fee55d27217e"e=true,en
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=2ba7348c-1dc8-4fbf-90b8-09c87a5b00a2,en
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=2ba7348c-1dc8-4fbf-90b8-09c87a5b00a2"e=true,en
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html,en
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=2ff5460f-566a-46ca-a565-d01410edccb5,en
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=2ff5460f-566a-46ca-a565-d01410edccb5"e=true,en
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=8040adbd-1105-46fe-bee2-4f6d77cb587f,en
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=8040adbd-1105-46fe-bee2-4f6d77cb587f"e=true,en
-id123,all-acme-space-news,/sites/ACMESPACE/home/news/all-acme-space-news,http://localhost:8080/sites/ACMESPACE/home/news/all-acme-space-news.html?begineabeaf3c-2e52-4c15-9a10-2882bc255df8=0&endeabeaf3c-2e52-4c15-9a10-2882bc255df8=5&pagesizeeabeaf3c-2e52-4c15-9a10-2882bc255df8=6&,en
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html,fr
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=0104aa08-f23b-41a8-b417-cd81a2617a6d,fr
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=0104aa08-f23b-41a8-b417-cd81a2617a6d"e=true,fr
-id123,jay.forum-profile,/sites/ACMESPACE/users/je/ej/ba/jay.forum-profile,http://localhost:8080/fr/sites/ACMESPACE/users/je/ej/ba/jay.forum-profile.html?jsite=38a62e3a-6a04-4d9e-b898-8b2d35476290,fr
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=06ddea24-001b-4044-9e05-a1769144cd1c,fr
-id123,travel-duration.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/mars-project/travel-to-mars/travel-duration.forum-topic-newPost.html?reply=06ddea24-001b-4044-9e05-a1769144cd1c"e=true,fr
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html,fr
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=9af3e2b4-c6d3-48cf-917f-fee55d27217e,fr
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=9af3e2b4-c6d3-48cf-917f-fee55d27217e"e=true,fr
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=2ba7348c-1dc8-4fbf-90b8-09c87a5b00a2,fr
-id123,name-of-mission-members.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/apollo-11/name-of-mission-members.forum-topic-newPost.html?reply=2ba7348c-1dc8-4fbf-90b8-09c87a5b00a2"e=true,fr
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html,fr
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=2ff5460f-566a-46ca-a565-d01410edccb5,fr
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=2ff5460f-566a-46ca-a565-d01410edccb5"e=true,fr
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=8040adbd-1105-46fe-bee2-4f6d77cb587f,fr
-id123,size-of-pictures.forum-topic-newPost,/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost,http://localhost:8080/fr/sites/ACMESPACE/home/community/forums/space-exploration-questions/hubble-telescope/size-of-pictures.forum-topic-newPost.html?reply=8040adbd-1105-46fe-bee2-4f6d77cb587f"e=true,fr
diff --git a/performance-tests/src/test/resources/data/userAgent.txt b/performance-tests/src/test/resources/data/userAgent.txt
deleted file mode 100644
index e764be2..0000000
--- a/performance-tests/src/test/resources/data/userAgent.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-userAgent
-Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6
-Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
-Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)
-Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)
-Mozilla/4.0 (compatible; MSIE 5.0; Windows NT 5.1; .NET CLR 1.1.4322)
-Opera/9.20 (Windows NT 6.0; U; en)
-Opera/9.00 (Windows NT 5.1; U; en)
-Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 8.50
-Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 8.0
-Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.02 [en]
-Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20060127 Netscape/8.1
-Googlebot/2.1 ( http://www.googlebot.com/bot.html)
-Googlebot-Image/1.0 ( http://www.googlebot.com/bot.html)
-Mozilla/2.0
-Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36
-Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.76.4 (KHTML, like Gecko) Version/7.0.4 Safari/537.76.4
-Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:23.0) Gecko/20100101 Firefox/23.0
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/data/words.txt b/performance-tests/src/test/resources/data/words.txt
deleted file mode 100644
index e05b972..0000000
--- a/performance-tests/src/test/resources/data/words.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-word
-vehicular
-subradular
-chersonese
-tautologously
-dentine
-semicaricatural
-crowfoot
-posterior
-servable
-fluting
-encourage
-nonconservation
-lemuralia
-hiring
-lionize
-nongraven
-travestying
-balliol
-pulverizer
-digenesis
-gorilla
-babying
-metagenesis
-protozoologist
-gravelweed
-jacques
-bauhinia
-noncomplicity
-blastemas
-cautious
-odra
-intermesenteric
-commandery
-marco
-outstealing
-cotemporaries
-pissed
-preapplied
-nonhallucinated
-calving
-hesitance
-rapture
-persistency
-scandaroon
-chionodoxa
-livingston
-lenox
-homosexuality
-gossipy
-unlifted
-slumbrous
-misthrew
-aftersensation
-kwela
-obreptitious
-noegenetic
-czarism
-shipment
-dehydrogenization
-pleiophylly
-foxily
-theorising
-peep
-redundancy
-kekkonen
-preexistence
-cub
-woorali
-peitho
-anabas
-overexpenditure
-majesty
-wive
-antheridial
-lom
-sulpician
-polydaemonism
-untackling
-oversystematize
-oxime
-virtus
-disapprobation
-overorganpassing
-immeasurably
-gatefold
-misaverring
-disfranchised
-parliamentary
-unapprehensive
-maneless
-corollated
-magyarization
-provisional
-nonionic
-electroneutral
-fetterer
-cincinnati
-obfuscate
-unquaking
-unstrung
\ No newline at end of file
diff --git a/performance-tests/src/test/resources/gatling.conf b/performance-tests/src/test/resources/gatling.conf
deleted file mode 100644
index 5706731..0000000
--- a/performance-tests/src/test/resources/gatling.conf
+++ /dev/null
@@ -1,155 +0,0 @@
-#########################
-# Gatling Configuration #
-#########################
-
-# This file contains all the settings configurable for Gatling with their default values
-
-gatling {
- core {
- #outputDirectoryBaseName = "" # The prefix for each simulation result folder (then suffixed by the report generation timestamp)
- #runDescription = "" # The description for this simulation run, displayed in each report
- #encoding = "utf-8" # Encoding to use throughout Gatling for file and string manipulation
- #simulationClass = "" # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated)
- #mute = false # When set to true, don't ask for simulation name nor run description (currently only used by Gatling SBT plugin)
-
- extract {
- regex {
- #cacheMaxCapacity = 200 # Cache size for the compiled regexes, set to 0 to disable caching
- }
- xpath {
- #cacheMaxCapacity = 200 # Cache size for the compiled XPath queries, set to 0 to disable caching
- }
- jsonPath {
- #cacheMaxCapacity = 200 # Cache size for the compiled jsonPath queries, set to 0 to disable caching
- #preferJackson = false # When set to true, prefer Jackson over Boon for JSON-related operations
- jackson {
- #allowComments = false # Allow comments in JSON files
- #allowUnquotedFieldNames = false # Allow unquoted JSON fields names
- #allowSingleQuotes = false # Allow single quoted JSON field names
- }
-
- }
- css {
- #cacheMaxCapacity = 200 # Cache size for the compiled CSS selectors queries, set to 0 to disable caching
- }
- }
-
- timeOut {
- #simulation = 8640000 # Absolute timeout, in seconds, of a simulation
- }
- directory {
- data = src/test/resources/data # Folder where user's data (e.g. files used by Feeders) is located
- bodies = src/test/resources/bodies # Folder where bodies are located
- simulations = src/test/scala # Folder where the bundle's simulations are located
- #reportsOnly = "" # If set, name of report folder to look for in order to generate its report
- #binaries = "" # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target.
- results = target/results # Name of the folder where all reports folder are located
- }
- }
- charting {
- #noReports = false # When set to true, don't generate HTML reports
- #maxPlotPerSeries = 1000 # Number of points per graph in Gatling reports
- #accuracy = 10 # Accuracy, in milliseconds, of the report's stats
- indicators {
- #lowerBound = 800 # Lower bound for the requests' response time to track in the reports and the console summary
- #higherBound = 1200 # Higher bound for the requests' response time to track in the reports and the console summary
- percentile1 = 50 # Value for the 1st percentile to track in the reports, the console summary and GraphiteDataWriter
- percentile2 = 75 # Value for the 2nd percentile to track in the reports, the console summary and GraphiteDataWriter
- percentile3 = 90 # Value for the 3rd percentile to track in the reports, the console summary and GraphiteDataWriter
- percentile4 = 99 # Value for the 4th percentile to track in the reports, the console summary and GraphiteDataWriter
- }
- }
- http {
- #elFileBodiesCacheMaxCapacity = 200 # Cache size for request body EL templates, set to 0 to disable
- #rawFileBodiesCacheMaxCapacity = 200 # Cache size for request body Raw templates, set to 0 to disable
- #fetchedCssCacheMaxCapacity = 200 # Cache size for CSS parsed content, set to 0 to disable
- #fetchedHtmlCacheMaxCapacity = 200 # Cache size for HTML parsed content, set to 0 to disable
- #redirectPerUserCacheMaxCapacity = 200 # Per virtual user cache size for permanent redirects, set to 0 to disable
- #expirePerUserCacheMaxCapacity = 200 # Per virtual user cache size for permanent 'Expire' headers, set to 0 to disable
- #lastModifiedPerUserCacheMaxCapacity = 200 # Per virtual user cache size for permanent 'Last-Modified' headers, set to 0 to disable
- #etagPerUserCacheMaxCapacity = 200 # Per virtual user cache size for permanent ETag headers, set to 0 to disable
- #warmUpUrl = "http://gatling.io" # The URL to use to warm-up the HTTP stack (blank means disabled)
- #enableGA = true # Very light Google Analytics, please support
- ssl {
- trustStore {
- #type = "" # Type of SSLContext's TrustManagers store
- #file = "" # Location of SSLContext's TrustManagers store
- #password = "" # Password for SSLContext's TrustManagers store
- #algorithm = "" # Algorithm used by SSLContext's TrustManagers store
- }
- keyStore {
- #type = "" # Type of SSLContext's KeyManagers store
- #file = "" # Location of SSLContext's KeyManagers store
- #password = "" # Password for SSLContext's KeyManagers store
- #algorithm = "" # Algorithm used SSLContext's KeyManagers store
- }
- }
- ahc {
- #allowPoolingConnections = true # Allow pooling HTTP connections (keep-alive header automatically added)
- #allowPoolingSslConnections = true # Allow pooling HTTPS connections (keep-alive header automatically added)
- #compressionEnforced = false # Enforce gzip/deflate when Accept-Encoding header is not defined
- #connectTimeout = 60000 # Timeout when establishing a connection
- #pooledConnectionIdleTimeout = 60000 # Timeout when a connection stays unused in the pool
- #readTimeout = 60000 # Timeout when a used connection stays idle
- #connectionTTL = -1 # Max duration a connection can stay open (-1 means no limit)
- #ioThreadMultiplier = 2 # Number of Netty worker threads per core
- #maxConnectionsPerHost = -1 # Max number of connections per host (-1 means no limit)
- #maxConnections = -1 # Max number of connections (-1 means no limit)
- #maxRetry = 0 # Number of times that a request should be tried again
- #requestTimeout = 60000 # Timeout of the requests
- #useProxyProperties = false # When set to true, supports standard Proxy System properties
- #webSocketTimeout = 60000 # Timeout when a used websocket connection stays idle
- #useRelativeURIsWithConnectProxies = true # When set to true, use relative URIs when talking with an SSL proxy or a WebSocket proxy
- #acceptAnyCertificate = true # When set to true, doesn't validate SSL certificates
- #httpClientCodecMaxInitialLineLength = 4096 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK")
- #httpClientCodecMaxHeaderSize = 8192 # Maximum size, in bytes, of each request's headers
- #httpClientCodecMaxChunkSize = 8192 # Maximum length of the content or each chunk
- #keepEncodingHeader = true # Don't drop Encoding response header after decoding
- #webSocketMaxFrameSize = 10240 # Maximum frame payload size
- #httpsEnabledProtocols = "" # Comma separated enabled protocols for HTTPS, if empty use the JDK defaults
- #httpsEnabledCipherSuites = "" # Comma separated enabled cipher suites for HTTPS, if empty use the JDK defaults
- }
- }
- data {
- #writers = "console, file" # The lists of DataWriters to which Gatling write simulation data (currently supported : "console", "file", "graphite", "jdbc")
- #reader = file # The DataReader used by the charting engine for reading simulation results
- console {
- #light = false # When set to true, displays a light version without detailed request stats
- }
- file {
- #bufferSize = 8192 # FileDataWriter's internal data buffer size, in bytes
- }
- leak {
- #noActivityTimeout = 30 # Period, in seconds, for which Gatling may have no activity before considering a leak may be happening
- }
- jdbc {
- db {
- #url = "jdbc:mysql://localhost:3306/temp" # The JDBC URL used by the JDBC DataWriter
- #username = "root" # The database user used by the JDBC DataWriter
- #password = "123123q" # The password for the specified user
- }
- #bufferSize = 20 # The size for each batch of SQL inserts to send to the database
- create {
- #createRunRecordTable = "CREATE TABLE IF NOT EXISTS `RunRecords` ( `id` INT NOT NULL AUTO_INCREMENT , `runDate` DATETIME NULL , `simulationId` VARCHAR(45) NULL , `runDescription` VARCHAR(45) NULL , PRIMARY KEY (`id`) )"
- #createRequestRecordTable = "CREATE TABLE IF NOT EXISTS `RequestRecords` (`id` int(11) NOT NULL AUTO_INCREMENT, `runId` int DEFAULT NULL, `scenario` varchar(45) DEFAULT NULL, `userId` VARCHAR(20) NULL, `name` varchar(50) DEFAULT NULL, `requestStartDate` bigint DEFAULT NULL, `requestEndDate` bigint DEFAULT NULL, `responseStartDate` bigint DEFAULT NULL, `responseEndDate` bigint DEFAULT NULL, `status` varchar(2) DEFAULT NULL, `message` varchar(4500) DEFAULT NULL, `responseTime` bigi [...]
- #createScenarioRecordTable = "CREATE TABLE IF NOT EXISTS `ScenarioRecords` (`id` int(11) NOT NULL AUTO_INCREMENT, `runId` int DEFAULT NULL, `scenarioName` varchar(45) DEFAULT NULL, `userId` VARCHAR(20) NULL, `event` varchar(50) DEFAULT NULL, `startDate` bigint DEFAULT NULL, `endDate` bigint DEFAULT NULL, PRIMARY KEY (`id`) )"
- #createGroupRecordTable = "CREATE TABLE IF NOT EXISTS `GroupRecords` (`id` int(11) NOT NULL AUTO_INCREMENT, `runId` int DEFAULT NULL, `scenarioName` varchar(45) DEFAULT NULL, `userId` VARCHAR(20) NULL, `entryDate` bigint DEFAULT NULL, `exitDate` bigint DEFAULT NULL, `status` varchar(2) DEFAULT NULL, PRIMARY KEY (`id`) )"
- }
- insert {
- #insertRunRecord = "INSERT INTO RunRecords (runDate, simulationId, runDescription) VALUES (?,?,?)"
- #insertRequestRecord = "INSERT INTO RequestRecords (runId, scenario, userId, name, requestStartDate, requestEndDate, responseStartDate, responseEndDate, status, message, responseTime) VALUES (?,?,?,?,?,?,?,?,?,?,?)"
- #insertScenarioRecord = "INSERT INTO ScenarioRecords (runId, scenarioName, userId, event, startDate, endDate) VALUES (?,?,?,?,?,?)"
- #insertGroupRecord = "INSERT INTO GroupRecords (runId, scenarioName, userId, entryDate, exitDate, status) VALUES (?,?,?,?,?,?)"
- }
- }
- graphite {
- #light = false # only send the all* stats
- #host = "localhost" # The host where the Carbon server is located
- #port = 2003 # The port to which the Carbon server listens to
- #protocol = "tcp" # The protocol used to send data to Carbon (currently supported : "tcp", "udp")
- #rootPathPrefix = "gatling" # The common prefix of all metrics sent to Graphite
- #bufferSize = 8192 # GraphiteDataWriter's internal data buffer size, in bytes
- #writeInterval = 1 # GraphiteDataWriter's write interval, in seconds
- }
- }
-}
diff --git a/performance-tests/src/test/resources/logback.xml b/performance-tests/src/test/resources/logback.xml
deleted file mode 100644
index 8f50566..0000000
--- a/performance-tests/src/test/resources/logback.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ~ 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.
- -->
-
-<configuration>
-
- <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern>
- <immediateFlush>false</immediateFlush>
- </encoder>
- </appender>
-
- <!-- Uncomment for logging ALL HTTP request and responses -->
- <!-- <logger name="io.gatling.http.ahc" level="TRACE" /> -->
- <!-- Uncomment for logging ONLY FAILED HTTP request and responses -->
- <!-- <logger name="io.gatling.http.ahc" level="DEBUG" /> -->
-
- <root level="WARN">
- <appender-ref ref="CONSOLE" />
- </root>
-
-</configuration>
diff --git a/performance-tests/src/test/resources/recorder.conf b/performance-tests/src/test/resources/recorder.conf
deleted file mode 100644
index 079569a..0000000
--- a/performance-tests/src/test/resources/recorder.conf
+++ /dev/null
@@ -1,51 +0,0 @@
-recorder {
- core {
- #mode = "Proxy"
- #encoding = "utf-8" # The encoding used for reading/writing request bodies and the generated simulation
- #outputFolder = "" # The folder where generated simulation will we written
- #package = "" # The package's name of the generated simulation
- #className = "RecordedSimulation" # The name of the generated Simulation class
- #thresholdForPauseCreation = 100 # The minimum time, in milliseconds, that must pass between requests to trigger a pause creation
- #saveConfig = false # When set to true, the configuration from the Recorder GUI overwrites this configuration
- }
- filters {
- #filterStrategy = "Disabled" # The selected filter resources filter strategy (currently supported : "Disabled", "BlackList", "WhiteList")
- #whitelist = [] # The list of ressources patterns that are part of the Recorder's whitelist
- #blacklist = [] # The list of ressources patterns that are part of the Recorder's blacklist
- }
- http {
- #automaticReferer = true # When set to false, write the referer + enable 'disableAutoReferer' in the generated simulation
- #followRedirect = true # When set to false, write redirect requests + enable 'disableFollowRedirect' in the generated simulation
- #removeCacheHeaders = true # When set to true, removes from the generated requests headers leading to request caching
- #inferHtmlResources = true # When set to true, add inferred resources + set 'inferHtmlResources' with the configured blacklist/whitelist in the generated simulation
- #checkResponseBodies = false # When set to true, save response bodies as files and add raw checks in the generated simulation
- }
- proxy {
- #port = 8000 # Local port used by Gatling's Proxy for HTTP/HTTPS
- https {
- #mode = "SelfSignedCertificate" # The selected "HTTPS mode" (currently supported : "SelfSignedCertificate", "ProvidedKeyStore", "GatlingCertificateAuthority", "CustomCertificateAuthority")
- keyStore {
- #path = "" # The path of the custom key store
- #password = "" # The password for this key store
- #type = "JKS" # The type of the key store (currently supported: "JKS")
- }
- certificateAuthority {
- #certificatePath = "" # The path of the custom certificate
- #privateKeyPath = "" # The certificate's private key path
- }
- }
- outgoing {
- #host = "" # The outgoing proxy's hostname
- #username = "" # The username to use to connect to the outgoing proxy
- #password = "" # The password corresponding to the user to use to connect to the outgoing proxy
- #port = 0 # The HTTP port to use to connect to the outgoing proxy
- #sslPort = 0 # If set, The HTTPS port to use to connect to the outgoing proxy
- }
- }
- netty {
- #maxInitialLineLength = 10000 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK")
- #maxHeaderSize = 20000 # Maximum size, in bytes, of each request's headers
- #maxChunkSize = 8192 # Maximum length of the content or each chunk
- #maxContentLength = 100000000 # Maximum length of the aggregated content of each response
- }
-}
diff --git a/performance-tests/src/test/scala/Engine.scala b/performance-tests/src/test/scala/Engine.scala
deleted file mode 100644
index 0e491c9..0000000
--- a/performance-tests/src/test/scala/Engine.scala
+++ /dev/null
@@ -1,30 +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
- */
-
-import io.gatling.app.Gatling
-import io.gatling.core.config.GatlingPropertiesBuilder
-
-object Engine extends App {
-
- val props = new GatlingPropertiesBuilder
- props.dataDirectory(IDEPathHelper.dataDirectory.toString)
- props.resultsDirectory(IDEPathHelper.resultsDirectory.toString)
- props.bodiesDirectory(IDEPathHelper.bodiesDirectory.toString)
- props.binariesDirectory(IDEPathHelper.mavenBinariesDirectory.toString)
-
- Gatling.fromMap(props.build)
-}
diff --git a/performance-tests/src/test/scala/IDEPathHelper.scala b/performance-tests/src/test/scala/IDEPathHelper.scala
deleted file mode 100644
index 88700c5..0000000
--- a/performance-tests/src/test/scala/IDEPathHelper.scala
+++ /dev/null
@@ -1,39 +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
- */
-
-import java.nio.file.Path
-
-import io.gatling.core.util.PathHelper._
-
-object IDEPathHelper {
-
- val gatlingConfUrl: Path = getClass.getClassLoader.getResource("gatling.conf").toURI
- val projectRootDir = gatlingConfUrl.ancestor(3)
-
- val mavenSourcesDirectory = projectRootDir / "src" / "test" / "scala"
- val mavenResourcesDirectory = projectRootDir / "src" / "test" / "resources"
- val mavenTargetDirectory = projectRootDir / "target"
- val mavenBinariesDirectory = mavenTargetDirectory / "test-classes"
-
- val dataDirectory = mavenResourcesDirectory / "data"
- val bodiesDirectory = mavenResourcesDirectory / "bodies"
-
- val recorderOutputDirectory = mavenSourcesDirectory
- val resultsDirectory = mavenTargetDirectory / "results"
-
- val recorderConfigFile = mavenResourcesDirectory / "recorder.conf"
-}
diff --git a/performance-tests/src/test/scala/Recorder.scala b/performance-tests/src/test/scala/Recorder.scala
deleted file mode 100644
index 2379318..0000000
--- a/performance-tests/src/test/scala/Recorder.scala
+++ /dev/null
@@ -1,29 +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
- */
-
-import io.gatling.recorder.GatlingRecorder
-import io.gatling.recorder.config.RecorderPropertiesBuilder
-
-object Recorder extends App {
-
- val props = new RecorderPropertiesBuilder
- props.simulationOutputFolder(IDEPathHelper.recorderOutputDirectory.toString)
- props.simulationPackage("xxx")
- props.bodiesFolder(IDEPathHelper.bodiesDirectory.toString)
-
- GatlingRecorder.fromMap(props.build, Some(IDEPathHelper.recorderConfigFile))
-}
diff --git a/performance-tests/src/test/scala/unomi/AdminScenario.scala b/performance-tests/src/test/scala/unomi/AdminScenario.scala
deleted file mode 100644
index 1139ab7..0000000
--- a/performance-tests/src/test/scala/unomi/AdminScenario.scala
+++ /dev/null
@@ -1,216 +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 unomi
-
-import java.util.concurrent.TimeUnit
-import io.gatling.core.Predef._
-import io.gatling.http.Predef._
-import scala.collection.mutable.ListBuffer
-
-/**
- * Administration scenario
- */
-object AdminScenario {
- val r = scala.util.Random
-
- val requestsFeed = Iterator.continually {
- Map(
- "pauseTime" -> Math.round((Parameters.delayAverage + Parameters.delayStdDev * r.nextGaussian()) * 1000).asInstanceOf[Int],
- "navigationPauseTime" -> Math.round((Parameters.navigationDelayAverage + Parameters.navigationDelayStdDev * r.nextGaussian()) * 1000).asInstanceOf[Int],
- "campaignViewCount" -> 3)
- }
-
- val adminHeaders = Map(
- "Origin" -> "http://localhost:8080",
- "Pragma" -> "no-cache",
- "Accept-Encoding" -> "gzip, deflate, sdch",
- "Accept-Language" -> "en",
- "Accept" -> "application/json, text/plain, */*'",
- "Content-Type" -> "application/json;charset=UTF-8",
- "Authorization" -> "Basic a2FyYWY6a2FyYWY=")
-
- // load campaign list
- val campaignList = feed(requestsFeed)
- .exec(
- http("Campaign list").post("/cxs/campaigns/query/detailed")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/list.json"))
- .check(jsonPath("$..itemId").findAll.transform(s => util.Random.shuffle(s)).saveAs("campaignIds"))
- .check(jsonPath("$..totalSize").find.greaterThan("0")))
-
- // view dashboard for the picked campaign ID
- val campaignDashboard = feed(requestsFeed)
- .exec(http("Campaign details").get("/cxs/campaigns/${campaignId}/detailed")
- .headers(adminHeaders)
- .check(jsonPath("$..numberOfGoals").find.exists.saveAs("numberOfGoals"))
- .check(jsonPath("$..startDate").find.exists.saveAs("startDate"))
- .check(jsonPath("$..endDate").find.exists.saveAs("endDate"))
- .check(jsonPath("$..primaryGoal").find.exists.saveAs("primaryGoalId")))
-
- .exec(http("Goals").post("/cxs/goals/query")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/goals.json"))
- .check(jsonPath("$..id").findAll.saveAs("goalIds")))
-
- .exec(http("Average number of visits").post("/cxs/query/session/nbOfVisits/sum/avg")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/average.json"))
- .check(jsonPath("$.._sum").find.exists))
-
- .exec(http("Timeline").post("/cxs/query/session/timeStamp")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/timeline.json"))
- .check(jsonPath("$.._all").find.exists))
-
- .exec(http("Events").post("/cxs/campaigns/events/query")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/events.json"))
- .check(jsonPath("$..totalSize").find.exists))
-
- .foreach("${goalIds}", "goalId") {
- exec(http("Goal report").post("/cxs/goals/${goalId}/report")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/goal-report.json"))
- .check(jsonPath("$..globalStats").find.exists))
- }
-
- .exec(http("Timeline primary goal").post("/cxs/query/session/timeStamp")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/timeline-primary-goal.json"))
- .check(jsonPath("$.._all").find.exists))
-
- .exec(http("Events 2").post("/cxs/campaigns/events/query")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/events2.json"))
- .check(jsonPath("$..totalSize").find.exists));
-
- // view the engaged users for the picked campaign ID
- val campaignEngaged = feed(requestsFeed)
- .exec(http("Profile system tags").get("/cxs/definitions/systemTags/profileTags")
- .headers(adminHeaders)
- .check(jsonPath("$..id").find.is("profileTags")))
-
- .exec(http("Existing profile properties").get("/cxs/profiles/existingProperties?tag=profileProperties&itemType=profile&isSystemTag=true")
- .headers(adminHeaders)
- .check(jsonPath("$..itemId").find.exists))
-
- .exec(http("Profile conditions").get("/cxs/definitions/conditions/systemTags/profileCondition")
- .headers(adminHeaders)
- .check(jsonPath("$..id").find.is("booleanCondition")))
-
- .exec(http("Profile conditions").get("/cxs/definitions/conditions/systemTags/usableInPastEventCondition")
- .headers(adminHeaders)
- .check(jsonPath("$..id").find.exists))
-
- .exec(http("Profile search").post("/cxs/profiles/search")
- .headers(adminHeaders)
- .body(ELFileBody("admin/campaigns/engaged-users.json"))
- .check(jsonPath("$..list").find.exists)
- .check(jsonPath("$..totalSize").find.greaterThan("0")));
-
- val campaigns = feed(requestsFeed)
- // load campaign list
- .exec(campaignList)
- .foreach("${campaignIds}", "campaignId", "campaignCounter") {
- // randomly pick 3 campaigns and view the engaged users
- doIf(session => session("campaignCounter").as[Int] < session("campaignViewCount").as[Int]) {
- pause("${pauseTime}", TimeUnit.MILLISECONDS)
-
- // view dashboard for the picked campaign ID
- .exec(campaignDashboard)
- .pause("${pauseTime}", TimeUnit.MILLISECONDS)
-
- // go back to campaign list page
- .exec(campaignList)
- .pause("${navigationPauseTime}", TimeUnit.MILLISECONDS)
-
- // view the engaged users for the picked campaign ID
- .exec(campaignEngaged)
- .pause("${pauseTime}", TimeUnit.MILLISECONDS)
-
- // go back to campaign list page
- .exec(campaignList)
- }
- }
-
- // load segment list
- val segmentList = feed(requestsFeed)
- .exec(
- http("Segment list").post("/cxs/segments/query")
- .headers(adminHeaders)
- .body(ELFileBody("admin/segments/segment-query.json"))
- .check(jsonPath("$..id").findAll.saveAs("segmentIds"))
- .check(jsonPath("$..totalSize").find.greaterThan("0")))
-
- // check count for the segment
- val segmentProfileCount = feed(requestsFeed)
- .exec(
- http("Segment profile count").post("/cxs/query/profile/count")
- .headers(adminHeaders)
- .body(ELFileBody("admin/segments/segment-profile-count.json"))
- .check(bodyString.exists))
-
- // segments
- val segments = feed(requestsFeed)
- .exec(segmentList)
- .foreach("${segmentIds}", "segmentId") {
- exec(segmentProfileCount)
- }
-
- // load segment list
- val siteGoalList = feed(requestsFeed)
- .exec(
- http("Site goal list").post("/cxs/goals/query")
- .headers(adminHeaders)
- .body(ELFileBody("admin/site-dashboard/goals.json"))
- .check(jsonPath("$..id").findAll.saveAs("goalIds")))
-
- val siteGoalReport = feed(requestsFeed)
- .exec(
- http("Site goal report").post("/cxs/goals/${goalId}/report")
- .headers(adminHeaders)
- .body(ELFileBody("admin/site-dashboard/goal-report.json"))
- .check(jsonPath("$..globalStats").find.exists))
-
- // site dashboard
- val siteDashboard = feed(requestsFeed)
- .exec(siteGoalList)
- .exec(http("Timeline all visits").post("/cxs/query/session/timeStamp")
- .headers(adminHeaders)
- .body(ELFileBody("admin/site-dashboard/timeline-all-visits.json"))
- .check(jsonPath("$.._all").find.exists))
- .foreach("${goalIds}", "goalId") {
- exec(siteGoalReport)
- }
- .exec(http("Timeline new visits").post("/cxs/query/session/timeStamp")
- .headers(adminHeaders)
- .body(ELFileBody("admin/site-dashboard/timeline-new-visits.json"))
- .check(jsonPath("$.._all").find.exists))
-
- val scnRun = exec(campaigns,
- pause("${pauseTime}", TimeUnit.MILLISECONDS),
- segments,
- pause("${pauseTime}", TimeUnit.MILLISECONDS),
- siteDashboard)
-
- val scnSingle = scenario("Admin").exec(scnRun)
-
- val scn = scenario("Admin").during(Parameters.totalTime) {
- scnRun
- }
-}
diff --git a/performance-tests/src/test/scala/unomi/AdminSimulation.scala b/performance-tests/src/test/scala/unomi/AdminSimulation.scala
deleted file mode 100644
index 1876475..0000000
--- a/performance-tests/src/test/scala/unomi/AdminSimulation.scala
+++ /dev/null
@@ -1,43 +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 unomi
-
-import io.gatling.core.Predef._
-import io.gatling.http.Predef._
-import io.gatling.http.config.HttpProtocolBuilder.toHttpProtocol
-import io.gatling.core.structure.ScenarioBuilder
-import io.gatling.core.structure.PopulatedScenarioBuilder
-
-class AdminSimulation extends Simulation {
-
- val httpProtocol = http
- .baseURLs(Parameters.baseUrls)
- .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
- .acceptEncodingHeader("gzip, deflate")
- .acceptLanguageHeader("en-US,en;q=0.5")
- .connection("keep-alive")
- .contentTypeHeader("text/plain;charset=UTF-8")
- .userAgentHeader("Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:24.0) Gecko/20100101 Firefox/24.0")
-
-// setUp(AdminScenario.scnSingle.inject(atOnceUsers(1)).protocols(httpProtocol))
-
- val m = Map(
- AdminScenario.scn -> Parameters.numberOfConcurrentAdminUsers)
- val f = m.collect { case (scenario: ScenarioBuilder, count: Int) if count > 0 => scenario.inject(rampUsers(count) over Parameters.rampUpTime) }
- setUp(f.asInstanceOf[List[PopulatedScenarioBuilder]]).protocols(httpProtocol)
-}
diff --git a/performance-tests/src/test/scala/unomi/FullSimulation.scala b/performance-tests/src/test/scala/unomi/FullSimulation.scala
deleted file mode 100644
index 2f5fbd0..0000000
--- a/performance-tests/src/test/scala/unomi/FullSimulation.scala
+++ /dev/null
@@ -1,44 +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 unomi
-
-import io.gatling.core.Predef._
-import io.gatling.core.structure.{PopulatedScenarioBuilder, ScenarioBuilder}
-import io.gatling.http.Predef._
-
-class FullSimulation extends Simulation {
-
-
- val httpProtocol = http
- .baseURLs(Parameters.baseUrls)
- .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
- .acceptEncodingHeader("gzip, deflate")
- .acceptLanguageHeader("en-US,en;q=0.5")
- .connection("keep-alive")
- .contentTypeHeader("text/plain;charset=UTF-8")
- .userAgentHeader("Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:24.0) Gecko/20100101 Firefox/24.0")
-
-
- val m = Map(
- UserScenario.scn -> Parameters.numberOfConcurrentUsers,
- AdminScenario.scn -> Parameters.numberOfConcurrentAdminUsers
- )
- val f = m.collect { case (scenario: ScenarioBuilder, count: Int) if count > 0 => scenario.inject(rampUsers(count) over Parameters.rampUpTime) }
- setUp(f.asInstanceOf[List[PopulatedScenarioBuilder]]).protocols(httpProtocol)
-
-}
diff --git a/performance-tests/src/test/scala/unomi/Parameters.scala b/performance-tests/src/test/scala/unomi/Parameters.scala
deleted file mode 100644
index 7b71416..0000000
--- a/performance-tests/src/test/scala/unomi/Parameters.scala
+++ /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 unomi
-
-import scala.concurrent.duration._
-
-/**
- * Parameters for simulation
- */
-object Parameters {
-
- //val baseUrls = List("http://localhost:8181", "http://localhost:9191")
- val baseUrls = List("http://localhost:8181")
-
- val format = new java.text.SimpleDateFormat("yyyy-MM")
- val minTime: Long = format.parse("2014-01").getTime()
- val maxTime: Long = format.parse("2015-12").getTime()
-
- val totalTime = 120 minutes
- val numberOfConcurrentUsers = 1000
- val numberOfConcurrentAdminUsers = 250
- val rampUpTime = 3 minutes
- val numberOfSessionsPerUser = 5
- val sessionSizeAverage = 20
- val sessionSizeStdDev = 4
-
- val loginPercentage: Double = 10.0
- val formEventPercentage: Double = 5.0
- val searchEventPercentage: Double = 5.0
-
- val delayAverage: Double = 4.5
- val delayStdDev: Double = 0.5
-
- val navigationDelayAverage: Double = 1.0
- val navigationDelayStdDev: Double = 0.2
-
-
-}
diff --git a/performance-tests/src/test/scala/unomi/PrepareIndices.scala b/performance-tests/src/test/scala/unomi/PrepareIndices.scala
deleted file mode 100644
index 045b5b8..0000000
--- a/performance-tests/src/test/scala/unomi/PrepareIndices.scala
+++ /dev/null
@@ -1,68 +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 unomi
-
-import java.util.UUID
-
-import io.gatling.core.Predef._
-import io.gatling.core.scenario.Simulation
-import io.gatling.http.Predef._
-
-/**
- * Created by toto on 07/04/15.
- */
-class PrepareIndices extends Simulation {
-
- val httpProtocol = http
- .baseURL("http://localhost:8181")
- .inferHtmlResources(WhiteList("""http://localhost:8181/.*"""), BlackList())
- .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
- .acceptEncodingHeader("gzip, deflate")
- .acceptLanguageHeader("en-US,en;q=0.5")
- .connection("keep-alive")
- .contentTypeHeader("text/plain;charset=UTF-8")
- .userAgentHeader("Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:24.0) Gecko/20100101 Firefox/24.0")
-
- val headers = Map(
- "Origin" -> "http://localhost:8080",
- "Pragma" -> "no-cache"
- )
-
- val urllistFeed = csv("urllist.txt").random
-
- val format = new java.text.SimpleDateFormat("yyyy-MM")
- val minTime: Long = format.parse("2014-01").getTime()
- val maxTime: Long = format.parse("2015-12").getTime()
-
- val seqSessionsFeed = (minTime to maxTime by 86400000).map { seq =>
- Map(
- "sessionId" -> UUID.randomUUID().toString,
- "timestamp" -> seq,
- "previousURL" -> ""
- )
- }
-
- val loadContext = feed(seqSessionsFeed).feed(urllistFeed).exec(http("LoadContext").post("/cxs/context.js?sessionId=${sessionId}×tamp=${timestamp}")
- .headers(headers)
- .body(ELFileBody("ContextLoad_request_0.json")))
-
- val prepare = scenario("PrepareIndices").repeat((minTime to maxTime by 86400000).size) { loadContext }
-
- setUp(prepare.inject(atOnceUsers(1))).protocols(httpProtocol)
-
-}
diff --git a/performance-tests/src/test/scala/unomi/UserScenario.scala b/performance-tests/src/test/scala/unomi/UserScenario.scala
deleted file mode 100644
index 35138df..0000000
--- a/performance-tests/src/test/scala/unomi/UserScenario.scala
+++ /dev/null
@@ -1,144 +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 unomi
-
-import java.util.UUID
-import java.util.concurrent.TimeUnit
-
-import io.gatling.core.Predef._
-import io.gatling.http.Predef._
-
-/**
- * User scenario
- */
-object UserScenario {
- val r = scala.util.Random
-
- val headers = Map(
- "Origin" -> "http://localhost:8080",
- "Pragma" -> "no-cache",
- "User-Agent" -> "${userAgent}"
- )
-
- // Feeds
-
- val usersFeed = Iterator.continually {
- Map(
- "numberOfSessions" -> Parameters.numberOfSessionsPerUser
- )
- }
-
- val sessionsFeed = Iterator.continually {
- Map(
- "sessionId" -> UUID.randomUUID().toString,
- "sessionSize" -> Math.max(2, Math.round(Parameters.sessionSizeAverage + Parameters.sessionSizeStdDev * r.nextGaussian()).toInt),
- "timestamp" -> (Parameters.minTime + r.nextInt(((Parameters.maxTime - Parameters.minTime) / 1000).toInt).toLong * 1000),
- "previousURL" -> "",
- "gender" -> (if (r.nextBoolean()) "male" else "female"),
- "age" -> (15 + r.nextInt(60)),
- "income" -> (10000 * r.nextInt(2000)),
- "faceBookId" -> (if (r.nextInt(10) > 7) "facebook" + Integer.toString(r.nextInt(10000)) else ""),
- "twitterId" -> (if (r.nextInt(10) > 7) "twitter" + Integer.toString(r.nextInt(10000)) else ""),
- "email" -> (if (r.nextInt(10) > 7) "user" + Integer.toString(r.nextInt(10000000)) + "@test.com" else ""),
- "phoneNumber" -> (if (r.nextInt(10) > 7) "001-202-555-" + Integer.toString(1000 + r.nextInt(10000)) else ""),
- "leadAssignedTo" -> (if (r.nextInt(10) > 7) "account_manager" + Integer.toString(r.nextInt(10)) + "@test.com" else "")
- )
- }
-
- val requestsFeed = Iterator.continually {
- Map(
- "pauseTime" -> Math.round((Parameters.delayAverage + Parameters.delayStdDev * r.nextGaussian()) * 1000).asInstanceOf[Int],
- "requestTemplate" -> r.nextInt(2)
- )
- }
-
- val ipListFeed = csv("ipList.txt").random
- val linklist = separatedValues("linklist.txt", ' ').random
- val urllistFeed = csv("urllist.txt").random
- val userAgentFeed = csv("userAgent.txt").random
- val wordsFeed = csv("words.txt").random
-
- val flagNewUser = exec(session => {
- session.set("flag", "New user")
- })
-
- val flagNewSession = exec(session => {
- if (session.attributes.get("flag").get == "") session.set("flag", "New session") else session
- })
-
- val unflag = exec(session => {
- session.set("flag", "")
- })
-
- val updatePreviousURL = exec(session => {
- session.set("previousURL", session.attributes.get("destinationURL").get)
- })
-
- val pauseAndUpdateTimestamp = pause("${pauseTime}", TimeUnit.MILLISECONDS)
- .exec(session => {
- session.set("timestamp", session.attributes.get("timestamp").get.asInstanceOf[Long] + session.attributes.get("pauseTime").get.asInstanceOf[Int])
- })
-
- // Browsing requests and scenario
-
- val loadContext = feed(requestsFeed).feed(urllistFeed).exec(http("LoadContext ${requestTemplate} ${flag}").post("/cxs/context.js?sessionId=${sessionId}×tamp=${timestamp}&remoteAddr=${ip}")
- .headers(headers)
- .body(ELFileBody("ContextLoad_request_${requestTemplate}.json")))
- .exec(updatePreviousURL)
- .exec(pauseAndUpdateTimestamp)
-
- val userLogin = feed(requestsFeed).exec(http("UserLogin").post("/cxs/eventcollector?sessionId=${sessionId}×tamp=${timestamp}&remoteAddr=${ip}")
- .headers(headers)
- .body(ELFileBody("UserLogin_request.json")))
- .exec(pauseAndUpdateTimestamp)
-
- val formEvent = feed(requestsFeed).exec(http("Form").post("/cxs/eventcollector?sessionId=${sessionId}×tamp=${timestamp}&remoteAddr=${ip}")
- .headers(headers)
- .body(ELFileBody("Form_request.json")))
- .exec(pauseAndUpdateTimestamp)
-
- val searchEvent = feed(requestsFeed).feed(wordsFeed).exec(http("Search").post("/cxs/eventcollector?sessionId=${sessionId}×tamp=${timestamp}&remoteAddr=${ip}")
- .headers(headers)
- .body(ELFileBody("Search_request.json")))
- .exec(pauseAndUpdateTimestamp)
-
- val scnRun = feed(usersFeed)
- .exec(flagNewUser)
- .repeat("${numberOfSessions}") {
- feed(sessionsFeed).feed(userAgentFeed).feed(ipListFeed)
- .exec(flagNewSession)
- .exec(loadContext)
- .exec(unflag)
- .randomSwitch(Parameters.loginPercentage -> userLogin)
- .repeat("${sessionSize}") {
- loadContext
- .randomSwitch(
- Parameters.formEventPercentage -> formEvent,
- Parameters.searchEventPercentage -> searchEvent
- )
- }
- .exec(flushSessionCookies)
- }
- .exec(flushCookieJar);
-
- val scn = scenario("User").during(Parameters.totalTime) {
- scnRun
- }
-
- val scnSingle = scenario("User").exec(scnRun);
-}
diff --git a/performance-tests/src/test/scala/unomi/UserSimulation.scala b/performance-tests/src/test/scala/unomi/UserSimulation.scala
deleted file mode 100644
index 96c8762..0000000
--- a/performance-tests/src/test/scala/unomi/UserSimulation.scala
+++ /dev/null
@@ -1,45 +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 unomi
-
-import io.gatling.core.Predef._
-import io.gatling.core.structure.{PopulatedScenarioBuilder, ScenarioBuilder}
-import io.gatling.http.Predef._
-
-class UserSimulation extends Simulation {
-
-
- val httpProtocol = http
- .baseURLs(Parameters.baseUrls)
- .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
- .acceptEncodingHeader("gzip, deflate")
- .acceptLanguageHeader("en-US,en;q=0.5")
- .connection("keep-alive")
- .contentTypeHeader("text/plain;charset=UTF-8")
- .userAgentHeader("Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:24.0) Gecko/20100101 Firefox/24.0")
-
-
-// setUp(UserScenario.scnSingle.inject(atOnceUsers(1)).protocols(httpProtocol))
-
- val m = Map(
- UserScenario.scn -> Parameters.numberOfConcurrentUsers
- )
- val f = m.collect { case (scenario: ScenarioBuilder, count: Int) if count > 0 => scenario.inject(rampUsers(count) over Parameters.rampUpTime) }
- setUp(f.asInstanceOf[List[PopulatedScenarioBuilder]]).protocols(httpProtocol)
-
-}
diff --git a/pom.xml b/pom.xml
index a82db61..7519bb0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -357,16 +357,6 @@
</profile>
<profile>
- <id>performance-tests</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
- <modules>
- <module>performance-tests</module>
- </modules>
- </profile>
-
- <profile>
<id>checkstyle</id>
<activation>
<activeByDefault>false</activeByDefault>
diff --git a/release-audit.sh b/release-audit.sh
index b5e28fb..2a0dd09 100755
--- a/release-audit.sh
+++ b/release-audit.sh
@@ -17,4 +17,4 @@
# limitations under the License.
#
################################################################################
-mvn clean install -P integration-tests,performance-tests,rat
\ No newline at end of file
+mvn clean install -P integration-tests,rat
\ No newline at end of file
diff --git a/update-notice.sh b/update-notice.sh
index eceedb0..40afa3d 100755
--- a/update-notice.sh
+++ b/update-notice.sh
@@ -17,4 +17,4 @@
# limitations under the License.
#
################################################################################
-mvn notice:generate -P integration-tests,performance-tests,generate-notice
\ No newline at end of file
+mvn notice:generate -P integration-tests,generate-notice
\ No newline at end of file