diff options
Diffstat (limited to 'playbooks.d')
-rw-r--r-- | playbooks.d/webserver-nginx/etc/defaults | 1 | ||||
-rw-r--r-- | playbooks.d/webserver-nginx/playbook.bash | 8 | ||||
-rw-r--r-- | playbooks.d/webserver-nginx/share/goaccess.service | 14 |
3 files changed, 23 insertions, 0 deletions
diff --git a/playbooks.d/webserver-nginx/etc/defaults b/playbooks.d/webserver-nginx/etc/defaults index f9ef6fc..c9e6ac3 100644 --- a/playbooks.d/webserver-nginx/etc/defaults +++ b/playbooks.d/webserver-nginx/etc/defaults @@ -1,4 +1,5 @@ pkg.certbot=certbot +pkg.goaccess=goaccess pkg.logrotate=logrotate pkg.nginx=nginx diff --git a/playbooks.d/webserver-nginx/playbook.bash b/playbooks.d/webserver-nginx/playbook.bash index 03e4271..20dcd14 100644 --- a/playbooks.d/webserver-nginx/playbook.bash +++ b/playbooks.d/webserver-nginx/playbook.bash @@ -5,6 +5,7 @@ playbook_add() info "webserver/add" "Installing packages" pkg install \ certbot \ + goaccess \ logrotate \ nginx @@ -54,6 +55,13 @@ playbook_sync() group="$(config "nginx.group")" \ > "$(config "fs.etcdir")/logrotate.d/nginx" + notice "$BASHTARD_PLAYBOOK" "Configure goaccess service" + mkdir -pv /etc/systemd/system + file_template "goaccess.service" \ + user="$(config "nginx.user")" \ + group="$(config "nginx.group")" \ + > "/etc/systemd/system/goaccess@.service" + notice "webserver/sync" "Updating nginx.conf" file_template "nginx.conf" \ etc="$(config "fs.etcdir")" \ diff --git a/playbooks.d/webserver-nginx/share/goaccess.service b/playbooks.d/webserver-nginx/share/goaccess.service new file mode 100644 index 0000000..30a9478 --- /dev/null +++ b/playbooks.d/webserver-nginx/share/goaccess.service @@ -0,0 +1,14 @@ +[Unit] +Description = goaccess service for nginx log analytics +After = network.target + +[Service] +Type = simple +User = ${user} +Group = ${group} +Restart = always +RuntimeDirectory = goaccess +ExecStart = sh -c "goaccess -a -f /var/log/nginx/access/%i* -o %t/%i.html --real-time-html --ws-url %i" + +[Install] +WantedBy = multi-user.target |