diff --git a/extra/pom.xml b/extra/pom.xml
index 87a9ef24d4b..1b66835bced 100644
--- a/extra/pom.xml
+++ b/extra/pom.xml
@@ -47,7 +47,8 @@
1.5.6
1.13
2.2.0
- 1.3.4
+
+ 1.2.3
0.16.0
2.0.10
3.2.4
diff --git a/pom.xml b/pom.xml
index 325051ea9e9..0a880bc8683 100644
--- a/pom.xml
+++ b/pom.xml
@@ -345,11 +345,22 @@
postgresql
test
+
+ org.testcontainers
+ influxdb
+ test
+
org.mock-server
mockserver-client-java
test
+
+ org.influxdb
+ influxdb-java
+ 2.23
+ test
+
diff --git a/src/test/groovy/org/prebid/server/functional/model/response/influx/InfluxResponse.groovy b/src/test/groovy/org/prebid/server/functional/model/response/influx/InfluxResponse.groovy
new file mode 100644
index 00000000000..c2fc5b0c6c2
--- /dev/null
+++ b/src/test/groovy/org/prebid/server/functional/model/response/influx/InfluxResponse.groovy
@@ -0,0 +1,6 @@
+package org.prebid.server.functional.model.response.influx
+
+class InfluxResponse {
+
+ List results
+}
diff --git a/src/test/groovy/org/prebid/server/functional/model/response/influx/InfluxResult.groovy b/src/test/groovy/org/prebid/server/functional/model/response/influx/InfluxResult.groovy
new file mode 100644
index 00000000000..ae6f6864334
--- /dev/null
+++ b/src/test/groovy/org/prebid/server/functional/model/response/influx/InfluxResult.groovy
@@ -0,0 +1,10 @@
+package org.prebid.server.functional.model.response.influx
+
+import com.fasterxml.jackson.annotation.JsonProperty
+
+class InfluxResult {
+
+ @JsonProperty("statement_id")
+ Integer statementId
+ List series
+}
diff --git a/src/test/groovy/org/prebid/server/functional/model/response/influx/Series.groovy b/src/test/groovy/org/prebid/server/functional/model/response/influx/Series.groovy
new file mode 100644
index 00000000000..30b4cf86e61
--- /dev/null
+++ b/src/test/groovy/org/prebid/server/functional/model/response/influx/Series.groovy
@@ -0,0 +1,9 @@
+package org.prebid.server.functional.model.response.influx
+
+class Series {
+
+ String name
+ Tags tags
+ List columns
+ List> values
+}
diff --git a/src/test/groovy/org/prebid/server/functional/model/response/influx/Tags.groovy b/src/test/groovy/org/prebid/server/functional/model/response/influx/Tags.groovy
new file mode 100644
index 00000000000..a88807ad8b4
--- /dev/null
+++ b/src/test/groovy/org/prebid/server/functional/model/response/influx/Tags.groovy
@@ -0,0 +1,6 @@
+package org.prebid.server.functional.model.response.influx
+
+class Tags {
+
+ String measurement
+}
diff --git a/src/test/groovy/org/prebid/server/functional/service/PrebidServerService.groovy b/src/test/groovy/org/prebid/server/functional/service/PrebidServerService.groovy
index 9e760b7173e..249d6fa3f13 100644
--- a/src/test/groovy/org/prebid/server/functional/service/PrebidServerService.groovy
+++ b/src/test/groovy/org/prebid/server/functional/service/PrebidServerService.groovy
@@ -25,6 +25,7 @@ import org.prebid.server.functional.model.response.cookiesync.CookieSyncResponse
import org.prebid.server.functional.model.response.cookiesync.RawCookieSyncResponse
import org.prebid.server.functional.model.response.currencyrates.CurrencyRatesResponse
import org.prebid.server.functional.model.response.getuids.GetuidResponse
+import org.prebid.server.functional.model.response.influx.InfluxResponse
import org.prebid.server.functional.model.response.infobidders.BidderInfoResponse
import org.prebid.server.functional.model.response.setuid.SetuidResponse
import org.prebid.server.functional.model.response.status.StatusResponse
@@ -42,6 +43,8 @@ import java.time.format.DateTimeFormatter
import static io.restassured.RestAssured.given
import static java.time.ZoneOffset.UTC
+import static org.prebid.server.functional.testcontainers.Dependencies.influxdbContainer
+
class PrebidServerService implements ObjectMapperWrapper {
@@ -59,10 +62,12 @@ class PrebidServerService implements ObjectMapperWrapper {
static final String HTTP_INTERACTION_ENDPOINT = "/logging/httpinteraction"
static final String COLLECTED_METRICS_ENDPOINT = "/collected-metrics"
static final String PROMETHEUS_METRICS_ENDPOINT = "/metrics"
+ static final String INFLUX_DB_ENDPOINT = "/query"
static final String UIDS_COOKIE_NAME = "uids"
private final PrebidServerContainer pbsContainer
private final RequestSpecification requestSpecification
+ private final RequestSpecification influxRequestSpecification
private final RequestSpecification adminRequestSpecification
private final RequestSpecification prometheusRequestSpecification
@@ -75,6 +80,8 @@ class PrebidServerService implements ObjectMapperWrapper {
this.pbsContainer = pbsContainer
requestSpecification = new RequestSpecBuilder().setBaseUri(pbsContainer.rootUri)
.build()
+ influxRequestSpecification = new RequestSpecBuilder().setBaseUri(pbsContainer.influxUri)
+ .build()
adminRequestSpecification = buildAndGetRequestSpecification(pbsContainer.adminRootUri, authenticationScheme)
prometheusRequestSpecification = buildAndGetRequestSpecification(pbsContainer.prometheusRootUri, authenticationScheme)
}
@@ -290,6 +297,16 @@ class PrebidServerService implements ObjectMapperWrapper {
decode(response.asString(), new TypeReference