2022년 10월 18일에 오프라인과 온라인으로 진행될 Firebase Summit에 참여하세요. Firebase로 앱을 빠르게 개발하고 안심하고 앱을 출시하며 손쉽게 확장하는 방법을 알아보세요. 지금 등록하기

이벤트 로깅

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

이 가이드에서는 앱에서 이벤트를 로깅하는 방법을 설명합니다.

이벤트는 사용자 행동, 시스템 이벤트 또는 오류와 같은 앱에서 발생하는 상황에 대한 통계를 제공합니다.

애널리틱스는 몇 가지 이벤트를 자동으로 로깅하며 별도로 코드를 추가하지 않아도 이벤트를 수신할 수 있습니다. 앱에서 데이터를 추가로 수집해야 하는 경우 서로 다른 애널리틱스 이벤트 유형을 최대 500개까지 로깅할 수 있습니다. 앱에서 로깅할 수 있는 이벤트의 총 분량에는 제한이 없습니다. 이벤트 이름은 대소문자를 구분합니다. 이름은 동일하지만 대소문자만 다른 두 이벤트를 로깅하면 서로 다른 이벤트 두 개로 인식됩니다.

시작하기 전에

애널리틱스 시작하기의 설명처럼 프로젝트가 설정되어 있고 애널리틱스에 액세스할 수 있는지 확인하세요.

이벤트 로깅

FirebaseAnalytics 인스턴스를 만든 후 이를 사용하여 logEvent() 메서드로 이벤트를 로깅할 수 있습니다.

시작하는 데 도움을 제공하기 위해 애널리틱스 SDK에서는 소매 및 전자상거래, 여행, 게임 앱을 포함한 다양한 유형의 앱에서 공통적으로 사용되는 여러 가지 추천 이벤트를 정의합니다. 이러한 이벤트에 대한 정보와 사용 시점을 자세히 알아보려면 추천 이벤트를 참조하세요.

추천 이벤트 유형 구현에 대한 자세한 내용은 다음을 참조하세요.

다음 예시에서는 SELECT_CONTENT 이벤트를 로깅하는 방법을 보여줍니다.

Java

Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);

Kotlin+KTX

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

사전 정의된 매개변수뿐 아니라 다음과 같은 매개변수를 이벤트에 추가할 수 있습니다.

  • 맞춤 매개변수: 맞춤 매개변수를 애널리틱스 보고서에서 측정기준 또는 측정항목으로 사용할 수 있습니다. 숫자가 아닌 이벤트 매개변수 데이터에는 맞춤 측정기준을, 숫자로 보다 잘 표현되는 매개변수 데이터에는 커스텀 측정항목을 사용할 수 있습니다. SDK를 사용하여 맞춤 매개변수를 로깅한 후에는 이 맞춤 매개변수가 애널리틱스 보고서에 표시되도록 측정기준 또는 측정항목을 등록하세요. 애널리틱스 > 이벤트 > 맞춤 정의 관리 > 맞춤 측정기준 만들기를 통해 등록하면 됩니다.

    모든 보고서에 적용될 수 있는 잠재고객 정의에 맞춤 매개변수를 사용할 수 있습니다. 앱을 BigQuery 프로젝트에 연결한 경우 BigQuery로 내보내는 데이터에도 맞춤 매개변수가 포함됩니다. Google 애널리틱스 4 BigQuery Export에서 샘플 쿼리 등을 확인하세요.

  • VALUE 매개변수: VALUE는 이벤트에 해당하는 핵심 측정항목을 집계하는 데 유용한 범용 매개변수입니다. 수익, 거리, 시간, 점수 등을 예시로 들 수 있습니다.

애플리케이션에 추천 이벤트 유형으로 해결되지 않는 특정한 요구사항이 있다면 다음 예와 같이 맞춤 이벤트를 직접 기록할 수 있습니다.

Java

Bundle params = new Bundle();
params.putString("image_name", name);
params.putString("full_text", text);
mFirebaseAnalytics.logEvent("share_image", params);

Kotlin+KTX

firebaseAnalytics.logEvent("share_image") {
    param("image_name", name)
    param("full_text", text)
}

기본 이벤트 매개변수 설정

setDefaultEventParameters를 사용하여 이벤트 간에 매개변수를 로깅할 수 있습니다. 기본 매개변수는 이후에 로깅되는 모든 이벤트와 연결됩니다.

맞춤 매개변수와 마찬가지로 애널리틱스 보고서에 표시되도록 기본 이벤트 매개변수를 등록합니다.

Java

Bundle parameters = new Bundle();
params.putString("level_name", "Caverns01");
params.putInt("level_difficulty", 4);
mFirebaseAnalytics.setDefaultEventParameters(parameters);

Kotlin+KTX

val parameters = Bundle().apply {
    this.putString("level_name", "Caverns01")
    this.putInt("level_difficulty", 4)
}

firebaseAnalytics.setDefaultEventParameters(parameters)

매개변수가 logEvent() 메서드에서 지정되었다면 해당 값이 기본값 대신 사용됩니다.

기본 매개변수를 삭제하려면 매개변수를 null로 설정하고 setDefaultEventParameters 메서드를 호출합니다.

Android 스튜디오 디버그 로그에서 이벤트 보기

상세 로깅을 사용 설정하여 SDK의 이벤트 로깅을 모니터링하면 이벤트가 올바르게 로깅되는지 확인할 수 있습니다. 여기에는 자동으로 로깅되는 이벤트와 수동으로 로깅되는 이벤트가 모두 포함됩니다.

일련의 adb 명령어로 상세 로깅을 사용 설정할 수 있습니다.

adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC

이 명령어는 이벤트 전송 여부를 즉시 확인할 수 있도록 이벤트를 Android 스튜디오 logcat에 표시합니다.

대시보드에서 이벤트 보기

Firebase Console 대시보드에서 이벤트의 집계된 통계를 확인할 수 있습니다. 이 대시보드는 정기적, 지속적으로 업데이트됩니다. 즉각적인 테스트가 필요하다면 앞 섹션에서 설명한 logcat 출력을 사용하세요.

Firebase Console의 이벤트 대시보드에서 이 데이터에 액세스할 수 있습니다. 이 대시보드에는 앱에서 로깅된 이벤트 유형별로 자동 생성된 이벤트 보고서가 표시됩니다.