RudderStack
RudderStack은 고객 이벤트 데이터를 수집하여 선호하는 데이터 웨어하우스 및 Braze를 비롯한 수십 개의 분석 제공업체로 라우팅하기 위한 오픈소스 고객 데이터 인프라입니다. 엔터프라이즈급으로 설계되었으며, 이벤트 데이터를 실시간으로 처리할 수 있는 강력한 변환 프레임워크를 제공합니다.
Braze와 RudderStack 통합은 Android, iOS 및 웹 애플리케이션을 위한 네이티브 SDK 통합과 백엔드 서비스에서의 서버 간 통합을 제공합니다.
필수 조건
| 요구 사항 | 설명 |
|---|---|
| RudderStack 계정 | 이 파트너십을 활용하려면 RudderStack 계정이 필요합니다. |
| 구성된 소스 | 소스는 기본적으로 웹사이트, 모바일 앱 또는 백엔드 서버와 같이 RudderStack으로 전송되는 모든 데이터의 출처입니다. RudderStack에서 Braze를 대상으로 설정하기 전에 소스를 구성해야 합니다. |
| Braze REST API 키 | users.track, users.identify, users.delete, users.alias.new 권한이 있는 Braze REST API 키.Braze 대시보드의 설정 > API 키에서 생성할 수 있습니다. |
| Braze 앱 키 | Braze 대시보드에서 앱 키를 가져오려면 설정 > 앱 설정 > 식별으로 이동하여 앱 이름을 찾습니다. 연결된 식별자 문자열을 저장합니다. |
| 데이터 센터 | 데이터 센터는 Braze 대시보드 인스턴스와 일치합니다. |
통합
1단계: 소스 추가
Braze로 데이터 전송을 시작하려면 먼저 RudderStack 앱에 소스가 설정되어 있는지 확인해야 합니다. 데이터 소스 설정 방법을 알아보려면 RudderStack을 방문하세요.
2단계: 대상 구성
데이터 소스가 설정되면 RudderStack 대시보드에서 Destinations 아래의 ADD DESTINATION을 선택합니다. 사용 가능한 대상 목록에서 Braze를 선택하고 Next를 클릭합니다.
Braze 대상에서 앱 키, Braze REST API 키, 데이터 클러스터 및 네이티브 SDK 옵션(디바이스 모드 전용)을 제공합니다. 네이티브 SDK 옵션을 활성화하면 Braze 네이티브 SDK를 사용하여 이벤트를 전송합니다.

3단계: 통합 유형 선택
다음 접근 방식 중 하나를 사용하여 RudderStack의 웹 및 네이티브 클라이언트 측 라이브러리를 Braze와 통합할 수 있습니다:
- 병렬 통합 / 디바이스 모드: RudderStack이 클라이언트(브라우저 또는 모바일 애플리케이션)에서 직접 Braze로 이벤트 데이터를 전송합니다.
- 서버 간 / 클라우드 모드: Braze SDK가 이벤트 데이터를 RudderStack으로 직접 전송하고, 이후 변환되어 Braze로 라우팅됩니다.
- 하이브리드 모드: 하이브리드 모드를 사용하여 단일 연결로 iOS 및 Android 자동 생성 이벤트와 사용자 생성 이벤트를 Braze로 전송합니다.

RudderStack의 연결 모드와 각 모드의 장점에 대해 자세히 알아보세요.
병렬 통합(디바이스 모드)
이 모드에서는 웹사이트 또는 모바일 앱에 설정된 Braze SDK를 사용하여 이벤트를 Braze로 전송할 수 있습니다.
지원되는 메서드에 설명된 대로 Braze GitHub 리포지토리에서 플랫폼에 맞는 RudderStack SDK 매핑을 설정합니다:
디바이스 모드 통합을 완료하려면 프로젝트에 Braze 추가에 대한 RudderStack의 상세 지침을 참조하세요.
서버 간 통합(클라우드 모드)
이 모드에서는 SDK가 이벤트 데이터를 RudderStack 서버로 직접 전송합니다. 그런 다음 RudderStack이 이 데이터를 변환하여 원하는 대상으로 라우팅합니다. 이 변환은 RudderStack의 트랜스포머 모듈을 사용하여 RudderStack 백엔드에서 수행됩니다.
통합을 활성화하려면 지원되는 메서드에 설명된 대로 RudderStack 메서드를 Braze에 매핑해야 합니다.

RudderStack의 서버 측 SDK(Java, Python, Node.js, Go, Ruby)는 클라우드 모드만 지원합니다. 서버 측 SDK는 RudderStack 백엔드에서 작동하며 Braze 전용 SDK를 로드할 수 없기 때문입니다.

서버 간 통합은 푸시 알림이나 인앱 메시징과 같은 Braze UI 기능을 지원하지 않습니다. 그러나 이러한 기능은 디바이스 모드 통합에서 지원됩니다.
하이브리드 모드
하이브리드 모드를 사용하여 iOS 및 Android 소스에서 모든 이벤트를 Braze로 전송합니다.
하이브리드 모드를 선택하여 이벤트를 Braze로 전송하면 RudderStack은 다음을 수행합니다:
- Braze SDK를 초기화합니다.
- 모든 사용자 생성 이벤트(identify, track, page, screen, group)를 클라우드 모드를 통해서만 Braze로 전송하고 디바이스 모드를 통한 전송은 차단합니다.
- 자동 생성 이벤트(인앱 메시지, Braze SDK가 필요한 푸시 알림)를 디바이스 모드를 통해 전송합니다.
하이브리드 모드로 이벤트 전송하려면 소스를 Braze 대상에 연결할 때 하이브리드 모드 옵션을 사용합니다. 그런 다음 프로젝트에 Braze 통합을 추가합니다.
4단계: 추가 설정 구성
초기 설정을 완료한 후 Braze에서 데이터를 올바르게 수신하려면 다음 설정을 구성합니다:
- Enable subscription groups in group call: 이 설정을 활성화하면 그룹 이벤트에서 구독 그룹 상태를 전송합니다. 자세한 내용은 Group을 참조하세요.
- Use Custom Attributes Operation: Braze에서 중첩 커스텀 속성 기능을 사용하여 커스텀 속성 오브젝트로 세그먼트를 생성하고 메시지를 개인화하려면 이 설정을 활성화합니다. 자세한 내용은 중첩 커스텀 속성으로 사용자 특성 전송을 참조하세요.
- Track events for anonymous users: 이 설정을 활성화하면 익명 사용자 활동을 추적하고 이 정보를 Braze로 전송합니다.
디바이스 모드 설정
다음 설정은 디바이스 모드를 통해 Braze로 이벤트를 전송하는 경우에만 적용됩니다:
- Client-side Events Filtering: 이 설정을 사용하면 Braze로 전달되어야 하는 이벤트를 차단하거나 허용할 수 있습니다. 이 설정에 대한 자세한 내용은 Client-side Events Filtering을 참조하세요.
- Deduplicate Traits: 이 설정을 활성화하면
identify호출에서 사용자 특성을 중복 제거합니다. - Show Braze logs: 이 설정은 JavaScript SDK를 소스로 사용하는 경우에만 적용됩니다. 이를 활성화하면 사용자에게 Braze 로그를 표시합니다.
- OneTrust Cookie Categories: 이 설정을 사용하면 OneTrust 쿠키 동의 그룹을 Braze에 연결할 수 있습니다.
지원되는 메서드
Braze는 RudderStack의 identify, track, screen, page, group, alias 메서드를 지원합니다.
RudderStack의 identify 메서드는 사용자를 해당 행동과 연결합니다. RudderStack은 고유한 사용자 ID와 이름, 이메일, IP 주소 등 해당 사용자와 관련된 선택적 특성을 캡처합니다.
identify 호출의 델타 관리
디바이스 모드를 통해 Braze로 이벤트를 전송하는 경우 identify 호출을 중복 제거하여 비용을 절감할 수 있습니다. 이를 위해 Deduplicate Traits 대시보드 설정을 활성화합니다. 그러면 RudderStack은 변경되거나 수정된 속성(특성)만 Braze로 전송합니다.
사용자 삭제
RudderStack Data Regulation API의 Suppression with Delete regulation을 사용하여 Braze에서 사용자를 삭제할 수 있습니다.
RudderStack의 track 메서드는 모든 사용자 활동과 해당 활동에 관련된 등록정보를 캡처합니다.
주문 완료
RudderStack eCommerce API를 사용하여 Order Completed라는 이름의 이벤트에 대해 track 메서드를 호출하면, RudderStack은 해당 이벤트에 나열된 제품을 purchases로 Braze에 전송합니다.
RudderStack의 screen 메서드를 사용하면 조회된 화면에 대한 추가 정보와 함께 사용자의 모바일 화면 조회를 기록할 수 있습니다.
RudderStack의 page 메서드를 사용하면 웹사이트의 페이지 조회를 기록할 수 있습니다. 또한 해당 페이지에 대한 기타 관련 정보도 캡처합니다.
RudderStack의 group 메서드를 사용하면 사용자를 그룹에 연결할 수 있습니다.
구독 그룹 상태
구독 그룹 상태를 업데이트하려면 RudderStack 대시보드에서 “Enable subscription groups in group call” 설정을 활성화하고 group 호출에서 구독 그룹 상태를 전송합니다.
RudderStack의 alias 메서드를 사용하면 알려진 사용자의 서로 다른 ID를 병합할 수 있습니다. RudderStack은 클라우드 모드에서만 Braze에 대한 alias 호출을 지원합니다.
중첩 커스텀 속성으로 사용자 특성 전송
사용자 특성을 중첩 커스텀 속성으로 Braze에 전송하고 추가, 업데이트, 제거 작업을 수행할 수 있습니다. 이를 위해 Braze 대상을 구성할 때 RudderStack에서 “Use Custom Attributes Operation dashboard” 설정을 활성화합니다. 이 기능은 클라우드 모드에서만 사용할 수 있습니다.
다음 형식으로 identify 이벤트에서 사용자 특성을 중첩 커스텀 속성으로 전송할 수 있습니다:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
rudderanalytics.identify("1hKOmRA4GRlm", {
"cars": {
"add": [{
"age": 27,
"id": 1,
"name": "Alex Keener"
}],
"update": [{
"age": 30,
"id": 2,
"identifier": "id",
"name": "Rowan"
},
{
"age": 27,
"id": 1,
"identifier": "id",
"name": "Mike"
}
]
},
"country": "USA",
"email": "[email protected]",
"firstName": "Alex",
"gender": "M",
"pets": [{
"breed": "beagle",
"id": 1,
"name": "Scooby",
"type": "dog"
},
{
"breed": "calico",
"id": 2,
"name": "Garfield",
"type": "cat"
}
]
})
track, page 또는 screen 호출을 통해 사용자 특성을 커스텀 사용자 속성으로 전송하려면 이벤트에서 traits를 컨텍스트 필드로 전달합니다:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
rudderanalytics.track("Product Viewed", {
revenue: 8.99,
currency: "USD",
},{
"traits": {
"cars": {
"add": [{
"age": 27,
"id": 1,
"name": "Alex Keener"
}],
"update": [{
"age": 30,
"id": 2,
"identifier": "id",
"name": "Mike"
},
{
"age": 27,
"id": 1,
"identifier": "id",
"name": "Rowan"
}
]
},
"city": "Disney",
"country": "USA",
"email": "[email protected]",
"firstName": "Alexa",
"gender": "woman",
"pets": [{
"breed": "beagle",
"id": 1,
"name": "Scooby",
"type": "dog"
},
{
"breed": "calico",
"id": 2,
"name": "Garfield",
"type": "cat"
}
]
}
});

업데이트 및 제거 작업의 경우 identifier는 필수 키입니다. 중첩 배열에 추가, 업데이트 또는 제거 작업이 없는 경우 RudderStack은 기본적으로 생성 작업을 사용하여 등록정보를 생성합니다. 중첩 커스텀 속성 전송에 대한 자세한 내용은 오브젝트 배열을 참조하세요.