Un module Puppet pour configurer Papertrail et Rsyslog

Papertrail au même titre que loggly, logentries, logstash est une solution permettant de centraliser ses logs. L’interface web plutôt sexy facilite l’agrégation, la recherche, l’analyse et la détection des problèmes sur son infrastructure via les journaux.

Voici un module Puppet que j’ai développé afin de déployer rapidement cette solution. Il ne fonctionne pour le moment qu’avec Rsyslog (installé de base sur Debian). TLS est utilisé par défaut afin de chiffrer les communications entre votre machine et Papertrail.

Toutes les contributions afin de supporter d’autres logger tels que syslog-ng, remote_syslog sont appréciées.

Installation :

Cloner le dépôt suivant dans votre dossier contenant vos modules Puppet :

git clone git://github.com/Benjamin-Ds/puppet-module-papertrail.git papertrail

Ou ajoutez le en tant que sous module Git :

git submodule add git://github.com/Benjamin-Ds/puppet-module-papertrail.git papertrail
git submodule init --update

Utilisation :

node nodename {
  class { 'papertrail': 
    port => 12345,
    optional_files => [
      '/var/log/daemon.log', 
      '/var/log/nginx/error.log'
    ], 
  }
}

Ou sans puppet master :

puppet apply -e "class { 'papertrail': optional_files => ['/var/log/daemon.log', '/var/log/auth.log'], port => 1234 }"

Liens utiles :