View a markdown version of this page

Supervisión de la solución - Programador de instancias de AWS

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.

Supervisión de la solución

Registro y notificaciones

El programador de instancias utiliza un registro estructurado optimizado para las consultas de Logs Insights. CloudWatch Esta solución registra información de procesamiento para cada instancia etiquetada, los resultados de la evaluación de períodos para la instancia, el estado deseado de la instancia durante ese período, la acción aplicada y mensajes de depuración.

Los registros se escriben en Amazon CloudWatch Logs en dos grupos de registros:

{stackName}-{namespace}-administrative-logs

Registra el registro y la anulación del registro de recursos, las operaciones de recursos personalizadas, las solicitudes de CLI y otras actividades administrativas.

{stackName}-{namespace}-scheduling-logs

Registros para programar las operaciones, incluida la orquestación y la ejecución del controlador de solicitudes.

Los registros de advertencias y errores también se reenvían a un tema de Amazon SNS creado por una solución, que se puede configurar para enviar mensajes a una dirección de correo electrónico suscrita. Encontrará el nombre del tema de Amazon SNS en la pestaña Salidas de la pila de soluciones.

Etiquetas informativas

Cuando el etiquetado informativo está activado (opción predeterminada), el programador de instancias escribe las etiquetas directamente en los recursos gestionados para proporcionar at-a-glance visibilidad de la actividad de programación de la solución. Estas etiquetas se aplican mediante la API de etiquetado de AWS Resource Groups y se actualizan cada vez que el programador procesa un recurso.

Puede activar o desactivar esta función mediante el parámetro Habilitar el etiquetado informativo del hub stack. Para obtener más información, consulte Actualizar los ajustes de configuración global.

Claves de etiquetas informativas

Las siguientes etiquetas se escriben en los recursos gestionados:

Clave de etiqueta Description (Descripción)

IS-ManagedBy

El ARN de la pila central de Instance Scheduler que administra este recurso. Se aplica cuando un recurso se registra por primera vez para su programación y en cada acción de programación posterior.

IS-LastAction

La última acción de programación realizada en el recurso, junto con una marca de tiempo UTC. Por ejemplo: Started 2025-06-15 09:00:00 UTC o Stopped 2025-06-15 17:00:00 UTC. Esta etiqueta solo se actualiza cuando el programador inicia o detiene activamente un recurso (no cuando evalúa un recurso y determina que no es necesario realizar ninguna acción).

IS-Error

Si el programador encuentra un error al procesar un recurso, esta etiqueta contiene el código de error y una marca de tiempo UTC. Por ejemplo: StartFailed 2025-06-15 09:00:05 UTC. Esta etiqueta se borra automáticamente en la siguiente acción de programación correcta.

IS-ErrorMessage

Una descripción del error legible para las personas. Esta etiqueta solo está presente cuando también IS-Error está presente y se borra junto a ella.

Códigos de error

En la IS-Error etiqueta pueden aparecer los siguientes códigos de error:

Código de error Description (Descripción)

UnknownSchedule

El nombre del programa especificado en la etiqueta del programa del recurso no coincide con ningún programa definido en la tabla de configuración.

UnsupportedResource

El tipo de recurso no se admite para la programación (por ejemplo, una réplica de lectura de otra instancia de RDS).

IncompatibleSchedule

La programación asignada al recurso no es compatible con el tipo de recurso (por ejemplo, una programación de ASG que utiliza expresiones cron no compatibles).

StartFailed

El programador intentó iniciar el recurso, pero la operación falló.

StopFailed

El programador intentó detener el recurso, pero la operación falló.

ConfigurationFailed

El programador intentó configurar las reglas de escalado programado en un grupo de Auto Scaling, pero la operación falló.

UnknownError

Se produjo un error inesperado al procesar el recurso.

Comportamiento de etiquetas

  • Cuando un recurso se registra por primera vez para su programación, la IS-ManagedBy etiqueta se aplica inmediatamente.

  • Cuando se anula el registro de un recurso (se elimina la etiqueta de programación), se eliminan todas las etiquetas informativas (IS-ManagedByIS-LastActionIS-Error,,,IS-ErrorMessage) del recurso.

  • Las etiquetas de error no se vuelven a escribir en cada intervalo de programación si el mismo error persiste y la etiqueta existente sigue presente en el recurso. Solo se actualizan cuando cambia el código de error.

  • Todos los valores de las etiquetas se truncan a 256 caracteres para cumplir con los límites de etiquetado de AWS.

Consideraciones sobre la gobernanza de etiquetas

importante

El programador de instancias crea y actualiza las etiquetas enumeradas anteriormente en los recursos administrados como parte del funcionamiento normal. Si su organización aplica la gobernanza de etiquetas mediante reglas de AWS Config, políticas de etiquetas, políticas de control de servicios o soluciones automatizadas, asegúrese de que sus controles de administración de cambios estén configurados para permitir las siguientes claves de etiquetas:

  • IS-ManagedBy

  • IS-LastAction

  • IS-Error

  • IS-ErrorMessage

  • IS-PreferredInstanceTypes(si utiliza tipos de instancias alternativos)

  • IS-MinDesiredMax(si está programando grupos de Auto Scaling)

Si no puede incluir estas etiquetas en sus políticas de gobierno, desactive el etiquetado informativo configurando el parámetro Habilitar el etiquetado informativo No en el hub stack. Tenga en cuenta que esto también deshabilitará la IS-ManagedBy etiqueta que se usa para confirmar el registro del recurso.

Etiquetas de control

Además de las etiquetas informativas, Instance Scheduler utiliza las siguientes etiquetas de control para funciones específicas:

Clave de etiqueta Description (Descripción)

IS-PreferredInstanceTypes

Una lista separada por comas de tipos de instancias EC2 alternativos para probar si se produce un error al iniciar una instancia por falta de capacidad. Para obtener más información, consulte Cómo gestionar los errores de capacidad insuficiente de EC2.

IS-MinDesiredMax

Los valores de capacidad mínima, deseada y máxima para un grupo de Auto Scaling en el formatomin,desired,max. Para obtener más información, consulte Programación de grupos de Auto Scaling de EC2.

Capacidad de etiquetas

importante

Los recursos de AWS suelen tener un límite de 50 etiquetas por recurso. El programador de instancias puede usar hasta 6 etiquetas en un recurso (4 etiquetas informativas más 2 etiquetas de control). Asegúrese de que sus recursos tengan una capacidad de etiquetas suficiente para incluir las etiquetas del programador de instancias junto con su estrategia de etiquetado actual.

Si un recurso está en el límite de 50 etiquetas o cerca de él, es posible que no se puedan escribir las etiquetas informativas. El programador registra estos errores pero continúa programando las operaciones. Compruebe CloudWatch los registros si sospecha que hay problemas de etiquetado.

CloudWatch Registra las consultas de Insights

El formato de registro estructurado de Instance Scheduler permite realizar consultas eficientes con CloudWatch Logs Insights. Puede usar Logs Insights para buscar, analizar y visualizar los datos de registro para solucionar problemas operativos y monitorear la actividad de programación.

El programador de instancias proporciona consultas de registro preformateadas a las que puede acceder desde la sección Consultas guardadas de la consola de registros: CloudWatch

SchedulingHistory

Consulta las acciones de programación que se realizan en los recursos, incluidas las operaciones de inicio y finalización.

RegistrationEvents

Consulte los eventos de registro y anulación del registro de recursos.

Errors

Consulte los registros de errores para solucionar problemas relacionados con la solución.

Para obtener más información sobre CloudWatch Logs Insights, consulte Análisis de datos de registro con CloudWatch Logs Insights en la Guía del usuario de Amazon CloudWatch Logs.

Panel de información operativa

El panel Operational Insights proporciona visibilidad del rendimiento de la solución y permite ahorrar costes gracias a la gestión programada de instancias.

Para acceder al panel, asegúrese de que la supervisión operativa esté configurada como «activada» en los parámetros del hub stack. Navegue hasta «Paneles de control» CloudWatch y selecciónelos en el menú de navegación. El nombre del panel es * {stack-name} -Operational-Insights-Dashboard*.

El panel muestra los recuentos de instancias gestionadas, las horas de ejecución guardadas y las métricas de rendimiento de la función Lambda.

Descripción general del panel de información operativa

OpsDashboardOverview
nota

La información de estos gráficos depende del intervalo de programación configurado en la pila central de la solución. Al actualizar el intervalo de programación de la solución, en el panel solo se mostrarán métricas de programación posteriores a la actualización más reciente del intervalo de programación.

Supervise los tiempos de ejecución de Lambda para garantizar un rendimiento óptimo (consulte Cuotas). Si los tiempos de ejecución se acercan constantemente al límite de tiempo de espera, considere la posibilidad de aumentar la propiedad de tamaño de Lambda o implementar Instance Scheduler en una región con menor latencia en las regiones gestionadas.

Métricas Lambda que muestran la duración y los recuentos de errores

OpsDashboardLambdaMetrics

Costos adicionales asociados a esta característica

Este panel operativo se basa en CloudWatch métricas personalizadas recopiladas por la solución, que generarán un costo adicional. Para desactivar esta característica, deshabilite “Supervisión operativa” en la pila central de la solución. Esta característica tiene un costo adicional de 3,00 USD al mes, además de costos de escalado adicionales en función del tamaño de su implementación. Los costos son los siguientes:

Panel de control personalizado CloudWatch 3 dólares

Per-instance-type métricas

0,90 USD por tipo de instancia*

Uso de la API

~0,10 $ por objetivo activo**

*Estos costos se registran por categoría de servicio (EC2/RDS) y solo para los tipos de instancias que realmente se utilizan para la programación.

*

Supervisión de eventos EventBridge

Instance Scheduler publica los eventos de programación y registro en los buses de EventBridge eventos para ofrecer visibilidad de las operaciones de la solución y permitir la integración con otros servicios de AWS.

Event types (Tipos de eventos)

La solución publica dos categorías principales de eventos:

Programación de eventos: se publica cuando el Programador de instancias toma medidas para iniciar, detener o configurar los recursos administrados. Estos eventos incluyen detalles sobre la instancia, la programación y la acción realizada: iniciar, detener o configurar los recursos administrados. Estos eventos incluyen detalles sobre la instancia, el cronograma y la acción realizada.

Eventos de registro: se publican cuando los recursos están registrados o no registrados para programarlos en función de las operaciones de etiquetado.

Destinos de evento

Autobuses de LocalEvents eventos IS: se implementa un bus de IS-LocalEvents eventos en cada región gestionada de cada cuenta de miembro (incluida la cuenta central). Cada autobús recibe eventos para programar acciones y registros de recursos en esa región.

Bus de GlobalEvents eventos IS: el bus de IS-GlobalEvents eventos de la cuenta central recibe una copia de cada evento que se envía a cualquier bus de IS-LocalEvents eventos, lo que proporciona una supervisión centralizada en todas las cuentas y regiones.

Uso de EventBridge eventos

Puede crear EventBridge reglas para:

  • Supervise las operaciones de programación en toda su infraestructura

  • Active notificaciones cuando las instancias se inicien o detengan

  • Intégrelo con otros servicios de AWS para flujos de trabajo automatizados

  • Implemente la supervisión y las alertas de conformidad

Estructura de evento

Todos los eventos utilizan el EventBridge formato estándar. Los siguientes ejemplos muestran la estructura de cada tipo de evento:

Programar un evento:

{ "Source": "instance-scheduler", "DetailType": "Scheduling Action", "Resources": ["arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0"], "Detail": { "account": "123456789012", "region": "us-east-1", "service": "ec2", "resource_id": "i-1234567890abcdef0", "requested_action": "Start", "action_taken": "Started", "schedule": "office-hours" } }

Evento de registro:

{ "Source": "instance-scheduler", "DetailType": "Resource Registered", "Resources": ["arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0"], "Detail": { "account": "123456789012", "region": "us-east-1", "service": "ec2", "resource_id": "i-1234567890abcdef0", "schedule": "office-hours" } }

Cada evento contiene los siguientes campos clave:

  • Source- Identifica la fuente del evento como «instance-scheduler»

  • DetailType- Especifica la categoría del evento: «Acción de programación», por ejemplo, operaciones, o «Recurso registrado» para etiquetar eventos

  • Resources- Matriz que contiene los recursos ARNs de AWS afectados

  • Detail- Contiene la carga útil del evento con el ID de cuenta, la región, el tipo de servicio (ec2/rds), el ID del recurso, el nombre del programa y, para la programación de eventos, tanto la acción solicitada como el resultado real

requested_actionValores posibles para programar eventos:

  • Start: El programador está destinado a iniciar la instancia

  • Stop: El programador tenía la intención de detener la instancia

  • Configure: El programador está destinado a configurar la instancia

action_takenValores posibles para programar eventos:

  • Started: Se inició la instancia

  • Stopped: Se detuvo la instancia

  • Hibernated: La instancia estaba hibernada

  • Configured: Se modificó la configuración de la instancia

  • Error: Se ha producido un error durante la operación de programación

Creación de EventBridge reglas

Para supervisar los eventos del Programador de Instancias:

  1. Navegue a la EventBridge consola de su cuenta de AWS

  2. Cree una nueva regla dirigida al bus de IS-GlobalEvents eventos (para la supervisión centralizada) o al bus de IS-LocalEvents eventos (para la supervisión local)

  3. Defina patrones de eventos para que coincidan con los eventos del Programador de Instancias

  4. Configurar destinos como temas de SNS, funciones de Lambda o registros CloudWatch

Para obtener más información EventBridge, consulta ¿Qué es Amazon EventBridge? en la Guía del EventBridge usuario de Amazon.