Con NRQL, puede dividir los resultados de su consulta en grupos que cubran ciertos rangos usando la funciónbuckets
.
Puede utilizar la función FACET buckets()
para agrupar y categorizar datos en depósitos según rangos específicos, como para crear histogramas o distribuciones de frecuencia. Úselo en combinación con funciones de agregación como count()
o sum()
para analizar la distribución de datos en diferentes rangos.
A continuación se muestran algunos casos de uso:
- Análisis del tiempo de respuesta: puede utilizar
FACET buckets()
para agrupar el tiempo de respuesta en rangos (por ejemplo, 0-100 ms, 100-200 ms, 200-300 ms) y calcular el recuento o el tiempo de respuesta promedio dentro de cada rango. Esto le permite comprender la distribución del tiempo de respuesta e identificar problemas de rendimiento. - Examinar los tamaños de las solicitudes: al utilizar
FACET buckets()
en los tamaños de las solicitudes, puede categorizar el tamaño de las solicitudes en diferentes depósitos (por ejemplo, 0-1 KB, 1-5 KB, 5-10 KB) y analizar la frecuencia de las solicitudes que se encuentran dentro de cada depósito. Esto puede ayudarle a identificar patrones y optimizar la asignación de recursos. - monitoreo tasa de errores: Puede usar
FACET buckets()
en códigos de error o tasa de errores para agruparlos en rangos específicos. Por ejemplo, podrías crear depósitos para diferentes códigos de error HTTP (como 400, 500 y otros) o rangos de tasa de errores (por ejemplo, 0-1% o 1-5%). Esto le permite realizar un seguimiento de la distribución de sus errores e identificar áreas que requieren atención. - Seguimiento de la participación del usuario: si tiene una métrica relacionada con la participación del usuario, como la duración de las sesiones o las visitas a la página, puede usar
FACET buckets()
para agruparlas en intervalos de tiempo. Esto le permite analizar cómo los usuarios interactúan con su aplicación o sitio web en diferentes rangos de tiempo.
Crear consulta NRQL agrupada
Para devolver resultados agrupados, utilice la cláusula FACET buckets()
en una consulta NRQL. Una consulta agrupada tiene la siguiente estructura:
SELECT FUNCTION(ATTRIBUTE) FROM DATA_TYPE FACET buckets(ATTRIBUTE, CEILING_VALUE, NUMBER_OF_BUCKETS)
Puede utilizar la consulta NRQL agrupada con cualquier atributo almacenado como un valor numérico en la base de datos de New Relic.
Ejemplo de consulta de depósito
Para construir una consulta de depósito:
- Cree una declaración NRQL con una declaración
SELECT
para un atributo; por ejemplo,SELECT average(duration)
. - Agregue una cláusula
FACET
que tenga facetas enbuckets()
. Por ejemplobuckets(duration, 40, 10)
. También puede agrupar un atributo diferente al de la declaraciónSELECT
. Por ejemplo, para mostrar la duración promedio de las llamadas a la base de datos:buckets(databaseCallCount, 40, 10)
.
La siguiente consulta calcula la duración promedio de una ruta de página específica en 10 depósitos, con un límite superior de 40. Todos los valores por encima de nuestro límite superior de 40 se agrupan en el último segmento, >=36.0
.
SELECT average(duration) FROM PageView WHERE pageUrl LIKE 'http://webportal.telco%' SINCE 1 week ago FACET buckets(duration, 40, 10)
Esta consulta devuelve estos resultados:
A continuación se muestra un ejemplo de una consulta NRQL con segmentos divididos en diez grupos. El cubo inferior incluye valor atípico, por lo que es posible que tengas que ajustarlo en consecuencia.