User-level Analytics API 구현 및 Kafka Consumer 설정 개선
주요 변경사항:
- User-level Analytics API 기간 파라미터 제거 (전체 기간 자동 계산)
* /api/v1/users/{userId}/analytics/dashboard
* /api/v1/users/{userId}/analytics/channels
* /api/v1/users/{userId}/analytics/roi
* /api/v1/users/{userId}/analytics/timeline
- Kafka Consumer 안정성 개선
* Consumer Group ID를 analytics-service-consumers-v3로 변경
* Redis 멱등성 키 v2 버전 사용 (processed_events_v2, distribution_completed_v2, processed_participants_v2)
* ParticipantRegisteredConsumer 멱등성 키를 eventId:participantId 조합으로 변경하여 중복 방지 강화
- 설정 개선
* UTF-8 인코딩 명시적 설정 추가
* Kafka auto.offset.reset 설정 명확화
- 테스트 도구 추가
* tools/reset-analytics-data.ps1: 테스트 데이터 초기화 스크립트
* DebugController: 개발 환경 디버깅용 엔드포인트
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -47,11 +47,13 @@ spring:
|
||||
enabled: ${KAFKA_ENABLED:true}
|
||||
bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:20.249.182.13:9095,4.217.131.59:9095}
|
||||
consumer:
|
||||
group-id: ${KAFKA_CONSUMER_GROUP_ID:analytics-service}
|
||||
group-id: ${KAFKA_CONSUMER_GROUP_ID:analytics-service-consumers-v3}
|
||||
auto-offset-reset: earliest
|
||||
enable-auto-commit: true
|
||||
key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
properties:
|
||||
auto.offset.reset: earliest
|
||||
producer:
|
||||
key-serializer: org.apache.kafka.common.serialization.StringSerializer
|
||||
value-serializer: org.apache.kafka.common.serialization.StringSerializer
|
||||
@@ -73,6 +75,11 @@ spring:
|
||||
# Server
|
||||
server:
|
||||
port: ${SERVER_PORT:8086}
|
||||
servlet:
|
||||
encoding:
|
||||
charset: UTF-8
|
||||
enabled: true
|
||||
force: true
|
||||
|
||||
# JWT
|
||||
jwt:
|
||||
|
||||
Reference in New Issue
Block a user