Amplitude

자주 묻는 질문

앰플리튜드는 유져의 세션을 어떻게 수집하고 정의하나요?

데이터유저∙코호트

질문

앰플리튜드가 세션을 추적하는 방식과 정의는 무엇인가요?

답변

  • 앰플리튜드는 session id를 활용하여 유저의 세션을 정의합니다.

    • 이때 session id는 세션 별 부여되는 id로, epoch(unix timestamp) 이후 세션의 시작 시간(밀리 초)을 의미합니다.

  • 세션 추적 방식

    • Amplitude SDK를 사용하는 경우 Amplitude SDK는 이벤트 수집과 동시에 세션을 자동으로 추적합니다.

    • 반면 앰플리튜드의 HTTP V2 API를 사용해 서버 투 서버 방식으로 데이터를 전송하는 경우, 세션 추적을 위해선 session id를 설정하여 이벤트를 전송해야 합니다. (참고 가이드)

  • 세션 측정 시간

    • 앰플리튜드의 기본적인 세션 측정 timeout 시간은 모바일 5분, 웹 30분 이며, timeout 시간은 SDK 설정 또는 앰플리튜드 대시보드에서 커스텀하게 수정할 수 있습니다. 예를 들어, 앱이 Background로 전환된 후 5분 이상 어떠한 이벤트도 발생하지 않으면 세션은 종료되며, 5분 이내 전송된 이벤트는 동일 세션에 포함되어 동일한 session id가 부여됩니다.

  • 세션 시작, 종료 이벤트

    • 앰플리튜드는 기본적으로 세션 시작 이벤트, 세션 종료 이벤트를 전송하지 않습니다.

    • 만약 세션 시작, 종료 이벤트를 전송하고자 한다면 SDK에서 해당 이벤트를 자동 수집하도록 하는 설정을 해주실 수 있습니다.

    • 다만, 세션에 대한 추가 이벤트를 수집하시는 경우 이벤트 볼륨이 차감됩니다. 수집 여부에 대해 의사 결정 시 참고해주세요.

  • 세션을 커스텀하게 정의하는 법

    • 특정 조건으로 세션을 커스텀하게 정의할 수 있습니다. 자세한 내용은 여기를 확인하세요.


참고할 만한 자료