integrationlatest데이터 연동 / 다중 인스턴스
다중 인스턴스
v1.3.0부터 이 SDK는 다중 인스턴스를 지원합니다. 앞에서 설명한 방법으로 초기화를 완료한 인스턴스를 메인 인스턴스라고 하고, 이 섹션에서 설명하는 방법으로 생성한 인스턴스를 서브 인스턴스라고 합니다.
여러 인스턴스 간에는 디바이스 관련 시스템 속성(디바이스 ID 포함)이 공유되며, 그 외의 속성은 공유되지 않습니다. 공유되지 않는 속성은 다음과 같습니다:
#distinct_id게스트 ID#account_id계정 ID- 공통 이벤트 속성, 동적 공통 속성
timeEvent로 모니터링하는 이벤트
서브 인스턴스를 생성하여 다른 프로젝트로 데이터를 전송하거나 다른 유저 ID 체계로 데이터를 전송할 수 있습니다.
//초기화 설정 1
var config_1 = {
appId: "app-id-1",
serverUrl: "https://youserverurl.1.com"
};
TDAnalytics.init(config_1);
//초기화 설정 2
var config_2 = {
appId: "app-id-2",
serverUrl: "https://youserverurl.2.com"
};
TDAnalytics.init(config_2);
//설정 1로 이벤트 전송(app-id를 전달하지 않으면 기본적으로 설정 1로 전송)
TDAnalytics.track({
eventName: 'event_from_appid_1'
});
//설정 1로 이벤트 전송(app-id-1 지정)
TDAnalytics.track({
eventName: 'event_from_appid_1'
}, 'app-id-1');
//설정 2로 이벤트 전송(app-id-2 지정)
TDAnalytics.track({
eventName: 'event_from_appid_2'
}, 'app-id-2');
인스턴스마다 영구 저장 데이터를 따로 저장해야 하는 경우 config에서 persistenceName을 설정하여 저장 경로를 커스텀할 수 있습니다
var config = {
appId: "app-id-1",
serverUrl: "https://youserverurl.1.com",
persistenceName:"persistence_name" //커스텀 가능하며, 인스턴스마다 서로 달라야 합니다
};
TDAnalytics.init(config);
같은 AppId에 서브 인스턴스를 생성해야 하는 경우 initInstance로 인스턴스 별칭을 설정할 수 있습니다. 이 두 인스턴스는 같은 appId로 데이터를 전송하지만 서로 다른 초기화 설정 정보를 사용합니다. 예를 들어 설정 1은 일반 모드로 데이터를 전송하고, 설정 2는 Batch 모드로 데이터를 전송합니다.
예시 코드는 다음과 같습니다:
//초기화 설정 1
TDAnalytics.init({
appId: "app-id-1",
serverUrl: "https://youserverurl.1.com"
});
//초기화 설정 2
TDAnalytics.initInstance("td",{
appId: "app-id-1",
serverUrl: "https://youserverurl.1.com",
enableBatch: true
});
이 문서가 도움이 되었나요?

