Skip to content

feat: Sentry 전체 관측 데이터와 가입 추이 개발 반영 - #492

Merged
Roy-wonji merged 1 commit into
devfrom
feat/signup-trend-chart-dev
Sep 14, 2026
Merged

Roy-wonji merged 1 commit into
devfrom
feat/signup-trend-chart-dev

Conversation

@Roy-wonji

Copy link
Copy Markdown
Contributor

Picke-iOS가 실제로 보내는 Sentry 오류, 로그, 성능 span, 프로파일, 커스텀 메트릭, 세션 안정성, 릴리즈 데이터를 관리자 API에서 프로젝트별로 조회합니다. 최근 오류 이벤트 10건은 full=true 원본을 보존하며, Mixpanel sign_up 일별 시리즈도 추가합니다.

검증:

  • ./gradlew test --tests 'com.swyp.picke.domain.admin.analytics.MixpanelClientTest' --tests 'com.swyp.picke.domain.admin.analytics.SentryClientTest'
  • git diff --check

운영 확인 항목:

  • Sentry Explore/세션 API는 org:read, 오류 이벤트는 event:read, 릴리즈는 project:read 계열 권한이 필요합니다.

Sentry의 활성 데이터셋, full 오류 이벤트, 메트릭, 세션, 릴리즈를 프로젝트별로 수집하고 Mixpanel 회원가입 일별 시리즈를 함께 제공한다.

Constraint: Sentry full 이벤트 응답은 최대 10건이며 Replay는 Picke-iOS에서 비활성화되어 있다.
Rejected: 오류 이슈 요약만 유지 | 앱이 보내는 로그, 성능, 메트릭, 세션 정보를 확인할 수 없다.
Confidence: high
Scope-risk: moderate
Directive: 새 Sentry SDK 데이터 유형을 켤 때 DATASETS와 관리자 계약을 함께 갱신한다.
Tested: MixpanelClientTest, SentryClientTest, git diff --check
Not-tested: 운영 Sentry 토큰의 org:read 및 event:read 권한은 배포 후 확인한다.
@Roy-wonji
Roy-wonji merged commit 9ef0aa0 into dev Sep 14, 2026
1 check passed
@Roy-wonji
Roy-wonji deleted the feat/signup-trend-chart-dev branch September 14, 2026 02:48
Roy-wonji added a commit that referenced this pull request Sep 14, 2026
## #️⃣ 연관된 이슈

- #492

## 📝 작업 내용

### ✨ Feat / 📝 Docs

| 내용 | PR |
|------|-----|
| Mixpanel 회원가입 일별 추이와 오늘 활성 사용자·회원가입 수 제공 | #492 |
| Sentry 오류·로그·성능 span·프로파일·커스텀 메트릭 시계열 제공 | #492 |
| Sentry 전체 오류 이벤트, 세션 안정성, 릴리즈 상세 데이터 제공 | #492 |
| 관리자 지표 API 계약 및 필요한 Sentry 권한 문서화 | #492 |

## 📌 공유 사항

> 1. Picke-iOS에서 실제 활성화한 `errors`, `logs`, `spans`, `profile_functions`,
`tracemetrics`, 세션, 릴리즈, 전체 오류 이벤트를 조회합니다.
> 2. Sentry Replay는 iOS 설정의 세션·오류 샘플 비율이 모두 0이라 이번 범위에서 제외했습니다.
> 3. 개발 Railway의 `SENTRY_AUTH_TOKEN`, `MIXPANEL_API_SECRET`을 운영과 같은 값으로
맞췄으며 값은 노출하지 않고 SHA-256 비교로 일치만 확인했습니다.
> 4. `SENTRY_ORG`, `SENTRY_PROJECTS`는 양쪽 모두 미설정이며 코드의 동일한 기본값(`picke`,
`picke-ios,picke-android`)을 사용합니다.
> 5. Server PR #492 CI와 analytics 대상 테스트, AdminWeb PR #59/#60 CI 및 운영
배포가 통과했습니다.

## ✅ 체크리스트

- [x] 개발 브랜치 CI를 통과했습니다.
- [x] 개발 Railway 배포에서 같은 커밋을 확인했습니다.
- [x] 지표 관련 개발·운영 Railway 키 정합성을 확인했습니다.
- [x] API 문서를 함께 갱신했습니다.

## 📸 스크린샷

- AdminWeb `/analytics`에서 Mixpanel·Sentry 탭, 일별 차트, 상세 JSON, 로딩 스켈레톤을
제공합니다.

## 💬 리뷰 요구사항

> Sentry 토큰에 Explore 조회용 `org:read`, 오류 이벤트용 `event:read`, 릴리즈 조회용
`project:read` 권한이 있는지 함께 확인 부탁드립니다.

---------

Co-authored-by: 준혁 <127603139+HYH0804@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Youwol <153346797+si-zero@users.noreply.github.com>
Co-authored-by: 현준혁 <guswnsgur2276@metabuild.co.kr>
Co-authored-by: HYH0804 <guswnsgur2276@gmail.com>
Co-authored-by: JOO <107450745+jucheonsu@users.noreply.github.com>
Co-authored-by: 서원지 <shuwj81@daum.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant