jobscore.cloudwatch-logs

CloudWatch Log

CI

Ce rôle installe l'agent CloudWatch Logs sur une machine Ubuntu.

Exigences

Vous devez avoir vos identifiants AWS déjà configurés sur la machine, cela fonctionne avec des rôles IAM ou des identifiants d'utilisateur IAM globaux comme dans la configuration de l'AWS CLI (voir https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

Variables du rôle

cw_server_type: <ec2 | onPremise>

Cette variable définit si l'agent est installé sur une instance EC2 ou un serveur sur site. La valeur par défaut est ec2.

aws_region: us-east-1

Celle-ci définit la région AWS à utiliser lorsque le mode d'instance n'est pas EC2.

cw_logs_files: []

C'est la variable la plus importante, elle définit la configuration pour les journaux que vous souhaitez gérer. Elle attend une liste de journaux que l'agent doit surveiller. La liste suit ce format :

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

Le champ name définit le nom de l'entrée de journal, qui doit être unique, et le champ args doit contenir les spécificités de la configuration des journaux selon la documentation AWS ici : https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AgentReference.html.

Dépendances

Aucune

Exemple 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

Licence

GPLv3

Informations sur l'auteur

Ce rôle a été créé par Eric Magalhães et Glauber Batista en travaillant pour JobScore Inc.

À propos du projet

Ansible role for sending logs to CloudWatch

Installer
ansible-galaxy install jobscore.cloudwatch-logs
Licence
gpl-3.0
Téléchargements
24.7k
Propriétaire