Skip to content

[HSC-416] customer 런타임 async executor 등록 경로 고정#270

Merged
tkv00 merged 2 commits into
devfrom
hotfix/HSC-416
Mar 28, 2026
Merged

[HSC-416] customer 런타임 async executor 등록 경로 고정#270
tkv00 merged 2 commits into
devfrom
hotfix/HSC-416

Conversation

@tkv00
Copy link
Copy Markdown
Contributor

@tkv00 tkv00 commented Mar 28, 2026

📝작업 내용

  • customer profile에서 사용하는 async executor(userLogTaskExecutor, recommendationTaskExecutor)를 CustomerRuntimeInfraConfiguration으로 이동
  • customer 런타임 진입점에서 @EnableAsync를 함께 선언해 async infra 등록 경로 단일화
  • 중복 설정이던 AsyncConfig 제거

👀변경 사항

  • CustomerMonitoringBinder가 요구하는 userLogTaskExecutor bean이 customer 런타임에서 항상 같은 경로로 등록 정리
  • UserLogService@Async("userLogTaskExecutor")RecommendationServicerecommendationTaskExecutor도 동일한 runtime config 사용
  • executor 이름, pool size, queue capacity는 기존 값 그대로 유지
  • 변경 파일 단위 컴파일은 확인했고, 전체 Gradle compile은 flywayMigrate/generateJooq의 DB 의존성 때문에 별도 환경 검증

🎫 Jira Ticket

  • Jira Ticket: HSC-416

#️⃣관련 이슈


@github-actions github-actions Bot added Infra Team ☁️ area: INFRA 인프라/운영/배포 영역 🐛 fix 기능에 대한 버그 수정 🔥 priority: P0 즉시 처리 필요(서비스/데모 블로커) labels Mar 28, 2026
@github-actions github-actions Bot changed the title customer 런타임 async executor 등록 경로 고정 [HSC-416] customer 런타임 async executor 등록 경로 고정 Mar 28, 2026
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

이번 풀 리퀘스트는 비동기 실행 설정을 CustomerRuntimeInfraConfiguration으로 통합하고 기존의 중복된 설정 파일과 대시보드 문서를 정리하는 작업을 포함하고 있습니다. 하지만 SecurityConfig에서 metrics, prometheus와 같은 Actuator 엔드포인트를 화이트리스트에 추가하여 인증 없이 외부에 노출한 설정은 내부 운영 정보 유출의 위험이 있는 심각한 보안 취약점으로 지적되었습니다. 해당 엔드포인트들에 대해 관리자 권한 제한이나 IP 필터링 등의 적절한 접근 제어를 적용해야 합니다.

Comment thread src/main/java/site/holliverse/shared/security/SecurityConfig.java
@github-actions
Copy link
Copy Markdown

🧪 Test Coverage Report (JaCoCo)

overall__line overall__branch changed__line changed__branch

기준(soft, workflow는 실패 안 함): Overall line 70% / branch 50%, Changed line 80% / branch 60% · Generated: 2026-03-28 06:01 UTC

Scope Line Branch Line Graph Branch Graph Verdict
Overall 41.1% 29.8% ████████░░░░░░░░░░░░ ██████░░░░░░░░░░░░░░ ⚠️⚠️
Changed N/A N/A ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░ ✅✅

Package line spark (sample): ▃▂▁▂▂▄▄·▇█▁▆▆▆·▆▁▁▆█▇▄▁▁▁██▁▁▃
Package branch spark (sample): ▃▁·▁▁·▁·▇··▅▆▅·▅▁▁▅▇▇▃▁·▁·█▁▁▁

📦 Package coverage (worst 10)

Rank Package Line Branch Lines Line Graph Branch Graph
1 site.holliverse.shared.monitoring 0.0% N/A 76 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
2 site.holliverse.customer.application.usecase.log 0.0% 0.0% 69 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
3 site.holliverse.customer.coupon.application 0.0% 0.0% 61 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
4 site.holliverse.infra.kafka.consumer 0.0% 0.0% 55 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
5 site.holliverse.customer.integration.fastapi 0.0% 0.0% 28 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
6 site.holliverse.customer.integration.external 0.0% 0.0% 28 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
7 site.holliverse.customer.application.usecase.counsel 0.0% 0.0% 14 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
8 site.holliverse.customer.coupon.web 0.0% 0.0% 12 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
9 site.holliverse.shared.config.runtime 0.0% N/A 11 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
10 site.holliverse.customer.web.util 0.0% 0.0% 8 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░

🧨 Lowest coverage classes (worst 10)

Rank Class Line Branch Lines Line Graph Branch Graph
1 site.holliverse.infra.kafka.consumer.RecommendationKafkaConsumer 0.0% 0.0% 55 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
2 site.holliverse.customer.application.usecase.log.UserLogService 0.0% 0.0% 52 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
3 site.holliverse.shared.monitoring.CustomerMetrics 0.0% N/A 50 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
4 site.holliverse.admin.application.usecase.CalculateLogChurnScoreService 0.0% 0.0% 38 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
5 site.holliverse.admin.application.usecase.CalculateChurnScoreService 0.0% 0.0% 37 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
6 site.holliverse.customer.coupon.application.UseMemberCouponUseCase 0.0% 0.0% 34 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
7 site.holliverse.admin.application.usecase.ChurnRiskReason$ReasonCode 0.0% 0.0% 31 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
8 site.holliverse.customer.integration.fastapi.FastApiRecommendationClient 0.0% 0.0% 28 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
9 site.holliverse.customer.integration.external.AdminLogFeaturesClient 0.0% 0.0% 28 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
10 site.holliverse.customer.coupon.application.GetMemberCouponsUseCase 0.0% 0.0% 27 ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
🧩 Changed files coverage breakdown (3 files)
File Line Branch Lines Verdict Line Graph Branch Graph
src/main/java/site/holliverse/shared/config/AsyncConfig.java N/A N/A 0 ✅✅ ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
src/main/java/site/holliverse/shared/config/runtime/CustomerRuntimeInfraConfiguration.java N/A N/A 0 ✅✅ ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░
src/main/java/site/holliverse/shared/security/SecurityConfig.java N/A N/A 0 ✅✅ ░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░

🔎 HTML 리포트: Actions → Artifacts → jacoco-html · XML: jacoco-xml

@tkv00 tkv00 merged commit 9e71251 into dev Mar 28, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

☁️ area: INFRA 인프라/운영/배포 영역 🐛 fix 기능에 대한 버그 수정 Infra Team 🔥 priority: P0 즉시 처리 필요(서비스/데모 블로커)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[HSC-417] customer 런타임 async executor 미등록으로 customer-api 기동 실패 수정

1 participant