From 46c500f5edeae035f8fadb1b3b53853027551396 Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Thu, 25 Sep 2025 09:18:40 +0200 Subject: [PATCH 1/7] chore: update submodules --- submodules/model | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/model b/submodules/model index 4cdfbd2..74c6267 160000 --- a/submodules/model +++ b/submodules/model @@ -1 +1 @@ -Subproject commit 4cdfbd240114f22ba493d9a552b812499e0c5298 +Subproject commit 74c6267117ea5fc56823c5cd270ce8ea2622fc43 From 45418eb12964a47b176f7c23710878eb5c1af390 Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Thu, 25 Sep 2025 09:18:49 +0200 Subject: [PATCH 2/7] perf: add telemetry --- app.py | 21 +++++++++++++++++++-- start | 7 ++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/app.py b/app.py index 4f177c3..4830c84 100644 --- a/app.py +++ b/app.py @@ -1,3 +1,5 @@ +import os +import logging from fastapi import FastAPI, HTTPException, responses, status, Request from pydantic import BaseModel from typing import Union, Dict, Optional @@ -5,9 +7,24 @@ import submodules.model.business_objects.general as general from controller import stats from controller import integration +from submodules.model import telemetry -# API creation and description -app = FastAPI() + +OTLP_GRPC_ENDPOINT = os.getenv("OTLP_GRPC_ENDPOINT", "tempo:4317") + +app_name = "refinery-weak-supervisor" +app = FastAPI(title=app_name) + +if telemetry.ENABLE_TELEMETRY: + print("WARNING: Running telemetry.", flush=True) + telemetry.setting_otlp(app, app_name=app_name, endpoint=OTLP_GRPC_ENDPOINT) + app.add_middleware(telemetry.PrometheusMiddleware, app_name=app_name) + app.add_route("/metrics", telemetry.metrics) + + # Filter out /metrics + logging.getLogger("uvicorn.access").addFilter( + lambda record: "GET /metrics" not in record.getMessage() + ) class WeakSupervisionRequest(BaseModel): diff --git a/start b/start index 0433ae3..a66b55e 100755 --- a/start +++ b/start @@ -2,11 +2,13 @@ DEBUG_MODE=false DEBUG_PORT=15677 +ENABLE_TELEMETRY=false -while getopts d flag +while getopts dg flag do case "${flag}" in d) DEBUG_MODE=true;; + g) ENABLE_TELEMETRY=true;; esac done @@ -46,10 +48,13 @@ docker run -d --rm \ -p 7054:80 \ -e POSTGRES=postgresql://postgres:kern@graphql-postgres:5432 \ -e WS_NOTIFY_ENDPOINT="http://refinery-websocket:8080" \ +-e ENABLE_TELEMETRY=$ENABLE_TELEMETRY \ --mount type=bind,source="$(pwd)"/,target=/app \ -v /var/run/docker.sock:/var/run/docker.sock \ -v "$INFERENCE_DIR":/inference \ --network dev-setup_default \ +--log-driver=loki \ +--log-opt loki-url="http://$HOST_IP:3100/loki/api/v1/push" \ refinery-weak-supervisor-dev $CMD > /dev/null 2>&1 echo -ne '\t\t\t [done]\n' From c810ed9d6c23ef8279f7bf19e34e8734abcbb25c Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Wed, 15 Oct 2025 19:18:23 +0200 Subject: [PATCH 3/7] fix: hanging docker stop --- start | 2 -- 1 file changed, 2 deletions(-) diff --git a/start b/start index a66b55e..3daa67e 100755 --- a/start +++ b/start @@ -53,8 +53,6 @@ docker run -d --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ -v "$INFERENCE_DIR":/inference \ --network dev-setup_default \ ---log-driver=loki \ ---log-opt loki-url="http://$HOST_IP:3100/loki/api/v1/push" \ refinery-weak-supervisor-dev $CMD > /dev/null 2>&1 echo -ne '\t\t\t [done]\n' From 6b0f44b4c5d482164b58ae009483d04aedfcb8ec Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Tue, 21 Oct 2025 14:38:27 +0200 Subject: [PATCH 4/7] chore: update submodules --- submodules/model | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/model b/submodules/model index 74c6267..687078b 160000 --- a/submodules/model +++ b/submodules/model @@ -1 +1 @@ -Subproject commit 74c6267117ea5fc56823c5cd270ce8ea2622fc43 +Subproject commit 687078b4b48a86324d968b2116044845aad646b6 From d8ea4e48b7d47d4828655635c4786f5d271025a4 Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Tue, 21 Oct 2025 14:39:13 +0200 Subject: [PATCH 5/7] perf: enhance monitoring --- app.py | 1 + 1 file changed, 1 insertion(+) diff --git a/app.py b/app.py index 4830c84..3f654ed 100644 --- a/app.py +++ b/app.py @@ -17,6 +17,7 @@ if telemetry.ENABLE_TELEMETRY: print("WARNING: Running telemetry.", flush=True) + telemetry.setting_app_name(app_name) telemetry.setting_otlp(app, app_name=app_name, endpoint=OTLP_GRPC_ENDPOINT) app.add_middleware(telemetry.PrometheusMiddleware, app_name=app_name) app.add_route("/metrics", telemetry.metrics) From cb79bae8d6ebc0da0d9a4d295ccbf2fdeb35f4d8 Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Tue, 21 Oct 2025 16:10:51 +0200 Subject: [PATCH 6/7] chore(opentelemetry): update submodules --- submodules/model | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/model b/submodules/model index 687078b..fa52e17 160000 --- a/submodules/model +++ b/submodules/model @@ -1 +1 @@ -Subproject commit 687078b4b48a86324d968b2116044845aad646b6 +Subproject commit fa52e1725d0691979895644d63c0b61728ea771b From e2fc92c709945afa47aaab132802b27022428806 Mon Sep 17 00:00:00 2001 From: andhreljaKern Date: Tue, 21 Oct 2025 20:59:13 +0200 Subject: [PATCH 7/7] ci: trigger Drone