diff --git a/app/main.py b/app/main.py index 19c2ffc..3e852a0 100644 --- a/app/main.py +++ b/app/main.py @@ -2,7 +2,6 @@ from app.core.lifespan import lifespan from app.api.endpoints import predictions from app.core.logging_config import setup_logging -from prometheus_fastapi_instrumentator import Instrumentator setup_logging() app = FastAPI( @@ -12,8 +11,6 @@ lifespan=lifespan ) -instrumentator = Instrumentator().instrument(app) -instrumentator.expose(app, include_in_schema=False, endpoint="/actuator/prometheus") app.include_router(predictions.router, prefix="/api/v1", tags=["Prediction"]) @app.get("/health") diff --git a/deployment/docker-compose.monitoring.yml b/deployment/docker-compose.monitoring.yml index a26403f..f54f044 100644 --- a/deployment/docker-compose.monitoring.yml +++ b/deployment/docker-compose.monitoring.yml @@ -28,6 +28,25 @@ services: networks: - mynetwork + dcgm-exporter: + image: nvcr.io/nvidia/k8s/dcgm-exporter:latest + container_name: dcgm-exporter + ports: + - "9400:9400" + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: all + capabilities: [gpu] + environment: + - NVIDIA_VISIBLE_DEVICES=all + - NVIDIA_DRIVER_CAPABILITIES=utility,compute + restart: unless-stopped + networks: + - mynetwork + networks: mynetwork: driver: bridge \ No newline at end of file diff --git a/deployment/docker-compose.yml b/deployment/docker-compose.yml index b7d1c2b..cfc631e 100644 --- a/deployment/docker-compose.yml +++ b/deployment/docker-compose.yml @@ -13,6 +13,8 @@ services: count: 1 capabilities: [gpu] container_name: app-blue + networks: + - mynetwork app-green: image: ${ECR_URI}/dearbelly-cv:latest @@ -27,4 +29,10 @@ services: - driver: nvidia count: 1 capabilities: [ gpu ] - container_name: app-green \ No newline at end of file + container_name: app-green + networks: + - mynetwork + +networks: + mynetwork: + driver: bridge \ No newline at end of file diff --git a/deployment/generate_review.py b/deployment/generate_review.py index 0b9d233..e20891b 100644 --- a/deployment/generate_review.py +++ b/deployment/generate_review.py @@ -59,7 +59,7 @@ def send_prompt(): # Gemini에 전달할 프롬프트 구성 prompt = f""" - 당신은 시니어 개발자입니다. 제출된 Pull Request(PR)에 대해 동료 개발자에게 건설적이고 상세한 코드 리뷰를 제공합니다. + 너는 시니어 개발자다. 제출된 Pull Request(PR)에 대해 건설적이고 상세한 코드 리뷰를 제공해주세요. 리뷰는 반드시 '우선순위 레벨(P1~P5)'로 분류해 주세요. [우선순위 정의] diff --git a/deployment/prometheus.yml b/deployment/prometheus.yml index 13bda8f..0bfbefa 100644 --- a/deployment/prometheus.yml +++ b/deployment/prometheus.yml @@ -16,19 +16,15 @@ scrape_configs: honor_timestamps: false scheme: 'http' static_configs: - - targets: ['${REMOTE_HOST}:9090'] + - targets: ['127.0.0.1:9090'] labels: service: 'monitor-1' - job_name: 'node' static_configs: - - targets: ['${REMOTE_HOST}:9090'] - - job_name: 'fastapi-actuator-blue' - metrics_path: '/actuator/prometheus' - scrape_interval: 1m + - targets: ['127.0.0.1:9090'] + - job_name: 'dcgm' + scrape_interval: 15s static_configs: - - targets: [ 'app-blue:8000' ] - - job_name: 'fastapi-actuator-green' - metrics_path: '/actuator/prometheus' - scrape_interval: 1m - static_configs: - - targets: [ 'app-green:8001' ] \ No newline at end of file + - targets: ['dcgm-exporter:9400'] + labels: + exporter: 'dcgm' \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index e904539..339d3b7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10,6 +10,4 @@ Pillow==11.3.0 dotenv openai timm -logging -prometheus-client==0.19.0 -prometheus-fastapi-instrumentator==6.1.0 \ No newline at end of file +logging \ No newline at end of file