Creación de un valor controlado - Amazon CloudWatch

Creación de un valor controlado

importante

Asegúrese de utilizar canaries de Synthetics para monitorizar solo aquellos puntos de enlace y API en los que tenga propiedad o permisos. En función de la configuración de frecuencia de los valores controlados, estos puntos de conexión pueden experimentar un aumento del tráfico.

Cuando utiliza la consola de CloudWatch para crear un valor controlado, puede utilizar un esquema que CloudWatch proporciona para crear un valor controlado o escribir su propio script. Para obtener más información, consulte Uso de esquemas de valores controlados.

También puede crear un valor controlado mediante la AWS CloudFormation si está utilizando su propio script para el valor controlado. Para obtener más información, consulte AWS::Synthetics::Canary en la Guía del usuario de AWS CloudFormation.

Si está escribiendo su propio script, puede utilizar varias funciones que CloudWatch Synthetics ha integrado en una biblioteca. Para obtener más información, consulte Versiones de tiempo de ejecución de Synthetics.

nota

Cuando crea un valor controlado, una de las capas que se crean es una capa de Synthetics a la que se le antepone Synthetics. Esta capa es propiedad de la cuenta del servicio Synthetics y contiene el código del tiempo de ejecución.

Cómo crear un valor controlado
  1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.

  2. En el panel de navegación, elija Señales de aplicación, Valores controlados de Synthetics.

  3. Elija Crear valor controlado.

  4. Seleccione una de las siguientes opciones:

    • Para basar su valor controlado en un script de proyecto, elija Usar un esquema, y, a continuación, elija el tipo de valor controlado que desea crear. Para obtener más información acerca de lo que hace cada tipo de proyecto, consulte Uso de esquemas de valores controlados.

    • Para cargar su propio script de Node.js y crear un valor controlado personalizado, elija Cargar un script.

      A continuación, puede arrastrar su script al área Script o elegir Browse files (Examinar archivos) para desplazarse hasta el script en su sistema de archivos.

    • Para importar el script desde un bucket de S3, elija Import from S3 (Importar de S3). En Ubicación de origen, escriba la ruta completa al valor controlado o elija Examinar S3.

      Debe tener permisos s3:GetObject y s3:GetObjectVersion para el bucket de S3 que utilice. El bucket debe estar en la misma Región de AWS en la que está creando el valor controlado.

  5. En Nombre, escriba un nombre para su valor controlado. El nombre se utiliza en muchas páginas, por lo que le recomendamos que le asigne un nombre descriptivo que lo diferencie de otros canaries.

  6. En URL del punto de conexión o aplicación, escriba la dirección URL que desea que pruebe el valor controlado. Esta URL debe incluir el protocolo (como https://).

    Si desea que el valor controlado pruebe un punto de conexión en una VPC, también debe escribir información sobre la VPC más adelante en este procedimiento.

  7. Si utiliza su propio script para el valor controlado, en Controlador de Lambda, escriba el punto de entrada donde desea que comience el valor controlado. Si utiliza un tiempo de ejecución anterior a syn-nodejs-puppeteer-3.4 o syn-python-selenium-1.1, la cadena que ingrese debe terminar en .handler. Si utiliza syn-nodejs-puppeteer-3.4, syn-python-selenium-1.1 o un tiempo de ejecución posterior, no se aplica esta restricción.

  8. Si está utilizando variables de entorno en el script, elija Environment variables (Variables de entorno) y, a continuación, especifique un valor para cada variable de entorno definida en el script. Para obtener más información, consulte Variables de entorno.

  9. Bajo el título Programa, elija si desea ejecutar el valor controlado solo una vez, ejecutarlo continuamente con una expresión de frecuencia o programarlo con una expresión cron.

    • Cuando utilice la consola de CloudWatch para crear un valor controlado que funcione continuamente, puede elegir un índice entre una vez al minuto y una vez por hora.

  10. (Opcional) Para establecer un tiempo de espera para el valor controlado, elija Configuración adicional y, a continuación, especifique el valor de tiempo de espera. Haga que no sea inferior a 15 segundos para permitir arranques en frío de Lambda y el tiempo que tarda en arrancar la instrumentación del valor controlado.

  11. En Retención de datos, especifique cuánto tiempo se retiene la información sobre las ejecuciones de valores controlados fallidas y correctas. El intervalo abarca de 1 a 455 días.

    Esta configuración afecta solo a los datos que CloudWatch Synthetics almacena y muestra en la consola. No afecta a los datos almacenados en los buckets de Amazon S3, ni a los registros o métricas publicados por el valor controlado.

  12. En Almacenamiento de datos, seleccione el bucket de S3 que desea utilizar para almacenar los datos de las ejecuciones de valores controlados. El nombre del bucket no puede contener un punto (.). Si deja este valor en blanco, se utilizará un bucket de S3 predeterminado o se creará uno nuevo.

    Si utiliza syn-nodejs-puppeteer-3.0 o un tiempo de ejecución posterior, al introducir la dirección URL del bucket en el cuadro de texto, puede especificar un bucket en la Región actual o en otra región. Si utiliza una versión anterior del tiempo de ejecución, el bucket debe estar en la región actual.

  13. (Opcional) De forma predeterminada, los canaries almacenan sus artefactos en Amazon S3 y los artefactos se cifran en reposo mediante una clave de AWS KMS administrada por AWS. Puede utilizar una opción de cifrado diferente si selecciona Additional configuration (Configuración adicional) en la sección Data Storage (Almacenamiento de datos). Luego, puede elegir el tipo de clave que desea utilizar para el cifrado. Para obtener más información, consulte Cifrado de artefactos de un valor controlado.

  14. En Permisos de acceso, elija si desea crear un nuevo rol de IAM para ejecutar el valor controlado o utilizar uno existente.

    Si hace que CloudWatch Synthetics cree el rol, este incluirá automáticamente todos los permisos necesarios. Si desea crear el rol usted mismo, consulte Roles y permisos necesarios para los valores controlados para obtener información acerca de los permisos necesarios.

    Si utiliza la consola de CloudWatch para crear un rol para un valor controlado, al crear el valor controlado no podrá volver a utilizar el rol para otros valores controlados, ya que estos roles son específicos de un solo valor controlado. Si ha creado manualmente un rol que funcione para varios canaries, puede utilizar ese rol existente.

    Para utilizar un rol existente, debe tener el permiso iam:PassRole para pasar ese rol a Synthetics y Lambda. También debe tener el permiso iam:GetRole.

  15. (Opcional) Bajo el título Alarmas, elija si desea que se creen alarmas predeterminadas de CloudWatch para este valor controlado. Si decide crear alarmas, se crean con la siguiente convención de nombres: Synthetics-Alarm-canaryName-index

    index es un número que representa cada alarma que se crea para este valor controlado. La primera alarma tiene un índice de 1, la segunda alarma tiene un índice de 2, y así sucesivamente.

  16. (Opcional) Para que este valor controlado pruebe un punto de conexión que está en una VPC, elija Configuración de VPC y, a continuación, haga lo siguiente:

    1. Seleccione la VPC que aloja el punto de enlace.

    2. Seleccione una o más subredes en la VPC. Debe seleccionar una subred privada, ya que la instancia de Lambda no se puede configurar para ejecutarse en una subred pública cuando no se puede asignar una dirección IP a la instancia de Lambda durante la ejecución. Para obtener más información, consulte Configuración de una función de Lambda para obtener acceso a los recursos en una VPC.

    3. Seleccione uno o varios grupos de seguridad en la VPC.

    Si el punto de conexión está en una VPC, debe habilitar el valor controlado para enviar información a CloudWatch y a Amazon S3. Para obtener más información, consulte Ejecución de un valor controlado en una VPC.

  17. (Opcional) En Etiquetas, agregue uno o más pares de clave-valor como etiquetas para este valor controlado. Las etiquetas pueden ayudarle a identificar y organizar sus recursos de AWS y a realizar un seguimiento de sus costos de AWS. Para obtener más información, consulte Etiquetado de los recursos de Amazon CloudWatch.

  18. (Opcional) Bajo el título Rastreo activo, elija si desea habilitar el rastreo activo de X-Ray para este valor controlado. Esta opción solo está disponible si el valor controlado utiliza la versión de tiempo de ejecución syn-nodejs-2.0 o una posterior. Para obtener más información, consulte Canaries y rastreo X-Ray.

Recursos que se crean para canaries

Al crear un valor controlado, se crean los siguientes recursos para el mismo:

  • Un rol de IAM con el nombre CloudWatchSyntheticsRole-canary-name-uuid (si utiliza la consola de CloudWatch para crear el valor controlado y especifica que se cree un nuevo rol para el valor controlado)

  • Una política de IAM con el nombre CloudWatchSyntheticsPolicy-canary-name-uuid.

  • Un bucket de S3 con el nombre cw-syn-results-accountID-region.

  • Alarmas con el nombre Synthetics-Alarm-MyCanaryName, si desea que se creen alarmas para el valor controlado.

  • Capas y funciones de Lambda, si utiliza un esquema para crear el valor controlado. Estos recursos tienen el prefijo cwsyn-MyCanaryName.

  • Grupos de registro de CloudWatch Logs con el nombre /aws/lambda/cwsyn-MyCanaryName-randomId.