From c01c8a124dd1cb371232368b0fa569f60044de95 Mon Sep 17 00:00:00 2001 From: brasseld Date: Fri, 5 Oct 2018 09:09:50 +0200 Subject: [PATCH] feat(analytics): Add Host HTTP header into analytics Closes gravitee-io/issues#1536 --- .../src/main/resources/freemarker/es2x/index/request.ftl | 3 +++ .../freemarker/es2x/mapping/index-template-request.ftl | 4 ++++ .../resources/freemarker/es2x/mapping/index-template.ftl | 4 ++++ .../src/main/resources/freemarker/es5x/index/request.ftl | 3 +++ .../freemarker/es5x/mapping/index-template-request.ftl | 3 +++ .../resources/freemarker/es5x/mapping/index-template.ftl | 3 +++ .../src/main/resources/freemarker/es6x/index/request.ftl | 3 +++ .../freemarker/es6x/mapping/index-template-request.ftl | 3 +++ .../gravitee/repository/elasticsearch/log/LogBuilder.java | 6 ++++++ pom.xml | 4 ++-- 10 files changed, 34 insertions(+), 2 deletions(-) diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/index/request.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/index/request.ftl index 577a991f..18ea781e 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/index/request.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/index/request.ftl @@ -57,4 +57,7 @@ <#if metrics.getMappedPath()??> ,"mapped-path":"${metrics.getMappedPath()}" + <#if metrics.getHost()??> + ,"host":"${metrics.getHost()}" + } diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template-request.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template-request.ftl index 12c2bb96..51f3d883 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template-request.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template-request.ftl @@ -113,6 +113,10 @@ "mapped-path": { "index": "not_analyzed", "type": "string" + }, + "host": { + "index": "not_analyzed", + "type": "string" } } } diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template.ftl index 33a7dcae..bd18ab50 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es2x/mapping/index-template.ftl @@ -308,6 +308,10 @@ "mapped-path": { "type": "string", "index": "not_analyzed" + }, + "host": { + "index": "not_analyzed", + "type": "string" } } }, diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/index/request.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/index/request.ftl index 577a991f..18ea781e 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/index/request.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/index/request.ftl @@ -57,4 +57,7 @@ <#if metrics.getMappedPath()??> ,"mapped-path":"${metrics.getMappedPath()}" + <#if metrics.getHost()??> + ,"host":"${metrics.getHost()}" + } diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template-request.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template-request.ftl index aacdd276..196e5176 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template-request.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template-request.ftl @@ -104,6 +104,9 @@ }, "mapped-path": { "type": "keyword" + }, + "host": { + "type": "keyword" } } } diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template.ftl index b9923e78..e5ee1410 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es5x/mapping/index-template.ftl @@ -98,6 +98,9 @@ }, "mapped-path": { "type": "keyword" + }, + "host": { + "type": "keyword" } } }, diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/index/request.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/index/request.ftl index ad79193e..37c7b5e6 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/index/request.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/index/request.ftl @@ -49,4 +49,7 @@ <#if metrics.getMappedPath()??> ,"mapped-path":"${metrics.getMappedPath()}" + <#if metrics.getHost()??> + ,"host":"${metrics.getHost()}" + } diff --git a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/mapping/index-template-request.ftl b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/mapping/index-template-request.ftl index aacdd276..196e5176 100644 --- a/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/mapping/index-template-request.ftl +++ b/gravitee-reporter-elasticsearch/src/main/resources/freemarker/es6x/mapping/index-template-request.ftl @@ -104,6 +104,9 @@ }, "mapped-path": { "type": "keyword" + }, + "host": { + "type": "keyword" } } } diff --git a/gravitee-repository-elasticsearch/src/main/java/io/gravitee/repository/elasticsearch/log/LogBuilder.java b/gravitee-repository-elasticsearch/src/main/java/io/gravitee/repository/elasticsearch/log/LogBuilder.java index 67c537c3..2d4ab65d 100644 --- a/gravitee-repository-elasticsearch/src/main/java/io/gravitee/repository/elasticsearch/log/LogBuilder.java +++ b/gravitee-repository-elasticsearch/src/main/java/io/gravitee/repository/elasticsearch/log/LogBuilder.java @@ -77,6 +77,7 @@ final class LogBuilder { private final static String FIELD_API = "api"; private final static String FIELD_PLAN = "plan"; private final static String FIELD_API_KEY = "api-key"; + private final static String FIELD_HOST = "host"; private final static String FIELD_MESSAGE = "message"; @@ -164,6 +165,11 @@ private static T createLog(final SearchHit hit, final T log) { log.setMessage(messageNode.asText()); } + final JsonNode hostNode = source.get(FIELD_HOST); + if (hostNode != null && ! hostNode.isNull()) { + log.setHost(hostNode.asText()); + } + return log; } diff --git a/pom.xml b/pom.xml index 0bf1a38a..af57ef0b 100644 --- a/pom.xml +++ b/pom.xml @@ -37,9 +37,9 @@ 1.11.0 1.13.0-SNAPSHOT - 1.11.0 + 1.12.0-SNAPSHOT 1.2.0 - 1.19.0 + 1.20.0-SNAPSHOT 1.0.0-SNAPSHOT 2.3.26-incubating