From 561659f33338e62e7e855297a582d783d208fdd0 Mon Sep 17 00:00:00 2001 From: chan Date: Fri, 5 Jun 2026 21:22:04 +0900 Subject: [PATCH] =?UTF-8?q?=ED=94=84=EB=A1=AC=ED=85=8C=EC=9D=BC=20?= =?UTF-8?q?=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker/docker-compose.staging.template.yaml | 17 ++++++++++++++ docker/promtail-config.staging.template.yaml | 24 +++++++++++++------- docker/staging_pull_compose.template.yaml | 17 ++++++++++++++ 3 files changed, 50 insertions(+), 8 deletions(-) diff --git a/docker/docker-compose.staging.template.yaml b/docker/docker-compose.staging.template.yaml index 5cee8021..d2a79e25 100644 --- a/docker/docker-compose.staging.template.yaml +++ b/docker/docker-compose.staging.template.yaml @@ -108,6 +108,23 @@ services: networks: - baron_net + grafana-sms-webhook: + image: ${SMS_WEBHOOK_IMAGE_NAME:-gitea.hmac.kr/ai-team/grafana-sms-webhook}:${IMAGE_TAG:-latest} + container_name: grafana_sms_webhook + restart: unless-stopped + env_file: + - .env + environment: + - NAVER_CLOUD_ACCESS_KEY=${NAVER_CLOUD_ACCESS_KEY} + - NAVER_CLOUD_SECRET_KEY=${NAVER_CLOUD_SECRET_KEY} + - NAVER_CLOUD_SERVICE_ID=${NAVER_CLOUD_SERVICE_ID} + - NAVER_SENDER_PHONE_NUMBER=${NAVER_SENDER_PHONE_NUMBER} + - MONITOR_RECIPIENT_PHONES=${MONITOR_RECIPIENT_PHONES} + ports: + - "${SMS_WEBHOOK_PORT:-8080}:8080" + networks: + - baron_net + promtail: image: grafana/promtail:2.9.0 container_name: baron_promtail diff --git a/docker/promtail-config.staging.template.yaml b/docker/promtail-config.staging.template.yaml index 4984bab5..f8fcac1a 100644 --- a/docker/promtail-config.staging.template.yaml +++ b/docker/promtail-config.staging.template.yaml @@ -14,20 +14,28 @@ scrape_configs: - host: unix:///var/run/docker.sock refresh_interval: 10s relabel_configs: + # 1. 원본 메타데이터에서 Baron 및 Ory 관련 컨테이너만 필터링 + - source_labels: ['__meta_docker_container_name'] + regex: '/(baron_.*|oathkeeper|kratos|hydra|keto|ory_.*)' + action: keep + + # 2. 필수 라벨 선부여 (강제성 확보를 위해 __address__ 참조) + - source_labels: ['__address__'] + target_label: 'job' + replacement: 'baron-sso-logs' + - source_labels: ['__address__'] + target_label: 'app_env' + replacement: 'stage' + + # 3. 컨테이너 이름 추출 - source_labels: ['__meta_docker_container_name'] regex: '/(.*)' target_label: 'container_name' - # Baron SSO 및 핵심 Ory Stack 컨테이너만 필터링하여 로그 수집 - - source_labels: ['container_name'] - regex: '(baron_.*|oathkeeper|kratos|hydra|keto)' - action: keep - # 컨테이너 명에서 앞의 접두사를 떼어 서비스 및 잡 라벨 부여 (예: baron_backend -> backend) + + # 4. 서비스 상세 라벨 부여 (baron_ 접두사 제거 등) - source_labels: ['container_name'] regex: 'baron_(.*)' target_label: 'service' - source_labels: ['container_name'] regex: 'baron_(.*)' target_label: 'job' - # 정적 라벨 추가 - - target_label: 'app_env' - replacement: 'stage' diff --git a/docker/staging_pull_compose.template.yaml b/docker/staging_pull_compose.template.yaml index c7b4ae5e..612c8e0c 100644 --- a/docker/staging_pull_compose.template.yaml +++ b/docker/staging_pull_compose.template.yaml @@ -535,6 +535,23 @@ services: networks: - baron_net + grafana-sms-webhook: + image: ${SMS_WEBHOOK_IMAGE_NAME:-gitea.hmac.kr/ai-team/grafana-sms-webhook}:${IMAGE_TAG:-latest} + container_name: grafana_sms_webhook + restart: unless-stopped + env_file: + - .env + environment: + - NAVER_CLOUD_ACCESS_KEY=${NAVER_CLOUD_ACCESS_KEY} + - NAVER_CLOUD_SECRET_KEY=${NAVER_CLOUD_SECRET_KEY} + - NAVER_CLOUD_SERVICE_ID=${NAVER_CLOUD_SERVICE_ID} + - NAVER_SENDER_PHONE_NUMBER=${NAVER_SENDER_PHONE_NUMBER} + - MONITOR_RECIPIENT_PHONES=${MONITOR_RECIPIENT_PHONES} + ports: + - "${SMS_WEBHOOK_PORT:-8080}:8080" + networks: + - baron_net + promtail: image: grafana/promtail:2.9.0 container_name: baron_promtail