Uso de la interfaz de consulta de Internet Monitor
Una opción para obtener más información sobre el tráfico de Internet de su aplicación de AWS es usar la interfaz de consulta de Internet Monitor. Para utilizar la interfaz de consulta, debe crear una consulta con los filtros de datos que elija y, a continuación, ejecutar la consulta para obtener un subconjunto de los datos de Internet Monitor. Explorar los datos que devuelve la consulta puede proporcionar información sobre el rendimiento de su aplicación en Internet.
Puede consultar y explorar todas las métricas que Internet Monitor captura mediante el monitor, incluidas las puntuaciones de disponibilidad y rendimiento, los bytes transferidos, los tiempos de ida y vuelta y el tiempo hasta el primer byte (TTFB).
Internet Monitor utiliza la interfaz de consulta para proporcionar los datos que puede explorar en el panel de la consola de Internet Monitor. Puede consultar y filtrar los datos de Internet de la aplicación con las opciones de búsqueda del panel, en la página Analizar o en la página Optimizar.
Si desea tener una flexibilidad para explorar y filtrar sus datos mayor que la que ofrece el panel, puede usar la interfaz de consulta mediante las operaciones de la API de Internet Monitor mediante la AWS Command Line Interface o un AWS SDK. En esta sección, se presentan los tipos de consultas que puede usar con la interfaz de consultas y los filtros que puede especificar para crear un subconjunto de datos, a fin de obtener información sobre el tráfico de Internet de su aplicación.
Temas
Cómo utilizar la interfaz de consulta
Para crear una consulta con la interfaz de consulta, se elige un tipo de consulta y, a continuación, se especifican los valores de filtro para devolver el subconjunto específico deseado de los datos del archivo de registro. A continuación, puede trabajar con el subconjunto de datos para filtrar más detalladamente, ordenar y crear informes, etc.
El proceso de consulta funciona de la siguiente manera:
Cuando ejecuta una consulta, Internet Monitor devuelve un
query ID
, que es exclusivo de la consulta. En esta sección se describen los tipos de consultas disponibles y las opciones para filtrar los datos de las consultas. Para entender cómo funciona esto, también puede revisar la sección en ejemplos de consultas.Debe especificar el ID de consulta con el nombre de su monitor mediante la operación GetQueryResults de la API, para devolver los resultados de los datos de la consulta. Cada tipo de consulta devuelve un conjunto diferente de campos de datos. Para obtener más información, consulte Obtener resultados de las consultas.
La interfaz de consultas proporciona los tres tipos de consultas que se presentan a continuación. Cada tipo de consulta devuelve un conjunto diferente de información sobre el tráfico de los archivos de registro, tal y como se muestra.
Mediciones: proporciona la puntuación de disponibilidad, la puntuación de rendimiento, el tráfico total y los tiempos de ida y vuelta, en intervalos de 5 minutos.
Ubicaciones principales: proporciona la puntuación de disponibilidad, la puntuación de rendimiento, el tráfico total y la información del tiempo hasta el primer byte (TTFB), para las combinaciones de ubicación principal y ASN que esté supervisando, por volumen de tráfico.
Detalles de las principales ubicaciones: proporciona el TTFB para Amazon CloudFront, su configuración actual y la configuración de Amazon EC2 con mejor rendimiento, en intervalos de 1 hora.
Sugerencias de tráfico general: proporciona el TTFB, a partir de una media ponderada de 30 días, para todo el tráfico en cada ubicación de AWS que se supervisa.
Detalles de las sugerencias de tráfico general: proporciona el TTFB, a partir de una media ponderada de 30 días, para cada ubicación principal, de una ubicación de AWS propuesta.
Sugerencias de enrutamiento: proporciona el tiempo de ida y vuelta (RTT) promedio previsto desde un prefijo IP hasta una ubicación de AWS para un solucionador de DNS. El RTT se calcula a intervalos de una hora, durante un periodo de una hora.
Es posible filtrar los datos más con criterios específicos. En la mayoría de los tipos de consultas, a excepción de las sugerencias de enrutamiento, se pueden aplicar filtros especificando uno o más de los siguientes criterios:
Ubicación de AWS: para la ubicación de AWS puede especificar CloudFront o una Región de AWS, como por ejemplo
us-east-2
.ASN: especifique el número de sistema autónomo (ASN) de un solucionador de DNS (normalmente, un ISP), por ejemplo, 4225.
Ubicación del cliente: para la ubicación, especifique una ciudad, un área metropolitana, una subdivisión o un país.
Ubicación de AWS propuesta: especifique una Región de AWS, por ejemplo
us-east-2
, o una zona local de AWS. Puede utilizar este filtro con el tipo de consulta de detalles de sugerencias de tráfico global.Ubicación geográfica: especifique la ubicación
geo
para algunas consultas. Esto es obligatorio para las consultas que utilizan el tipo de consulta deTop locations
, pero no está permitido para otros tipos de consulta. Para saber cuándo especificar los parámetros de filtrogeo
, consulte la sección ejemplos de consultas.
En el caso de este tipo de consultas se pueden filtrar aún más los datos especificando uno o más de los siguientes criterios:
Ubicación de AWS actual: especifique una Región de AWS, como por ejemplo
us-east-2
.Ubicación de AWS propuesta: especifique una Región de AWS, por ejemplo
us-east-2
, o una zona local de AWS.Prefijo IPv4: especifique un prefijo IPv4 en el formato estándar, similar a
192.0.2.0/24
.ARN del monitor: especifique el ARN de un monitor concreto.
IP de solucionador de DNS: especifique la dirección IP de un solucionador de DNS.
ISP de solucionador de DNS: especifique el nombre de un solucionador de DNS (normalmente un ISP), por ejemplo,
Cloudflare
.ASN de solucionador de DNS: especifique el número de sistema autónomo (ASN) de un solucionador de DNS, por ejemplo, 4225.
Los operadores que puede utilizar para filtrar los datos son EQUALS
y NOT_EQUALS
. Para obtener más información sobre los parámetros de filtrado, consulte la operación de la API FilterParameter.
Para obtener más información sobre las operaciones de la interfaz de consulta, consulte las siguientes operaciones de la API en la Guía de referencia de la API de Internet Monitor:
Para crear y ejecutar una consulta, consulte la operación de la API StartQuery.
Para detener una consulta, consulte la operación de la API StopQuery.
Para devolver los datos de una consulta que haya creado, consulte la operación de la API GetQueryResults.
Para recuperar el estado de una consulta, consulte la operación de la API GetQueryStatus.
Consultas de ejemplo
Para crear una consulta que pueda utilizar para recuperar un conjunto de datos filtrados del archivo de registro del monitor, utilice la operación de la API StartQuery. Debe especificar un tipo de consulta y filtrar los parámetros para esta. Cuando utilice la operación de la API de la interfaz de consultas de Internet Monitor para obtener los resultados de la consulta mediante el uso de la consulta, recuperará el subconjunto de datos con el que desee trabajar.
Veamos algunos ejemplos para ilustrar cómo funcionan los tipos de consulta y los parámetros de filtro.
Ejemplo 1
Supongamos que desea recuperar todos los datos del archivo de registro del monitor de un país específico, a excepción de una ciudad. El siguiente ejemplo muestra los parámetros de filtro de una consulta que podría crear mediante la operación StartQuery
para este escenario.
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "MEASUREMENTS" FilterParameters: [ { Field: "country", Operator: "EQUALS", Values: ["Germany"] }, { Field: "city", Operator: "NOT_EQUALS", Values: ["Berlin"] }, ] }
Ejemplo 2
Como otro ejemplo, supongamos que desea ver las ubicaciones principales por área metropolitana. Puede usar la siguiente consulta de ejemplo para este escenario.
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "TOP_LOCATIONS" FilterParameters: [ { Field: "geo", Operator: "EQUALS", Values: ["metro"] }, ] }
Ejemplo 3
Supongamos que quiere ver las principales combinaciones de redes urbanas en el área metropolitana de Los Ángeles. Para ello, especifique geo=city
y, a continuación, establezca metro
en Los Ángeles. Ahora, la consulta devuelve las principales redes urbanas del área metropolitana de Los Ángeles en lugar de las principales áreas metropolitanas + redes en general.
Este es el ejemplo de consulta que puede usar:
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "TOP_LOCATIONS" FilterParameters: [ { Field: "geo", Operator: "EQUALS", Values: ["city"] }, { Field: "metro", Operator: "EQUALS", Values: ["Los Angeles"] } ] }
Ejemplo 4
Ahora supongamos que desea recuperar los datos de TTFB de una subdivisión específica (por ejemplo, un estado de EE. UU.).
El siguiente es un ejemplo de consulta para este escenario:
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "TOP_LOCATION_DETAILS" FilterParameters: [ { Field: "subdivision", Operator: "EQUALS", Values: ["California"] }, ] }
Ejemplo 5
Y ahora, supongamos que desea recuperar los datos de TTFB de cada ubicación en la que haya tráfico de clientes en la aplicación.
El siguiente es un ejemplo de consulta para este escenario:
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "OVERALL_TRAFFIC_SUGGESTIONS" FilterParameters: [] } Results: [us-east-1, 40, us-west-2, 30], [us-east-1, 40, us-west-1, 35], [us-east-1, 40, us-east-1, 44], [us-east-1, 40, CloudFront, 22], ... [us-east-2, 44, us-west-2, 30], [us-east-2, 44, us-west-1, 35], ...
Ejemplo 6
Digamos que desea recuperar datos de TTFB de una nueva Región de AWS específica.
El siguiente es un ejemplo de consulta para este escenario:
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "OVERALL_TRAFFIC_SUGGESTIONS_DETAILS" FilterParameters: [ { Field: "proposed_aws_location", Operator: "EQUALS", Values: ["us-west-2"] }, ] } Results: [San Jose, San Jose-Santa Clara, California, United States, 7922, us-east-1, 40, 350, 350, us-west-2, 45] [San Jose, San Jose-Santa Clara, California, United States, 7922, us-west-1, 35, 450, 450, us-west-2, 45]
Ejemplo 7
Un último ejemplo consiste en recuperar datos para solucionadores de DNS específicos.
El siguiente es un ejemplo de consulta para este escenario:
{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "ROUTING_SUGGESTIONS" FilterParameters: [ { Field: "proposed_aws_location", Operator: "EQUALS", Values: ["us-east-1"] }, ] } Results: [162.158.180.245, 13335, Cloudflare, [5.4.0.0/14], us-east-2, 200.0, us-east-1, 160.0] [162.158.180.243, 13313, Cloudflare, [5.4.0.0/10], us-east-2, 150.0, us-east-1, 125.0]
Obtención de los resultados de la consulta
Tras definir una consulta, puede devolver un conjunto de resultados mediante la consulta, ejecutando otra operación de la API de Internet Monitor, GetQueryResults. Cuando ejecuta GetQueryResults
, especifica el ID de consulta de la consulta que definió, junto con el nombre del monitor. GetQueryResults
recupera los datos de la consulta especificada en un conjunto de resultados.
Cuando ejecute una consulta, asegúrese de que esta haya terminado de ejecutarse antes de usar GetQueryResults
para ver los resultados. Puede determinar si la consulta se completó mediante la operación de la API GetQueryStatus. Cuando el Status
de la consulta sea SUCCEEDED
, puede continuar con la revisión de los resultados.
Cuando finalice la consulta, puede usar la siguiente información como ayuda para la revisión de los resultados. Cada tipo de consulta que utilice para crear una consulta incluye un conjunto único de campos de datos de los archivos de registro, tal y como se describe en la siguiente lista:
- Mediciones
El tipo de consulta
measurements
devuelve los siguientes datos:timestamp, availability, performance, bytes_in, bytes_out, rtt_p50, rtt_p90, rtt_p95
- Ubicaciones principales
El tipo de consulta
top locations
agrupa los datos por ubicación y proporciona los datos promediados durante un periodo. Los datos que devuelve incluyen lo siguiente:aws_location, city, metro, subdivision, country, asn, availability, performance, bytes_in, bytes_out, current_fbl, best_ec2, best_ec2_region, best_cf_fbl
Tenga en cuenta que la
city
, lametro
y lasubdivision
solo se devuelven si elige ese tipo de ubicación para el campogeo
. Se devuelven los siguientes campos de ubicación, según el tipo de ubicación que especifique parageo
:city = city, metro, subdivision, country metro = metro, subdivision, country subdivision = subdivision, country country = country
- Detalles de las ubicaciones principales
El tipo de consulta
top locations details
devuelve datos agrupados hora por hora. La consulta devuelve los siguientes datos:timestamp, current_service, current_fbl, best_ec2_fbl, best_ec2_region, best_cf_fbl
- Sugerencias generales de tráfico
El tipo de consulta
overall traffic suggestions
devuelve datos agrupados hora por hora. La consulta devuelve los siguientes datos:current_aws_location, proposed_aws_location, average_fbl, traffic, optimized_traffic_excluding_cf, optimized_traffic_including_cf
- Detalles de sugerencias generales de tráfico
El tipo de consulta
overall traffic suggestions details
devuelve datos agrupados hora por hora. La consulta devuelve los siguientes datos:aws_location, city, metro, subdivision, country, asn, traffic, current_aws_location, fbl_data
- Sugerencias de enrutamiento
El tipo de consulta
routing suggestions
devuelve datos agrupados hora por hora. La consulta devuelve los siguientes datos:dns_resolver_ip, dns_resolver_asn, dns_resolver_isp, ipv4_prefixes, current_aws_location, current_latency, proposed_aws_location, proposed_latency
Cuando ejecuta la operación de la API GetQueryResults
, Internet Monitor devuelve lo siguiente en la respuesta:
Una matriz de cadenas de datos que contiene los resultados que devuelve la consulta. La información se devuelve en matrices alineadas con el campo
Fields
, y también las devuelve mediante la llamada a la API. Con el campoFields
, puede analizar la información del repositorioData
y, a continuación, filtrarla más detalladamente u ordenarla según sus necesidades.Una matriz de campos que muestra los campos para los que la consulta devolvió datos (en la respuesta del campo
Data
). Cada elemento de la matriz es un par de tipos de datos-nombre, comoavailability_score
-float
.
Solución de problemas
Si se devuelven errores cuando usa las operaciones de la API de la interfaz de consulta, compruebe que dispone de los permisos necesarios para usar Internet Monitor. Asegúrese específicamente de que tiene habilitados los siguientes permisos:
internetmonitor:StartQuery internetmonitor:GetQueryStatus internetmonitor:GetQueryResults internetmonitor:StopQuery
Estos permisos se incluyen en la política de AWS Identity and Access Management recomendada para usar el panel de control de Internet Monitor de la consola. Para obtener más información, consulte Políticas administradas de AWS para Internet Monitor.