Set version
to version you want. Don't use the develop branch.
- src: [email protected]:mordash/ansible-goaccess.git
version: master
name: goaccess
$ ansible-galaxy install -r requirements.yml --force
⚠️ Be carefull when using--force
local change will be lost.
PARAMETERS | TYPES | REQUIRE | DEFAULT | DESCRIPTION |
---|---|---|---|---|
todo | STRING | NO | todo | |
todo | BOOLEAN | NO | no | |
todo | BOOLEAN | NO | yes | |
todo | DICT | NO | ||
goaccess_compresscmd: bzcat | ||||
goaccess_compresscmd: zcat | ||||
goaccess_cron: no | ||||
goaccess_version: "1.3" | ||||
goaccess_logfiles: | ||||
- /var/log/apache2/access.log | ||||
- /var/log/apache2/examples.log.* | ||||
goaccess_output: /var/www/html/goaccess.html | ||||
goaccess_real_time_html: no | ||||
goaccess_timeformat: '%H:%M:%S' | ||||
goaccess_dateformat: '%d/%b/%Y' | ||||
goaccess_logformat: '%h %^[%d:%t %^] "%r" %s %b "%R" "%u"' |
More détail on Goaccess here goaccess man page
MIT LICENSE
Le rôle va cronner l'utilisation de goaccess pour parser les log et en sortir un fichier html exploitable et propre graphiquement.
Le format de log doit être identique dans tous les fichiers scannés.
Pour que le fichier html soit accessible en web, un vhost doit être créé. exemple de conf pour apache :
<VirtualHost *:80>
ServerName default
## Alias
Alias /goaccess "/var/www/html/goaccess.html"
</Directory>
<Directory "/var/www/html/">
Options None
AllowOverride None
Require valid-user
AuthType basic
AuthName "Restricted content"
AuthBasicProvider file
AuthUserFile /etc/apache2/.htpasswd
</Directory>
</VirtualHost>
via ansible :
directories:
- path : '/var/www/html/'
auth_type : 'basic'
auth_name : 'Restricted content'
auth_basic_provider: 'file'
auth_user_file : '/etc/apache2/.htpasswd'
auth_require : 'valid-user'
options : ['None']
aliases:
- path: '/var/www/html/goaccess.html'
alias: '/goaccess'