You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flagon.apache.org by po...@apache.org on 2019/07/13 04:01:08 UTC

[incubator-flagon] 01/01: [FLAGON-382, 347, 406] Updated Docker files and README for Flagon namechange, updated userale index to coerce interval log times into date format

This is an automated email from the ASF dual-hosted git repository.

poorejc pushed a commit to branch FLAGON-347
in repository https://gitbox.apache.org/repos/asf/incubator-flagon.git

commit ba8bcbdc877d7c97dd09495e26fca30ebce1a4e3
Author: poorejc <po...@apache.org>
AuthorDate: Sat Jul 13 00:00:38 2019 -0400

    [FLAGON-382, 347, 406] Updated Docker files and README for Flagon namechange, updated userale index to coerce interval log times into date format
---
 docker/README.md                                   |  33 ++--
 docker/docker-compose-6.5.4.yml                    |   2 +-
 docker/docker-compose.yml                          |   2 +-
 docker/elasticsearch/6.6.2/Dockerfile              |   2 +-
 .../elasticsearch/6.6.2/config/elasticsearch.yml   |   2 +-
 ...Apache Flagon Business Analytics Dashboard.json |   4 +-
 .../Apache Flagon Page Usage Dashboard.json        |   2 +-
 .../Apache Flagon User Access Dashboard.json       |   2 +-
 .../Apache Flagon Visualizations.json              | 216 ++++++++++++++-------
 docker/logstash/6.6.2/templates/userale.json       |  10 +
 docker/site/Dockerfile                             |   4 +-
 11 files changed, 181 insertions(+), 98 deletions(-)

diff --git a/docker/README.md b/docker/README.md
index 4fa8790..6124dd2 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -1,6 +1,6 @@
 Building Apache Flagon Docker Containers
 ===================================
-*Last Tested 24 MAR 2019 using Docker Engine v18.09.2, Compose v1.23.2, Machine v0.16.1*
+*Last Integration Test: 12 JUL 2019 using Docker Engine v18.09.2, Compose v1.23.2, Machine v0.16.1*
 
 Prerequisites
 -------------
@@ -25,7 +25,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
    Before installation, check that virtualbox version is at least 5.2. [``Reinstall virtualbox``](https://www.virtualbox.org/wiki/Downloads), if needed.
    
    ```bash
-   $ docker-machine create --virtualbox-memory 3072 --virtualbox-cpu-count 2 senssoft
+   $ docker-machine create --virtualbox-memory 3072 --virtualbox-cpu-count 2 flagon
    ```
     
 1. Before launching the Docker containers, ensure your ``vm_max_map_count``
@@ -34,7 +34,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
 
    ```bash
    # Example for Linux systems
-   $ docker-machine ssh senssoft sudo sysctl -w vm.max_map_count=262144
+   $ docker-machine ssh flagon sudo sysctl -w vm.max_map_count=262144
    ```
 
 1. Create externel docker network to enable system monitoring. Only enable if running 
@@ -59,12 +59,12 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
 1. Confirm state:
    ```bash
    # if Flagon vm is remote
-   $ docker-machine ssh senssoft curl -XGET http://localhost:9200/_cluster/health?pretty
+   $ docker-machine ssh flagon curl -XGET http://localhost:9200/_cluster/health?pretty
    # if Flagon virtual machine is running on your local machine, no need for ssh, instead:
    $ curl -XGET http://localhost:9200/_cluster/health?pretty
    #output should look like this:
-      "cluster_name" : "SensSoft",
-      "status" : "yellow",
+      "cluster_name" : "Flagon",
+      "status" : "green",
       "timed_out" : false,
       "number_of_nodes" : 1,
       "number_of_data_nodes" : 1,
@@ -86,7 +86,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
    ```bash
    $ docker-compose up -d logstash
    # if Flagon vm is remote
-   $ docker-machine ssh senssoft curl -XGET http://localhost:8100
+   $ docker-machine ssh flagon curl -XGET http://localhost:8100
    # if Flagon virtual machine is running on your local machine, no need for ssh, instead:
    $ curl -XGET http://localhost:8100
    #ouput should look like this:
@@ -98,7 +98,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
    ```bash
    $ docker-compose up -d site
    # for remote users, forwards port to localhost
-   $ ssh docker@$(docker-machine ip senssoft) -L 8080:localhost:8080
+   $ ssh docker@$(docker-machine ip flagon) -L 8080:localhost:8080
    ```
    
    Visit `http://localhost:8080` and you will see Apache Flagon's home page.
@@ -114,7 +114,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
    ```bash
    $ docker-compose up -d kibana
    # for remote users, forwards port to localhost
-   $ ssh docker@$(docker-machine ip senssoft) -L 5601:localhost:5601
+   $ ssh docker@$(docker-machine ip flagon) -L 5601:localhost:5601
    ```
 
 1. Register an index in Kibana to see the logs:
@@ -127,7 +127,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
 1. Load example Dashboard and Visualizations under docker/kibana/.
 
    Goto: Management -> Saved Objects and select the `Import` button. Import the
-   `Apache SensSoft Visualizations.json`, `Drill-Down Search.json`, `Apache SensSoft Page Usage Dashboard.json`, and `Apache SensSoft User Access Dashboard.json` files from the "Saved Objects" folder in the kibana directory.
+   `Apache Flagon Visualizations.json`, `Drill-Down Search.json`, `Apache Flagon Page Usage Dashboard.json`, and `Apache Flagon User Access Dashboard.json` files from the "Saved Objects" folder in the kibana directory.
 
    ![alt text][management]
 
@@ -136,7 +136,7 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
    ![alt text][viz_import]
    
    Once that is complete, navigate to the `Dashboard` view in Kibana and click the
-   `Apache SensSoft Page Usage Dashboard` object. 
+   `Apache Flagon Page Usage Dashboard` object. 
 
    ![alt text][dashboard]
    
@@ -157,7 +157,12 @@ requires special configuration. Please reach out to us at [our dev list](mailto:
     
  1. To kill the Flagon machine.
     ```bash
-    $ docker-machine rm senssoft
+    $ docker-machine stop flagon
+    ```
+    
+ 1. To remove the Flagon machine.
+    ```bash
+    $ docker-machine rm flagon
     ```
     
 If running on a single machine, on reboot or restart your Flagon machine is available, but 
@@ -166,11 +171,11 @@ compose up commands above to restart containers.
 
  1. Restart the Flagon machine.
     ```bash
-    $ docker-machine start senssoft
+    $ docker-machine start flagon
     $ docker-machine ls #confirm state
     #output should look like this:
     NAME     ACTIVE   DRIVER       STATE     URL                       SWARM   DOCKER     ERRORS
-    senssoft   -      virtualbox   Running   tcp://192. ...                    v18.09.3   
+    flagon   -      virtualbox   Running   tcp://192. ...                    v18.09.3   
     ```
 
 Having Issues?
diff --git a/docker/docker-compose-6.5.4.yml b/docker/docker-compose-6.5.4.yml
index 594e5c4..dd104ac 100644
--- a/docker/docker-compose-6.5.4.yml
+++ b/docker/docker-compose-6.5.4.yml
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Apache SensSoft Single-Node Build
+# Apache Flagon Single-Node Build
 
 version: "3"
 services:
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index 390fb30..4c7647f 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Apache SensSoft Single-Node Build
+# Apache Flagon Single-Node Build
 
 version: "3"
 services:
diff --git a/docker/elasticsearch/6.6.2/Dockerfile b/docker/elasticsearch/6.6.2/Dockerfile
index b6cba8c..10516b7 100644
--- a/docker/elasticsearch/6.6.2/Dockerfile
+++ b/docker/elasticsearch/6.6.2/Dockerfile
@@ -22,7 +22,7 @@ COPY config /usr/share/elasticsearch/config
 RUN chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/config
 
 # Set environment
-ENV CLUSTER_NAME SensSoft
+ENV CLUSTER_NAME Flagon
 
 # Kubernetes requires swap is turned off
 ENV MEMORY_LOCK false
diff --git a/docker/elasticsearch/6.6.2/config/elasticsearch.yml b/docker/elasticsearch/6.6.2/config/elasticsearch.yml
index 5525441..a819696 100644
--- a/docker/elasticsearch/6.6.2/config/elasticsearch.yml
+++ b/docker/elasticsearch/6.6.2/config/elasticsearch.yml
@@ -16,7 +16,7 @@
 # Custom config borrowed from Pires: https://github.com/pires/docker-elasticsearch-kubernetes
 
 cluster:
-  name: ${CLUSTER_NAME:SensSoft}
+  name: ${CLUSTER_NAME:FLAGON}
 
 node:
   master: ${NODE_MASTER:true}
diff --git a/docker/kibana/6.6.2/Saved Objects/Apache Flagon Business Analytics Dashboard.json b/docker/kibana/6.6.2/Saved Objects/Apache Flagon Business Analytics Dashboard.json
index eb2f22d..bd56e2d 100644
--- a/docker/kibana/6.6.2/Saved Objects/Apache Flagon Business Analytics Dashboard.json	
+++ b/docker/kibana/6.6.2/Saved Objects/Apache Flagon Business Analytics Dashboard.json	
@@ -3,10 +3,10 @@
     "_id": "90b264d0-2cd4-11e9-9b9a-95b7b006b436",
     "_type": "dashboard",
     "_source": {
-      "title": "Apache SensSoft Business Analytics Dashboard",
+      "title": "Apache Flagon Business Analytics Dashboard",
       "hits": 0,
       "description": "Abstracts Multi-User Interaction with Single Pages/Apps",
-      "panelsJSON": "[{\"embeddableConfig\":{\"vis\":{\"defaultColors\":{\"0 - 400\":\"rgb(255,245,240)\",\"1,200 - 1,600\":\"rgb(203,24,29)\",\"400 - 800\":\"rgb(252,187,161)\",\"800 - 1,200\":\"rgb(251,106,74)\"},\"legendOpen\":false}},\"gridData\":{\"h\":21,\"i\":\"5\",\"w\":48,\"x\":0,\"y\":84},\"id\":\"429c0940-fce6-11e8-a156-87bcaf41506e\",\"panelIndex\":\"5\",\"title\":\"Unique User Activity by Day\",\"type\":\"visualization\",\"version\":\"6.5.4\"},{\"gridData\":{\"h\":15,\"i\":\ [...]
+      "panelsJSON": "[{\"embeddableConfig\":{\"vis\":{\"defaultColors\":{\"0 - 400\":\"rgb(255,245,240)\",\"1,200 - 1,600\":\"rgb(203,24,29)\",\"400 - 800\":\"rgb(252,187,161)\",\"800 - 1,200\":\"rgb(251,106,74)\"},\"legendOpen\":false}},\"gridData\":{\"x\":0,\"y\":84,\"w\":48,\"h\":21,\"i\":\"5\"},\"id\":\"429c0940-fce6-11e8-a156-87bcaf41506e\",\"panelIndex\":\"5\",\"title\":\"Unique User Activity by Day\",\"type\":\"visualization\",\"version\":\"6.5.4\"},{\"embeddableConfig\":{\"vis\": [...]
       "optionsJSON": "{\"darkTheme\":true,\"useMargins\":false}",
       "version": 1,
       "timeRestore": false,
diff --git a/docker/kibana/6.6.2/Saved Objects/Apache Flagon Page Usage Dashboard.json b/docker/kibana/6.6.2/Saved Objects/Apache Flagon Page Usage Dashboard.json
index c9e569e..f66ec8c 100644
--- a/docker/kibana/6.6.2/Saved Objects/Apache Flagon Page Usage Dashboard.json	
+++ b/docker/kibana/6.6.2/Saved Objects/Apache Flagon Page Usage Dashboard.json	
@@ -3,7 +3,7 @@
     "_id": "3f02bf70-12eb-11e9-a1e0-631cf5fb9335",
     "_type": "dashboard",
     "_source": {
-      "title": "Apache SensSoft Page Usage Dashboard",
+      "title": "Apache Flagon Page Usage Dashboard",
       "hits": 0,
       "description": "Abstracts Multi-User Interaction with Single Pages/Apps. Ideal for script-tag, page-level UserALE.js deployments.",
       "panelsJSON": "[{\"gridData\":{\"h\":15,\"i\":\"2\",\"w\":32,\"x\":16,\"y\":0},\"id\":\"f7ca4560-be7c-11e7-8adf-fd0a12531eca\",\"panelIndex\":\"2\",\"type\":\"visualization\",\"version\":\"6.5.4\"},{\"embeddableConfig\":{\"vis\":{\"defaultColors\":{\"0 - 400\":\"rgb(255,245,240)\",\"1,200 - 1,600\":\"rgb(203,24,29)\",\"400 - 800\":\"rgb(252,187,161)\",\"800 - 1,200\":\"rgb(251,106,74)\"},\"legendOpen\":false}},\"gridData\":{\"h\":15,\"i\":\"5\",\"w\":20,\"x\":12,\"y\":15},\"id\":\" [...]
diff --git a/docker/kibana/6.6.2/Saved Objects/Apache Flagon User Access Dashboard.json b/docker/kibana/6.6.2/Saved Objects/Apache Flagon User Access Dashboard.json
index cf34ced..68b74bd 100644
--- a/docker/kibana/6.6.2/Saved Objects/Apache Flagon User Access Dashboard.json	
+++ b/docker/kibana/6.6.2/Saved Objects/Apache Flagon User Access Dashboard.json	
@@ -3,7 +3,7 @@
     "_id": "ab9f1f90-fce6-11e8-a156-87bcaf41506e",
     "_type": "dashboard",
     "_source": {
-      "title": "Apache SensSoft User Access Dashboard",
+      "title": "Apache Flagon User Access Dashboard",
       "hits": 0,
       "description": "Abstracts Multi-User Utilization of IT Assets (and Web Usage). Ideal for UserALE.js Web Extension deployments.",
       "panelsJSON": "[{\"gridData\":{\"h\":15,\"i\":\"2\",\"w\":32,\"x\":16,\"y\":0},\"id\":\"f7ca4560-be7c-11e7-8adf-fd0a12531eca\",\"panelIndex\":\"2\",\"type\":\"visualization\",\"version\":\"6.5.4\"},{\"embeddableConfig\":{\"spy\":null},\"gridData\":{\"h\":15,\"i\":\"4\",\"w\":16,\"x\":0,\"y\":0},\"id\":\"e36b1f40-be7c-11e7-8adf-fd0a12531eca\",\"panelIndex\":\"4\",\"type\":\"visualization\",\"version\":\"6.5.4\"},{\"gridData\":{\"h\":15,\"i\":\"5\",\"w\":36,\"x\":12,\"y\":15},\"id\": [...]
diff --git a/docker/kibana/6.6.2/Saved Objects/Apache Flagon Visualizations.json b/docker/kibana/6.6.2/Saved Objects/Apache Flagon Visualizations.json
index 95fc985..d7781e2 100644
--- a/docker/kibana/6.6.2/Saved Objects/Apache Flagon Visualizations.json	
+++ b/docker/kibana/6.6.2/Saved Objects/Apache Flagon Visualizations.json	
@@ -1,15 +1,32 @@
 [
   {
-    "_id": "28070240-2d12-11e9-9b9a-95b7b006b436",
+    "_id": "d5a95ce0-06e3-11e9-8c58-f38cfff498f6",
     "_type": "visualization",
     "_source": {
-      "title": "Activity by SessionID",
-      "visState": "{\"type\":\"timelion\",\"title\":\"Activity by SessionID\",\"params\":{\"expression\":\".es(*,split=sessionID:10)\",\"interval\":\"auto\"}}",
+      "title": "Page Activity By Day",
+      "visState": "{\"title\":\"Page Activity By Day\",\"type\":\"heatmap\",\"params\":{\"type\":\"heatmap\",\"addTooltip\":true,\"addLegend\":true,\"enableHover\":false,\"legendPosition\":\"right\",\"times\":[],\"colorsNumber\":4,\"colorSchema\":\"Reds\",\"setColorRange\":false,\"colorsRange\":[],\"invertColors\":false,\"percentageMode\":false,\"valueAxes\":[{\"show\":false,\"id\":\"ValueAxis-1\",\"type\":\"value\",\"scale\":{\"type\":\"linear\",\"defaultYExtents\":false},\"labels\":{\" [...]
+      "uiStateJSON": "{\"vis\":{\"defaultColors\":{\"0 - 125\":\"rgb(255,245,240)\",\"125 - 250\":\"rgb(252,187,161)\",\"250 - 375\":\"rgb(251,106,74)\",\"375 - 500\":\"rgb(203,24,29)\"}}}",
+      "description": "",
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
+      }
+    },
+    "_meta": {
+      "savedObjectVersion": 2
+    }
+  },
+  {
+    "_id": "33e09c60-2ff2-11e9-be20-a737e788a0aa",
+    "_type": "visualization",
+    "_source": {
+      "title": "Funnel",
+      "visState": "{\"title\":\"Funnel\",\"type\":\"histogram\",\"params\":{\"type\":\"histogram\",\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"type\":\"category\",\"position\":\"bottom\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\"},\"labels\":{\"show\":true,\"truncate\":100},\"title\":{}}],\"valueAxes\":[{\"id\":\"ValueAxis-1\",\"name\":\"LeftAxis-1\",\"type\":\"value\",\"position\":\"left\",\"show\":true, [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":\"\",\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -17,16 +34,16 @@
     }
   },
   {
-    "_id": "36a0eb90-2cd6-11e9-9b9a-95b7b006b436",
+    "_id": "887fec40-1886-11e9-bdac-e790c2bff4d4",
     "_type": "visualization",
     "_source": {
-      "title": "Time-Series Unique Hosts",
-      "visState": "{\"title\":\"Time-Series Unique Hosts\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(metric=cardinality:host).label('Unique Users (Hosts)')\",\"interval\":\"auto\"},\"aggs\":[]}",
+      "title": "A/B Test",
+      "visState": "{\"title\":\"A/B Test\",\"type\":\"histogram\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"show\":true,\"truncate\":100},\"position\":\"bottom\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"HTML Tags\"},\"type\":\"category\"}],\"defaultYExtents\":false,\"drawLinesBetweenPoints\":true,\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\ [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"query\":{\"language\":\"lucene\",\"query\":\"\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"language\":\"lucene\",\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"default_field\":\"*\",\"query\":\"*\"}}},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -34,16 +51,50 @@
     }
   },
   {
-    "_id": "f7ca4560-be7c-11e7-8adf-fd0a12531eca",
+    "_id": "e36b1f40-be7c-11e7-8adf-fd0a12531eca",
     "_type": "visualization",
     "_source": {
-      "title": "Time Series",
-      "visState": "{\"title\":\"Time Series\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(*)\",\"interval\":\"auto\"},\"aggs\":[],\"listeners\":{}}",
+      "title": "Total Number of Logs",
+      "visState": "{\"title\":\"Total Number of Logs\",\"type\":\"metric\",\"params\":{\"handleNoResults\":true,\"fontSize\":60},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Total number of logs\"}}],\"listeners\":{}}",
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"query\":{\"query\":{\"query_string\":{\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"language\":\"lucene\"},\"filter\":[]}"
+      }
+    },
+    "_meta": {
+      "savedObjectVersion": 2
+    }
+  },
+  {
+    "_id": "2bf40010-be7d-11e7-8adf-fd0a12531eca",
+    "_type": "visualization",
+    "_source": {
+      "title": "Events by Targets",
+      "visState": "{\"title\":\"Events by Targets\",\"type\":\"histogram\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"show\":true,\"truncate\":100},\"position\":\"bottom\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"HTML Tags\"},\"type\":\"category\"}],\"defaultYExtents\":false,\"drawLinesBetweenPoints\":true,\"grid\":{\"categoryLines\":false,\"style\":{\"color\ [...]
+      "uiStateJSON": "{}",
+      "description": "",
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"language\":\"lucene\"},\"filter\":[]}"
+      }
+    },
+    "_meta": {
+      "savedObjectVersion": 2
+    }
+  },
+  {
+    "_id": "64045a30-fce4-11e8-a156-87bcaf41506e",
+    "_type": "visualization",
+    "_source": {
+      "title": "Total Logs by Unique Hosts",
+      "visState": "{\"title\":\"Total Logs by Unique Hosts\",\"type\":\"horizontal_bar\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"filter\":false,\"rotate\":0,\"show\":true,\"truncate\":200},\"position\":\"left\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{},\"type\":\"category\"}],\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"legendPosition\":\"righ [...]
+      "uiStateJSON": "{}",
+      "description": "",
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
       }
     },
     "_meta": {
@@ -60,7 +111,7 @@
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -77,7 +128,7 @@
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -94,7 +145,7 @@
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
       }
     },
     "_meta": {
@@ -102,16 +153,16 @@
     }
   },
   {
-    "_id": "bf327a20-12f3-11e9-a1e0-631cf5fb9335",
+    "_id": "429c0940-fce6-11e8-a156-87bcaf41506e",
     "_type": "visualization",
     "_source": {
-      "title": "Top Target UI Element Cloud",
-      "visState": "{\"title\":\"Top Target UI Element Cloud\",\"type\":\"tagcloud\",\"params\":{\"scale\":\"linear\",\"orientation\":\"single\",\"minFontSize\":8,\"maxFontSize\":29,\"hideLabel\":false},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Count of User Events\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"target\",\"otherBucket\":false,\"otherBucketLabel\":\"Ot [...]
-      "uiStateJSON": "{}",
+      "title": "Host Activity By Day",
+      "visState": "{\"title\":\"Host Activity By Day\",\"type\":\"heatmap\",\"params\":{\"type\":\"heatmap\",\"addTooltip\":true,\"addLegend\":true,\"enableHover\":false,\"legendPosition\":\"right\",\"times\":[],\"colorsNumber\":4,\"colorSchema\":\"Reds\",\"setColorRange\":false,\"colorsRange\":[],\"invertColors\":false,\"percentageMode\":false,\"valueAxes\":[{\"show\":false,\"id\":\"ValueAxis-1\",\"type\":\"value\",\"scale\":{\"type\":\"linear\",\"defaultYExtents\":false},\"labels\":{\" [...]
+      "uiStateJSON": "{\"vis\":{\"defaultColors\":{\"0 - 500\":\"rgb(255,245,240)\",\"500 - 1,000\":\"rgb(252,187,161)\",\"1,000 - 1,500\":\"rgb(251,106,74)\",\"1,500 - 2,000\":\"rgb(203,24,29)\"}}}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
       }
     },
     "_meta": {
@@ -119,16 +170,16 @@
     }
   },
   {
-    "_id": "887fec40-1886-11e9-bdac-e790c2bff4d4",
+    "_id": "bcd7c950-be7c-11e7-8adf-fd0a12531eca",
     "_type": "visualization",
     "_source": {
-      "title": "A/B Test",
-      "visState": "{\"title\":\"A/B Test\",\"type\":\"histogram\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"show\":true,\"truncate\":100},\"position\":\"bottom\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"HTML Tags\"},\"type\":\"category\"}],\"defaultYExtents\":false,\"drawLinesBetweenPoints\":true,\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\ [...]
+      "title": "Top Event Types",
+      "visState": "{\"title\":\"Top Event Types\",\"type\":\"pie\",\"params\":{\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"isDonut\":false},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Top Event Types\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"type\",\"size\":100,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Event types\"}}],\"lis [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"language\":\"lucene\",\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"default_field\":\"*\",\"query\":\"*\"}}},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -136,16 +187,16 @@
     }
   },
   {
-    "_id": "bcd7c950-be7c-11e7-8adf-fd0a12531eca",
+    "_id": "bf327a20-12f3-11e9-a1e0-631cf5fb9335",
     "_type": "visualization",
     "_source": {
-      "title": "Top Event Types",
-      "visState": "{\"title\":\"Top Event Types\",\"type\":\"pie\",\"params\":{\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"isDonut\":false},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Top Event Types\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"type\",\"size\":100,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Event types\"}}],\"lis [...]
+      "title": "Top Target UI Element Cloud",
+      "visState": "{\"title\":\"Top Target UI Element Cloud\",\"type\":\"tagcloud\",\"params\":{\"scale\":\"linear\",\"orientation\":\"single\",\"minFontSize\":8,\"maxFontSize\":29,\"hideLabel\":false},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Count of User Events\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"target\",\"otherBucket\":false,\"otherBucketLabel\":\"Ot [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
       }
     },
     "_meta": {
@@ -153,16 +204,16 @@
     }
   },
   {
-    "_id": "e36b1f40-be7c-11e7-8adf-fd0a12531eca",
+    "_id": "e1b6c290-06e1-11e9-8c58-f38cfff498f6",
     "_type": "visualization",
     "_source": {
-      "title": "Total Number of Logs",
-      "visState": "{\"title\":\"Total Number of Logs\",\"type\":\"metric\",\"params\":{\"handleNoResults\":true,\"fontSize\":60},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Total number of logs\"}}],\"listeners\":{}}",
+      "title": "Top Pages by Activity",
+      "visState": "{\"title\":\"Top Pages by Activity\",\"type\":\"pie\",\"params\":{\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"isDonut\":false,\"type\":\"pie\",\"labels\":{\"show\":false,\"values\":true,\"last_level\":true,\"truncate\":100}},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Top Event Types\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"fie [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":\"*\",\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -170,16 +221,16 @@
     }
   },
   {
-    "_id": "2bf40010-be7d-11e7-8adf-fd0a12531eca",
+    "_id": "f7ca4560-be7c-11e7-8adf-fd0a12531eca",
     "_type": "visualization",
     "_source": {
-      "title": "Events by Targets",
-      "visState": "{\"title\":\"Events by Targets\",\"type\":\"histogram\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"show\":true,\"truncate\":100},\"position\":\"bottom\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"HTML Tags\"},\"type\":\"category\"}],\"defaultYExtents\":false,\"drawLinesBetweenPoints\":true,\"grid\":{\"categoryLines\":false,\"style\":{\"color\ [...]
+      "title": "Time Series",
+      "visState": "{\"title\":\"Time Series\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(*)\",\"interval\":\"auto\"},\"aggs\":[],\"listeners\":{}}",
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"query\":{\"query\":{\"query_string\":{\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -187,16 +238,16 @@
     }
   },
   {
-    "_id": "64045a30-fce4-11e8-a156-87bcaf41506e",
+    "_id": "36a0eb90-2cd6-11e9-9b9a-95b7b006b436",
     "_type": "visualization",
     "_source": {
-      "title": "Total Logs by Unique Hosts",
-      "visState": "{\"title\":\"Total Logs by Unique Hosts\",\"type\":\"horizontal_bar\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"filter\":false,\"rotate\":0,\"show\":true,\"truncate\":200},\"position\":\"left\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{},\"type\":\"category\"}],\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"legendPosition\":\"righ [...]
+      "title": "Time-Series Unique Hosts",
+      "visState": "{\"title\":\"Time-Series Unique Hosts\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(metric=cardinality:host).label('Unique Users (Hosts)')\",\"interval\":\"auto\"},\"aggs\":[]}",
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
+        "searchSourceJSON": "{\"query\":{\"language\":\"lucene\",\"query\":\"\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -204,16 +255,16 @@
     }
   },
   {
-    "_id": "429c0940-fce6-11e8-a156-87bcaf41506e",
+    "_id": "28070240-2d12-11e9-9b9a-95b7b006b436",
     "_type": "visualization",
     "_source": {
-      "title": "Host Activity By Day",
-      "visState": "{\"title\":\"Host Activity By Day\",\"type\":\"heatmap\",\"params\":{\"type\":\"heatmap\",\"addTooltip\":true,\"addLegend\":true,\"enableHover\":false,\"legendPosition\":\"right\",\"times\":[],\"colorsNumber\":4,\"colorSchema\":\"Reds\",\"setColorRange\":false,\"colorsRange\":[],\"invertColors\":false,\"percentageMode\":false,\"valueAxes\":[{\"show\":false,\"id\":\"ValueAxis-1\",\"type\":\"value\",\"scale\":{\"type\":\"linear\",\"defaultYExtents\":false},\"labels\":{\" [...]
-      "uiStateJSON": "{\"vis\":{\"defaultColors\":{\"0 - 500\":\"rgb(255,245,240)\",\"500 - 1,000\":\"rgb(252,187,161)\",\"1,000 - 1,500\":\"rgb(251,106,74)\",\"1,500 - 2,000\":\"rgb(203,24,29)\"}}}",
+      "title": "Activity by SessionID",
+      "visState": "{\"type\":\"timelion\",\"title\":\"Activity by SessionID\",\"params\":{\"expression\":\".es(*,split=sessionID:10)\",\"interval\":\"auto\"}}",
+      "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
+        "searchSourceJSON": "{}"
       }
     },
     "_meta": {
@@ -230,7 +281,7 @@
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -238,16 +289,16 @@
     }
   },
   {
-    "_id": "b7324e60-12ec-11e9-a1e0-631cf5fb9335",
+    "_id": "822808b0-2d0c-11e9-9b9a-95b7b006b436",
     "_type": "visualization",
     "_source": {
-      "title": "Top URL Visits By Day",
-      "visState": "{\"title\":\"Top URL Visits By Day\",\"type\":\"heatmap\",\"params\":{\"type\":\"heatmap\",\"addTooltip\":true,\"addLegend\":true,\"enableHover\":false,\"legendPosition\":\"right\",\"times\":[],\"colorsNumber\":4,\"colorSchema\":\"Reds\",\"setColorRange\":false,\"colorsRange\":[],\"invertColors\":false,\"percentageMode\":false,\"valueAxes\":[{\"show\":false,\"id\":\"ValueAxis-1\",\"type\":\"value\",\"scale\":{\"type\":\"linear\",\"defaultYExtents\":false},\"labels\":{\ [...]
-      "uiStateJSON": "{\"vis\":{\"defaultColors\":{\"0 - 400\":\"rgb(255,245,240)\",\"400 - 800\":\"rgb(252,187,161)\",\"800 - 1,200\":\"rgb(251,106,74)\",\"1,200 - 1,600\":\"rgb(203,24,29)\"}}}",
+      "title": "Top Web Pages by Unique Visitors",
+      "visState": "{\"title\":\"Top Web Pages by Unique Visitors\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMetricsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"cardinality\",\"schema\":\"metric\",\"params\":{\"field\":\"host\",\"customLabel\":\"Unique Visitors\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket [...]
+      "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":\"\",\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -264,7 +315,7 @@
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -272,16 +323,16 @@
     }
   },
   {
-    "_id": "822808b0-2d0c-11e9-9b9a-95b7b006b436",
+    "_id": "b7324e60-12ec-11e9-a1e0-631cf5fb9335",
     "_type": "visualization",
     "_source": {
-      "title": "Top Web Pages by Unique Visitors",
-      "visState": "{\"title\":\"Top Web Pages by Unique Visitors\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMetricsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"cardinality\",\"schema\":\"metric\",\"params\":{\"field\":\"host\",\"customLabel\":\"Unique Visitors\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket [...]
-      "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}",
+      "title": "Top URL Visits By Day",
+      "visState": "{\"title\":\"Top URL Visits By Day\",\"type\":\"heatmap\",\"params\":{\"type\":\"heatmap\",\"addTooltip\":true,\"addLegend\":true,\"enableHover\":false,\"legendPosition\":\"right\",\"times\":[],\"colorsNumber\":4,\"colorSchema\":\"Reds\",\"setColorRange\":false,\"colorsRange\":[],\"invertColors\":false,\"percentageMode\":false,\"valueAxes\":[{\"show\":false,\"id\":\"ValueAxis-1\",\"type\":\"value\",\"scale\":{\"type\":\"linear\",\"defaultYExtents\":false},\"labels\":{\ [...]
+      "uiStateJSON": "{\"vis\":{\"defaultColors\":{\"0 - 400\":\"rgb(255,245,240)\",\"400 - 800\":\"rgb(252,187,161)\",\"800 - 1,200\":\"rgb(251,106,74)\",\"1,200 - 1,600\":\"rgb(203,24,29)\"}}}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":\"\",\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
       }
     },
     "_meta": {
@@ -289,16 +340,16 @@
     }
   },
   {
-    "_id": "5b467330-06e2-11e9-8c58-f38cfff498f6",
+    "_id": "bd56f810-a4da-11e9-baf2-196230c538eb",
     "_type": "visualization",
     "_source": {
-      "title": "Number of Unique Users (Hosts)",
-      "visState": "{\"title\":\"Number of Unique Users (Hosts)\",\"type\":\"metric\",\"params\":{\"handleNoResults\":true,\"fontSize\":60,\"addTooltip\":true,\"addLegend\":false,\"type\":\"metric\",\"metric\":{\"percentageMode\":false,\"useRanges\":false,\"colorSchema\":\"Green to Red\",\"metricColorMode\":\"None\",\"colorsRange\":[{\"from\":0,\"to\":10000}],\"labels\":{\"show\":true},\"invertColors\":false,\"style\":{\"bgFill\":\"#000\",\"bgColor\":false,\"labelColor\":false,\"subText\" [...]
+      "title": "Average Number of Events per Unique Users (userId)",
+      "visState": "{\"aggs\":[{\"enabled\":true,\"id\":\"1\",\"params\":{\"customBucket\":{\"enabled\":true,\"id\":\"1-bucket\",\"params\":{\"field\":\"userId\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"order\":\"desc\",\"orderAgg\":{\"enabled\":true,\"id\":\"1-bucket-orderAgg\",\"params\":{},\"schema\":{\"aggFilter\":[\"!top_hits\",\"!percentiles\",\"!median\",\"!std_dev\",\"!derivative\",\"!moving_avg\",\"!serial_diff\",\"!cumulative_sum\",\"!avg_bucket\",\"!max_buck [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -306,16 +357,16 @@
     }
   },
   {
-    "_id": "33e09c60-2ff2-11e9-be20-a737e788a0aa",
+    "_id": "28b7ad70-a4db-11e9-baf2-196230c538eb",
     "_type": "visualization",
     "_source": {
-      "title": "Funnel",
-      "visState": "{\"title\":\"Funnel\",\"type\":\"histogram\",\"params\":{\"type\":\"histogram\",\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"type\":\"category\",\"position\":\"bottom\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\"},\"labels\":{\"show\":true,\"truncate\":100},\"title\":{}}],\"valueAxes\":[{\"id\":\"ValueAxis-1\",\"name\":\"LeftAxis-1\",\"type\":\"value\",\"position\":\"left\",\"show\":true, [...]
+      "title": "Most Active Users by userId",
+      "visState": "{\"title\":\"Most Active Users by userId\",\"type\":\"horizontal_bar\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"filter\":false,\"rotate\":0,\"show\":true,\"truncate\":200},\"position\":\"left\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{},\"type\":\"category\"}],\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"legendPosition\":\"rig [...]
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":\"\",\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
       }
     },
     "_meta": {
@@ -323,16 +374,16 @@
     }
   },
   {
-    "_id": "d5a95ce0-06e3-11e9-8c58-f38cfff498f6",
+    "_id": "5b467330-06e2-11e9-8c58-f38cfff498f6",
     "_type": "visualization",
     "_source": {
-      "title": "Page Activity By Day",
-      "visState": "{\"title\":\"Page Activity By Day\",\"type\":\"heatmap\",\"params\":{\"type\":\"heatmap\",\"addTooltip\":true,\"addLegend\":true,\"enableHover\":false,\"legendPosition\":\"right\",\"times\":[],\"colorsNumber\":4,\"colorSchema\":\"Reds\",\"setColorRange\":false,\"colorsRange\":[],\"invertColors\":false,\"percentageMode\":false,\"valueAxes\":[{\"show\":false,\"id\":\"ValueAxis-1\",\"type\":\"value\",\"scale\":{\"type\":\"linear\",\"defaultYExtents\":false},\"labels\":{\" [...]
-      "uiStateJSON": "{\"vis\":{\"defaultColors\":{\"0 - 125\":\"rgb(255,245,240)\",\"125 - 250\":\"rgb(252,187,161)\",\"250 - 375\":\"rgb(251,106,74)\",\"375 - 500\":\"rgb(203,24,29)\"}}}",
+      "title": "Number of Unique Users (userId)",
+      "visState": "{\"title\":\"Number of Unique Users (userId)\",\"type\":\"metric\",\"params\":{\"handleNoResults\":true,\"fontSize\":60,\"addTooltip\":true,\"addLegend\":false,\"type\":\"metric\",\"metric\":{\"percentageMode\":false,\"useRanges\":false,\"colorSchema\":\"Green to Red\",\"metricColorMode\":\"None\",\"colorsRange\":[{\"from\":0,\"to\":10000}],\"labels\":{\"show\":true},\"invertColors\":false,\"style\":{\"bgFill\":\"#000\",\"bgColor\":false,\"labelColor\":false,\"subText\ [...]
+      "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"filter\":[],\"query\":{\"query\":\"\",\"language\":\"lucene\"}}"
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
       }
     },
     "_meta": {
@@ -340,16 +391,33 @@
     }
   },
   {
-    "_id": "e1b6c290-06e1-11e9-8c58-f38cfff498f6",
+    "_id": "a712e550-a4da-11e9-baf2-196230c538eb",
     "_type": "visualization",
     "_source": {
-      "title": "Top Pages by Activity",
-      "visState": "{\"title\":\"Top Pages by Activity\",\"type\":\"pie\",\"params\":{\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"isDonut\":false,\"type\":\"pie\",\"labels\":{\"show\":false,\"values\":true,\"last_level\":true,\"truncate\":100}},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Top Event Types\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"fie [...]
+      "title": "Number of Unique Users (host)",
+      "visState": "{\"title\":\"Number of Unique Users (host)\",\"type\":\"metric\",\"params\":{\"handleNoResults\":true,\"fontSize\":60,\"addTooltip\":true,\"addLegend\":false,\"type\":\"metric\",\"metric\":{\"percentageMode\":false,\"useRanges\":false,\"colorSchema\":\"Green to Red\",\"metricColorMode\":\"None\",\"colorsRange\":[{\"from\":0,\"to\":10000}],\"labels\":{\"show\":true},\"invertColors\":false,\"style\":{\"bgFill\":\"#000\",\"bgColor\":false,\"labelColor\":false,\"subText\": [...]
+      "uiStateJSON": "{}",
+      "description": "",
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"7f1f6a80-a4d7-11e9-baf2-196230c538eb\",\"query\":{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true,\"default_field\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+      }
+    },
+    "_meta": {
+      "savedObjectVersion": 2
+    }
+  },
+  {
+    "_id": "51622390-a4db-11e9-baf2-196230c538eb",
+    "_type": "visualization",
+    "_source": {
+      "title": "Time-Series Unique Users (userId)",
+      "visState": "{\"title\":\"Time-Series Unique Users (userId)\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(split=userId:5,metric=cardinality:userId)\",\"interval\":\"auto\"},\"aggs\":[]}",
       "uiStateJSON": "{}",
       "description": "",
       "version": 1,
       "kibanaSavedObjectMeta": {
-        "searchSourceJSON": "{\"index\":\"7fed1930-2cd2-11e9-9b9a-95b7b006b436\",\"query\":{\"query\":\"*\",\"language\":\"lucene\"},\"filter\":[]}"
+        "searchSourceJSON": "{\"query\":{\"language\":\"lucene\",\"query\":\"\"},\"filter\":[]}"
       }
     },
     "_meta": {
diff --git a/docker/logstash/6.6.2/templates/userale.json b/docker/logstash/6.6.2/templates/userale.json
index 5aa92d0..c27b742 100644
--- a/docker/logstash/6.6.2/templates/userale.json
+++ b/docker/logstash/6.6.2/templates/userale.json
@@ -45,6 +45,16 @@
                     "type": "date",
                     "format": "strict_date_optional_time||epoch_millis"
                 },
+                "startTime":
+                {
+                    "type": "date",
+                    "format": "strict_date_optional_time||epoch_millis"
+                },
+                "endTime":
+                {
+                    "type": "date",
+                    "format": "strict_date_optional_time||epoch_millis"
+                },
                 "count":
                 {
                     "type": "integer"
diff --git a/docker/site/Dockerfile b/docker/site/Dockerfile
index 0525dea..15297f6 100644
--- a/docker/site/Dockerfile
+++ b/docker/site/Dockerfile
@@ -30,8 +30,8 @@ RUN sudo -E apt-get -yqq install \
   git
 
 # Clone Apache SensSoft Site
-RUN git clone -b master https://github.com/apache/incubator-senssoft.git
-WORKDIR /usr/src/incubator-senssoft/site/_site
+RUN git clone -b master https://github.com/apache/incubator-flagon.git
+WORKDIR /usr/src/incubator-flagon/site/_site
 
 # Update data-url to send to logstash
 RUN sed -i 's/data-url=\"\"/data-url="http:\/\/localhost:8100"/' index.html