빠른 시작¶
본 문서는 Android RUM SDK의 최단 연동 경로를 제공하며, 최소한의 단계로 검증 가능한 데이터 업로드를 완료할 수 있도록 안내합니다.
사전 준비¶
시작하기 전에 다음 준비를 완료하세요.
- 실제 사용자 모니터링(RUM) 에서 Android 애플리케이션을 생성하고
RUM App ID를 획득합니다. - 업로드 주소와 인증 방식을 확인합니다.
- 로컬 환경 배포:
datakitUrl준비 - 공용 DataWay:
datawayUrl및clientToken준비 - 애플리케이션에
Application이 있는지 확인하거나, 새로 생성하여AndroidManifest.xml에 선언합니다.
연동 단계¶
- Maven 저장소를 구성하고
ft-sdk를 추가합니다. - 필요에 따라
ft-plugin,ft-native,okhttp를 추가합니다. Application.onCreate()에서 SDK를 설치하고RUM을 초기화하며, 크래시 및 ANR(애플리케이션 응답 없음) 감지를 활성화합니다.- 로그 수집 또는 분산 추적이 필요한 경우
Log,Trace를 추가로 초기화합니다. - 디버그 로그를 활성화하고 페이지 열기 또는 네트워크 요청을 트리거하여 데이터 업로드가 성공했는지 확인합니다.
Maven 저장소¶
ft-plugin과 ft-sdk를 동시에 연동하는 경우 플러그인과 AAR 종속성 각각에 대해 Maven 저장소를 구성해야 합니다. 자세한 Gradle 구성 방법은 애플리케이션 연동을 참조하세요.
최소 종속성¶
// build.gradle
plugins {
id 'com.cloudcare.ft.mobile.sdk.tracker.plugin' version '[latest_version]'
}
// app/build.gradle
dependencies {
implementation 'com.cloudcare.ft.mobile.sdk.tracker.agent:ft-sdk:[latest_version]'
// JSON 직렬화
implementation 'com.google.code.gson:gson:2.8.+'
// 선택 사항, 네트워크 요청 자동 수집 및 자동 링크 추적 활성화에 필요, 최소 3.12.+ 이상 버전 호환
implementation 'com.squareup.okhttp3:okhttp:4.+'
}
다음 기능이 필요하면 해당 종속성을 추가로 추가하세요.
ft-native: 네이티브 크래시 수집okhttp: 네트워크 요청 자동 수집 또는 Trace Header 자동 삽입에 필요
ft-plugin은 페이지, 클릭, OkHttp 요청, WebView 등의 데이터를 자동으로 수집하는 데 사용됩니다. 현재 프로젝트에서 이전 버전 AGP를 사용하는 경우ft-plugin-legacy를 대신 사용하세요. 자세한 작성 방법은 애플리케이션 연동을 참조하세요.
Application 선언¶
프로젝트에 사용자 정의 Application이 없는 경우 먼저 생성하고 AndroidManifest.xml에 선언하세요.
최소 초기화 예제¶
public class DemoApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// 로컬 환경 배포 시 FTSDKConfig.builder(datakitUrl) 사용
FTSDKConfig config = FTSDKConfig.builder(datawayUrl, clientToken);
config.setDebug(true);
FTSdk.install(config);
FTSdk.initRUMWithConfig(
new FTRUMConfig()
.setRumAppId(RUM_APP_ID)
.setEnableTraceUserView(true)
.setEnableTraceUserAction(true)
.setEnableTraceUserResource(true)
.setEnableTrackAppUIBlock(true)
.setEnableTrackAppCrash(true)
.setEnableTrackAppANR(true)
);
}
}
class DemoApplication : Application() {
override fun onCreate() {
super.onCreate()
// 로컬 환경 배포 시 FTSDKConfig.builder(datakitUrl) 사용
val config = FTSDKConfig.builder(datawayUrl, clientToken)
config.setDebug(true)
FTSdk.install(config)
FTSdk.initRUMWithConfig(
FTRUMConfig()
.setRumAppId(RUM_APP_ID)
.setEnableTraceUserView(true)
.setEnableTraceUserAction(true)
.setEnableTraceUserResource(true)
.setEnableTrackAppUIBlock(true)
.setEnableTrackAppCrash(true)
.setEnableTrackAppANR(true)
)
}
}
위 예제는 최소 RUM 연동을 충족하며, 크래시 및 ANR(애플리케이션 응답 없음) 감지가 기본적으로 활성화됩니다. 로컬 환경 배포를 사용하는 경우
FTSDKConfig.builder(datawayUrl, clientToken)를FTSDKConfig.builder(datakitUrl)로 대체하세요.
선택 사항: Log 및 Trace 초기화¶
로그 수집 또는 분산 추적이 추가로 필요한 경우 다음 초기화를 추가할 수 있습니다.
FTSdk.initLogWithConfig(
FTLoggerConfig()
.setEnableCustomLog(true)
.setEnableLinkRUMData(true)
)
FTSdk.initTraceWithConfig(
FTTraceConfig()
.setEnableAutoTrace(true)
.setEnableLinkRUMData(true)
)
연동 성공 확인¶
config.setDebug(true)를 활성화한 상태로 애플리케이션을 실행합니다.- 페이지를 열거나,
okhttp가 연동된 환경에서 네트워크 요청을 한 번 실행합니다. Logcat에서[FT-SDK]를 검색하여initRUMWithConfig complete또는Sync Success와 같은 로그가 출력되는지 확인합니다.- Guance 콘솔로 돌아가 애플리케이션에 해당 RUM 데이터가 나타나는지 확인합니다.
다음 단계¶
- 전체 설치 및 초기화 설명은 애플리케이션 연동을 계속 읽어보세요.
- 모든 초기화 매개변수 설명은 SDK 초기화를 참조하세요.
- RUM, Log, Trace의 상세 구성은 RUM 구성, Log 구성, Trace 구성을 참조하세요.
- WebView 모니터링 연동이 필요한 경우 WebView 모니터링을 참조하세요.
- Session Replay 연동이 필요한 경우 Android Session Replay를 참조하세요.