Una forma de gestionar la ingesta de datos es configurar reglas de eliminación de datos. Con la caída de datos puedes:
- Filtrar datos de bajo valor sin importancia
- Filtrar datos potencialmente confidenciales
Descripción general
Con reglas de eliminación de datos, puede especificar qué tipos de datos no desea que se guarden en su organización New Relic.
Los datos eliminados no cuentan para la ingesta de datos y, por lo tanto, no son facturables. Para obtener más información sobre qué datos cuentan como facturables o no, consulte Ingesta de datos.
Las reglas de eliminación solo se aplican a los datos que llegan desde el momento en que crea la regla. No eliminan datos que ya han sido ingeridos.
Obtenga más información sobre cómo eliminar datos en este video (7:09 minutos):
Además de crear reglas para eliminar datos, otras formas de minimizar los datos no deseados incluyen:
- Si desea eliminar datos de intervalo de tiempo de métrica APM, puede utilizar reglas de normalización métrica.
- Si está informando un registro, puede colocar datos log a través de la UI.
- Si está utilizando la escritura remota de Prometheus, consulte Eliminar datos de escritura remota de Prometheus.
Requisitos
La capacidad de crear y editar reglas de filtro de caída está vinculada a la capacidadNRQL drop rules
.
Los siguientes tipos de datos pueden ser objetivos para la eliminación de datos:
Evento reportado por APM
Evento informado browser
Evento reportado desde dispositivos móviles
Evento reportado por Sintético
evento personalizado (como los generados por las API del agente APM o la API de eventos)
log datos (también puede usar la UI para eliminar datos)
Rastreo distribuido abarca
Evento de monitoreo de infraestructura predeterminado y evento de integración de infraestructura . Algunas advertencias:
- Cuando elimina estos datos, los datos sin procesar se eliminan, pero los eventos agregados
SystemSample
,ProcessSample
,NetworkSample
yStorageSample
todavía están disponibles (para obtener más información sobre esto, consulte retención de datos). Aunque todavía están disponibles, estos datos no cuentan para la ingesta y no son facturables. - Los datos de infraestructura sin procesar se utilizan para alertar, por lo que si elimina esos datos, no podrá alertar sobre ellos. Debido a que los datos agregados aún están disponibles, es posible que aún los vea en gráficos con rangos de tiempo superiores a 59 minutos.
- Cuando elimina estos datos, los datos sin procesar se eliminan, pero los eventos agregados
Métrica dimensional (el tipo de datos
Metric
). Algunas advertencias:- Para organizaciones con nuestro modelo de precios original: la facturación se basa en la suscripción del producto, lo que significa que las dimensiones métricas eliminadas siguen siendo facturables.
- Para métricas generadas por el servicio evento-to-métrica: las reglas de eliminación no funcionarán, pero estas métricas se pueden detener o podar atributos deshabilitando o reconfigurando la regla evento-to-métrica.
Crear una regla para descartar datos
Advertencia
Tenga cuidado al decidir eliminar datos. Los datos que usted arroja no se pueden recuperar. Para obtener más detalles sobre posibles problemas, consulte Notas de precaución.
Para eliminar datos, cree una regla de eliminación de formato NerdGraphque incluya:
Una cadena NRQL que especifica qué tipos de datos eliminar
Un tipo
action
que especifica cómo aplicar la cadena NRQL
Puedes formar y realizar la llamada en el explorador de API de NerdGraph: one.newrelic.com > Apps > NerdGraph API explorer.
El límite de longitud de la consulta NRQL es de 4096 caracteres. Si excede la longitud, nerdGraph arrojará un error INVALID_NRQL_TOO_LONG
.
Hay dos formas de eliminar datos:
Drop entire data types or a data subset (con filtro opcional). Esto usa el tipo
DROP_DATA
action y usa NRQL del formulario:SELECT * FROM DATA_TYPE_1, DATA_TYPE_2 (WHERE OPTIONAL_FILTER)Para este tipo de regla de eliminación, no puede utilizar nada más que
*
en la cláusulaSELECT
.Drop attributes from data types (con filtro opcional). Esto usa el tipo
DROP_ATTRIBUTES
action y usa NRQL del formulario:SELECT dropAttr1, dropAttr2 FROM DATA_TYPE (WHERE OPTIONAL_FILTER)Para este tipo de regla de eliminación, debe pasar una lista no vacía de nombres de atributos sin formato.
Restricciones NRQL
No todas las cláusulas NRQL tienen sentido para generar reglas de eliminación. Puede proporcionar una cláusula WHERE
para seleccionar datos con un atributo específico. No se pueden utilizar otras características como LIMIT
, TIMESERIES
, COMPARE WITH
, FACET
y otras cláusulas.
SINCE
y UNTIL
no se admiten en las reglas de eliminación. Si tiene reglas de tiempo específico (por ejemplo, dejar todo hasta un momento en el futuro), use WHERE timestamp < (epoch milliseconds in the future)
. Tampoco puede utilizar SINCE
para eliminar datos históricos: las reglas de eliminación de NRQL solo se aplican a los datos informados después de que se creó la regla de eliminación. Si necesita eliminar datos que ya han sido reportados, comuníquese con su representante de New Relic.
JOIN
y las subconsultas tampoco son compatibles. Las reglas de eliminación se aplican a cada punto de datos de forma independiente y no se pueden consultar otros datos para determinar si se debe aplicar una regla de eliminación.
Los dos tipos de acciones tienen estas restricciones:
DROP_DATA
solo puede usarSELECT *
.DROP_ATTRIBUTES
requiere el uso deSELECT
con atributo "raw" (atributo sin función de agregador aplicada). Esto también significa que no puedes usarSELECT *
. Además, hay algunos atributos que son integrales para su tipo de datos ycannot be dropped
(como
timestamp
en datos de eventos). Si los incluyes, el registro fallará.
Ejemplos de reglas de caída
A continuación se muestran algunos ejemplos de reglas de eliminación:
Verifica que tu regla de abandono funcione
Después de crear una regla de eliminación, verifique que funcione como se esperaba. La regla debería entrar en vigor rápidamente después de un registro exitoso, así que intente ejecutar una versión TIMESERIES
de la consulta que registró para ver que los datos desaparecen.
Tipo de regla de eliminación | NRQL |
---|---|
| Drop rule NRQL:
Validation NRQL:
Esto debería caer a 0. Para verificar que no afectó a nada más, invierta la cláusula |
| Drop rule NRQL:
Validation NRQL:
Ambas líneas deberían caer a 0. Para verificar que no afectó el evento que contenía estos atributos y aún debería hacerlo, invierta la cláusula |
Ver reglas
A continuación se muestra un ejemplo de llamada a NerdGraph que devuelve las reglas de eliminación establecidas en una cuenta:
{ actor { account(id: YOUR_ACCOUNT_ID) { nrqlDropRules { list { rules { id nrql accountId action createdBy createdAt description } error { reason description } } } } }}
Eliminar reglas de colocación
A continuación se muestra un ejemplo de llamada a NerdGraph que elimina dos reglas de eliminación específicas:
mutation { nrqlDropRulesDelete(accountId: YOUR_ACCOUNT_ID, ruleIds: ["48", "98"]) { successes { id nrql accountId action description } failures { error { reason description } submitted { ruleId accountId } } }}
Auditar el historial de reglas de eliminación
Para ver quién creó y eliminó reglas de eliminación, consulte el registro de auditoría de su cuenta. La lista extrema también incluye el ID de usuario de la persona que creó la regla.
Precauciones al soltar datos
Al crear reglas de eliminación, usted es responsable de garantizar que las reglas identifiquen y descarten con precisión los datos que cumplan con las condiciones que haya establecido. También eres responsable de monitorear la regla, así como los datos que revelas a New Relic.
New Relic no puede garantizar que esta funcionalidad resuelva por completo las inquietudes que pueda tener sobre la divulgación de datos. New Relic no revisa ni monitor qué tan efectivas son las reglas que usted desarrolla.
La creación de reglas sobre datos confidenciales puede filtrar información sobre qué tipos de datos mantiene, incluido el formato de sus datos o sistemas (por ejemplo, al hacer referencia a direcciones de correo electrónico o números de tarjetas de crédito específicos). Las reglas que usted crea, incluida toda la información contenida en esas reglas, pueden ser vistas y editadas por cualquier usuario con los permisos de control de acceso basados en roles pertinentes.
Sólo se eliminarán los datos nuevos. Los datos existentes no se pueden editar ni eliminar.
Drop atributo en rollups dimensionales métricas
Dimensional métrica métrica agregada en rollups para almacenamiento a largo plazo y como forma de optimizar consultas a largo plazo. Se aplican límites de cardinalidad métrica a estos datos.
Puede utilizar esta característica para decidir qué atributo no necesita para el almacenamiento y la consulta a largo plazo, pero que le gustaría mantener para la consulta en tiempo real.
Por ejemplo, agregar containerId
como atributo puede ser útil para la resolución de problemas en vivo o análisis recientes, pero puede no ser necesario cuando se realizan consultas durante períodos más prolongados para tendencias más importantes. Debido a lo único que puede ser algo como containerId
, puede llevarlo rápidamente hacia sus límites de cardinalidad métrica que, cuando se alcanza, detiene la síntesis de resúmenes durante el resto de ese día UTC.
Esta característica también le permite mantener el atributo de alta cardinalidad en los datos sin procesar y eliminarlos de los paquetes acumulativos, lo que le brinda más control sobre la rapidez con la que se acerca a sus límites de cardinalidad.
Uso
Drop attributes from dimensional metrics rollups (con filtro opcional). Esto usa el tipo DROP_ATTRIBUTES_FROM_METRIC_AGGREGATES
action y usa NRQL del formulario:
SELECT dropAttr1, dropAttr2 FROM Metric (WHERE OPTIONAL_FILTER)
Aquí hay un ejemplo de solicitud de NerdGraph:
mutation { nrqlDropRulesCreate( accountId: YOUR_ACCOUNT_ID rules: [ { action: DROP_ATTRIBUTES_FROM_METRIC_AGGREGATES nrql: "SELECT containerId FROM Metric WHERE metricName = 'some.metric'" description: "Removes the containerId from long term querys." } ] ) { successes { id } failures { submitted { nrql } error { reason description } } }}
Para verificar que esté funcionando, espere de 3 a 5 minutos para que se seleccione la regla y se generen datos agregados. Luego, asumiendo que el ejemplo NRQL anterior es su regla de eliminación, ejecute la siguiente consulta:
SELECT count(containerId) FROM Metric WHERE metricName = 'some.metric' TIMESERIES SINCE 2 hours agoSELECT count(containerId) FROM Metric WHERE metricName = 'some.metric' TIMESERIES SINCE 2 hours ago RAW
La primera consulta recupera resúmenes métricos y debería reducirse a 0 ya que containerId
se eliminó según la nueva regla de eliminación. La segunda consulta recupera datos brutos métricos utilizando la palabra clave RAW
y debería continuar manteniéndose estable ya que los datos brutos no se ven afectados por la nueva regla de eliminación. Para obtener más información sobre cómo ver el impacto que esto tendrá en su cardinalidad, consulte Comprender y consultar la alta cardinalidad métrica.
Restricciones
Todas las restricciones que se aplican a DROP_ATTRIBUTES
se aplican a DROP_ATTRIBUTES_FROM_METRIC_AGGREGATES
con la restricción adicional de que solo puede orientar el tipo de datos Metric
. Tampoco funcionan en Metric
consulta de segmentación de datos creados por un evento a regla métrica o en Metric
consulta de segmentación de datos de intervalo de tiempo.
Aprende más
Recomendaciones para aprender más:
- Conceptos básicos y terminología de NerdGraph
- Conceptos básicos de NRQL
- Explore el foro de soporte para conocer los debates de la comunidad sobre las reglas de eliminación de NRQL.
- Para profundizar en la gestión de la ingesta de datos para una organización compleja, consulte Gobernanza de la ingesta de datos.