jobscore.cloudwatch-logs

CloudWatch Log

CI

Este rol instala el agente de CloudWatch Logs en una máquina Ubuntu.

Requisitos

Necesitas tener configuradas tus credenciales de AWS en la máquina. Funciona con roles de IAM o credenciales de usuario IAM global, como en la configuración de la CLI de AWS (ver https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

Variables del Rol

cw_server_type: <ec2 | onPremise>

Esta variable define si el agente se está instalando dentro de una instancia EC2 o en un servidor local. El valor por defecto es ec2.

aws_region: us-east-1

Esta variable define la región de AWS que se usará cuando el modo de la instancia no sea EC2.

cw_logs_files: []

Esta es la variable más importante, define la configuración de los logs que deseas gestionar. Se espera una lista de logs que el agente debe vigilar. La lista sigue este formato:

cw_logs_files:
  - log_group_name: /var/log/syslog
    log_stream_name: '{hostname}-{instance_id}'
    timestamp_format: '%b %d %H:%M:%S'
    file_path: /var/log/syslog
    encoding: utf-8
  - log_group_name: /var/log/auth.log
    log_stream_name: '{hostname}-{instance_id}'
    timestamp_format: '%b %d %H:%M:%S'
    file_path: /var/log/auth.log
    encoding: utf-8

El campo name define el nombre de la entrada del log, que debe ser único, y el campo args debe contener los detalles de la configuración del log según los documentos de AWS aquí: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AgentReference.html.

Dependencias

Ninguna

Ejemplo de Playbook

- hosts: all
  roles:
    - role: jobscore.cloudwatch-logs
      cw_server_type: onPremise
      aws_region: us-east-1
      cw_logs_files:
        - log_group_name: /var/log/syslog
          log_stream_name: '{hostname}-{instance_id}'
          timestamp_format: '%b %d %H:%M:%S'
          file_path: /var/log/syslog
          encoding: utf-8
        - log_group_name: /var/log/auth.log
          log_stream_name: '{hostname}-{instance_id}'
          timestamp_format: '%b %d %H:%M:%S'
          file_path: /var/log/auth.log
          encoding: utf-8

Licencia

GPLv3

Información del Autor

Este rol fue creado por Eric Magalhães y Glauber Batista mientras trabajaban para JobScore Inc.

Acerca del proyecto

Ansible role for sending logs to CloudWatch

Instalar
ansible-galaxy install jobscore.cloudwatch-logs
Licencia
gpl-3.0
Descargas
24.7k
Propietario