Amplitude

자주 묻는 질문

대부분의 이벤트는 문제없이 수집되지만, 특정 국가/브라우저/유저에 한해 이벤트가 정상 수집되지 않습니다.

데이터문제 해결

특정 환경(예: 특정 국가나 브라우저)에서는 앰플리튜드의 이벤트 수집이 제한될 수 있습니다. 주로 아래 세 가지 이유가 해당 현상의 원인일 수 있습니다.

예상 원인 1. 특정 국가(중국 등)에서의 이벤트 수집 제한

중국과 같은 특정 국가에서는 앰플리튜드의 이벤트가 정상적으로 수집되지 않는 경우가 발생할 수 있습니다. 해당 지역의 네트워크 규제나 방화벽 정책이 주요 원인이며, 이 경우 다음 방법을 사용해 해결을 권장합니다.

[해결 방법]

  • Dynamic Configuration 사용

    • Dynamic Configuration은 Amplitude가 중국을 포함한 특정 지역에서 안정적인 이벤트 수집을 위해 권장하는 기능입니다.

    • 이 기능은 사용자 위치를 기반으로 해당 지역에 맞는 앰플리튜드서버를 자동으로 선택하여 이벤트를 전송합니다.

    • 중국 엔드유저가 있는 경우, Dynamic Configuration을 통해 앰플리튜드 서버에 이벤트가 원활하게 수집될 수 있도록 설정해 주세요.

    • 참고 자료: Amplitude 가이드: SDKs> Dynamic Configuration

예상 원인 2. 특정 브라우저 환경에서의 이벤트 차단

특정 브라우저 설정(예: 광고 차단 기능이 활성화된 브라우저)이나 개인정보 보호 설정이 이벤트 수집을 방해할 수도 있습니다.

대표적인 예로, 네이버 웨일(Naver Whale) 브라우저는 기본적으로 Ad Blocker가 활성화되어 있어 앰플리튜드 이벤트가 수집되지 않을 수 있으며, Mac Safari의 개인정보 보호 브라우저도 유사한 현상을 초래할 수 있습니다.

[해결 방법]

  • 역방향 프록시(Reverse Proxy) 설정

    역방향 프록시를 사용하여 Amplitude SDK가 직접 앰플리튜드 서버와 통신하지 않고, 고객사의 프록시 서버를 통해 이벤트가 전달되도록 설정할 수 있습니다.

    이를 통해 앰플리튜드 서버로의 직접적인 연결이 차단되는 환경에서도 이벤트를 수집할 수 있습니다.

    • 역방향 프록시 설정 방법:

      • 자체 프록시 서버를 구축하여 Amplitude SDK가 해당 프록시 서버를 바라보도록 설정

      • 고객사의 프록시 서버가 Amplitude API로 이벤트를 전송하도록 구성

    • 참고 자료: Amplitude 가이드: Analytics> Use Domain Proxy to Relay Events (HTTP V2 API를 설명하고 있으나, 동일한 원리로 적용할 수 있습니다.)

예상 원인 3. 유저의 User ID 또는 Device ID가 5자 미만인 경우

앰플리튜드에는 5자 미만의 User ID나 Device ID로 이벤트가 들어오면 (유효하지 않은 ID로 간주하여) 이벤트를 처리하지 않는 로직이 있습니다.

[해결 방법]

  • 만약 고객사에서 사용하는 User ID가 5자 미만이라면, 5자 미만의 user id로 들어온 이벤트도 처리되도록 minIdlength 옵션을 설정해주셔야 합니다. minIdlength 는 디폴트로 5로 설정되어있으나, 이 값을 1 등으로 낮춰서 변경해주시면 됩니다. (참고 가이드)


참고할 만한 문서