[Feat] amplitude session replay 추가 #332
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related Issue : Closes #331
🧑🎤 Summary
🧑🎤 Screenshot
🧑🎤 Comment
amplitude session replay 기능 추가
일단 저희는 amplitude 사용을 위한 SDK(@amplitude/analytics-browser)를 사용하고 있었어서
session replay 또한 SDK(@amplitude/plugin-session-replay-browser)를 사용하는 방향으로 갔습니다
공식문서에서 그렇게 하는 걸 추천하더라고요
session replay를 위한 코드는 굉장히 간단했어요
sampleRate
는 세션의 저장 비율인데요100개의 세션이 발생된다면 그 중 70개만 랜덤으로 저장시킨다는 얘기죠!
저희는 무료 버전이라 1,000개의 session replay를 할 수 있는데요
그래서 약 1,428개 정도의 세션만 감당이 가능해요
공식문서에선 0.01로 설정한 후 상황을 지켜보며 천천히 올리라고 하는데 (참고자료)
모집 기간이 일주일 정도라 사실 그렇게까지 세션이 많이 발생할 거 같지 않아서
그냥 바로 0.7로 뛰어 넘겼어요
masking 처리
기본적으로 input의 텍스트 필드는 *로 마스킹이 돼요
하지만 저희는 DefaultSection만 마스킹하고 그 외는 마스킹 하지 않기 위해
CommonSection과 PartSection은 마스킹 처리를 해제해줬어요
이를 위해 class에
amp-unmask
를 추가해줬답니다이때 DefaultSection의 는 마스킹이 필요한 부분인데 text 요소가 아니라 default로 마스킹이 되지 않아요
그래서 class에
amp-block
을 추가해줌으로써 마크싱 처리를 해줬어요참고자료
checkbox는 텍스트 필드가 아니라 마스킹 될 게 없어 보이지만 혹시 몰라 일단 input filed라 class에 amp-unmask 추가해놨습니다 :)
amplitude 관련 내용은 여기에 계속 추가해둘게여