Este documento describe las funciones NRQL admitidas en las reglas de puerta de enlace (gateway) de Control de pipelines. Emplee estas funciones para crear reglas más poderosas y precisas para filtrar y gestionar sus datos.
Función | Descripción | Ejemplo de consulta NRQL |
---|---|---|
Extrae un valor de una cadena según un patrón especificado. |
| |
Filtra datos en función de facetas o dimensiones asociadas a tu métrica/evento. |
| |
Devuelve el entero más grande menor o igual al número especificado. |
| |
Extrae un campo específico de una estructura de datos compleja (por ejemplo, un objeto JSON). |
| |
Extrae el componente de hora de una timestamp. |
| |
Devuelve el resto de una operación de división. |
| |
Convierte un valor de cadena en un tipo numérico. |
| |
Redondea un número al entero más cercano o a un número específico de decimales. |
| |
Convierte un valor numérico u otro valor en un tipo de cadena. |
| |
Extrae una porción específica de una cadena. |
| |
| Extrae el día de la semana de una timestamp (por ejemplo, 'lunes', 'domingo'). |
|
Ejemplos de múltiples funciones NRQL en reglas de puerta de enlace (gateway)
Estos ejemplos demuestran cómo se pueden combinar múltiples funciones y usarlas en escenarios más complejos para lograr un filtrado y eliminación de datos precisos.
- Esta regla elimina los datos de los contenedores que salieron, pero conserva los registros de los contenedores que salieron en los últimos 10 minutos:
DELETE FROM ContainerSample WHERE state = 'exited' AND status LIKE '%Exited%' AND NOT (status LIKE '%second%' AND numeric(aparse(status,'%Exited (%) * seconds ago%')) < 10) AND NOT (status LIKE '%About a minute ago%' OR status LIKE '%minute%' AND numeric(aparse(status,'%Exited (%) * minutes ago%')) < 10)
- Esta regla elimina los logs que están asociados con un patrón de logs específico (
collectd
) y que no son tipos de eventos personalizados:
DELETE FROM Log, LogExtendedRecord WHERE dimensions() LIKE '%collectd%' AND newrelic.logs.customEventType IS NULL
- Esta regla elimina un tipo específico de log de errores, pero los muestrea conservando solo los registros donde la timestamp es un múltiplo de 101:
DELETE FROM Log WHERE message LIKE '%lib/ladon/middleware/caching.rb:49 run> terminated with exception%' AND floor(timestamp/101) = (timestamp/101) AND newrelic.logs.customEventType IS NULL
Estas nuevas funciones amplían significativamente las capacidades de su consulta NRQL cuando trabaja con el gateway de Control de pipelines, permitiendo un análisis y gestión de datos más precisos.