From e8b1b5b621fb077e04a2621df11674388cebe254 Mon Sep 17 00:00:00 2001
From: Florian Pritz <bluewind@xinu.at>
Date: Sun, 5 Feb 2017 14:37:42 +0100
Subject: [PATCH] Use dedicated log files in nginx vhosts

Signed-off-by: Florian Pritz <bluewind@xinu.at>
---
 roles/public_html/tasks/main.yml            | 3 +++
 roles/public_html/templates/nginx.d.conf.j2 | 6 ++++++
 roles/syncrepo/tasks/main.yml               | 3 +++
 roles/syncrepo/templates/nginx.d.conf.j2    | 6 ++++++
 4 files changed, 18 insertions(+)

diff --git a/roles/public_html/tasks/main.yml b/roles/public_html/tasks/main.yml
index d40bd3bf7..162743932 100644
--- a/roles/public_html/tasks/main.yml
+++ b/roles/public_html/tasks/main.yml
@@ -21,6 +21,9 @@
     - generate-public_html.timer
     - generate-public_html.service
 
+- name: make nginx log dir
+  file: path=/var/log/nginx/{{ public_domain }} state=directory owner=http group=log mode=755
+
 - name: set up nginx
   template: src=nginx.d.conf.j2 dest=/etc/nginx/nginx.d/public_html.conf owner=root group=root mode=0644
   notify:
diff --git a/roles/public_html/templates/nginx.d.conf.j2 b/roles/public_html/templates/nginx.d.conf.j2
index 59bd590df..041901525 100644
--- a/roles/public_html/templates/nginx.d.conf.j2
+++ b/roles/public_html/templates/nginx.d.conf.j2
@@ -4,6 +4,9 @@ server {
     server_name  {{ public_domain }} www.{{ public_domain }};
     root         /srv/public_html;
 
+    access_log   /var/log/nginx/{{ public_domain }}/access.log;
+    error_log    /var/log/nginx/{{ public_domain }}/error.log;
+
     include snippets/letsencrypt.conf;
 
     location ~ ^/~([A-Za-z0-9]+)(/.*)? {
@@ -19,6 +22,9 @@ server {
     server_name  {{ public_domain }} www.{{ public_domain }};
     root         /srv/public_html;
 
+    access_log   /var/log/nginx/{{ public_domain }}/access.log;
+    error_log    /var/log/nginx/{{ public_domain }}/error.log;
+
 {% if certfile.stat.exists %}
     ssl_certificate      /etc/letsencrypt/live/{{ public_domain }}/fullchain.pem;
     ssl_certificate_key  /etc/letsencrypt/live/{{ public_domain }}/privkey.pem;
diff --git a/roles/syncrepo/tasks/main.yml b/roles/syncrepo/tasks/main.yml
index bb0c3419d..331fc4a76 100644
--- a/roles/syncrepo/tasks/main.yml
+++ b/roles/syncrepo/tasks/main.yml
@@ -41,6 +41,9 @@
     insertbefore: BOF
     create: true
 
+- name: make nginx log dir
+  file: path=/var/log/nginx/{{ mirror_domain }} state=directory owner=http group=log mode=755
+
 - name: set up nginx
   template: src=nginx.d.conf.j2 dest=/etc/nginx/nginx.d/syncrepo.conf owner=root group=root mode=0644
   notify:
diff --git a/roles/syncrepo/templates/nginx.d.conf.j2 b/roles/syncrepo/templates/nginx.d.conf.j2
index 7647895ca..58e4107b9 100644
--- a/roles/syncrepo/templates/nginx.d.conf.j2
+++ b/roles/syncrepo/templates/nginx.d.conf.j2
@@ -4,6 +4,9 @@ server {
     server_name  {{ mirror_domain }};
     root         /srv/ftp;
 
+    access_log   /var/log/nginx/{{ mirror_domain }}/access.log;
+    error_log    /var/log/nginx/{{ mirror_domain }}/error.log;
+
     include snippets/letsencrypt.conf;
 
     autoindex on;
@@ -15,6 +18,9 @@ server {
     server_name  {{ mirror_domain }};
     root         /srv/ftp;
 
+    access_log   /var/log/nginx/{{ mirror_domain }}/access.log;
+    error_log    /var/log/nginx/{{ mirror_domain }}/error.log;
+
 {% if certfile.stat.exists %}
     ssl_certificate      /etc/letsencrypt/live/{{ mirror_domain }}/fullchain.pem;
     ssl_certificate_key  /etc/letsencrypt/live/{{ mirror_domain }}/privkey.pem;
-- 
GitLab