난독화 룰을 사용하면 에이전트가 뉴렐릭으로 전송하기 전에 민감한 데이터를 마스크할 수 있습니다. 각 룰은 대체 문자열과 쌍을 이루는 정규식 패턴입니다. 에이전트는 QoE 이벤트 및 크래시 복구 이벤트를 포함하여 모든 발신 이벤트의 모든 문자열 속성 값에 순서대로 룰을 적용합니다.
에이전트가 뉴렐릭에 이벤트를 보내기 전에 민감한 데이터를 마스크하도록 정규식 기반 난독화 룰로 에이전트를 구성할 수 있습니다. contentSrc, contentTitle, origUrl 또는 커스텀 속성과 같은 필드에 사용자 ID, 토큰 또는 기타 PII가 의도치 않게 포함될 수 있는 경우 이 기능을 사용하십시오.
에이전트는 이벤트가 내부 버퍼에 들어가기 전에 나가는 모든 이벤트의 모든 문자열 속성에 ― 비디오, 광고(RAF 및 IMA), QOE, 시스템 및 커스텀 대시보드 포함 ― 룰을 적용합니다.
구성
에이전트를 생성한 후 nrSetObfuscationRules 을(를) 호출하십시오. 각 룰은 regex 문자열과 replacement 문자열이 있는 연관 어레이입니다:
m.nr = NewRelic("ACCOUNT_ID", "API_KEY", "APP_NAME", "APP_TOKEN")nrSetObfuscationRules(m.nr, [ { regex: "account-[0-9]+", replacement: "ACCOUNT_ID" }, { regex: "token=[^&]+", replacement: "token=REDACTED" }, { regex: "/users/[^/]+", replacement: "/users/USER_ID" }])런타임에 모든 규칙을 제거하려면 빈 어레이로 nrSetObfuscationRules 을(를) 호출하세요:
nrSetObfuscationRules(m.nr, [])룰 순서 지정
에이전트는 어레이에 나타나는 순서대로 룰을 적용합니다. 한 룰의 출력이 다음 룰의 입력이 됩니다. 패턴이 겹칠 수 있는 경우 순서가 중요합니다:
nrSetObfuscationRules(m.nr, [ ' Applied first — masks the specific token format { regex: "auth-token-[a-z0-9]+", replacement: "AUTH_TOKEN" }, ' Applied second — masks any remaining bare token references { regex: "token=[^&]+", replacement: "token=REDACTED" }])동작 및 엣지 케이스
| 케이스 | 행동 |
|---|---|
| 구성된 룰 없음 | 에이전트는 성능에 영향을 주지 않고 모든 속성 값을 변경 없이 전달합니다. |
빈 replacement 문자열 | 에이전트는 값에서 일치하는 콘텐츠를 제거합니다. |
| 잘못된 정규식 패턴 | 에이전트는 룰을 건너뛰고 로그에 경고를 기록합니다. |
| 문자열이 아닌 속성 값 | 에이전트는 이를 변경하지 않고 통과시킵니다. 문자열 값만 처리됩니다. |
| 모든 규칙 교체 | 새 어레이로 nrSetObfuscationRules 을(를) 다시 호출합니다. 에이전트는 이전의 모든 룰을 삭제합니다. |
중요
Roku는 패턴 일치에 roRegex 을(를) 사용합니다. Roku는 복잡한 전방탐색/후방탐색 어설션을 지원하지 않습니다. JavaScript 또는 자바 정규식에서 유효한 패턴은 Roku에 맞게 단순화해야 할 수 있습니다.