Merged in feature/prometheus (pull request #52)

API instrumentation - metrics and logging

* api instrumentation

prometheus metrics and logging for all routes

* Merge branch 'main' of bitbucket.org:aarete/query-orchestration into feature/prometheus

* add log_level

and sync the config initialize

* docs

* cleanup

* add to compose:up:test

* docs for prometheus testing

* custom metrics

* cleanup

* merge main

* add tests

* cleanup docs

* cleanup

* lint

* fix unit tests (attempt)

* fix tests

* resolvesetlogger

* expose 8080

* compose changes

* bugfixesformichael

* don't build _test

* merge in main

* job_sync_runner
This commit is contained in:
Jay Brown
2025-02-13 15:44:08 +00:00
parent f5bd522faf
commit 477518e5eb
203 changed files with 36848 additions and 118 deletions
+99 -42
View File
@@ -1,11 +1,18 @@
# compose.local.yaml
---
services:
doc_init_runner:
image: queryorchestration:latest
command: ["./docInitRunner"]
depends_on:
- db
- localstack
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- "8081:8080"
expose:
- 8080
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${DOCUMENT_INIT_URL}
@@ -48,12 +55,19 @@ services:
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
doc_clean_runner:
image: queryorchestration:latest
command: ["./docCleanRunner"]
depends_on:
- db
- localstack
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- "8082:8080"
expose:
- 8080
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${DOCUMENT_CLEAN_URL}
@@ -72,12 +86,19 @@ services:
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
doc_text_runner:
image: queryorchestration:latest
command: ["./docTextRunner"]
depends_on:
- db
- localstack
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- "8083:8080"
expose:
- 8080
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${DOCUMENT_TEXT_URL}
@@ -96,12 +117,19 @@ services:
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
query_sync_runner:
image: queryorchestration:latest
command: ["./querySyncRunner"]
depends_on:
- db
- localstack
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- "8084:8080"
expose:
- 8080
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${QUERY_SYNC_URL}
@@ -120,12 +148,19 @@ services:
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
query_runner:
image: queryorchestration:latest
command: ["./queryRunner"]
depends_on:
- db
- localstack
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- "8085:8080"
expose:
- 8080
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${QUERY_URL}
@@ -144,38 +179,17 @@ services:
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
job_sync_runner:
image: queryorchestration:latest
command: ["./jobSyncRunner"]
depends_on:
- db
- localstack
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${JOB_SYNC_URL}
DOCUMENT_SYNC_URL: ${DOCUMENT_SYNC_URL}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
AWS_SESSION_TOKEN: ${AWS_SESSION_TOKEN}
AWS_REGION: ${AWS_REGION}
DB_USER: ${DB_USER}
DB_PASS: ${DB_PASS}
DB_HOST: db
DB_PORT: 5432
DB_NAME: ${DB_NAME}
DB_NOSSL: ${DB_NOSSL}
AWS_ENDPOINT_URL: "http://localstack:4566"
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
query_service:
image: queryorchestration:latest
command: ["./queryService"]
depends_on:
- db
- localstack
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- 8080:8080
- "8086:8080"
expose:
- 8080
environment:
@@ -195,6 +209,47 @@ services:
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
job_sync_runner:
image: queryorchestration:latest
command: ["./jobSyncRunner"]
depends_on:
localstack:
condition: service_healthy
db:
condition: service_healthy
ports:
- "8087:8080"
expose:
- 8080
environment:
LOG_LEVEL: DEBUG
QUEUE_URL: ${JOB_SYNC_URL}
DOCUMENT_SYNC_URL: ${DOCUMENT_SYNC_URL}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
AWS_SESSION_TOKEN: ${AWS_SESSION_TOKEN}
AWS_REGION: ${AWS_REGION}
DB_USER: ${DB_USER}
DB_PASS: ${DB_PASS}
DB_HOST: db
DB_PORT: 5432
DB_NAME: ${DB_NAME}
DB_NOSSL: ${DB_NOSSL}
AWS_ENDPOINT_URL: "http://localstack:4566"
AWS_S3_USE_PATH_STYLE: true
networks:
- server-network
prometheus:
image: prom/prometheus:latest
ports:
- "9091:9090"
volumes:
- ./prometheus.allmetrics.yaml:/etc/prometheus/prometheus.yml
networks:
- server-network
db:
image: postgres:17.2-alpine3.21
ports:
@@ -214,6 +269,7 @@ services:
retries: 5
networks:
- server-network
localstack:
image: localstack/localstack:4.1.0
ports:
@@ -230,13 +286,14 @@ services:
EAGER_SERVICE_LOADING: "1"
expose:
- 4566
# healthcheck:
# test: ["CMD-SHELL", "pg_isready -U ${DB_USER}"]
# interval: 10s
# timeout: 5s
# retries: 5
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:4566/_localstack/health"]
interval: 5s
timeout: 5s
retries: 10
networks:
- server-network
volumes:
db-data:
networks: