Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Crear una consulta programada
Cree una consulta programada que ejecute automáticamente las consultas de CloudWatch Logs Insights y entregue los resultados a los destinos que elija.
Requisitos previos
Antes de crear una consulta programada, asegúrese de tener lo siguiente:
-
Grupos de registros: uno o más grupos de registros que contienen los datos que desea analizar
-
Función de IAM de ejecución: función de IAM con los siguientes permisos:
-
logs:StartQuery- Permiso para iniciar consultas de CloudWatch Logs Insights
-
logs:GetQueryResults- Permiso para recuperar los resultados de la consulta
-
logs:DescribeLogGroups- Permiso para acceder a la información del grupo de registros. Esto solo es necesario para los grupos de registros basados en prefijos para la detección de grupos de registros
-
Permisos de destino: permisos de IAM adicionales para el destino elegido:
-
Para el AWS CLI uso de la API: AWS credenciales configuradas con permisos para llamar a CloudWatch Logs APIs
Para ver ejemplos detallados de políticas de IAM, consulteAdministración de identidades y accesos para Amazon CloudWatch Logs. También hay que tener en cuenta que solo se pueden programar 1000 consultas por cuenta.
- Console
-
Para crear una consulta programada (consola)
-
Abre la consola CloudWatch de Logs en https://console.aws.amazon.com/cloudwatch/casa #logsV2:.
-
En el panel de navegación, selecciona Logs Insights.
-
Seleccione Crear consulta programada.
-
En la sección de definición de consultas:
-
En Idioma de consulta, elija el idioma de consulta que desee utilizar en la lista.
-
Para la cadena de consulta, introduzca su consulta de CloudWatch Logs Insights en el cuadro.
-
Para los grupos de registros, seleccione los grupos de registros que desee consultar en la lista.
-
En la sección de configuración del cronograma:
-
En la expresión Schedule, configure cuándo se ejecutará la consulta. Elija una de las opciones predefinidas o introduzca una expresión cron personalizada.
-
En Efectivo al crearse, especifique cuándo se activa la programación. Elija comenzar inmediatamente o en una fecha y hora específicas utilizando el YYYY/MM/DD formato.
-
En Intervalo de tiempo, especifique el período retrospectivo para cada ejecución de consulta. Introduzca la duración en minutos que define el tiempo transcurrido desde el momento de ejecución de la consulta.
-
En Continuar indefinidamente, especifique cuándo finaliza la programación. Elija ejecutar indefinidamente o hasta una fecha y hora específicas utilizando YYYY/MM/DD el formato.
-
La consola muestra las tres siguientes ejecuciones de consultas programadas en función de su configuración y muestra las fechas y horas exactas en UTC en las que se ejecutará la consulta.
-
En la sección Publicar los resultados de la consulta en S3 (opcional) (si utilizas el destino S3):
-
Para el URI de Amazon S3, introduzca el bucket y el prefijo de Amazon S3 donde se almacenarán los resultados (por ejemplo,s3://my-bucket/query-results/).
-
Seleccione View Amazon S3 para abrir la consola de Amazon S3 en una pestaña nueva y comprobar la configuración del bucket.
-
Elija Browse Amazon S3 para seleccionar una ubicación de Amazon S3 existente mediante el navegador Amazon S3.
-
En la sección Función de IAM para publicar los resultados de las consultas en Amazon S3:
-
En Seleccione un rol de IAM, elija un rol de IAM existente con las políticas requeridas o elija crear un nuevo rol en la consola de IAM para crear un nuevo rol.
-
Utilice el campo de búsqueda para buscar y seleccionar el rol de IAM adecuado de la lista.
-
En la sección sobre la función de IAM para la ejecución programada de consultas:
-
En Seleccione un rol de IAM, elija un rol de IAM existente con las políticas requeridas o elija crear un nuevo rol en la consola de IAM para crear un nuevo rol.
-
Utilice el campo de búsqueda para buscar y seleccionar el rol de IAM adecuado de la lista.
-
Seleccione Crear programación para crear la consulta programada.
- AWS CLI
-
Para crear una consulta programada (AWS CLI)
-
Utilice el create-scheduled-query comando para crear una nueva consulta programada:
aws logs create-scheduled-query \
--name "ErrorAnalysisQuery" \
--query-language "CWLI" \
--query-string "fields @timestamp, @message | filter @message like /ERROR/ | stats count() by bin(5m)" \
--schedule-expression "cron(8 * * * ? *)" \
--execution-role-arn "arn:aws:iam::123456789012:role/CloudWatchLogsScheduledQueryRole" \
--log-group-identifiers "/aws/lambda/my-function" "/aws/apigateway/my-api" \
--state "ENABLED"
- API
-
Para crear una consulta programada (API)
-
Utilice la CreateScheduledQuery acción para crear una nueva consulta programada. En el siguiente ejemplo, se crea una consulta programada que se ejecuta cada hora:
{
"name": "ErrorAnalysisQuery",
"queryLanguage": "CWLI",
"queryString": "fields @timestamp, @message | filter @message like /ERROR/ | stats count() by bin(5m)",
"scheduleExpression": "cron(8 * * * ? *)",
"executionRoleArn": "arn:aws:iam::123456789012:role/CloudWatchLogsScheduledQueryRole",
"logGroupIdentifiers": ["/aws/lambda/my-function", "/aws/apigateway/my-api"],
"state": "ENABLED"
}
Tras crear la consulta programada, puede verla y gestionarla desde la página de consultas programadas y mediante la ListScheduledQueries API, que muestra todas las consultas programadas con sus nombres, fechas de creación, estado de la última ejecución, hora de la última activación y frecuencia de repetición.