콘텐츠로 이동

글로벌 컨텍스트(Global Context)

Global Context는 설정 이후에 생성되는 RUM 이벤트에 첨부되며, 테넌트, 릴리즈 채널, 실험 그룹과 같은 안정적인 비즈니스 차원을 기록하는 데 적합합니다.

API 선택

API 설명 반환값
setGlobalContextProperty(key, value) 단일 필드 추가 또는 덮어쓰기 없음
setGlobalContext(context) 전체 Global Context 교체 없음
getGlobalContext() 현재 Global Context의 복사본 조회 Object
removeGlobalContextProperty(key) 단일 필드 제거 없음
clearGlobalContext() 모든 Global Context 초기화 없음
setGlobalContext()는 전체 Context를 교체합니다

하나의 필드만 업데이트해야 하는 경우 setGlobalContextProperty()를 사용하여 다른 모듈에서 이미 설정한 필드가 덮어써지지 않도록 하세요.

NPM 예제

import { datafluxRum } from "@cloudcare/browser-rum"

datafluxRum.setGlobalContextProperty("tenant_id", "tenant-42")
datafluxRum.setGlobalContext({
  tenant_id: "tenant-42",
  release_channel: "stable"
})

const context = datafluxRum.getGlobalContext()
console.log(context)

datafluxRum.removeGlobalContextProperty("release_channel")
datafluxRum.clearGlobalContext()

CDN 예제

if (window.DATAFLUX_RUM) {
  window.DATAFLUX_RUM.setGlobalContextProperty("tenant_id", "tenant-42")
  const context = window.DATAFLUX_RUM.getGlobalContext()
  console.log(context)
}
window.DATAFLUX_RUM.onReady(function () {
  window.DATAFLUX_RUM.setGlobalContextProperty("tenant_id", "tenant-42")
  const context = window.DATAFLUX_RUM.getGlobalContext()
  console.log(context)
})

필드 설계 권장사항

  1. tenant_id, release_channel과 같이 안정적이고 의미가 명확한 key를 사용하세요.
  2. 타임스탬프, 난수와 같이 카디널리티가 높은 값을 일반 분석 차원으로 사용하지 마세요.
  3. 비밀번호, 토큰, 주민등록번호와 같은 민감 정보를 작성하지 마세요.
  4. Context는 설정 이후에 생성되는 이벤트에만 영향을 미치며, 이미 업로드된 데이터는 수정되지 않습니다.

확인

필드 설정 후 View, Action 또는 API 요청을 한 번 트리거하고, 해당 탐색기에서 이벤트에 tenant_id가 포함되어 있는지 확인하세요. 이전 이벤트에 해당 필드가 없는 경우, Context가 이벤트 발생 전에 설정되었는지 확인하세요.

문서 평가

이 페이지가 도움이 되었나요?