Cloudwatch

Amazon CloudWatch es un servicio de monitorización y observación creado para ingenieros de DevOps, desarrolladores y administradores IT.
En CALE usamos servers EC2 en servidores de Amazon AWS y los monitorizamos usando Cloudwatch. Con lo cual hemos desarrollado esta API, en un principio para CALE, y la hemos abierto a todos los usuarios asi pueden insertar las metricas de Cloudwatch en sus Screens. Nos parece apropiado tener un display WiFi que se refresca cada 10 o 20 minutos con esta información en vez de mostrarla todo el tiempo en un monitor, ya que el Epaper es mucho mas agradable a la vista.

Como conectar un widget de Cloudwatch

  1. Primero hay que ir a Cloudwatch en la consola de Amazon AWS
  2. Crear un a Dashboard o seleccionar uno existente
  3. Pasar el mouse por encima del Widget y hacer click en los 3 puntos verticales arriba a la derecha (Widget actions Edit)
  4. Seleccionar la pestaña Source y debajo del area de texto seleccionar la opción Image API
  5. Copiar el texto de JSON y guardarlo
  6. Pasa a la sección: "Integración"
    Una vez que funcione puedes repetir esta operación para cada Widget que quieras copiar. Solo ten en cuenta que hay que ajustar la propiedad width del JSON a un ancho apropiado para que pueda verse en tu Screen.

Integración del Widget en CALE

  1. Logearse en CALE y seleccionar API Conectar una nueva API Amazon Cloudwatch monitoring
  2. Llenar los 3 campos requeridos: IAM Key, Password y Region. Los dos primeros puedes obtenerlos en IAM Security Credentials Access Keys (Lee nuestras recomendaciones de seguridad, no necesitas usar el root user)
  3. Una vez de que las credenciales queden grabadas, puedes ponerle un nombre al Widget, y copiar el texto JSON de la sección "Como conectar" del punto 5.
Eso es todo, al grabar este último paso, podrá tener un preview del gráfico de las estadísticas de Cloudfront:
Mi CPU widget

Cuanto cuesta usar la API de Cloudwatch

CALE es gratis para uso personal hasta 3 Screens

AmazonCloudWatch tiene un uso gratis de hasta 1,000,000 requests a la API. Como ejemplo desde hace 7 dias hemos usado CloudWatch en nuestro display Eink refrescandose cada 20 minutos. Esto ha reportado hasta la fecha un uso de 0.05% del free tier de Cloudwatch (501/1,000,000 Requests).
Pero tengan en cuenta que ese million de API requests incluidos en el free-tier no son aplicables para GetMetricWidgetImage que es justamente lo que usamos desde CALE para traer la imágen desde Amazon Webservices. Con lo cual tendrán cargos minimos por usar esta API en sus displays. En nuestro caso, refrescando un display cada dos horas por un mes, ha costado menos de 1 dolar en marzo del 2020.

Notas sobre la seguridad

No debería usar su cuenta root account para este ni ningún otro sitio web. CALE solo necesita permisos para acceder a las estadísticas de Cloudwatch y ningún otro permiso adicional. La mejor manera de hacerlo es creando un usuario solo con acceso a recursos de CloudWatchReadOnlyAccess. Y si aún se desean restringir más, solo permisos de:

  • GetMetricStatistics
  • ListMetrics
Eso es todo lo que necesita para agreagar las estadisticas de Amazon Cloudwatch a sus Screens en CALE