diff --git a/.docker/docker-compose.yml b/.docker/docker-compose.yml index b22351d99acdb0b793b9c0cd63ea10f41c82904d..2ec2697852b86dfb83e92a322030b819ac8aecdf 100644 --- a/.docker/docker-compose.yml +++ b/.docker/docker-compose.yml @@ -284,7 +284,7 @@ services: init: true restart: "no" container_name: dbrepo-auth-service-init - image: registry.datalab.tuwien.ac.at/dbrepo/auth-service-init:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/auth-service-init:1.8.2 environment: AUTH_SERVICE_ENDPOINT: ${AUTH_SERVICE_ENDPOINT:-http://auth-service:8080} METADATA_DB: "${METADATA_DB:-dbrepo}" @@ -314,7 +314,7 @@ services: restart: "no" container_name: dbrepo-metadata-service hostname: metadata-service - image: registry.datalab.tuwien.ac.at/dbrepo/metadata-service:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/metadata-service:1.8.2 environment: ADMIN_EMAIL: "${ADMIN_EMAIL:-noreply@localhost}" ANALYSE_SERVICE_ENDPOINT: "${ANALYSE_SERVICE_ENDPOINT:-http://analyse-service:8080}" @@ -383,7 +383,7 @@ services: restart: "no" container_name: dbrepo-analyse-service hostname: analyse-service - image: registry.datalab.tuwien.ac.at/dbrepo/analyse-service:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/analyse-service:1.8.2 depends_on: dbrepo-logging-service: condition: service_healthy @@ -464,7 +464,7 @@ services: restart: "no" container_name: dbrepo-search-service hostname: search-service - image: registry.datalab.tuwien.ac.at/dbrepo/search-service:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/search-service:1.8.2 depends_on: dbrepo-logging-service: condition: service_healthy @@ -494,7 +494,7 @@ services: restart: "no" container_name: dbrepo-ui hostname: ui - image: registry.datalab.tuwien.ac.at/dbrepo/ui:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/ui:1.8.2 environment: NUXT_PUBLIC_API_CLIENT: "${BASE_URL:-http://localhost}" NUXT_PUBLIC_API_SERVER: "${BASE_URL:-http://gateway-service}" @@ -567,7 +567,7 @@ services: restart: "no" container_name: dbrepo-identity-service hostname: identity-service - image: bitnami/openldap:${OPENLDAP_VERSION} + image: docker.io/bitnami/openldap:${OPENLDAP_VERSION} depends_on: dbrepo-logging-service: condition: service_healthy @@ -597,7 +597,7 @@ services: init: true container_name: dbrepo-search-service-init hostname: search-service-init - image: registry.datalab.tuwien.ac.at/dbrepo/search-service-init:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/search-service-init:1.8.2 environment: LOG_LEVEL: ${LOG_LEVEL:-info} METADATA_SERVICE_ENDPOINT: ${METADATA_SERVICE_ENDPOINT:-http://metadata-service:8080} @@ -625,7 +625,7 @@ services: init: true container_name: dbrepo-dashboard-service-init hostname: search-dashboard-init - image: registry.datalab.tuwien.ac.at/dbrepo/dashboard-service-init:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/dashboard-service-init:1.8.2 environment: LOG_LEVEL: ${LOG_LEVEL:-info} DASHBOARD_UI_ENDPOINT: "${DASHBOARD_UI_ENDPOINT:-http://dashboard-ui:3000}" @@ -699,7 +699,7 @@ services: init: true container_name: dbrepo-storage-service-init hostname: storage-service-init - image: registry.datalab.tuwien.ac.at/dbrepo/storage-service-init:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/storage-service-init:1.8.2 environment: S3_ACCESS_KEY_ID: ${S3_ACCESS_KEY_ID:-seaweedfsadmin} S3_BUCKET: "${S3_BUCKET:-dbrepo}" @@ -722,7 +722,7 @@ services: restart: "no" container_name: dbrepo-data-service hostname: data-service - image: registry.datalab.tuwien.ac.at/dbrepo/data-service:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/data-service:1.8.2 environment: AUTH_SERVICE_CLIENT: "${AUTH_SERVICE_CLIENT:-dbrepo-client}" AUTH_SERVICE_CLIENT_SECRET: "${AUTH_SERVICE_CLIENT:-MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG}" @@ -789,7 +789,6 @@ services: - ./config/provisioning/datasources/prometheus.yaml:/opt/bitnami/grafana/conf/provisioning/datasources/prometheus.yaml environment: BASE_URL: "${BASE_URL:-http://localhost}" - # do not attempt to set it in the grafana.ini, hours wasted here: 7 DASHBOARD_DB_NAME: "${DASHBOARD_DB_NAME:-grafana}" DASHBOARD_DB_USERNAME: "${DASHBOARD_DB_USERNAME:-grafana}" DASHBOARD_DB_PASSWORD: "${DASHBOARD_DB_PASSWORD:-dbrepo}" @@ -816,7 +815,7 @@ services: restart: "no" container_name: dbrepo-dashboard-service hostname: dashboard-service - image: registry.datalab.tuwien.ac.at/dbrepo/dashboard-service:1.8 + image: registry.datalab.tuwien.ac.at/dbrepo/dashboard-service:1.8.2 ports: - "4070:8080" environment: diff --git a/.docs/.openapi/api-data.yaml b/.docs/.openapi/api-data.yaml index b8827e3dd133fc16eb21d2dca4f9e72b06a3f66e..60be46ea4a7431b28e45424374fc3390699a62fd 100644 --- a/.docs/.openapi/api-data.yaml +++ b/.docs/.openapi/api-data.yaml @@ -11,7 +11,7 @@ info: version: 1.8.2 externalDocs: description: Sourcecode Documentation - url: https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.8/system-services-metadata/ + url: https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.8.1/system-services-metadata/ servers: - url: http://localhost description: Development instance diff --git a/.docs/.openapi/api-metadata.yaml b/.docs/.openapi/api-metadata.yaml index a9f15094c602257283e73eba4d51090139667a96..31ac0b72dd2e1280b3447907e4dc8c2579c69133 100644 --- a/.docs/.openapi/api-metadata.yaml +++ b/.docs/.openapi/api-metadata.yaml @@ -11,7 +11,7 @@ info: version: 1.8.2 externalDocs: description: Sourcecode Documentation - url: https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.8/system-services-metadata/ + url: https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.8.1/system-services-metadata/ servers: - url: http://localhost description: Development instance @@ -6495,14 +6495,14 @@ components: type: string resumptionToken: type: string - parametersString: - type: string fromDate: type: string format: date-time untilDate: type: string format: date-time + parametersString: + type: string BannerMessageDto: type: object properties: diff --git a/.docs/.openapi/api.yaml b/.docs/.openapi/api.yaml index 7a780def61c600cea30a16823c9b121bde7ca5bd..d5b14455ae8692a19d0f4355a014546eac11ce0b 100644 --- a/.docs/.openapi/api.yaml +++ b/.docs/.openapi/api.yaml @@ -8532,14 +8532,14 @@ components: type: string resumptionToken: type: string - parametersString: - type: string fromDate: type: string format: date-time untilDate: type: string format: date-time + parametersString: + type: string BannerMessageDto: type: object properties: diff --git a/.docs/api/auth-service.md b/.docs/api/auth-service.md index 7b28901a9b9d49a01d48a313187f86832509a03b..d7a138234674009676e3bf854881a2ceaa696c5b 100644 --- a/.docs/api/auth-service.md +++ b/.docs/api/auth-service.md @@ -6,7 +6,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`docker.io/bitnami/keycloak:26.0.0-debian-12-r1`](https://hub.docker.com/r/bitnami/keycloak) + Image: [`docker.io/bitnami/keycloak:26.0.4`](https://hub.docker.com/r/bitnami/keycloak) * Ports: 8080/tcp * UI: `http://<hostname>:8080/` diff --git a/.docs/api/broker-service.md b/.docs/api/broker-service.md index 18bf4fe8b449a78db5c91166830a8d29d2573e51..b5b09c1b9cadd4b199ca3e660cfad501c2e77b5d 100644 --- a/.docs/api/broker-service.md +++ b/.docs/api/broker-service.md @@ -6,7 +6,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`bitnami/rabbitmq:3.12.13-debian-12-r2`](https://hub.docker.com/r/bitnami/rabbitmq) + Image: [`bitnami/rabbitmq:3.13.7`](https://hub.docker.com/r/bitnami/rabbitmq) * Ports: 5672/tcp, 15672/tcp, 15692/tcp * AMQP: `amqp://<hostname>:5672` diff --git a/.docs/api/data-db.md b/.docs/api/data-db.md index f84ab8aad1d9c513db17e693bff445c7aaa74a34..4edbe8d2f1c6da1d22212cee3896da3ea4d16644 100644 --- a/.docs/api/data-db.md +++ b/.docs/api/data-db.md @@ -4,7 +4,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`docker.io/bitnami/mariadb-galera:11.3.2-debian-12-r9`](https://hub.docker.com/r/bitnami/mariadb-galera) + Image: [`docker.io/bitnami/mariadb:11.3.2`](https://hub.docker.com/r/bitnami/mariadb-galera) * Ports: 3306/tcp * JDBC: `jdbc://mariadb:<hostname>:3306` diff --git a/.docs/api/gateway-service.md b/.docs/api/gateway-service.md index 9a44f9635b32ecc0d238ed1c1a0e918157ecd046..7eccf52f47b759932ea2e998dd57f3e1144e33d9 100644 --- a/.docs/api/gateway-service.md +++ b/.docs/api/gateway-service.md @@ -6,7 +6,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`docker.io/nginx:1.27.0-alpine3.19-slim`](https://hub.docker.com/r/nginx) + Image: [`docker.io/nginx:1.27.3-alpine3.20-slim`](https://hub.docker.com/r/nginx) * Ports: 80/tcp diff --git a/.docs/api/identity-service.md b/.docs/api/identity-service.md index 3a1ae2bb5509d38fd653eebaa587976371eaabdd..98678d6bcb190f7787a539d5b2cbf78a29ba31d0 100644 --- a/.docs/api/identity-service.md +++ b/.docs/api/identity-service.md @@ -6,7 +6,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`docker.io/openldap:2.6.8-debian-12-r1`](https://hub.docker.com/r/openldap) + Image: [`docker.io/bitnami/openldap:2.6.8`](https://hub.docker.com/r/openldap) * Ports: 1389/tcp, 1636/tcp diff --git a/.docs/api/metadata-db.md b/.docs/api/metadata-db.md index a8e7b9c2fb20997a4e34d28c5c5a99dcc214e8fa..47a340aea3b23c2cb9ba33ba231293f4f6a30cc8 100644 --- a/.docs/api/metadata-db.md +++ b/.docs/api/metadata-db.md @@ -4,7 +4,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`docker.io/bitnami/mariadb-galera:11.3.2-debian-12-r9`](https://hub.docker.com/r/bitnami/mariadb-galera) + Image: [`docker.io/bitnami/mariadb:11.3.2`](https://hub.docker.com/r/bitnami/mariadb-galera) * Ports: 3306/tcp * JDBC: `jdbc://mariadb:<hostname>:3306` diff --git a/.docs/api/metric-db.md b/.docs/api/metric-db.md index f1fe9c11abdf8cd8fb97b19b4cc658be42c1c7ca..83e63f264628d7a6a11aae7f1db80e4d9684c008 100644 --- a/.docs/api/metric-db.md +++ b/.docs/api/metric-db.md @@ -6,7 +6,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`bitnami/prometheus:2.54.1-debian-12-r4`](https://hub.docker.com/r/bitnami/prometheus) + Image: [`bitnami/prometheus:2.54.1`](https://hub.docker.com/r/bitnami/prometheus) * Ports: 8080/tcp diff --git a/.docs/api/storage-service.md b/.docs/api/storage-service.md index 5994929a5deb8e8f87fe33265823043a3387c72e..9236a0c3022bde164f3ca14497ee2cad76d82a11 100644 --- a/.docs/api/storage-service.md +++ b/.docs/api/storage-service.md @@ -6,7 +6,7 @@ author: Martin Weise !!! debug "Debug Information" - Image: [`docker.io/chrislusf/seaweedfs:3.59`](https://hub.docker.com/r/chrislusf/seaweedfs) + Image: [`docker.io/chrislusf/seaweedfs:3.71.0`](https://hub.docker.com/r/chrislusf/seaweedfs) * Ports: 8888/tcp, 9000/tcp * Prometheus: `http://<hostname>:9091/metrics` diff --git a/.docs/changelog.md b/.docs/changelog.md index 03fde813b6ccda1315cf7be564e004cd6a8ebd56..f8f8a0038f0e6f48e742c473db894d68bf34d03c 100644 --- a/.docs/changelog.md +++ b/.docs/changelog.md @@ -13,6 +13,8 @@ author: Martin Weise * Added structured logging through the `fluentd` protocol via the lightweight fluentbit in a separate [Logging Service](../api/logging-service) in [#524](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/issues/524). +* Added a separate database for the Dashboard Service for high-availability deployment of Grafana + in [#526](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/issues/526). #### Changes diff --git a/.env b/.env index 83f4ae6209b79f0faadf2748a0fac282f062192e..b9554286374e26fb8cc60bc26d9c5d3599c27af9 100644 --- a/.env +++ b/.env @@ -1,3 +1,4 @@ +APP_VERSION=1.8 MARIADB_VERSION=11.3.2 POSTGRES_VERSION=17.0.0 KEYCLOAK_VERSION=26.2.2 diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 314bbf1bd18cd39abb79610b01388c0b174abf49..6e793575f48d5bfce78962438b5fa822bdeea0fc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -62,7 +62,6 @@ lint-docker-compose: - 'apk add --no-cache bash wget' - 'wget https://github.com/mikefarah/yq/releases/download/v${VERSION}/${BINARY} -O /usr/bin/yq && chmod +x /usr/bin/yq' script: - - "bash .scripts/check-compose.sh" - "diff <(yq '.volumes' docker-compose.yml) <(yq '.volumes' .docker/docker-compose.yml)" - "IGNORE_IMAGE=1 IGNORE_PORTS=1 bash .scripts/check-service.sh 'dbrepo-analyse-service'" - "IGNORE_PORTS=1 bash .scripts/check-service.sh 'dbrepo-auth-db'" diff --git a/.scripts/check-compose.sh b/.scripts/check-compose.sh deleted file mode 100755 index f488e963872e642075ef8a0fae7376623cb196da..0000000000000000000000000000000000000000 --- a/.scripts/check-compose.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -OUTPUT=$(cat .docker/docker-compose.yml | grep "registry.datalab.tuwien.ac.at/.*" | grep -v "$DOC_VERSION") -if [ $? -ne 1 ]; then - echo "[ERROR] Some image version(s) differ from DOC_VERSION=${DOC_VERSION}: ${OUTPUT}" - exit 1 -fi \ No newline at end of file diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2-py3-none-any.whl b/dbrepo-analyse-service/lib/dbrepo-1.8.2-py3-none-any.whl index e6f981839e03420d2d87ecc15c790eeb8ea81c83..6a21f512b36f30367f641061c8efeba90108a6c7 100644 Binary files a/dbrepo-analyse-service/lib/dbrepo-1.8.2-py3-none-any.whl and b/dbrepo-analyse-service/lib/dbrepo-1.8.2-py3-none-any.whl differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2.tar.gz b/dbrepo-analyse-service/lib/dbrepo-1.8.2.tar.gz index e4e39b9845063404a3c0b517f7ff9ea81c6942c7..f98a45d02b802376ff7614c008eec8783f281896 100644 Binary files a/dbrepo-analyse-service/lib/dbrepo-1.8.2.tar.gz and b/dbrepo-analyse-service/lib/dbrepo-1.8.2.tar.gz differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..86a1af2af41c44d35a4da7a472c180854f0cd82c Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc3.tar.gz b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc3.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9c03ed275c6da5b2eef3619c59269f398d59c7de Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc3.tar.gz differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..5a0dbc7c95592f2e70bed13fa33d85cc6cdf7811 Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc4.tar.gz b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc4.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..1dbc78c989362d4d0c3750b1ad942abe46f205dd Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc4.tar.gz differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..50bf1b8195987f6f8d23a36f34bc0f912b6fd9b3 Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc5.tar.gz b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc5.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..be8784437f111e2d4a5cdac36baf77605114dfa5 Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc5.tar.gz differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..8e4c745a2ce782c174d5e1db7eef22d51d26624c Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl differ diff --git a/dbrepo-analyse-service/lib/dbrepo-1.8.2rc6.tar.gz b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc6.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..279243fd37fe033fe4aa740361b5e9a370516924 Binary files /dev/null and b/dbrepo-analyse-service/lib/dbrepo-1.8.2rc6.tar.gz differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2-py3-none-any.whl b/dbrepo-dashboard-service/lib/dbrepo-1.8.2-py3-none-any.whl index e6f981839e03420d2d87ecc15c790eeb8ea81c83..6a21f512b36f30367f641061c8efeba90108a6c7 100644 Binary files a/dbrepo-dashboard-service/lib/dbrepo-1.8.2-py3-none-any.whl and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2-py3-none-any.whl differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2.tar.gz b/dbrepo-dashboard-service/lib/dbrepo-1.8.2.tar.gz index e4e39b9845063404a3c0b517f7ff9ea81c6942c7..f98a45d02b802376ff7614c008eec8783f281896 100644 Binary files a/dbrepo-dashboard-service/lib/dbrepo-1.8.2.tar.gz and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2.tar.gz differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..86a1af2af41c44d35a4da7a472c180854f0cd82c Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc3.tar.gz b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc3.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9c03ed275c6da5b2eef3619c59269f398d59c7de Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc3.tar.gz differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..5a0dbc7c95592f2e70bed13fa33d85cc6cdf7811 Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc4.tar.gz b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc4.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..1dbc78c989362d4d0c3750b1ad942abe46f205dd Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc4.tar.gz differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..50bf1b8195987f6f8d23a36f34bc0f912b6fd9b3 Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc5.tar.gz b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc5.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..be8784437f111e2d4a5cdac36baf77605114dfa5 Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc5.tar.gz differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..8e4c745a2ce782c174d5e1db7eef22d51d26624c Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl differ diff --git a/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc6.tar.gz b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc6.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..279243fd37fe033fe4aa740361b5e9a370516924 Binary files /dev/null and b/dbrepo-dashboard-service/lib/dbrepo-1.8.2rc6.tar.gz differ diff --git a/dbrepo-dashboard-ui/dashboards/System/dbrepo.json b/dbrepo-dashboard-ui/dashboards/System/dbrepo.json index a4fd78436580cb1cea99475bb702fece82bee413..ca75b2fffe9345b8a4c9fecd825e027377932909 100644 --- a/dbrepo-dashboard-ui/dashboards/System/dbrepo.json +++ b/dbrepo-dashboard-ui/dashboards/System/dbrepo.json @@ -18,7 +18,7 @@ "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 1, - "id": 7, + "id": 3, "links": [ { "asDropdown": false, @@ -42,241 +42,6 @@ "x": 0, "y": 0 }, - "id": 52, - "panels": [], - "title": "Storage", - "type": "row" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "barWidthFactor": 0.6, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "smooth", - "lineWidth": 2, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "short" - }, - "overrides": [] - }, - "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 1 - }, - "id": 53, - "options": { - "alertThreshold": true, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "hideZeros": false, - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_volumes) by (collection, type)", - "format": "time_series", - "hide": false, - "intervalFactor": 2, - "legendFormat": "{{collection}} {{type}}", - "refId": "A" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_max_volumes)", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "Total", - "refId": "B" - } - ], - "title": "Volume Count", - "type": "timeseries" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "barWidthFactor": 0.6, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "smooth", - "lineWidth": 2, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "bytes" - }, - "overrides": [] - }, - "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 1 - }, - "id": 54, - "options": { - "alertThreshold": true, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "hideZeros": false, - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_total_disk_size) by (collection, type)", - "format": "time_series", - "hide": false, - "intervalFactor": 2, - "legendFormat": "{{collection}} {{type}}", - "refId": "A" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_total_disk_size)", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "Total", - "refId": "B" - } - ], - "title": "Used Disk Space by Collection and Type", - "type": "timeseries" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 9 - }, "id": 34, "panels": [], "title": "tl;dr", @@ -327,7 +92,7 @@ "h": 3, "w": 4, "x": 0, - "y": 10 + "y": 1 }, "id": 9, "options": { @@ -397,7 +162,7 @@ "h": 3, "w": 4, "x": 4, - "y": 10 + "y": 1 }, "id": 28, "options": { @@ -465,7 +230,7 @@ "h": 3, "w": 4, "x": 8, - "y": 10 + "y": 1 }, "id": 4, "options": { @@ -533,9 +298,9 @@ "h": 3, "w": 4, "x": 12, - "y": 10 + "y": 1 }, - "id": 39, + "id": 5, "options": { "colorMode": "background", "graphMode": "none", @@ -649,7 +414,7 @@ "h": 3, "w": 4, "x": 16, - "y": 10 + "y": 1 }, "id": 8, "options": { @@ -714,10 +479,10 @@ "overrides": [] }, "gridPos": { - "h": 8, + "h": 7, "w": 12, "x": 0, - "y": 13 + "y": 4 }, "id": 38, "options": { @@ -771,33 +536,48 @@ "fieldConfig": { "defaults": { "color": { - "mode": "thresholds" + "mode": "palette-classic" }, - "mappings": [ - { - "options": { - "0": { - "index": 0, - "text": "DOWN" - }, - "1": { - "index": 1, - "text": "UP" - } - }, - "type": "value" - } - ], + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], "thresholds": { "mode": "absolute", "steps": [ - { - "color": "red", - "value": null - }, { "color": "green", - "value": 1 + "value": null } ] } @@ -805,35 +585,24 @@ "overrides": [] }, "gridPos": { - "h": 8, + "h": 7, "w": 12, "x": 12, - "y": 13 + "y": 4 }, - "id": 51, + "id": 40, "options": { - "displayMode": "basic", "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": false - }, - "maxVizHeight": 300, - "minVizHeight": 16, - "minVizWidth": 8, - "namePlacement": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "showLegend": true }, - "showUnfilled": true, - "sizing": "auto", - "valueMode": "color" + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -844,19 +613,18 @@ }, "disableTextWrap": false, "editorMode": "builder", - "expr": "up", + "expr": "SeaweedFS_s3_request_total", "fullMetaSearch": false, - "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "{{instance}}", + "legendFormat": "{{type}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "Service QoS", - "type": "bargauge" + "title": "S3 Requests", + "type": "timeseries" }, { "collapsed": false, @@ -864,607 +632,489 @@ "h": 1, "w": 24, "x": 0, - "y": 21 + "y": 11 }, - "id": 6, + "id": 22, "panels": [], - "title": "Application", + "title": "UI", "type": "row" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { - "color": { - "mode": "fixed" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "fillOpacity": 80, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "lineWidth": 1, - "scaleDistribution": { - "type": "linear" - }, - "thresholdsStyle": { - "mode": "off" - } - }, "mappings": [], + "max": 100, + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byFrameRefID", - "options": "warn" - }, - "properties": [ + }, { - "id": "color", - "value": { - "fixedColor": "orange", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "error" - }, - "properties": [ + "color": "#EAB839", + "value": 300 + }, { - "id": "color", - "value": { - "fixedColor": "red", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "info" - }, - "properties": [ + "color": "orange", + "value": 600 + }, { - "id": "color", - "value": { - "fixedColor": "green", - "mode": "fixed" - } + "color": "red", + "value": 900 } ] }, - { - "matcher": { - "id": "byFrameRefID", - "options": "debug" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - } - ] + "unit": "ms" + }, + "overrides": [] }, "gridPos": { - "h": 8, - "w": 24, + "h": 3, + "w": 4, "x": 0, - "y": 22 + "y": 12 }, - "id": 42, + "id": 17, "options": { - "barRadius": 0, - "barWidth": 0.97, - "fullHighlight": false, - "groupWidth": 0.7, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "right", - "showLegend": true - }, + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", "orientation": "auto", - "showValue": "auto", - "stacking": "percent", - "tooltip": { - "hideZeros": false, - "mode": "single", - "sort": "none" + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false }, - "xTickLabelRotation": 0, - "xTickLabelSpacing": 100 + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "WARN", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "hide": false, - "id": "1", - "type": "count" - } - ], - "query": "level: WARN", - "queryType": "lucene", - "refId": "warn", - "timeField": "@timestamp" - }, - { - "alias": "ERROR", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "level: ERROR", - "queryType": "lucene", - "refId": "error", - "timeField": "@timestamp" - }, - { - "alias": "INFO", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "level: INFO", - "queryType": "lucene", - "refId": "info", - "timeField": "@timestamp" - }, - { - "alias": "DEBUG", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "level: DEBUG", - "queryType": "lucene", - "refId": "debug", - "timeField": "@timestamp" + "disableTextWrap": false, + "editorMode": "code", + "expr": "avg(page_render_time)", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, + "refId": "A", + "useBackend": false } ], - "title": "Errors and Warnings over Time", - "type": "barchart" + "title": "UI Response Time (avg)", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 0.02 + }, + { + "color": "orange", + "value": 0.05 + }, + { + "color": "red", + "value": 0.1 + } + ] + }, + "unit": "s" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 30 + "h": 3, + "w": 4, + "x": 4, + "y": 12 }, - "id": 43, + "id": 24, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: ERROR", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_eventloop_lag_mean_seconds", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "Errors", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "useBackend": false } ], - "type": "logs" + "title": "UI Event Lag (avg)", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": null + }, + { + "color": "yellow", + "value": 1 + }, + { + "color": "green", + "value": 2 + } + ] + }, + "unit": "none" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 30 + "h": 3, + "w": 4, + "x": 8, + "y": 12 }, - "id": 44, + "id": 25, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: WARN", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_active_handles{type=\"Server\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "Warnings", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "useBackend": false } ], - "type": "logs" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 38 - }, - "id": 45, - "panels": [], - "title": "Application Debugging", - "type": "row" + "title": "UI Servers", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": null + }, + { + "color": "green", + "value": 1 + } + ] + }, + "unit": "none" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 39 + "h": 3, + "w": 4, + "x": 12, + "y": 12 }, - "id": 46, + "id": 26, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: INFO", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_active_handles{type=\"Socket\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "Info", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "useBackend": false } ], - "type": "logs" + "title": "UI Sockets", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "color": { + "fixedColor": "blue", + "mode": "fixed" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "none" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 39 + "h": 3, + "w": 4, + "x": 16, + "y": 12 }, - "id": 47, + "id": 27, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: DEBUG", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_active_requests_total", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" + "useBackend": false } ], - "title": "Debug", - "transformations": [ + "title": "Active Requests", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "yellow", + "value": 300 + }, + { + "color": "orange", + "value": 600 + }, + { + "color": "red", + "value": 900 + } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 15 + }, + "id": 20, + "options": { + "displayMode": "basic", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "pluginVersion": "11.5.3", + "targets": [ { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "page_render_time", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "{{path}}", + "range": true, + "refId": "A", + "useBackend": false } ], - "type": "logs" + "title": "UI Response Time per Path (avg)", + "type": "bargauge" }, { "datasource": { @@ -1485,7 +1135,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 25, + "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, @@ -1503,10 +1153,10 @@ "spanNulls": false, "stacking": { "group": "A", - "mode": "normal" + "mode": "none" }, "thresholdsStyle": { - "mode": "off" + "mode": "dashed" } }, "mappings": [], @@ -1516,81 +1166,24 @@ { "color": "green", "value": null - } - ] - }, - "unit": "none" - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "auth-service:9000" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "yellow", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "data-service:8080" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:8080" - }, - "properties": [ + }, { - "id": "color", - "value": { - "fixedColor": "purple", - "mode": "fixed" - } + "color": "red", + "value": 256000000 } ] }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:80" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - } - ] + "unit": "decbytes" + }, + "overrides": [] }, "gridPos": { - "h": 8, + "h": 7, "w": 12, - "x": 0, - "y": 47 + "x": 12, + "y": 15 }, - "id": 40, + "id": 21, "options": { "legend": { "calcs": [], @@ -1613,18 +1206,17 @@ }, "disableTextWrap": false, "editorMode": "builder", - "expr": "process_cpu_usage", + "expr": "nodejs_heap_space_size_total_bytes", "fullMetaSearch": false, - "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "{{instance}}", + "legendFormat": "{{space}}", "range": true, - "refId": "process_cpu_usage", + "refId": "A", "useBackend": false } ], - "title": "CPU Usage", + "title": "NodeJS Heap Bytes", "type": "timeseries" }, { @@ -1633,469 +1225,160 @@ "h": 1, "w": 24, "x": 0, - "y": 55 + "y": 22 }, - "id": 5, + "id": 31, "panels": [], - "title": "HTTP Gateway", + "title": "AMPQ / MQTT API", "type": "row" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "cellOptions": { - "type": "auto" - }, - "inspect": false - }, "mappings": [], + "max": 100, + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { - "color": "green", + "color": "red", "value": null }, { - "color": "red", - "value": 80 + "color": "green", + "value": 1 } ] - } + }, + "unit": "none" }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "request.method" - }, - "properties": [ - { - "id": "custom.width" - } - ] - } - ] + "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, + "h": 3, + "w": 4, "x": 0, - "y": 56 + "y": 23 }, - "id": 7, + "id": 29, "options": { - "cellHeight": "sm", - "footer": { - "countRows": false, - "fields": "", - "reducer": [ - "sum" + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" ], - "show": false + "fields": "", + "values": false }, - "showHeader": true, - "sortBy": [] + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: >=400", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "rabbitmq_connection_channels", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "HTTP Gateway Errors", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "code", - "method", - "path", - "size" - ] - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": {}, - "includeByName": {}, - "indexByName": { - "code": 2, - "method": 0, - "path": 1, - "size": 3 - }, - "renameByName": { - "@timestamp": "", - "code": "response.status", - "method": "request.method", - "path": "request.url", - "size": "body.size" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "Count", - "mode": "reduceRow", - "reduce": { - "include": [ - "request.url", - "response.status" - ], - "reducer": "distinctCount" - }, - "replaceFields": false - } - }, - { - "id": "sortBy", - "options": { - "fields": {}, - "sort": [ - { - "desc": true, - "field": "Count" - } - ] - } + "useBackend": false } ], - "type": "table" + "title": "Channels", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { - "color": { - "mode": "fixed" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "Count", - "axisPlacement": "auto", - "fillOpacity": 80, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "lineWidth": 1, - "scaleDistribution": { - "type": "linear" - }, - "thresholdsStyle": { - "mode": "off" - } - }, "mappings": [], + "max": 100, + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { - "color": "green", + "color": "red", "value": null - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byFrameRefID", - "options": "200" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "green", - "mode": "fixed" - } - }, - { - "id": "displayName", - "value": "200s" - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "300" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "purple", - "mode": "fixed" - } - }, - { - "id": "displayName", - "value": "300s" - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "400" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "orange", - "mode": "fixed" - } }, { - "id": "displayName", - "value": "400s" + "color": "green", + "value": 1 } ] }, - { - "matcher": { - "id": "byFrameRefID", - "options": "500" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "red", - "mode": "fixed" - } - }, - { - "id": "displayName", - "value": "500s" - } - ] - } - ] + "unit": "none" + }, + "overrides": [] }, "gridPos": { - "h": 9, - "w": 24, - "x": 0, - "y": 64 + "h": 3, + "w": 4, + "x": 4, + "y": 23 }, - "id": 3, + "id": 30, "options": { - "barRadius": 0, - "barWidth": 0.97, - "fullHighlight": false, - "groupWidth": 0.7, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "right", - "showLegend": true - }, + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", "orientation": "auto", - "showValue": "auto", - "stacking": "normal", - "tooltip": { - "hideZeros": false, - "mode": "multi", - "sort": "none" + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false }, - "xTickLabelRotation": 0, - "xTickLabelSpacing": 100 + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=200 AND <300)", - "queryType": "lucene", - "refId": "200", - "timeField": "@timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=300 AND <400)", - "queryType": "lucene", - "refId": "300", - "timeField": "@timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=400 AND <500)", - "queryType": "lucene", - "refId": "400", - "timeField": "@timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: >=500", - "queryType": "lucene", - "refId": "500", - "timeField": "@timestamp" + "disableTextWrap": false, + "editorMode": "code", + "expr": "rabbitmq_channel_consumers", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, + "refId": "A", + "useBackend": false } ], - "title": "HTTP Status Codes over Time", - "type": "barchart" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 73 - }, - "id": 22, - "panels": [], - "title": "UI", - "type": "row" + "title": "Consumers", + "type": "stat" }, { "datasource": { @@ -2117,29 +1400,29 @@ }, { "color": "#EAB839", - "value": 300 + "value": 10 }, { "color": "orange", - "value": 600 + "value": 100 }, { "color": "red", - "value": 900 + "value": 1000 } ] }, - "unit": "ms" + "unit": "none" }, "overrides": [] }, "gridPos": { "h": 3, "w": 4, - "x": 0, - "y": 74 + "x": 8, + "y": 23 }, - "id": 17, + "id": 35, "options": { "colorMode": "background", "graphMode": "none", @@ -2166,7 +1449,7 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "avg(page_render_time)", + "expr": "rabbitmq_queue_messages_persistent", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, @@ -2176,7 +1459,7 @@ "useBackend": false } ], - "title": "UI Response Time (avg)", + "title": "Persistent Messages", "type": "stat" }, { @@ -2184,7 +1467,7 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", + "description": "Ready and unacknowledged messages stored in memory", "fieldConfig": { "defaults": { "mappings": [], @@ -2199,29 +1482,29 @@ }, { "color": "#EAB839", - "value": 0.02 + "value": 10 }, { "color": "orange", - "value": 0.05 + "value": 100 }, { "color": "red", - "value": 0.1 + "value": 1000 } ] }, - "unit": "s" + "unit": "none" }, "overrides": [] }, "gridPos": { "h": 3, "w": 4, - "x": 4, - "y": 74 + "x": 12, + "y": 23 }, - "id": 24, + "id": 36, "options": { "colorMode": "background", "graphMode": "none", @@ -2248,7 +1531,7 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "nodejs_eventloop_lag_mean_seconds", + "expr": "rabbitmq_queue_messages_ram", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, @@ -2258,7 +1541,7 @@ "useBackend": false } ], - "title": "UI Event Lag (avg)", + "title": "Ready Messages", "type": "stat" }, { @@ -2266,7 +1549,7 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", + "description": "Messages delivered to consumers but not yet acknowledged", "fieldConfig": { "defaults": { "mappings": [], @@ -2276,16 +1559,20 @@ "mode": "absolute", "steps": [ { - "color": "red", + "color": "green", "value": null }, { - "color": "yellow", - "value": 1 + "color": "#EAB839", + "value": 10 }, { - "color": "green", - "value": 2 + "color": "orange", + "value": 100 + }, + { + "color": "red", + "value": 1000 } ] }, @@ -2296,10 +1583,10 @@ "gridPos": { "h": 3, "w": 4, - "x": 8, - "y": 74 + "x": 16, + "y": 23 }, - "id": 48, + "id": 37, "options": { "colorMode": "background", "graphMode": "none", @@ -2326,7 +1613,7 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "nodejs_active_handles{type=\"Server\"}", + "expr": "rabbitmq_queue_messages_unacked", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, @@ -2336,7 +1623,7 @@ "useBackend": false } ], - "title": "UI Servers", + "title": "Unacked Messages", "type": "stat" }, { @@ -2344,52 +1631,109 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", + "description": "Messages for received protocol messages", "fieldConfig": { "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, "mappings": [], - "max": 100, - "min": 0, "thresholds": { "mode": "absolute", "steps": [ - { - "color": "red", - "value": null - }, { "color": "green", - "value": 1 + "value": null } ] }, - "unit": "none" + "unit": "mps" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/amqp.*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "shades" + } + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/mqtt.*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "yellow", + "mode": "shades" + } + } + ] + } + ] }, "gridPos": { - "h": 3, - "w": 4, - "x": 12, - "y": 74 + "h": 7, + "w": 12, + "x": 0, + "y": 26 }, - "id": 49, + "id": 33, "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -2400,58 +1744,80 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "nodejs_active_handles{type=\"Socket\"}", + "expr": "rate(rabbitmq_global_messages_received_total[$__range])", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "__auto", + "legendFormat": "{{protocol}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "UI Sockets", - "type": "stat" + "title": "Throughput", + "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", "fieldConfig": { "defaults": { "color": { - "fixedColor": "blue", - "mode": "fixed" + "mode": "thresholds" }, - "mappings": [], + "mappings": [ + { + "options": { + "0": { + "index": 0, + "text": "DOWN" + }, + "1": { + "index": 1, + "text": "UP" + } + }, + "type": "value" + } + ], "thresholds": { "mode": "absolute", "steps": [ { - "color": "green", + "color": "red", "value": null + }, + { + "color": "green", + "value": 1 } ] - }, - "unit": "none" + } }, "overrides": [] }, "gridPos": { - "h": 3, - "w": 4, - "x": 16, - "y": 74 + "h": 7, + "w": 12, + "x": 12, + "y": 26 }, - "id": 50, + "id": 16, "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", + "displayMode": "basic", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", "orientation": "auto", - "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" @@ -2459,9 +1825,9 @@ "fields": "", "values": false }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" }, "pluginVersion": "11.5.3", "targets": [ @@ -2471,29 +1837,77 @@ "uid": "dbrepometrics0" }, "disableTextWrap": false, - "editorMode": "code", - "expr": "nodejs_active_requests_total", + "editorMode": "builder", + "expr": "up", "fullMetaSearch": false, + "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "__auto", + "legendFormat": "{{instance}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "Active Requests", - "type": "stat" + "title": "Service QoS", + "type": "bargauge" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 33 + }, + "id": 2, + "panels": [], + "title": "REST API", + "type": "row" }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { "color": { - "mode": "thresholds" + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } }, "mappings": [], "thresholds": { @@ -2503,21 +1917,12 @@ "color": "green", "value": null }, - { - "color": "yellow", - "value": 300 - }, - { - "color": "orange", - "value": 600 - }, { "color": "red", - "value": 900 + "value": 80 } ] - }, - "unit": "ms" + } }, "overrides": [] }, @@ -2525,32 +1930,21 @@ "h": 7, "w": 12, "x": 0, - "y": 77 + "y": 34 }, - "id": 20, + "id": 23, "options": { - "displayMode": "basic", "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": false - }, - "maxVizHeight": 300, - "minVizHeight": 16, - "minVizWidth": 8, - "namePlacement": "auto", - "orientation": "horizontal", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "showLegend": true }, - "showUnfilled": true, - "sizing": "auto", - "valueMode": "color" + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -2560,25 +1954,27 @@ "uid": "dbrepometrics0" }, "disableTextWrap": false, - "editorMode": "builder", - "expr": "page_render_time", + "editorMode": "code", + "expr": "process_open_fds\n", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "{{path}}", + "legendFormat": "{{instance}}", "range": true, - "refId": "A", + "refId": "process_open_fds", "useBackend": false } ], - "title": "UI Response Time per Path (avg)", - "type": "bargauge" + "title": "File Descriptors", + "type": "timeseries" }, { "datasource": { + "default": true, "type": "prometheus", "uid": "dbrepometrics0" }, + "description": "Heap and non-heap memory summed", "fieldConfig": { "defaults": { "color": { @@ -2593,7 +1989,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 0, + "fillOpacity": 25, "gradientMode": "none", "hideFrom": { "legend": false, @@ -2611,10 +2007,10 @@ "spanNulls": false, "stacking": { "group": "A", - "mode": "none" + "mode": "normal" }, "thresholdsStyle": { - "mode": "dashed" + "mode": "off" } }, "mappings": [], @@ -2624,24 +2020,81 @@ { "color": "green", "value": null - }, - { - "color": "red", - "value": 256000000 } ] }, "unit": "decbytes" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "auth-service:9000" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "yellow", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "data-service:8080" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:8080" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "purple", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:80" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + } + ] + } + ] }, "gridPos": { "h": 7, "w": 12, "x": 12, - "y": 77 + "y": 34 }, - "id": 21, + "id": 7, "options": { "legend": { "calcs": [], @@ -2664,481 +2117,157 @@ }, "disableTextWrap": false, "editorMode": "builder", - "expr": "nodejs_heap_space_size_total_bytes", + "expr": "sum by(instance) (jvm_memory_used_bytes)", "fullMetaSearch": false, - "includeNullMetadata": true, + "hide": false, + "includeNullMetadata": false, "instant": false, - "legendFormat": "{{space}}", + "legendFormat": "{{instance}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "NodeJS Heap Bytes", + "title": "JVM Memory Usage", "type": "timeseries" }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 84 - }, - "id": 31, - "panels": [], - "title": "AMPQ / MQTT API", - "type": "row" - }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "Quality of Service", "fieldConfig": { "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 25, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, "mappings": [], - "max": 100, - "min": 0, "thresholds": { "mode": "absolute", "steps": [ - { - "color": "purple", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "orange", - "value": 60 - }, - { - "color": "#EAB839", - "value": 80 - }, { "color": "green", - "value": 100 + "value": null } ] }, - "unit": "percent" + "unit": "none" }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 0, - "y": 85 - }, - "id": 32, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_channels*100/rabbitmq_channel_consumers", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "Services Running", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Broker Service QoS", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - } - ] - }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 4, - "y": 85 - }, - "id": 29, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_connection_channels", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Channels", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "auth-service:9000" + }, + "properties": [ { - "color": "blue", - "value": null + "id": "color", + "value": { + "fixedColor": "yellow", + "mode": "fixed" + } } ] }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 8, - "y": 85 - }, - "id": 30, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_channel_consumers", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Consumers", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 10 - }, - { - "color": "orange", - "value": 100 - }, + { + "matcher": { + "id": "byName", + "options": "data-service:8080" + }, + "properties": [ { - "color": "red", - "value": 1000 + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } } ] }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 12, - "y": 85 - }, - "id": 35, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_queue_messages_persistent", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Persistent Messages", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "Ready and unacknowledged messages stored in memory", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 10 - }, - { - "color": "orange", - "value": 100 - }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:8080" + }, + "properties": [ { - "color": "red", - "value": 1000 + "id": "color", + "value": { + "fixedColor": "purple", + "mode": "fixed" + } } ] }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 16, - "y": 85 - }, - "id": 36, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_queue_messages_ram", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Ready Messages", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "Messages delivered to consumers but not yet acknowledged", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 10 - }, - { - "color": "orange", - "value": 100 - }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:80" + }, + "properties": [ { - "color": "red", - "value": 1000 + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } } ] - }, - "unit": "none" - }, - "overrides": [] + } + ] }, "gridPos": { - "h": 3, - "w": 4, - "x": 20, - "y": 85 + "h": 7, + "w": 12, + "x": 0, + "y": 41 }, - "id": 37, + "id": 6, "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -3148,26 +2277,26 @@ "uid": "dbrepometrics0" }, "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_queue_messages_unacked", + "editorMode": "builder", + "expr": "process_cpu_usage", "fullMetaSearch": false, + "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "__auto", + "legendFormat": "{{instance}}", "range": true, - "refId": "A", + "refId": "process_cpu_usage", "useBackend": false } ], - "title": "Unacked Messages", - "type": "stat" + "title": "CPU Usage", + "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "Messages for received protocol messages", "fieldConfig": { "defaults": { "color": { @@ -3182,7 +2311,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 0, + "fillOpacity": 25, "gradientMode": "none", "hideFrom": { "legend": false, @@ -3216,20 +2345,20 @@ } ] }, - "unit": "mps" + "unit": "reqps" }, "overrides": [ { "matcher": { "id": "byRegexp", - "options": "/amqp.*/" + "options": "/.*search-service.*/" }, "properties": [ { "id": "color", "value": { - "fixedColor": "red", - "mode": "shades" + "fixedColor": "orange", + "mode": "fixed" } } ] @@ -3237,14 +2366,14 @@ { "matcher": { "id": "byRegexp", - "options": "/mqtt.*/" + "options": "/.*analyse-service.*/" }, "properties": [ { "id": "color", "value": { - "fixedColor": "yellow", - "mode": "shades" + "fixedColor": "super-light-orange", + "mode": "fixed" } } ] @@ -3254,10 +2383,10 @@ "gridPos": { "h": 7, "w": 12, - "x": 0, - "y": 88 + "x": 12, + "y": 41 }, - "id": 33, + "id": 19, "options": { "legend": { "calcs": [], @@ -3267,7 +2396,7 @@ }, "tooltip": { "hideZeros": false, - "mode": "single", + "mode": "multi", "sort": "none" } }, @@ -3278,28 +2407,35 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "disableTextWrap": false, "editorMode": "code", - "expr": "rate(rabbitmq_global_messages_received_total[$__range])", - "fullMetaSearch": false, - "includeNullMetadata": true, + "expr": "rate(flask_http_request_duration_seconds_count{status!~\"200|201|202\"}[$__rate_interval])", "instant": false, - "legendFormat": "{{protocol}}", + "legendFormat": "{{method}} {{instance}} ({{status}})", "range": true, - "refId": "A", - "useBackend": false + "refId": "A" } ], - "title": "Throughput", + "title": "Failed API Requests", "type": "timeseries" }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 48 + }, + "id": 39, + "panels": [], + "title": "Storage", + "type": "row" + }, { "datasource": { - "default": true, "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "Heap and non-heap memory summed", "fieldConfig": { "defaults": { "color": { @@ -3314,7 +2450,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 25, + "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, @@ -3328,11 +2464,11 @@ "scaleDistribution": { "type": "linear" }, - "showPoints": "auto", + "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", - "mode": "normal" + "mode": "none" }, "thresholdsStyle": { "mode": "off" @@ -3345,82 +2481,26 @@ { "color": "green", "value": null - } - ] - }, - "unit": "decbytes" - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "auth-service:9000" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "yellow", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "data-service:8080" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:8080" - }, - "properties": [ + }, { - "id": "color", - "value": { - "fixedColor": "purple", - "mode": "fixed" - } + "color": "red", + "value": 80 } ] }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:80" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - } - ] + "unit": "short" + }, + "overrides": [] }, "gridPos": { - "h": 7, + "h": 8, "w": 12, - "x": 12, - "y": 88 + "x": 0, + "y": 49 }, "id": 41, "options": { + "alertThreshold": true, "legend": { "calcs": [], "displayMode": "list", @@ -3440,41 +2520,33 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "disableTextWrap": false, - "editorMode": "builder", - "expr": "sum by(instance) (jvm_memory_used_bytes)", - "fullMetaSearch": false, + "expr": "sum(SeaweedFS_volumeServer_volumes) by (collection, type)", + "format": "time_series", "hide": false, - "includeNullMetadata": false, - "instant": false, - "legendFormat": "{{instance}}", - "range": true, - "refId": "A", - "useBackend": false + "intervalFactor": 2, + "legendFormat": "{{collection}} {{type}}", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "expr": "sum(SeaweedFS_volumeServer_max_volumes)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Total", + "refId": "B" } ], - "title": "JVM Memory Usage", + "title": "Volume Count", "type": "timeseries" }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 95 - }, - "id": 2, - "panels": [], - "title": "REST API", - "type": "row" - }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", "fieldConfig": { "defaults": { "color": { @@ -3489,7 +2561,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 0, + "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, @@ -3503,7 +2575,7 @@ "scaleDistribution": { "type": "linear" }, - "showPoints": "auto", + "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", @@ -3526,18 +2598,20 @@ "value": 80 } ] - } + }, + "unit": "bytes" }, "overrides": [] }, "gridPos": { - "h": 7, + "h": 8, "w": 12, - "x": 0, - "y": 96 + "x": 12, + "y": 49 }, - "id": 23, + "id": 42, "options": { + "alertThreshold": true, "legend": { "calcs": [], "displayMode": "list", @@ -3557,27 +2631,33 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "process_open_fds\n", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "{{instance}}", - "range": true, - "refId": "process_open_fds", - "useBackend": false + "expr": "sum(SeaweedFS_volumeServer_total_disk_size) by (collection, type)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{collection}} {{type}}", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "expr": "sum(SeaweedFS_volumeServer_total_disk_size)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Total", + "refId": "B" } ], - "title": "File Descriptors", + "title": "Used Disk Space by Collection and Type", "type": "timeseries" } ], "preload": false, - "refresh": "1m", + "refresh": "5m", "schemaVersion": 40, "tags": [ - "provisioned", "ui", "dashboard", "metadata", @@ -3585,20 +2665,19 @@ "gateway", "analyse", "metrics", - "auth", - "search" + "auth" ], "templating": { "list": [] }, "time": { - "from": "now-3h", + "from": "now-24h", "to": "now" }, "timepicker": {}, "timezone": "browser", "title": "DBRepo", - "uid": "bdz20owu8zn5se2", - "version": 7, + "uid": "bdz20owu8zn5se", + "version": 9, "weekStart": "" } \ No newline at end of file diff --git a/dbrepo-data-service/lib/.gitkeep b/dbrepo-data-service/lib/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/dbrepo-data-service/pom.xml b/dbrepo-data-service/pom.xml index 333a332c76cbeacc4a53560e2ac94465068f9d83..948ef796727fe72b26e26efbcd0c16b4ca13c2b7 100644 --- a/dbrepo-data-service/pom.xml +++ b/dbrepo-data-service/pom.xml @@ -136,6 +136,13 @@ <artifactId>hadoop-aws</artifactId> <version>${hadoop.version}</version> </dependency> + <!-- Api --> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>${lombok.version}</version> + <scope>provided</scope> + </dependency> <!-- Data Source --> <dependency> <groupId>org.mariadb.jdbc</groupId> diff --git a/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/endpoint/SubsetEndpointUnitTest.java b/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/endpoint/SubsetEndpointUnitTest.java index 023ed55471036fe464f8dea0cd300bb48d899f48..195e42026ddbe710855d4b6ceb9248cb8e486c97 100644 --- a/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/endpoint/SubsetEndpointUnitTest.java +++ b/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/endpoint/SubsetEndpointUnitTest.java @@ -71,21 +71,25 @@ public class SubsetEndpointUnitTest extends BaseTest { @WithAnonymousUser public void list_publicDataPrivateSchemaAnonymous_succeeds() throws QueryNotFoundException, DatabaseNotFoundException, RemoteUnavailableException, SQLException, MetadataServiceException, - DatabaseUnavailableException, NotAllowedException { + DatabaseUnavailableException, NotAllowedException, UserNotFoundException { /* mock */ when(subsetService.findAll(DATABASE_3_PRIVILEGED_DTO, null)) .thenReturn(List.of(QUERY_3_DTO, QUERY_4_DTO, QUERY_5_DTO)); /* test */ - generic_list(DATABASE_3_ID, DATABASE_3_PRIVILEGED_DTO, null); + final List<QueryDto> response = generic_list(DATABASE_3_ID, DATABASE_3_PRIVILEGED_DTO, null); + assertEquals(3, response.size()); + assertEquals(QUERY_3_DTO, response.get(0)); + assertEquals(QUERY_4_DTO, response.get(1)); + assertEquals(QUERY_5_DTO, response.get(2)); } @Test @WithMockUser(username = USER_3_USERNAME) public void list_publicDataPrivateSchema_succeeds() throws DatabaseUnavailableException, NotAllowedException, QueryNotFoundException, DatabaseNotFoundException, RemoteUnavailableException, SQLException, - MetadataServiceException { + MetadataServiceException, UserNotFoundException { /* mock */ when(cacheService.getAccess(DATABASE_3_ID, USER_3_ID)) @@ -96,6 +100,12 @@ public class SubsetEndpointUnitTest extends BaseTest { /* test */ final List<QueryDto> response = generic_list(DATABASE_3_ID, DATABASE_3_PRIVILEGED_DTO, USER_3_PRINCIPAL); assertEquals(6, response.size()); + assertEquals(QUERY_1_DTO, response.get(0)); + assertEquals(QUERY_2_DTO, response.get(1)); + assertEquals(QUERY_3_DTO, response.get(2)); + assertEquals(QUERY_4_DTO, response.get(3)); + assertEquals(QUERY_5_DTO, response.get(4)); + assertEquals(QUERY_6_DTO, response.get(5)); } @Test @@ -111,7 +121,7 @@ public class SubsetEndpointUnitTest extends BaseTest { @Test @WithMockUser(username = USER_3_USERNAME) public void list_publicDataAndPrivateSchemaUnavailable_fails() throws SQLException, QueryNotFoundException, - DatabaseNotFoundException, RemoteUnavailableException, MetadataServiceException { + DatabaseNotFoundException, RemoteUnavailableException, MetadataServiceException, UserNotFoundException { /* mock */ when(cacheService.getDatabase(DATABASE_3_ID)) diff --git a/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/service/SubsetServiceIntegrationTest.java b/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/service/SubsetServiceIntegrationTest.java index abc992bf4bdb96233004f20e0bab866f5e2776aa..d6f657ed2b937beb1b286895a123663ec1b170c4 100644 --- a/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/service/SubsetServiceIntegrationTest.java +++ b/dbrepo-data-service/rest-service/src/test/java/at/ac/tuwien/ifs/dbrepo/service/SubsetServiceIntegrationTest.java @@ -66,8 +66,9 @@ public class SubsetServiceIntegrationTest extends BaseTest { } @Test - public void findAll_succeeds() throws SQLException, QueryNotFoundException, RemoteUnavailableException, - MetadataServiceException, DatabaseNotFoundException, InterruptedException { + public void findAll_succeeds() throws SQLException, QueryNotFoundException, + RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException, InterruptedException, + UserNotFoundException { /* test */ final List<QueryDto> response = findAll_generic(null); @@ -77,8 +78,9 @@ public class SubsetServiceIntegrationTest extends BaseTest { } @Test - public void findAll_onlyPersisted_succeeds() throws SQLException, QueryNotFoundException, - RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException, InterruptedException { + public void findAll_onlyPersisted_succeeds() throws SQLException, QueryNotFoundException, + RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException, InterruptedException, + UserNotFoundException { /* test */ final List<QueryDto> response = findAll_generic(true); @@ -88,7 +90,8 @@ public class SubsetServiceIntegrationTest extends BaseTest { @Test public void findAll_onlyNonPersisted_succeeds() throws SQLException, QueryNotFoundException, - RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException, InterruptedException { + RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException, InterruptedException, + UserNotFoundException { /* test */ final List<QueryDto> response = findAll_generic(false); @@ -303,7 +306,7 @@ public class SubsetServiceIntegrationTest extends BaseTest { protected List<QueryDto> findAll_generic(Boolean filterPersisted) throws SQLException, QueryNotFoundException, RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException, - InterruptedException { + InterruptedException, UserNotFoundException { /* pre-condition */ Thread.sleep(1000) /* wait for test container some more */; diff --git a/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/mapper/DataMapper.java b/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/mapper/DataMapper.java index ddf7f9a882ab9b460f101b09a4a83b7c3b41e410..065e8f140e76e1f793a831a907a1832be77deb6c 100644 --- a/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/mapper/DataMapper.java +++ b/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/mapper/DataMapper.java @@ -257,6 +257,7 @@ public interface DataMapper { final QueryDto subset = QueryDto.builder() .id(UUID.fromString(data.getString(1))) .query(data.getString(4)) + .queryNormalized(data.getString(4)) .queryHash(data.getString(5)) .resultHash(data.getString(6)) .resultNumber(data.getLong(7)) diff --git a/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/SubsetService.java b/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/SubsetService.java index eb341c95eb13ddd824f5ec177dd273094e4f47fc..a7ee9b1ca08d2c3389efad0d07f9959bfaa5fb7c 100644 --- a/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/SubsetService.java +++ b/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/SubsetService.java @@ -63,7 +63,7 @@ public interface SubsetService { * @throws MetadataServiceException The Metadata Service responded unexpected. */ List<QueryDto> findAll(DatabaseDto database, Boolean filterPersisted) throws SQLException, - QueryNotFoundException, RemoteUnavailableException, DatabaseNotFoundException, MetadataServiceException; + QueryNotFoundException, RemoteUnavailableException, DatabaseNotFoundException, MetadataServiceException, UserNotFoundException; /** * Executes a subset query without saving it. diff --git a/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/impl/SubsetServiceMariaDbImpl.java b/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/impl/SubsetServiceMariaDbImpl.java index b8044175dc5abbed006093211e2b89335b90e316..a9e1a07213a728c8338b2f11574da7a257dbcbe7 100644 --- a/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/impl/SubsetServiceMariaDbImpl.java +++ b/dbrepo-data-service/services/src/main/java/at/ac/tuwien/ifs/dbrepo/service/impl/SubsetServiceMariaDbImpl.java @@ -2,6 +2,7 @@ package at.ac.tuwien.ifs.dbrepo.service.impl; import at.ac.tuwien.ifs.dbrepo.core.api.database.DatabaseDto; import at.ac.tuwien.ifs.dbrepo.core.api.database.query.QueryDto; +import at.ac.tuwien.ifs.dbrepo.core.api.database.query.QueryTypeDto; import at.ac.tuwien.ifs.dbrepo.core.api.database.query.SubsetDto; import at.ac.tuwien.ifs.dbrepo.core.api.identifier.IdentifierBriefDto; import at.ac.tuwien.ifs.dbrepo.core.api.identifier.IdentifierTypeDto; @@ -82,7 +83,7 @@ public class SubsetServiceMariaDbImpl extends DataConnector implements SubsetSer @Override public List<QueryDto> findAll(DatabaseDto database, Boolean filterPersisted) throws SQLException, - QueryNotFoundException, RemoteUnavailableException, DatabaseNotFoundException, MetadataServiceException { + QueryNotFoundException, RemoteUnavailableException, DatabaseNotFoundException, MetadataServiceException, UserNotFoundException { final List<IdentifierBriefDto> identifiers = metadataServiceGateway.getIdentifiers(database.getId(), null); final ComboPooledDataSource dataSource = getDataSource(database); final Connection connection = dataSource.getConnection(); @@ -102,6 +103,11 @@ public class SubsetServiceMariaDbImpl extends DataConnector implements SubsetSer .filter(i -> i.getType().equals(IdentifierTypeDto.SUBSET)) .filter(i -> i.getQueryId().equals(query.getId())) .toList()); + query.setOwner(dataMapper.userDtoToUserBriefDto(metadataServiceGateway.getUserById(query.getOwner() + .getId()))); + query.setType(QueryTypeDto.QUERY); + query.setDatabaseId(database.getId()); + queries.add(query); } log.info("Find {} queries", queries.size()); @@ -150,6 +156,7 @@ public class SubsetServiceMariaDbImpl extends DataConnector implements SubsetSer final QueryDto query = dataMapper.resultSetToQueryDto(resultSet); query.setOwner(dataMapper.userDtoToUserBriefDto(metadataServiceGateway.getUserById(query.getOwner() .getId()))); + query.setType(QueryTypeDto.QUERY); query.setDatabaseId(database.getId()); return query; } catch (SQLException e) { diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/AffiliationDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/AffiliationDto.java deleted file mode 100644 index 807c03f48df24d122757da14161f0b98404ba5c1..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/AffiliationDto.java +++ /dev/null @@ -1,20 +0,0 @@ -package at.tuwien.api.doi; - -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class AffiliationDto { - - @Schema(example = "ISE, TU Wien, Data Science Research Unit, Vienna, Austria") - private String name; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/AuthorDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/AuthorDto.java deleted file mode 100644 index 8f8bbb61ffc64341119614f7de3395c40beac92e..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/AuthorDto.java +++ /dev/null @@ -1,35 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -import java.util.List; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class AuthorDto { - - @Schema(example = "Weise") - private String family; - - @Schema(example = "Martin") - private String given; - - @JsonProperty("ORCID") - @Schema(example = "http://orcid.org/0000-0003-4216-302X") - private String orcid; - - @Schema(example = "first") - private String sequence; - - private List<AffiliationDto> affiliation; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/DoiDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/DoiDto.java deleted file mode 100644 index af0cd5bcc64bf8797c81197fb6e9abc0cede6a7f..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/DoiDto.java +++ /dev/null @@ -1,82 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.NotNull; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -import java.util.List; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class DoiDto { - - @NotNull - @Schema(example = "https://doi.org/10.5334/dsj-2022-004") - private String id; - - @NotNull - private TimeRepresentationDto indexed; - - private TimeRepresentationDto deposited; - - private TimeRepresentationDto issued; - - private TimeRepresentationDto published; - - @JsonProperty("DOI") - @Schema(example = "10.5334/dsj-2022-004") - private String doi; - - @NotNull - @Schema(example = "dataset") - private String type; - - private List<AuthorDto> author; - - @Schema(example = "Crossref") - private String source; - - @Schema(example = "DBRepo: A Data Repository System for Research Data in Databases") - private String title; - - @Schema(example = "10.1109") - private String prefix; - - @Schema(example = "21") - private String volume; - - @JsonProperty("is-referenced-by-count") - @Schema(example = "0") - private Integer isReferencedByCount; - - @JsonProperty("reference-count") - @Schema(example = "28") - private Integer referenceCount; - - @Schema(example = "IEEE") - private String publisher; - - @Schema(example = "322-331") - private String page; - - private String member; - - @Schema(example = "2024 IEEE International Conference on Big Data (BigData)") - private String event; - - private List<ReferenceDto> reference; - - private Integer score; - - @JsonProperty("URL") - private String url; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/LicenseDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/LicenseDto.java deleted file mode 100644 index 32f5ffcd2aced054dfffd72a44a79b9994a6658b..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/LicenseDto.java +++ /dev/null @@ -1,32 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class LicenseDto { - - private TimeRepresentationDto start; - - @JsonProperty("content-version") - @Schema(example = "stm-asf") - private String contentVersion; - - @JsonProperty("delay-in-days") - @Schema(example = "0") - private Integer delayInDays; - - @JsonProperty("URL") - @Schema(example = "https://doi.org/10.15223/policy-029") - private String url; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/LinkDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/LinkDto.java deleted file mode 100644 index 5f70696091c7cf14abb0c717627f18a1e3eff9de..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/LinkDto.java +++ /dev/null @@ -1,35 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.NotNull; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class LinkDto { - - @JsonProperty("URL") - @Schema(example = "http://xplorestaging.ieee.org/ielx8/10824975/10824942/10825401.pdf?arnumber=10825401") - private String url; - - @JsonProperty("content-type") - @Schema(example = "unspecified") - private String contentType; - - @JsonProperty("content-version") - @Schema(example = "vor") - private String contentVersion; - - @JsonProperty("intended-application") - @Schema(example = "similarity-checking") - private String intendedApplication; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ReferenceDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ReferenceDto.java deleted file mode 100644 index 9458c0f9192a2f6fa71adad4e910b4e8e7b609ef..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ReferenceDto.java +++ /dev/null @@ -1,55 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.NotNull; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -import java.util.List; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class ReferenceDto { - - @NotNull - @Schema(example = "ref1") - private String key; - - @JsonProperty("doi-asserted-by") - @Schema(example = "publisher") - private String doiAssertedBy; - - @JsonProperty("DOI") - @Schema(example = "10.1038/sdata.2016.18") - private String doi; - - @Schema(example = "2024") - private String year; - - @JsonProperty("article-title") - @Schema(example = "The Dryad Data Repository: a Singapore Framework metadata Architecture in a DSpace Environment") - private String articleTitle; - - @JsonProperty("volume-title") - @Schema(example = "Proceedings of the 2008 International Conference on Dublin Core and Metadata Applications") - private String volumeTitle; - - @JsonProperty("journal-title") - @Schema(example = "Libraries Research Publications") - private String journalTitle; - - @Schema(example = "Witt") - private String author; - - @JsonProperty("first-page") - @Schema(example = "157") - private String firstPage; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ResourceDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ResourceDto.java deleted file mode 100644 index a2543c2834def88d4ae0421d92dcc1efd34ddaf7..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ResourceDto.java +++ /dev/null @@ -1,20 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class ResourceDto { - - private ResourceRepresentationDto primary; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ResourceRepresentationDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ResourceRepresentationDto.java deleted file mode 100644 index bf2312a6488a27498b83bd8039064d4c0badd75b..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/ResourceRepresentationDto.java +++ /dev/null @@ -1,20 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class ResourceRepresentationDto { - - @JsonProperty("URL") - private String url; - -} diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/TimeRepresentationDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/TimeRepresentationDto.java deleted file mode 100644 index fe649217e9b6b963138b38702abf39b539ba8d08..0000000000000000000000000000000000000000 --- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/doi/TimeRepresentationDto.java +++ /dev/null @@ -1,33 +0,0 @@ -package at.tuwien.api.doi; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import lombok.extern.jackson.Jacksonized; - -import java.time.Instant; -import java.util.List; - -@Getter -@Setter -@Builder -@EqualsAndHashCode -@NoArgsConstructor -@AllArgsConstructor -@Jacksonized -@ToString -public class TimeRepresentationDto { - - @JsonProperty("date-parts") - @Schema(example = "[[2025,1,18]]") - private List<List<Integer>> dateParts; - - @JsonProperty("date-time") - @Schema(example = "2021-03-12T15:26:21Z") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssX", timezone = "UTC") - private Instant dateTime; - - private Long timestamp; - -} diff --git a/dbrepo-metadata-service/lib/.gitkeep b/dbrepo-metadata-service/lib/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2-py3-none-any.whl b/dbrepo-search-service/lib/dbrepo-1.8.2-py3-none-any.whl index e6f981839e03420d2d87ecc15c790eeb8ea81c83..6a21f512b36f30367f641061c8efeba90108a6c7 100644 Binary files a/dbrepo-search-service/lib/dbrepo-1.8.2-py3-none-any.whl and b/dbrepo-search-service/lib/dbrepo-1.8.2-py3-none-any.whl differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2.tar.gz b/dbrepo-search-service/lib/dbrepo-1.8.2.tar.gz index e4e39b9845063404a3c0b517f7ff9ea81c6942c7..f98a45d02b802376ff7614c008eec8783f281896 100644 Binary files a/dbrepo-search-service/lib/dbrepo-1.8.2.tar.gz and b/dbrepo-search-service/lib/dbrepo-1.8.2.tar.gz differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl b/dbrepo-search-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..86a1af2af41c44d35a4da7a472c180854f0cd82c Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc3-py3-none-any.whl differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc3.tar.gz b/dbrepo-search-service/lib/dbrepo-1.8.2rc3.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9c03ed275c6da5b2eef3619c59269f398d59c7de Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc3.tar.gz differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl b/dbrepo-search-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..5a0dbc7c95592f2e70bed13fa33d85cc6cdf7811 Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc4-py3-none-any.whl differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc4.tar.gz b/dbrepo-search-service/lib/dbrepo-1.8.2rc4.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..1dbc78c989362d4d0c3750b1ad942abe46f205dd Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc4.tar.gz differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl b/dbrepo-search-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..50bf1b8195987f6f8d23a36f34bc0f912b6fd9b3 Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc5-py3-none-any.whl differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc5.tar.gz b/dbrepo-search-service/lib/dbrepo-1.8.2rc5.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..be8784437f111e2d4a5cdac36baf77605114dfa5 Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc5.tar.gz differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl b/dbrepo-search-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..8e4c745a2ce782c174d5e1db7eef22d51d26624c Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc6-py3-none-any.whl differ diff --git a/dbrepo-search-service/lib/dbrepo-1.8.2rc6.tar.gz b/dbrepo-search-service/lib/dbrepo-1.8.2rc6.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..279243fd37fe033fe4aa740361b5e9a370516924 Binary files /dev/null and b/dbrepo-search-service/lib/dbrepo-1.8.2rc6.tar.gz differ diff --git a/dbrepo-ui-new/requirements.txt b/dbrepo-ui-new/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..607fa97eb38239c11fda50d1f7c58625e98635e7 --- /dev/null +++ b/dbrepo-ui-new/requirements.txt @@ -0,0 +1,37 @@ +aiohappyeyeballs==2.4.4 +aiohttp==3.11.11 +aiosignal==1.3.2 +annotated-types==0.7.0 +attrs==24.3.0 +blinker==1.8.2 +certifi==2024.12.14 +charset-normalizer==3.4.1 +click==8.1.7 +colorama==0.4.6 +dbrepo==1.6.0 +Flask==3.0.3 +frozenlist==1.5.0 +idna==3.10 +itsdangerous==2.2.0 +Jinja2==3.1.4 +MarkupSafe==2.1.5 +multidict==6.1.0 +numpy==2.2.1 +pandas==2.2.3 +pika==1.3.2 +propcache==0.2.1 +pydantic==2.10.5 +pydantic_core==2.27.2 +python-dateutil==2.9.0.post0 +python-dotenv==1.0.1 +pytz==2024.2 +requests==2.32.3 +six==1.17.0 +tinydb==4.8.2 +tuspy==1.1.0 +typing_extensions==4.12.2 +tzdata==2024.2 +urllib3==2.3.0 +watchdog==5.0.2 +Werkzeug==3.0.4 +yarl==1.18.3 diff --git a/docker-compose.yml b/docker-compose.yml index 5ed9034b82dfa859f2c2b4cdfc548560fc0c0527..1f2249ec1c1c2d56d19e908a11861230b0e2096a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -190,8 +190,6 @@ services: image: docker.io/bitnami/postgresql:${POSTGRES_VERSION} volumes: - auth-db-data:/bitnami/postgresql - ports: - - "5432:5432" depends_on: dbrepo-logging-service: condition: service_healthy @@ -206,7 +204,10 @@ services: deploy: <<: *resources-micro logging: - driver: json-file + driver: fluentd + options: + fluentd-address: 127.0.0.1:24224 + tag: postgres.auth dbrepo-dashboard-db: restart: "no" @@ -320,8 +321,6 @@ services: build: context: ./dbrepo-metadata-service network: host - ports: - - "9099:8080" environment: ADMIN_EMAIL: "${ADMIN_EMAIL:-noreply@localhost}" ANALYSE_SERVICE_ENDPOINT: "${ANALYSE_SERVICE_ENDPOINT:-http://analyse-service:8080}" @@ -394,8 +393,6 @@ services: build: context: ./dbrepo-analyse-service network: host - ports: - - "4050:8080" depends_on: dbrepo-logging-service: condition: service_healthy @@ -481,8 +478,6 @@ services: build: context: ./dbrepo-search-service network: host - ports: - - "4060:8080" depends_on: dbrepo-logging-service: condition: service_healthy @@ -591,7 +586,7 @@ services: restart: "no" container_name: dbrepo-identity-service hostname: identity-service - image: bitnami/openldap:${OPENLDAP_VERSION} + image: docker.io/bitnami/openldap:${OPENLDAP_VERSION} ports: - '1389:1389' - '1636:1636' @@ -764,8 +759,6 @@ services: build: context: ./dbrepo-data-service network: host - ports: - - "9093:8080" environment: AUTH_SERVICE_CLIENT: "${AUTH_SERVICE_CLIENT:-dbrepo-client}" AUTH_SERVICE_CLIENT_SECRET: "${AUTH_SERVICE_CLIENT:-MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG}" @@ -863,8 +856,6 @@ services: build: context: ./dbrepo-dashboard-service network: host - ports: - - "4070:8080" environment: AUTH_SERVICE_ENDPOINT: ${AUTH_SERVICE_ENDPOINT:-http://auth-service:8080} BASE_URL: "${BASE_URL:-http://localhost}" diff --git a/grafana/grafana.ini b/grafana/grafana.ini deleted file mode 100644 index df8b9eb1b46e93de904d0c69a448a441f646260f..0000000000000000000000000000000000000000 --- a/grafana/grafana.ini +++ /dev/null @@ -1,5 +0,0 @@ -[server] -domain = grafana -root_url = http://grafana/grafana -serve_from_sub_path = true - diff --git a/helm/dbrepo/files/create-event-listener.jar b/helm/dbrepo/files/create-event-listener.jar index f5b5285458dd6ef2bc2472e51e460bcfb319c554..4e8060b6ba6d6f0ad9bf2a71d447368492fff775 100644 Binary files a/helm/dbrepo/files/create-event-listener.jar and b/helm/dbrepo/files/create-event-listener.jar differ diff --git a/helm/dbrepo/files/dbrepo.json b/helm/dbrepo/files/dbrepo.json index a4fd78436580cb1cea99475bb702fece82bee413..ca75b2fffe9345b8a4c9fecd825e027377932909 100644 --- a/helm/dbrepo/files/dbrepo.json +++ b/helm/dbrepo/files/dbrepo.json @@ -18,7 +18,7 @@ "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 1, - "id": 7, + "id": 3, "links": [ { "asDropdown": false, @@ -42,241 +42,6 @@ "x": 0, "y": 0 }, - "id": 52, - "panels": [], - "title": "Storage", - "type": "row" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "barWidthFactor": 0.6, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "smooth", - "lineWidth": 2, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "short" - }, - "overrides": [] - }, - "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 1 - }, - "id": 53, - "options": { - "alertThreshold": true, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "hideZeros": false, - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_volumes) by (collection, type)", - "format": "time_series", - "hide": false, - "intervalFactor": 2, - "legendFormat": "{{collection}} {{type}}", - "refId": "A" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_max_volumes)", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "Total", - "refId": "B" - } - ], - "title": "Volume Count", - "type": "timeseries" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "barWidthFactor": 0.6, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "smooth", - "lineWidth": 2, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "bytes" - }, - "overrides": [] - }, - "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 1 - }, - "id": 54, - "options": { - "alertThreshold": true, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "hideZeros": false, - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_total_disk_size) by (collection, type)", - "format": "time_series", - "hide": false, - "intervalFactor": 2, - "legendFormat": "{{collection}} {{type}}", - "refId": "A" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "expr": "sum(SeaweedFS_volumeServer_total_disk_size)", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "Total", - "refId": "B" - } - ], - "title": "Used Disk Space by Collection and Type", - "type": "timeseries" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 9 - }, "id": 34, "panels": [], "title": "tl;dr", @@ -327,7 +92,7 @@ "h": 3, "w": 4, "x": 0, - "y": 10 + "y": 1 }, "id": 9, "options": { @@ -397,7 +162,7 @@ "h": 3, "w": 4, "x": 4, - "y": 10 + "y": 1 }, "id": 28, "options": { @@ -465,7 +230,7 @@ "h": 3, "w": 4, "x": 8, - "y": 10 + "y": 1 }, "id": 4, "options": { @@ -533,9 +298,9 @@ "h": 3, "w": 4, "x": 12, - "y": 10 + "y": 1 }, - "id": 39, + "id": 5, "options": { "colorMode": "background", "graphMode": "none", @@ -649,7 +414,7 @@ "h": 3, "w": 4, "x": 16, - "y": 10 + "y": 1 }, "id": 8, "options": { @@ -714,10 +479,10 @@ "overrides": [] }, "gridPos": { - "h": 8, + "h": 7, "w": 12, "x": 0, - "y": 13 + "y": 4 }, "id": 38, "options": { @@ -771,33 +536,48 @@ "fieldConfig": { "defaults": { "color": { - "mode": "thresholds" + "mode": "palette-classic" }, - "mappings": [ - { - "options": { - "0": { - "index": 0, - "text": "DOWN" - }, - "1": { - "index": 1, - "text": "UP" - } - }, - "type": "value" - } - ], + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], "thresholds": { "mode": "absolute", "steps": [ - { - "color": "red", - "value": null - }, { "color": "green", - "value": 1 + "value": null } ] } @@ -805,35 +585,24 @@ "overrides": [] }, "gridPos": { - "h": 8, + "h": 7, "w": 12, "x": 12, - "y": 13 + "y": 4 }, - "id": 51, + "id": 40, "options": { - "displayMode": "basic", "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": false - }, - "maxVizHeight": 300, - "minVizHeight": 16, - "minVizWidth": 8, - "namePlacement": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "showLegend": true }, - "showUnfilled": true, - "sizing": "auto", - "valueMode": "color" + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -844,19 +613,18 @@ }, "disableTextWrap": false, "editorMode": "builder", - "expr": "up", + "expr": "SeaweedFS_s3_request_total", "fullMetaSearch": false, - "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "{{instance}}", + "legendFormat": "{{type}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "Service QoS", - "type": "bargauge" + "title": "S3 Requests", + "type": "timeseries" }, { "collapsed": false, @@ -864,607 +632,489 @@ "h": 1, "w": 24, "x": 0, - "y": 21 + "y": 11 }, - "id": 6, + "id": 22, "panels": [], - "title": "Application", + "title": "UI", "type": "row" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { - "color": { - "mode": "fixed" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "fillOpacity": 80, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "lineWidth": 1, - "scaleDistribution": { - "type": "linear" - }, - "thresholdsStyle": { - "mode": "off" - } - }, "mappings": [], + "max": 100, + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byFrameRefID", - "options": "warn" - }, - "properties": [ + }, { - "id": "color", - "value": { - "fixedColor": "orange", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "error" - }, - "properties": [ + "color": "#EAB839", + "value": 300 + }, { - "id": "color", - "value": { - "fixedColor": "red", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "info" - }, - "properties": [ + "color": "orange", + "value": 600 + }, { - "id": "color", - "value": { - "fixedColor": "green", - "mode": "fixed" - } + "color": "red", + "value": 900 } ] }, - { - "matcher": { - "id": "byFrameRefID", - "options": "debug" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - } - ] + "unit": "ms" + }, + "overrides": [] }, "gridPos": { - "h": 8, - "w": 24, + "h": 3, + "w": 4, "x": 0, - "y": 22 + "y": 12 }, - "id": 42, + "id": 17, "options": { - "barRadius": 0, - "barWidth": 0.97, - "fullHighlight": false, - "groupWidth": 0.7, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "right", - "showLegend": true - }, + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", "orientation": "auto", - "showValue": "auto", - "stacking": "percent", - "tooltip": { - "hideZeros": false, - "mode": "single", - "sort": "none" + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false }, - "xTickLabelRotation": 0, - "xTickLabelSpacing": 100 + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "WARN", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "hide": false, - "id": "1", - "type": "count" - } - ], - "query": "level: WARN", - "queryType": "lucene", - "refId": "warn", - "timeField": "@timestamp" - }, - { - "alias": "ERROR", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "level: ERROR", - "queryType": "lucene", - "refId": "error", - "timeField": "@timestamp" - }, - { - "alias": "INFO", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "level: INFO", - "queryType": "lucene", - "refId": "info", - "timeField": "@timestamp" - }, - { - "alias": "DEBUG", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "level: DEBUG", - "queryType": "lucene", - "refId": "debug", - "timeField": "@timestamp" + "disableTextWrap": false, + "editorMode": "code", + "expr": "avg(page_render_time)", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, + "refId": "A", + "useBackend": false } ], - "title": "Errors and Warnings over Time", - "type": "barchart" + "title": "UI Response Time (avg)", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 0.02 + }, + { + "color": "orange", + "value": 0.05 + }, + { + "color": "red", + "value": 0.1 + } + ] + }, + "unit": "s" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 30 + "h": 3, + "w": 4, + "x": 4, + "y": 12 }, - "id": 43, + "id": 24, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: ERROR", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_eventloop_lag_mean_seconds", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "Errors", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "useBackend": false } ], - "type": "logs" + "title": "UI Event Lag (avg)", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": null + }, + { + "color": "yellow", + "value": 1 + }, + { + "color": "green", + "value": 2 + } + ] + }, + "unit": "none" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 30 + "h": 3, + "w": 4, + "x": 8, + "y": 12 }, - "id": 44, + "id": 25, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: WARN", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_active_handles{type=\"Server\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "Warnings", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "useBackend": false } ], - "type": "logs" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 38 - }, - "id": 45, - "panels": [], - "title": "Application Debugging", - "type": "row" + "title": "UI Servers", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": null + }, + { + "color": "green", + "value": 1 + } + ] + }, + "unit": "none" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 39 + "h": 3, + "w": 4, + "x": 12, + "y": 12 }, - "id": 46, + "id": 26, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: INFO", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_active_handles{type=\"Socket\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "Info", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "useBackend": false } ], - "type": "logs" + "title": "UI Sockets", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, "description": "", "fieldConfig": { - "defaults": {}, + "defaults": { + "color": { + "fixedColor": "blue", + "mode": "fixed" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "none" + }, "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 39 + "h": 3, + "w": 4, + "x": 16, + "y": 12 }, - "id": 47, + "id": 27, "options": { - "dedupStrategy": "none", - "enableInfiniteScrolling": false, - "enableLogDetails": true, - "prettifyLogMessage": false, - "showCommonLabels": false, - "showLabels": false, - "showTime": true, - "sortOrder": "Descending", - "wrapLogMessage": false + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "level: DEBUG", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "nodejs_active_requests_total", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" + "useBackend": false } ], - "title": "Debug", - "transformations": [ + "title": "Active Requests", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "yellow", + "value": 300 + }, + { + "color": "orange", + "value": 600 + }, + { + "color": "red", + "value": 900 + } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 15 + }, + "id": 20, + "options": { + "displayMode": "basic", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "pluginVersion": "11.5.3", + "targets": [ { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "message", - "container_id", - "container_name", - "logger", - "@timestamp" - ] - } - } + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "page_render_time", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "{{path}}", + "range": true, + "refId": "A", + "useBackend": false } ], - "type": "logs" + "title": "UI Response Time per Path (avg)", + "type": "bargauge" }, { "datasource": { @@ -1485,7 +1135,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 25, + "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, @@ -1503,10 +1153,10 @@ "spanNulls": false, "stacking": { "group": "A", - "mode": "normal" + "mode": "none" }, "thresholdsStyle": { - "mode": "off" + "mode": "dashed" } }, "mappings": [], @@ -1516,81 +1166,24 @@ { "color": "green", "value": null - } - ] - }, - "unit": "none" - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "auth-service:9000" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "yellow", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "data-service:8080" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:8080" - }, - "properties": [ + }, { - "id": "color", - "value": { - "fixedColor": "purple", - "mode": "fixed" - } + "color": "red", + "value": 256000000 } ] }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:80" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - } - ] + "unit": "decbytes" + }, + "overrides": [] }, "gridPos": { - "h": 8, + "h": 7, "w": 12, - "x": 0, - "y": 47 + "x": 12, + "y": 15 }, - "id": 40, + "id": 21, "options": { "legend": { "calcs": [], @@ -1613,18 +1206,17 @@ }, "disableTextWrap": false, "editorMode": "builder", - "expr": "process_cpu_usage", + "expr": "nodejs_heap_space_size_total_bytes", "fullMetaSearch": false, - "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "{{instance}}", + "legendFormat": "{{space}}", "range": true, - "refId": "process_cpu_usage", + "refId": "A", "useBackend": false } ], - "title": "CPU Usage", + "title": "NodeJS Heap Bytes", "type": "timeseries" }, { @@ -1633,469 +1225,160 @@ "h": 1, "w": 24, "x": 0, - "y": 55 + "y": 22 }, - "id": 5, + "id": 31, "panels": [], - "title": "HTTP Gateway", + "title": "AMPQ / MQTT API", "type": "row" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "cellOptions": { - "type": "auto" - }, - "inspect": false - }, "mappings": [], + "max": 100, + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { - "color": "green", + "color": "red", "value": null }, { - "color": "red", - "value": 80 + "color": "green", + "value": 1 } ] - } + }, + "unit": "none" }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "request.method" - }, - "properties": [ - { - "id": "custom.width" - } - ] - } - ] + "overrides": [] }, "gridPos": { - "h": 8, - "w": 12, + "h": 3, + "w": 4, "x": 0, - "y": 56 + "y": 23 }, - "id": 7, + "id": 29, "options": { - "cellHeight": "sm", - "footer": { - "countRows": false, - "fields": "", - "reducer": [ - "sum" + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" ], - "show": false + "fields": "", + "values": false }, - "showHeader": true, - "sortBy": [] + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "field": "@timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Logs", - "metrics": [ - { - "id": "1", - "type": "logs" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: >=400", - "queryType": "lucene", + "disableTextWrap": false, + "editorMode": "code", + "expr": "rabbitmq_connection_channels", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, "refId": "A", - "timeField": "@timestamp" - } - ], - "title": "HTTP Gateway Errors", - "transformations": [ - { - "id": "filterFieldsByName", - "options": { - "include": { - "names": [ - "code", - "method", - "path", - "size" - ] - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": {}, - "includeByName": {}, - "indexByName": { - "code": 2, - "method": 0, - "path": 1, - "size": 3 - }, - "renameByName": { - "@timestamp": "", - "code": "response.status", - "method": "request.method", - "path": "request.url", - "size": "body.size" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "Count", - "mode": "reduceRow", - "reduce": { - "include": [ - "request.url", - "response.status" - ], - "reducer": "distinctCount" - }, - "replaceFields": false - } - }, - { - "id": "sortBy", - "options": { - "fields": {}, - "sort": [ - { - "desc": true, - "field": "Count" - } - ] - } + "useBackend": false } ], - "type": "table" + "title": "Channels", + "type": "stat" }, { "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { - "color": { - "mode": "fixed" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "Count", - "axisPlacement": "auto", - "fillOpacity": 80, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "lineWidth": 1, - "scaleDistribution": { - "type": "linear" - }, - "thresholdsStyle": { - "mode": "off" - } - }, "mappings": [], + "max": 100, + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { - "color": "green", + "color": "red", "value": null - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byFrameRefID", - "options": "200" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "green", - "mode": "fixed" - } - }, - { - "id": "displayName", - "value": "200s" - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "300" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "purple", - "mode": "fixed" - } - }, - { - "id": "displayName", - "value": "300s" - } - ] - }, - { - "matcher": { - "id": "byFrameRefID", - "options": "400" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "orange", - "mode": "fixed" - } }, { - "id": "displayName", - "value": "400s" + "color": "green", + "value": 1 } ] }, - { - "matcher": { - "id": "byFrameRefID", - "options": "500" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "red", - "mode": "fixed" - } - }, - { - "id": "displayName", - "value": "500s" - } - ] - } - ] + "unit": "none" + }, + "overrides": [] }, "gridPos": { - "h": 9, - "w": 24, - "x": 0, - "y": 64 + "h": 3, + "w": 4, + "x": 4, + "y": 23 }, - "id": 3, + "id": 30, "options": { - "barRadius": 0, - "barWidth": 0.97, - "fullHighlight": false, - "groupWidth": 0.7, - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "right", - "showLegend": true - }, + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", "orientation": "auto", - "showValue": "auto", - "stacking": "normal", - "tooltip": { - "hideZeros": false, - "mode": "multi", - "sort": "none" + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false }, - "xTickLabelRotation": 0, - "xTickLabelSpacing": 100 + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true }, "pluginVersion": "11.5.3", "targets": [ { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=200 AND <300)", - "queryType": "lucene", - "refId": "200", - "timeField": "@timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=300 AND <400)", - "queryType": "lucene", - "refId": "300", - "timeField": "@timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" - }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=400 AND <500)", - "queryType": "lucene", - "refId": "400", - "timeField": "@timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], "datasource": { - "type": "grafana-opensearch-datasource", - "uid": "dbrepoopensearch0" + "type": "prometheus", + "uid": "dbrepometrics0" }, - "format": "table", - "hide": false, - "luceneQueryType": "Metric", - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "container_name: \"/dbrepo-gateway-service\" AND code: >=500", - "queryType": "lucene", - "refId": "500", - "timeField": "@timestamp" + "disableTextWrap": false, + "editorMode": "code", + "expr": "rabbitmq_channel_consumers", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "__auto", + "range": true, + "refId": "A", + "useBackend": false } ], - "title": "HTTP Status Codes over Time", - "type": "barchart" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 73 - }, - "id": 22, - "panels": [], - "title": "UI", - "type": "row" + "title": "Consumers", + "type": "stat" }, { "datasource": { @@ -2117,29 +1400,29 @@ }, { "color": "#EAB839", - "value": 300 + "value": 10 }, { "color": "orange", - "value": 600 + "value": 100 }, { "color": "red", - "value": 900 + "value": 1000 } ] }, - "unit": "ms" + "unit": "none" }, "overrides": [] }, "gridPos": { "h": 3, "w": 4, - "x": 0, - "y": 74 + "x": 8, + "y": 23 }, - "id": 17, + "id": 35, "options": { "colorMode": "background", "graphMode": "none", @@ -2166,7 +1449,7 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "avg(page_render_time)", + "expr": "rabbitmq_queue_messages_persistent", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, @@ -2176,7 +1459,7 @@ "useBackend": false } ], - "title": "UI Response Time (avg)", + "title": "Persistent Messages", "type": "stat" }, { @@ -2184,7 +1467,7 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", + "description": "Ready and unacknowledged messages stored in memory", "fieldConfig": { "defaults": { "mappings": [], @@ -2199,29 +1482,29 @@ }, { "color": "#EAB839", - "value": 0.02 + "value": 10 }, { "color": "orange", - "value": 0.05 + "value": 100 }, { "color": "red", - "value": 0.1 + "value": 1000 } ] }, - "unit": "s" + "unit": "none" }, "overrides": [] }, "gridPos": { "h": 3, "w": 4, - "x": 4, - "y": 74 + "x": 12, + "y": 23 }, - "id": 24, + "id": 36, "options": { "colorMode": "background", "graphMode": "none", @@ -2248,7 +1531,7 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "nodejs_eventloop_lag_mean_seconds", + "expr": "rabbitmq_queue_messages_ram", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, @@ -2258,7 +1541,7 @@ "useBackend": false } ], - "title": "UI Event Lag (avg)", + "title": "Ready Messages", "type": "stat" }, { @@ -2266,7 +1549,7 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", + "description": "Messages delivered to consumers but not yet acknowledged", "fieldConfig": { "defaults": { "mappings": [], @@ -2276,16 +1559,20 @@ "mode": "absolute", "steps": [ { - "color": "red", + "color": "green", "value": null }, { - "color": "yellow", - "value": 1 + "color": "#EAB839", + "value": 10 }, { - "color": "green", - "value": 2 + "color": "orange", + "value": 100 + }, + { + "color": "red", + "value": 1000 } ] }, @@ -2296,10 +1583,10 @@ "gridPos": { "h": 3, "w": 4, - "x": 8, - "y": 74 + "x": 16, + "y": 23 }, - "id": 48, + "id": 37, "options": { "colorMode": "background", "graphMode": "none", @@ -2326,7 +1613,7 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "nodejs_active_handles{type=\"Server\"}", + "expr": "rabbitmq_queue_messages_unacked", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, @@ -2336,7 +1623,7 @@ "useBackend": false } ], - "title": "UI Servers", + "title": "Unacked Messages", "type": "stat" }, { @@ -2344,52 +1631,109 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", + "description": "Messages for received protocol messages", "fieldConfig": { "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, "mappings": [], - "max": 100, - "min": 0, "thresholds": { "mode": "absolute", "steps": [ - { - "color": "red", - "value": null - }, { "color": "green", - "value": 1 + "value": null } ] }, - "unit": "none" + "unit": "mps" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/amqp.*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "shades" + } + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/mqtt.*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "yellow", + "mode": "shades" + } + } + ] + } + ] }, "gridPos": { - "h": 3, - "w": 4, - "x": 12, - "y": 74 + "h": 7, + "w": 12, + "x": 0, + "y": 26 }, - "id": 49, + "id": 33, "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -2400,58 +1744,80 @@ }, "disableTextWrap": false, "editorMode": "code", - "expr": "nodejs_active_handles{type=\"Socket\"}", + "expr": "rate(rabbitmq_global_messages_received_total[$__range])", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "__auto", + "legendFormat": "{{protocol}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "UI Sockets", - "type": "stat" + "title": "Throughput", + "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", "fieldConfig": { "defaults": { "color": { - "fixedColor": "blue", - "mode": "fixed" + "mode": "thresholds" }, - "mappings": [], + "mappings": [ + { + "options": { + "0": { + "index": 0, + "text": "DOWN" + }, + "1": { + "index": 1, + "text": "UP" + } + }, + "type": "value" + } + ], "thresholds": { "mode": "absolute", "steps": [ { - "color": "green", + "color": "red", "value": null + }, + { + "color": "green", + "value": 1 } ] - }, - "unit": "none" + } }, "overrides": [] }, "gridPos": { - "h": 3, - "w": 4, - "x": 16, - "y": 74 + "h": 7, + "w": 12, + "x": 12, + "y": 26 }, - "id": 50, + "id": 16, "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", + "displayMode": "basic", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", "orientation": "auto", - "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" @@ -2459,9 +1825,9 @@ "fields": "", "values": false }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" }, "pluginVersion": "11.5.3", "targets": [ @@ -2471,29 +1837,77 @@ "uid": "dbrepometrics0" }, "disableTextWrap": false, - "editorMode": "code", - "expr": "nodejs_active_requests_total", + "editorMode": "builder", + "expr": "up", "fullMetaSearch": false, + "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "__auto", + "legendFormat": "{{instance}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "Active Requests", - "type": "stat" + "title": "Service QoS", + "type": "bargauge" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 33 + }, + "id": 2, + "panels": [], + "title": "REST API", + "type": "row" }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, + "description": "", "fieldConfig": { "defaults": { "color": { - "mode": "thresholds" + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } }, "mappings": [], "thresholds": { @@ -2503,21 +1917,12 @@ "color": "green", "value": null }, - { - "color": "yellow", - "value": 300 - }, - { - "color": "orange", - "value": 600 - }, { "color": "red", - "value": 900 + "value": 80 } ] - }, - "unit": "ms" + } }, "overrides": [] }, @@ -2525,32 +1930,21 @@ "h": 7, "w": 12, "x": 0, - "y": 77 + "y": 34 }, - "id": 20, + "id": 23, "options": { - "displayMode": "basic", "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": false - }, - "maxVizHeight": 300, - "minVizHeight": 16, - "minVizWidth": 8, - "namePlacement": "auto", - "orientation": "horizontal", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "showLegend": true }, - "showUnfilled": true, - "sizing": "auto", - "valueMode": "color" + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -2560,25 +1954,27 @@ "uid": "dbrepometrics0" }, "disableTextWrap": false, - "editorMode": "builder", - "expr": "page_render_time", + "editorMode": "code", + "expr": "process_open_fds\n", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "{{path}}", + "legendFormat": "{{instance}}", "range": true, - "refId": "A", + "refId": "process_open_fds", "useBackend": false } ], - "title": "UI Response Time per Path (avg)", - "type": "bargauge" + "title": "File Descriptors", + "type": "timeseries" }, { "datasource": { + "default": true, "type": "prometheus", "uid": "dbrepometrics0" }, + "description": "Heap and non-heap memory summed", "fieldConfig": { "defaults": { "color": { @@ -2593,7 +1989,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 0, + "fillOpacity": 25, "gradientMode": "none", "hideFrom": { "legend": false, @@ -2611,10 +2007,10 @@ "spanNulls": false, "stacking": { "group": "A", - "mode": "none" + "mode": "normal" }, "thresholdsStyle": { - "mode": "dashed" + "mode": "off" } }, "mappings": [], @@ -2624,24 +2020,81 @@ { "color": "green", "value": null - }, - { - "color": "red", - "value": 256000000 } ] }, "unit": "decbytes" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "auth-service:9000" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "yellow", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "data-service:8080" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:8080" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "purple", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:80" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + } + ] + } + ] }, "gridPos": { "h": 7, "w": 12, "x": 12, - "y": 77 + "y": 34 }, - "id": 21, + "id": 7, "options": { "legend": { "calcs": [], @@ -2664,481 +2117,157 @@ }, "disableTextWrap": false, "editorMode": "builder", - "expr": "nodejs_heap_space_size_total_bytes", + "expr": "sum by(instance) (jvm_memory_used_bytes)", "fullMetaSearch": false, - "includeNullMetadata": true, + "hide": false, + "includeNullMetadata": false, "instant": false, - "legendFormat": "{{space}}", + "legendFormat": "{{instance}}", "range": true, "refId": "A", "useBackend": false } ], - "title": "NodeJS Heap Bytes", + "title": "JVM Memory Usage", "type": "timeseries" }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 84 - }, - "id": 31, - "panels": [], - "title": "AMPQ / MQTT API", - "type": "row" - }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "Quality of Service", "fieldConfig": { "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 25, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, "mappings": [], - "max": 100, - "min": 0, "thresholds": { "mode": "absolute", "steps": [ - { - "color": "purple", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "orange", - "value": 60 - }, - { - "color": "#EAB839", - "value": 80 - }, { "color": "green", - "value": 100 + "value": null } ] }, - "unit": "percent" + "unit": "none" }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 0, - "y": 85 - }, - "id": 32, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_channels*100/rabbitmq_channel_consumers", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "Services Running", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Broker Service QoS", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - } - ] - }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 4, - "y": 85 - }, - "id": 29, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_connection_channels", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Channels", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "auth-service:9000" + }, + "properties": [ { - "color": "blue", - "value": null + "id": "color", + "value": { + "fixedColor": "yellow", + "mode": "fixed" + } } ] }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 8, - "y": 85 - }, - "id": 30, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_channel_consumers", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Consumers", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 10 - }, - { - "color": "orange", - "value": 100 - }, + { + "matcher": { + "id": "byName", + "options": "data-service:8080" + }, + "properties": [ { - "color": "red", - "value": 1000 + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } } ] }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 12, - "y": 85 - }, - "id": 35, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_queue_messages_persistent", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Persistent Messages", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "Ready and unacknowledged messages stored in memory", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 10 - }, - { - "color": "orange", - "value": 100 - }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:8080" + }, + "properties": [ { - "color": "red", - "value": 1000 + "id": "color", + "value": { + "fixedColor": "purple", + "mode": "fixed" + } } ] }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 4, - "x": 16, - "y": 85 - }, - "id": 36, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "11.5.3", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_queue_messages_ram", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "__auto", - "range": true, - "refId": "A", - "useBackend": false - } - ], - "title": "Ready Messages", - "type": "stat" - }, - { - "datasource": { - "type": "prometheus", - "uid": "dbrepometrics0" - }, - "description": "Messages delivered to consumers but not yet acknowledged", - "fieldConfig": { - "defaults": { - "mappings": [], - "max": 100, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 10 - }, - { - "color": "orange", - "value": 100 - }, + { + "matcher": { + "id": "byName", + "options": "metadata-service:80" + }, + "properties": [ { - "color": "red", - "value": 1000 + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } } ] - }, - "unit": "none" - }, - "overrides": [] + } + ] }, "gridPos": { - "h": 3, - "w": 4, - "x": 20, - "y": 85 + "h": 7, + "w": 12, + "x": 0, + "y": 41 }, - "id": 37, + "id": 6, "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - "showPercentChange": false, - "textMode": "auto", - "wideLayout": true + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } }, "pluginVersion": "11.5.3", "targets": [ @@ -3148,26 +2277,26 @@ "uid": "dbrepometrics0" }, "disableTextWrap": false, - "editorMode": "code", - "expr": "rabbitmq_queue_messages_unacked", + "editorMode": "builder", + "expr": "process_cpu_usage", "fullMetaSearch": false, + "hide": false, "includeNullMetadata": true, "instant": false, - "legendFormat": "__auto", + "legendFormat": "{{instance}}", "range": true, - "refId": "A", + "refId": "process_cpu_usage", "useBackend": false } ], - "title": "Unacked Messages", - "type": "stat" + "title": "CPU Usage", + "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "Messages for received protocol messages", "fieldConfig": { "defaults": { "color": { @@ -3182,7 +2311,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 0, + "fillOpacity": 25, "gradientMode": "none", "hideFrom": { "legend": false, @@ -3216,20 +2345,20 @@ } ] }, - "unit": "mps" + "unit": "reqps" }, "overrides": [ { "matcher": { "id": "byRegexp", - "options": "/amqp.*/" + "options": "/.*search-service.*/" }, "properties": [ { "id": "color", "value": { - "fixedColor": "red", - "mode": "shades" + "fixedColor": "orange", + "mode": "fixed" } } ] @@ -3237,14 +2366,14 @@ { "matcher": { "id": "byRegexp", - "options": "/mqtt.*/" + "options": "/.*analyse-service.*/" }, "properties": [ { "id": "color", "value": { - "fixedColor": "yellow", - "mode": "shades" + "fixedColor": "super-light-orange", + "mode": "fixed" } } ] @@ -3254,10 +2383,10 @@ "gridPos": { "h": 7, "w": 12, - "x": 0, - "y": 88 + "x": 12, + "y": 41 }, - "id": 33, + "id": 19, "options": { "legend": { "calcs": [], @@ -3267,7 +2396,7 @@ }, "tooltip": { "hideZeros": false, - "mode": "single", + "mode": "multi", "sort": "none" } }, @@ -3278,28 +2407,35 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "disableTextWrap": false, "editorMode": "code", - "expr": "rate(rabbitmq_global_messages_received_total[$__range])", - "fullMetaSearch": false, - "includeNullMetadata": true, + "expr": "rate(flask_http_request_duration_seconds_count{status!~\"200|201|202\"}[$__rate_interval])", "instant": false, - "legendFormat": "{{protocol}}", + "legendFormat": "{{method}} {{instance}} ({{status}})", "range": true, - "refId": "A", - "useBackend": false + "refId": "A" } ], - "title": "Throughput", + "title": "Failed API Requests", "type": "timeseries" }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 48 + }, + "id": 39, + "panels": [], + "title": "Storage", + "type": "row" + }, { "datasource": { - "default": true, "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "Heap and non-heap memory summed", "fieldConfig": { "defaults": { "color": { @@ -3314,7 +2450,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 25, + "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, @@ -3328,11 +2464,11 @@ "scaleDistribution": { "type": "linear" }, - "showPoints": "auto", + "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", - "mode": "normal" + "mode": "none" }, "thresholdsStyle": { "mode": "off" @@ -3345,82 +2481,26 @@ { "color": "green", "value": null - } - ] - }, - "unit": "decbytes" - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "auth-service:9000" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "yellow", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "data-service:8080" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:8080" - }, - "properties": [ + }, { - "id": "color", - "value": { - "fixedColor": "purple", - "mode": "fixed" - } + "color": "red", + "value": 80 } ] }, - { - "matcher": { - "id": "byName", - "options": "metadata-service:80" - }, - "properties": [ - { - "id": "color", - "value": { - "fixedColor": "blue", - "mode": "fixed" - } - } - ] - } - ] + "unit": "short" + }, + "overrides": [] }, "gridPos": { - "h": 7, + "h": 8, "w": 12, - "x": 12, - "y": 88 + "x": 0, + "y": 49 }, "id": 41, "options": { + "alertThreshold": true, "legend": { "calcs": [], "displayMode": "list", @@ -3440,41 +2520,33 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "disableTextWrap": false, - "editorMode": "builder", - "expr": "sum by(instance) (jvm_memory_used_bytes)", - "fullMetaSearch": false, + "expr": "sum(SeaweedFS_volumeServer_volumes) by (collection, type)", + "format": "time_series", "hide": false, - "includeNullMetadata": false, - "instant": false, - "legendFormat": "{{instance}}", - "range": true, - "refId": "A", - "useBackend": false + "intervalFactor": 2, + "legendFormat": "{{collection}} {{type}}", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "expr": "sum(SeaweedFS_volumeServer_max_volumes)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Total", + "refId": "B" } ], - "title": "JVM Memory Usage", + "title": "Volume Count", "type": "timeseries" }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 95 - }, - "id": 2, - "panels": [], - "title": "REST API", - "type": "row" - }, { "datasource": { "type": "prometheus", "uid": "dbrepometrics0" }, - "description": "", "fieldConfig": { "defaults": { "color": { @@ -3489,7 +2561,7 @@ "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", - "fillOpacity": 0, + "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, @@ -3503,7 +2575,7 @@ "scaleDistribution": { "type": "linear" }, - "showPoints": "auto", + "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", @@ -3526,18 +2598,20 @@ "value": 80 } ] - } + }, + "unit": "bytes" }, "overrides": [] }, "gridPos": { - "h": 7, + "h": 8, "w": 12, - "x": 0, - "y": 96 + "x": 12, + "y": 49 }, - "id": 23, + "id": 42, "options": { + "alertThreshold": true, "legend": { "calcs": [], "displayMode": "list", @@ -3557,27 +2631,33 @@ "type": "prometheus", "uid": "dbrepometrics0" }, - "disableTextWrap": false, - "editorMode": "code", - "expr": "process_open_fds\n", - "fullMetaSearch": false, - "includeNullMetadata": true, - "instant": false, - "legendFormat": "{{instance}}", - "range": true, - "refId": "process_open_fds", - "useBackend": false + "expr": "sum(SeaweedFS_volumeServer_total_disk_size) by (collection, type)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{collection}} {{type}}", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "dbrepometrics0" + }, + "expr": "sum(SeaweedFS_volumeServer_total_disk_size)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Total", + "refId": "B" } ], - "title": "File Descriptors", + "title": "Used Disk Space by Collection and Type", "type": "timeseries" } ], "preload": false, - "refresh": "1m", + "refresh": "5m", "schemaVersion": 40, "tags": [ - "provisioned", "ui", "dashboard", "metadata", @@ -3585,20 +2665,19 @@ "gateway", "analyse", "metrics", - "auth", - "search" + "auth" ], "templating": { "list": [] }, "time": { - "from": "now-3h", + "from": "now-24h", "to": "now" }, "timepicker": {}, "timezone": "browser", "title": "DBRepo", - "uid": "bdz20owu8zn5se2", - "version": 7, + "uid": "bdz20owu8zn5se", + "version": 9, "weekStart": "" } \ No newline at end of file diff --git a/make/rel.mk b/make/rel.mk index ee9326b7989612dda72d86f3eacb9b68db4f6ae4..dfc114233e486ea85bdd756f9cd45a722fca74e3 100644 --- a/make/rel.mk +++ b/make/rel.mk @@ -6,7 +6,6 @@ tag-images: build-images ## Tag the docker images. docker tag dbrepo-auth-service-init:latest "${REPOSITORY_URL}/auth-service-init:${APP_VERSION}${BUILD_VERSION}" docker tag dbrepo-dashboard-service:latest "${REPOSITORY_URL}/dashboard-service:${APP_VERSION}${BUILD_VERSION}" docker tag dbrepo-dashboard-service-init:latest "${REPOSITORY_URL}/dashboard-service-init:${APP_VERSION}${BUILD_VERSION}" - docker tag dbrepo-dashboard-ui:latest "${REPOSITORY_URL}/dashboard-ui:${APP_VERSION}${BUILD_VERSION}" docker tag dbrepo-data-service:latest "${REPOSITORY_URL}/data-service:${APP_VERSION}${BUILD_VERSION}" docker tag dbrepo-metadata-service:latest "${REPOSITORY_URL}/metadata-service:${APP_VERSION}${BUILD_VERSION}" docker tag dbrepo-search-service:latest "${REPOSITORY_URL}/search-service:${APP_VERSION}${BUILD_VERSION}" @@ -20,7 +19,6 @@ release-images: tag-images ## Release the docker images. docker push "${REPOSITORY_URL}/auth-service-init:${APP_VERSION}${BUILD_VERSION}" docker push "${REPOSITORY_URL}/dashboard-service:${APP_VERSION}${BUILD_VERSION}" docker push "${REPOSITORY_URL}/dashboard-service-init:${APP_VERSION}${BUILD_VERSION}" - docker push "${REPOSITORY_URL}/dashboard-ui:${APP_VERSION}${BUILD_VERSION}" docker push "${REPOSITORY_URL}/data-service:${APP_VERSION}${BUILD_VERSION}" docker push "${REPOSITORY_URL}/metadata-service:${APP_VERSION}${BUILD_VERSION}" docker push "${REPOSITORY_URL}/search-service:${APP_VERSION}${BUILD_VERSION}" diff --git a/sonar-project.properties b/sonar-project.properties index 52013fb417ef062f4d8e32e0bf77766bae2229f0..e8c334eb9b25fc71d79bba5247648a60aa18196b 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -2,7 +2,7 @@ sonar.projectKey=fair-data-austria-db-repository_fda-services_a57fa043-ab99-4cdd-a721-162d9a916d77 sonar.host.url=https://s39.datalab.tuwien.ac.at # project -sonar.projectVersion=1.8.1 +sonar.projectVersion=1.8.2 # general sonar.qualitygate.wait=true sonar.projectCreation.mainBranchName=master