La regla de ofuscación le permite enmascarar datos confidenciales antes de que el agente los transmita a New Relic. Cada regla es un patrón de expresiones regulares emparejado con una cadena de reemplazo. El agente aplica las reglas en orden a cada valor de atributo de cadena en cada evento saliente — incluidos los evento de QoE y los evento recuperados de fallos.
Puede configurar el agente con reglas de ofuscación basadas en expresiones regulares para enmascarar datos confidenciales antes de que el agente envíe eventos a New Relic. Use esta característica cuando campos como contentSrc, contentTitle, origUrl o atributos personalizados puedan contener inadvertidamente ID de usuario, tokens u otra información de identificación personal (PII).
El agente aplica reglas a cada atributo de cadena en cada evento saliente — incluyendo video, anuncios (RAF e IMA), QOE, sistema y eventos personalizados — antes de que el evento ingrese al búfer interno.
Configuración
Llame a nrSetObfuscationRules después de crear el agente. Cada regla es una matriz asociativa con una cadena regex y una cadena 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" }])Para eliminar todas las reglas en tiempo de ejecución, llame a nrSetObfuscationRules con una matriz vacía:
nrSetObfuscationRules(m.nr, [])Ordenamiento de reglas
El agente aplica las reglas en el orden en que aparecen en la matriz. La salida de una regla se convierte en la entrada de la siguiente. El orden importa cuando los patrones podrían superponerse:
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" }])Comportamiento y casos extremos
| Caso | Comportamiento |
|---|---|
| Sin reglas configuradas | El agente pasa todos los valores de atributo sin cambios y sin impacto en el rendimiento. |
Cadena replacement vacía | El agente elimina el contenido coincidente del valor. |
| Patrón regex inválido | El agente omite la regla y escribe una advertencia en el registro. |
| Valores de atributo que no son cadenas | El agente los transmite sin cambios. Solo se procesan los valores de cadena. |
| Reemplazar todas las reglas | Llame a nrSetObfuscationRules nuevamente con la nueva matriz. El agente descarta todas las reglas anteriores. |
Importante
Roku usa roRegex para la coincidencia de patrones. Roku no admite aserciones complejas de lookahead/lookbehind. Los patrones que son válidos en las expresiones regulares de JavaScript o Java pueden necesitar simplificarse para Roku.