이 페이지에서

For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.

세션 추적

세션은 사용자가 앱을 포그라운드에 두거나 웹사이트를 열어 놓을 때 지속적인 기간입니다. Amplitude는 이벤트를 세션 ID별로 세션으로 그룹화하고, 세션 시작 및 세션 종료 이벤트를 파생하며, 세션 개수와 기간을 사용자 세션 차트에 표시합니다.

Amplitude SDK가 세션 경계를 자동으로 관리하도록 하려면 기본 세션 추적을 사용하십시오. 특정 이벤트나 다른 시간 초과에 연결된 세션 경계가 필요한 경우 대신 사용자 정의 세션 정의를 구성하십시오.

Amplitude가 세션을 정의하는 방법

세션 동작은 모바일 애플리케이션과 브라우저 애플리케이션 간에 다릅니다.

  • 모바일의 경우 앱이 포그라운드로 이동할 때 세션이 시작됩니다. 모바일 세션은 앱이 백그라운드로 전환되고 최소 5분 동안 이벤트를 전송하지 않을 때 종료됩니다. 서로 5분 첫 사용 후 전송된 이벤트는 현재 세션에 수행 회수가 포함됩니다. setMinTimeBetweenSessionsMillis(timeout)를 사용하여 사용자 지정 세션 만료 시간을 정의할 수 있습니다. 여기서 timeout 는 밀리초 단위입니다.
  • 브라우저에서 세션은 웹 사이트가 로드되고 SDK가 초기화될 때 시작됩니다. 브라우저 세션은 마지막 이벤트가 발생할 때 종료됩니다. 웹 세션은 기본적으로 30분 후에 시간 초과됩니다. 서로 30분 이내에 전송된 이벤트는 동일한 세션에 포함됩니다. 브라우저 SDK 구성 옵션을 사용하여 브라우저 시간 초과 창을 사용자 정의할 수 있습니다.

Amplitude는 각 새 세션에 대한 세션 ID를 자동으로 생성합니다. 세션 ID는 에포크 날짜 이후 세션의 시작 시간(밀리초 단위)입니다(유닉스 타임스탬프라고도 함). 동일한 세션 첫 사용 후 모든 이벤트는 동일한 세션 ID를 공유합니다. Amplitude SDK는 세션 ID를 자동으로 관리합니다. HTTP API를 통해 Amplitude에 데이터를 전송하는 경우, 세션을 추적하도록 세션 ID 필드를 명시적으로 설정하세요.

Amplitude가 세션을 계산하는 방법

세션을 계산하기 위해 Amplitude는 "활성"으로 표시된 이벤트를 필터링하고, 프로젝트의 세션 정의를 적용하고, 필터링된 이벤트를 세션으로 그룹화하고, 그룹화된 세션을 계산합니다.

프로젝트의 세션 정의 설정에 대한 자세한 내용은 조직 및 프로젝트 관리를 참조하십시오.

Amplitude가 이벤트를 세션으로 그룹화하는 방법

기본적으로 Amplitude는 세션 ID를 세션 속성으로 사용합니다. Amplitude는 동일한 세션 ID와 동일한 사용자 ID를 가진 모든 이벤트를 동일한 세션으로 그룹화합니다. 세션 ID는 여러 사용자에게 고유할 필요는 없습니다. 세션을 그룹화하는 데 사용하는 속성을 변경할 수 있습니다.

Amplitude SDK는 이벤트에 대한 세션 ID를 자동으로 생성하고 관리합니다. HTTP API를 통해 전송된 이벤트의 경우 Amplitude는 기본적으로 세션 ID를 -1 으로 설정합니다. 세션 ID가 -1인 경우 모든 세션 메트릭에서 이벤트를 제외합니다.

-1의 세션 ID는 일반적으로 데이터가 클라우드 모드 연결을 통해 Segment에서 Amplitude로 이동할 때 발생합니다. HTTP API를 통해 전송된 데이터와 마찬가지로 세션을 추적하려면 세션 ID를 명시적으로 설정해야 합니다.

사용자의 이벤트 스트림에서 파란색 선은 동일한 세션의 이벤트를 연결합니다.

Amplitude는 실제 시작 시간을 기준으로 세션을 특정 날짜에 할당합니다. Amplitude가 해당 세션을 차트에 포함하려면 시작 시간이 해당 차트의 선택된 날짜 범위 첫 사용 후 있어야 합니다.

예를 들어 세션은 5월 17일 오후 8시에 시작되어 5월 18일 오전 1시 30분에 끝납니다. 세션은 선택한 날짜 범위가 세션이 시작된 날짜인 5월 17일을 포함하는 차트에 나타납니다. 예제 세션의 날짜 범위는 5월 17일 또는 그 이전에 시작되어 5월 17일 또는 그 이후에 종료될 수 있습니다. 차트의 날짜 범위가 5월 18일에 시작되는 경우 세션이 5월 18일에 여전히 활성 상태였더라도 세션은 차트에 나타나지 않습니다.

세션 시작 및 세션 종료 이벤트

기본적으로 Amplitude는 각 세션의 세션 ID에서 Start Session및 End Session 이벤트를 파생합니다. 또한 Amplitude는 세션 ID를 사용하여 세션 길이를 계산합니다. 세션 ID를 사용하는 경우, Amplitude는 월간 이벤트 볼륨 제한에 추가 이벤트를 추가하지 않습니다.

세션 길이를 초과하여 분석을 위해 Start Session와 End Session이벤트가 필요한 경우, SDK를 초기화하기 전에 다음 코드를 추가하여 Start Session와 End Session이벤트 트래킹을 활성화하십시오:

Android의 경우:

java
Amplitude amplitude = new Amplitude(new Configuration(apiKey = AMPLITUDE_API_KEY, context = applicationContext, trackingSessionEvents = true, ));

iOS의 경우:

objc
[Amplitude instance].trackingSessionEvents = YES;

브라우저의 경우:

js
amplitude.init(API_KEY, OPTIONAL_USER_ID, {
  defaultTracking: {
    sessions: true,
  },
});

세션 시작 및 세션 종료 제한 사항

  • 세션 이벤트 트래킹은 Amplitude의 Android, iOS 및 브라우저 SDK에만 적용됩니다.
  • Start Session End Session이벤트는 월별 이벤트 볼륨 제한에 포함됩니다.
  • Amplitude는 사용자의 다음 세션이 시작될 때 End Session이벤트를 전송합니다.
  • 기본적으로 자동으로 생성된 Start Session 및 End Session 이벤트에 이벤트 속성을 추가할 수 없습니다. 세션 시작 및 종료 이벤트에 대한 이벤트 속성을 전송하려면 다음 두 가지 옵션이 있습니다.
    • 자신만의 사용자 지정 Open App 및 Close App 이벤트를 구현하세요.
    • Enrichment 플러그인을 사용하여 생성된 세션 이벤트에 속성을 추가하십시오. Enrichment 플러그인을 사용하면 이벤트 객체의 속성을 수정할 수 있습니다.

세션 외 이벤트

세션 ID를 -1로 설정하여 세션 외부에서 이벤트를 기록할 수 있습니다. 세션 외 이벤트는 현재 세션의 일부가 아니며 현재 세션을 연장하지 않습니다. 세션 외 이벤트는 푸시 알림에 의해 트리거된 이벤트에 유용합니다.

세션 외 이벤트는 일반적으로 Amplitude가 수신한 서버 측 이벤트입니다. 자세한 내용은 HTTP API 문서를 참조하십시오. 세션 외 이벤트는 사용자의 이벤트 스트림에 연결이 끊긴 녹색 사각형으로 나타납니다.

사용자 정의 세션 정의 구성

기본적으로 Amplitude는 세션 ID를 기준으로 이벤트를 세션으로 분류합니다. 계측을 추가하지 않고도 세션을 정의할 수 있습니다. 사용자 정의 세션 정의는 상수 속성, 사용자 정의 시간 초과 창, 시작 및 종료 이벤트를 사용할 수 있습니다.

세션 정의를 편집하려면 Admin 또는 Manager 권한이 필요합니다.

사용자 정의 세션 정의는 사용자 세션 및 패스파인더 차트와 사용자 타임라인에서만 사용할 수 있습니다. 세션에는 활성 이벤트만 포함됩니다.

사용자 정의 세션 정의를 구성하려면 다음을 수행하십시오.

  1. 왼쪽 사이드바에서 설정 > 프로젝트로 이동합니다.

  2. 작업할 프로젝트를 선택합니다.

  3. 세션 정의를 선택합니다. 세션 정의 모달이 나타납니다.

  4. 사용자 정의 세션 정의를 선택합니다.

  5. 하나 이상의 조건을 구성합니다.

    • 세션 속성: **속성 선택...**을 선택하고 세션을 그룹화할 이벤트 또는 사용자 속성을 선택합니다.
    • 시작 이벤트 및 종료 이벤트: 시작 이벤트 또는 종료 이벤트를 선택하고 세션의 시작과 종료를 표시하는 이벤트를 선택합니다. 종료 이벤트는 시간 초과 간격이 경과되기 전에 종료 이벤트가 발생하면 세션을 종료합니다.
    • 세션 시간 초과: 기본 시간 초과 간격을 분 단위로 입력합니다. Amplitude는 한 세션의 일부로서 지정된 시간 초과 간격 내에 발생한 동일한 사용자의 이벤트를 계산합니다. Amplitude는 기본값을 30분으로 설정할 것을 권장합니다.
  6. 확인 문구를 입력하고 저장을 선택합니다.

세션 정의를 변경하면 모든 사용자 세션, 퍼널 분석 및 여정 분석 차트와 프로젝트의 세션 지표에 적용됩니다. 사용자 정의 세션 정의를 구성하거나 변경하기 전에 영향을 검토하십시오.

Amplitude는 조건과 AND 논리를 결합합니다. 세션은 구성된 모든 조건을 충족해야 수행 회수가 집계됩니다. 전체 조건을 구성하지 않으면 Amplitude는 세션 ID를 세션 정의 속성으로 사용합니다.

세션의 모든 이벤트가 동일한 소스에서 발생하도록 하려면 세션 속성과 시간 초과 창을 함께 사용하십시오.

  • 세션 property = device ID
  • 세션 timeout = 30 min

앱 내 사용량을 기반으로 세션을 정의하려면 시작 이벤트 및 시간 초과 창을 사용하세요.

  • 시작 event = app open
  • 세션 timeout = 5 min

이 내용이 도움이 되었나요?