From 1e318b569e522da0e200e53a92469baf97d3c9ab Mon Sep 17 00:00:00 2001
From: Carlos Camacho <ccamacho@redhat.com>
Date: Mon, 14 Jan 2019 16:06:21 +0100
Subject: [PATCH] Ensure logs folder is created in prep hosts tasks.

We have non fatal errors in the upgrade
jobs execution if the logs folder is not
created when adding the readme.txt file
to clarify the possible locations of
the logs.

Closes-Bug: 1811708
Change-Id: Ibc0a266bdc6630eaf34bfadeff21f7bd72fa75ad
---
 deployment/aodh/aodh-api-container-puppet.yaml      |  1 +
 .../aodh/aodh-evaluator-container-puppet.yaml       |  9 ++++++---
 deployment/aodh/aodh-listener-container-puppet.yaml |  9 ++++++---
 deployment/aodh/aodh-notifier-container-puppet.yaml |  9 ++++++---
 .../glance/glance-api-logging-file-container.yaml   |  1 +
 deployment/ironic/ironic-api-container-puppet.yaml  |  3 ++-
 .../ironic/ironic-conductor-container-puppet.yaml   |  1 +
 .../ironic/ironic-inspector-container-puppet.yaml   |  9 ++++++---
 deployment/ironic/ironic-pxe-container-puppet.yaml  |  1 +
 .../keepalived/keepalived-container-puppet.yaml     | 11 +++++++----
 .../memcached/memcached-container-puppet.yaml       |  9 ++++++++-
 deployment/sahara/sahara-api-container-puppet.yaml  | 13 +++++++------
 .../sahara/sahara-engine-container-puppet.yaml      | 13 +++++++------
 deployment/zaqar/zaqar-container-puppet.yaml        | 10 ++++++----
 docker/services/ceilometer-agent-central.yaml       |  9 ++++++---
 docker/services/ceilometer-agent-compute.yaml       |  9 ++++++---
 docker/services/ceilometer-agent-ipmi.yaml          |  9 ++++++---
 docker/services/ceilometer-agent-notification.yaml  |  9 ++++++---
 docker/services/cinder-api.yaml                     |  3 ++-
 docker/services/cinder-common.yaml                  |  1 +
 docker/services/cinder-scheduler.yaml               |  1 +
 docker/services/congress.yaml                       |  9 ++++++---
 docker/services/database/mysql.yaml                 |  3 ++-
 docker/services/database/redis.yaml                 |  1 +
 docker/services/designate-api.yaml                  |  9 ++++++---
 docker/services/designate-central.yaml              |  9 ++++++---
 docker/services/designate-mdns.yaml                 |  9 ++++++---
 docker/services/designate-producer.yaml             |  9 ++++++---
 docker/services/designate-sink.yaml                 |  9 ++++++---
 docker/services/designate-worker.yaml               |  9 ++++++---
 docker/services/ec2-api.yaml                        |  2 ++
 docker/services/fluentd.yaml                        |  9 ++++++---
 docker/services/gnocchi-api.yaml                    |  1 +
 docker/services/gnocchi-metricd.yaml                |  9 ++++++---
 docker/services/gnocchi-statsd.yaml                 |  9 ++++++---
 docker/services/haproxy.yaml                        |  1 +
 docker/services/horizon.yaml                        |  3 ++-
 docker/services/logging/files/barbican-api.yaml     |  3 ++-
 docker/services/logging/files/heat-api-cfn.yaml     |  3 ++-
 docker/services/logging/files/heat-api.yaml         |  3 ++-
 docker/services/logging/files/heat-engine.yaml      |  9 ++++++---
 docker/services/logging/files/keystone.yaml         |  3 ++-
 docker/services/logging/files/neutron-api.yaml      |  3 ++-
 docker/services/logging/files/neutron-common.yaml   |  3 ++-
 docker/services/logging/files/nova-api.yaml         |  3 ++-
 docker/services/logging/files/nova-common.yaml      |  9 ++++++---
 docker/services/logging/files/nova-metadata.yaml    |  3 ++-
 docker/services/logging/files/nova-placement.yaml   |  3 ++-
 docker/services/logging/files/opendaylight-api.yaml |  2 +-
 docker/services/logging/files/panko-api.yaml        |  3 ++-
 docker/services/manila-api.yaml                     |  3 ++-
 docker/services/manila-scheduler.yaml               |  9 ++++++---
 docker/services/manila-share.yaml                   |  1 +
 docker/services/messaging/notify-rabbitmq.yaml      |  1 +
 docker/services/messaging/rpc-rabbitmq.yaml         |  1 +
 docker/services/metrics/collectd.yaml               |  9 ++++++---
 docker/services/mistral-api.yaml                    |  9 ++++++---
 docker/services/mistral-engine.yaml                 |  9 ++++++---
 docker/services/mistral-event-engine.yaml           |  9 ++++++---
 docker/services/mistral-executor.yaml               |  3 ++-
 docker/services/nova-ironic.yaml                    |  1 +
 docker/services/novajoin.yaml                       |  1 +
 docker/services/octavia-api.yaml                    |  3 ++-
 docker/services/octavia-health-manager.yaml         |  9 ++++++---
 docker/services/octavia-housekeeping.yaml           |  9 ++++++---
 docker/services/octavia-worker.yaml                 |  9 ++++++---
 docker/services/ovn-controller.yaml                 |  9 ++++++---
 docker/services/ovn-dbs.yaml                        |  1 +
 docker/services/pacemaker/database/mysql.yaml       |  3 ++-
 docker/services/pacemaker/database/redis.yaml       |  1 +
 docker/services/pacemaker/haproxy.yaml              |  1 +
 docker/services/pacemaker/manila-share.yaml         |  1 +
 docker/services/pacemaker/notify-rabbitmq.yaml      |  1 +
 docker/services/pacemaker/ovn-dbs.yaml              |  1 +
 docker/services/pacemaker/rabbitmq.yaml             |  1 +
 docker/services/pacemaker/rpc-rabbitmq.yaml         |  1 +
 docker/services/qdrouterd.yaml                      |  3 ++-
 docker/services/rabbitmq.yaml                       |  1 +
 docker/services/sensu-client.yaml                   |  8 ++++++--
 docker/services/tacker.yaml                         |  8 ++++++--
 docker/services/tempest.yaml                        |  2 +-
 81 files changed, 286 insertions(+), 133 deletions(-)

diff --git a/deployment/aodh/aodh-api-container-puppet.yaml b/deployment/aodh/aodh-api-container-puppet.yaml
index 8c3e7fb4cd..c87271e3e0 100644
--- a/deployment/aodh/aodh-api-container-puppet.yaml
+++ b/deployment/aodh/aodh-api-container-puppet.yaml
@@ -222,6 +222,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/aodh, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/aodh-api, setype: svirt_sandbox_file_t }
+          - { 'path': /var/log/aodh, setype: svirt_sandbox_file_t }
       - name: aodh logs readme
         copy:
           dest: /var/log/aodh/readme.txt
diff --git a/deployment/aodh/aodh-evaluator-container-puppet.yaml b/deployment/aodh/aodh-evaluator-container-puppet.yaml
index ac6e74d036..0e8a977c77 100644
--- a/deployment/aodh/aodh-evaluator-container-puppet.yaml
+++ b/deployment/aodh/aodh-evaluator-container-puppet.yaml
@@ -112,11 +112,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/aodh
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/aodh, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/aodh, 'setype': svirt_sandbox_file_t }
         - name: aodh logs readme
           copy:
             dest: /var/log/aodh/readme.txt
diff --git a/deployment/aodh/aodh-listener-container-puppet.yaml b/deployment/aodh/aodh-listener-container-puppet.yaml
index 84e681af56..8554b93493 100644
--- a/deployment/aodh/aodh-listener-container-puppet.yaml
+++ b/deployment/aodh/aodh-listener-container-puppet.yaml
@@ -120,11 +120,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/aodh
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/aodh, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/aodh, 'setype': svirt_sandbox_file_t }
         - name: aodh logs readme
           copy:
             dest: /var/log/aodh/readme.txt
diff --git a/deployment/aodh/aodh-notifier-container-puppet.yaml b/deployment/aodh/aodh-notifier-container-puppet.yaml
index a7b0fb8303..66145edaae 100644
--- a/deployment/aodh/aodh-notifier-container-puppet.yaml
+++ b/deployment/aodh/aodh-notifier-container-puppet.yaml
@@ -120,11 +120,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/aodh
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/aodh, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/aodh, 'setype': svirt_sandbox_file_t }
         - name: aodh logs readme
           copy:
             dest: /var/log/aodh/readme.txt
diff --git a/deployment/glance/glance-api-logging-file-container.yaml b/deployment/glance/glance-api-logging-file-container.yaml
index 2df3c1c5ff..0c9d5f47d5 100644
--- a/deployment/glance/glance-api-logging-file-container.yaml
+++ b/deployment/glance/glance-api-logging-file-container.yaml
@@ -37,6 +37,7 @@ outputs:
           setype: "{{ item.setype }}"
         with_items:
           - { 'path': /var/log/containers/glance, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/glance, 'setype': svirt_sandbox_file_t }
       - name: glance logs readme
         copy:
           dest: /var/log/glance/readme.txt
diff --git a/deployment/ironic/ironic-api-container-puppet.yaml b/deployment/ironic/ironic-api-container-puppet.yaml
index f0ac8df936..fd5e150d47 100644
--- a/deployment/ironic/ironic-api-container-puppet.yaml
+++ b/deployment/ironic/ironic-api-container-puppet.yaml
@@ -248,7 +248,7 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory
@@ -256,6 +256,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/ironic, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/ironic-api, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ironic, 'setype': svirt_sandbox_file_t }
         - name: ironic logs readme
           copy:
             dest: /var/log/ironic/readme.txt
diff --git a/deployment/ironic/ironic-conductor-container-puppet.yaml b/deployment/ironic/ironic-conductor-container-puppet.yaml
index 11ffa4f635..0269b79ab4 100644
--- a/deployment/ironic/ironic-conductor-container-puppet.yaml
+++ b/deployment/ironic/ironic-conductor-container-puppet.yaml
@@ -550,6 +550,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/ironic, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/ironic, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ironic, 'setype': svirt_sandbox_file_t }
         - name: ironic logs readme
           copy:
             dest: /var/log/ironic/readme.txt
diff --git a/deployment/ironic/ironic-inspector-container-puppet.yaml b/deployment/ironic/ironic-inspector-container-puppet.yaml
index 1b84707394..0856d6f3d8 100644
--- a/deployment/ironic/ironic-inspector-container-puppet.yaml
+++ b/deployment/ironic/ironic-inspector-container-puppet.yaml
@@ -441,11 +441,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent ironic-inspector logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/ironic-inspector
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/ironic-inspector, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ironic-inspector, 'setype': svirt_sandbox_file_t }
         - name: ironic-inspector logs readme
           copy:
             dest: /var/log/ironic-inspector/readme.txt
diff --git a/deployment/ironic/ironic-pxe-container-puppet.yaml b/deployment/ironic/ironic-pxe-container-puppet.yaml
index b736896c57..1694790225 100644
--- a/deployment/ironic/ironic-pxe-container-puppet.yaml
+++ b/deployment/ironic/ironic-pxe-container-puppet.yaml
@@ -165,6 +165,7 @@ outputs:
             - { 'path': /var/lib/ironic, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/ironic, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/ironic-pxe, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ironic, 'setype': svirt_sandbox_file_t }
         - name: ironic logs readme
           copy:
             dest: /var/log/ironic/readme.txt
diff --git a/deployment/keepalived/keepalived-container-puppet.yaml b/deployment/keepalived/keepalived-container-puppet.yaml
index 182a240a88..9652a2aa3d 100644
--- a/deployment/keepalived/keepalived-container-puppet.yaml
+++ b/deployment/keepalived/keepalived-container-puppet.yaml
@@ -147,14 +147,17 @@ outputs:
           vars:
             modules:
               - name: ip_vs
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/keepalived
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/keepalived, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/keepalived, 'setype': svirt_sandbox_file_t }
         - name: keepalived logs readme
           copy:
-            dest: /var/log/keepalived-readme.txt
+            dest: /var/log/keepalived/readme.txt
             content: |
               Log files from keepalived containers can be found under
               /var/log/containers/keepalived.
diff --git a/deployment/memcached/memcached-container-puppet.yaml b/deployment/memcached/memcached-container-puppet.yaml
index f2bf807e39..24767ae2cd 100644
--- a/deployment/memcached/memcached-container-puppet.yaml
+++ b/deployment/memcached/memcached-container-puppet.yaml
@@ -164,9 +164,16 @@ outputs:
                   - /var/lib/config-data/memcached/etc/sysconfig/memcached:/etc/sysconfig/memcached:ro
             command: ['/bin/bash', '-c', 'source /etc/sysconfig/memcached; /usr/bin/memcached -p ${PORT} -u ${USER} -m ${CACHESIZE} -c ${MAXCONN} $OPTIONS']
       host_prep_tasks:
+        - name: create persistent directories
+          file:
+            path: "{{ item.path }}"
+            state: directory
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/memcached, 'setype': svirt_sandbox_file_t }
         - name: memcached logs readme
           copy:
-            dest: /var/log/memcached-readme.txt
+            dest: /var/log/memcached/readme.txt
             content: |
               Memcached container logs to stdout/stderr only.
           ignore_errors: true
diff --git a/deployment/sahara/sahara-api-container-puppet.yaml b/deployment/sahara/sahara-api-container-puppet.yaml
index dc6cc800d2..c796ca877b 100644
--- a/deployment/sahara/sahara-api-container-puppet.yaml
+++ b/deployment/sahara/sahara-api-container-puppet.yaml
@@ -198,14 +198,15 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create /var/lib/sahara
+        - name: create persistent directories
           file:
-            path: /var/lib/sahara
-            state: directory
-        - name: create persistent sahara logs directory
-          file:
-            path: /var/log/containers/sahara
+            path: "{{ item.path }}"
             state: directory
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/sahara, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/lib/sahara, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/sahara, 'setype': svirt_sandbox_file_t }
         - name: sahara logs readme
           copy:
             dest: /var/log/sahara/readme.txt
diff --git a/deployment/sahara/sahara-engine-container-puppet.yaml b/deployment/sahara/sahara-engine-container-puppet.yaml
index 6b63a83437..f1966c920c 100644
--- a/deployment/sahara/sahara-engine-container-puppet.yaml
+++ b/deployment/sahara/sahara-engine-container-puppet.yaml
@@ -135,14 +135,15 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create /var/lib/sahara
+        - name: create persistent directories
           file:
-            path: /var/lib/sahara
-            state: directory
-        - name: create persistent sahara logs directory
-          file:
-            path: /var/log/containers/sahara
+            path: "{{ item.path }}"
             state: directory
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/sahara, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/lib/sahara, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/sahara, 'setype': svirt_sandbox_file_t }
         - name: sahara logs readme
           copy:
             dest: /var/log/sahara/readme.txt
diff --git a/deployment/zaqar/zaqar-container-puppet.yaml b/deployment/zaqar/zaqar-container-puppet.yaml
index 256a25dd91..415a255fef 100644
--- a/deployment/zaqar/zaqar-container-puppet.yaml
+++ b/deployment/zaqar/zaqar-container-puppet.yaml
@@ -346,13 +346,15 @@ outputs:
                 environment:
                   - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: "{{ item }}"
+            path: "{{ item.path }}"
             state: directory
+            setype: "{{ item.setype }}"
           with_items:
-            - /var/log/containers/zaqar
-            - /var/log/containers/httpd/zaqar
+            - { 'path': /var/log/containers/zaqar, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/httpd/zaqar, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/zaqar, 'setype': svirt_sandbox_file_t }
         - name: zaqar logs readme
           copy:
             dest: /var/log/zaqar/readme.txt
diff --git a/docker/services/ceilometer-agent-central.yaml b/docker/services/ceilometer-agent-central.yaml
index 74b3f0990a..3439b96494 100644
--- a/docker/services/ceilometer-agent-central.yaml
+++ b/docker/services/ceilometer-agent-central.yaml
@@ -137,11 +137,14 @@ outputs:
               - 'ceilometer_agent_central'
               - "su ceilometer -s /bin/bash -c 'for n in {1..10}; do /usr/bin/ceilometer-upgrade && exit 0 || sleep 30; done; exit 1'"
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/ceilometer
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/ceilometer, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/ceilometer, 'setype': svirt_sandbox_file_t }
         - name: ceilometer logs readme
           copy:
             dest: /var/log/ceilometer/readme.txt
diff --git a/docker/services/ceilometer-agent-compute.yaml b/docker/services/ceilometer-agent-compute.yaml
index 12cb59de36..44e3f4af22 100644
--- a/docker/services/ceilometer-agent-compute.yaml
+++ b/docker/services/ceilometer-agent-compute.yaml
@@ -105,11 +105,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/ceilometer
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/ceilometer, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ceilometer, 'setype': svirt_sandbox_file_t }
         - name: ceilometer logs readme
           copy:
             dest: /var/log/ceilometer/readme.txt
diff --git a/docker/services/ceilometer-agent-ipmi.yaml b/docker/services/ceilometer-agent-ipmi.yaml
index 39bacb8e46..4eec635cdd 100644
--- a/docker/services/ceilometer-agent-ipmi.yaml
+++ b/docker/services/ceilometer-agent-ipmi.yaml
@@ -116,11 +116,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/ceilometer
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/ceilometer, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ceilometer, 'setype': svirt_sandbox_file_t }
         - name: ceilometer logs readme
           copy:
             dest: /var/log/ceilometer/readme.txt
diff --git a/docker/services/ceilometer-agent-notification.yaml b/docker/services/ceilometer-agent-notification.yaml
index aab7c39a8c..8db2e70ea8 100644
--- a/docker/services/ceilometer-agent-notification.yaml
+++ b/docker/services/ceilometer-agent-notification.yaml
@@ -143,11 +143,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/ceilometer
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/ceilometer, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ceilometer, 'setype': svirt_sandbox_file_t }
         - name: ceilometer logs readme
           copy:
             dest: /var/log/ceilometer/readme.txt
diff --git a/docker/services/cinder-api.yaml b/docker/services/cinder-api.yaml
index 22bb1ab679..5b84aafba9 100644
--- a/docker/services/cinder-api.yaml
+++ b/docker/services/cinder-api.yaml
@@ -209,7 +209,7 @@ outputs:
       metadata_settings:
         get_attr: [CinderBase, role_data, metadata_settings]
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory
@@ -217,6 +217,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/cinder, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/cinder-api, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/cinder, 'setype': svirt_sandbox_file_t }
         - name: cinder logs readme
           copy:
             dest: /var/log/cinder/readme.txt
diff --git a/docker/services/cinder-common.yaml b/docker/services/cinder-common.yaml
index c8813652d9..e3bcf31f99 100644
--- a/docker/services/cinder-common.yaml
+++ b/docker/services/cinder-common.yaml
@@ -66,6 +66,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/cinder, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/lib/cinder, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/cinder, 'setype': svirt_sandbox_file_t }
       - name: cinder logs readme
         copy:
           dest: /var/log/cinder/readme.txt
diff --git a/docker/services/cinder-scheduler.yaml b/docker/services/cinder-scheduler.yaml
index 79a0ceb921..37c89714a4 100644
--- a/docker/services/cinder-scheduler.yaml
+++ b/docker/services/cinder-scheduler.yaml
@@ -141,6 +141,7 @@ outputs:
             setype: "{{ item.setype }}"
           with_items:
             - { 'path': /var/log/containers/cinder, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/cinder, 'setype': svirt_sandbox_file_t }
         - name: cinder logs readme
           copy:
             dest: /var/log/cinder/readme.txt
diff --git a/docker/services/congress.yaml b/docker/services/congress.yaml
index 5fe3376c59..dbcf093403 100644
--- a/docker/services/congress.yaml
+++ b/docker/services/congress.yaml
@@ -134,11 +134,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/congress
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/congress, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/congress, 'setype': svirt_sandbox_file_t }
         - name: congress logs readme
           copy:
             dest: /var/log/congress/readme.txt
diff --git a/docker/services/database/mysql.yaml b/docker/services/database/mysql.yaml
index 7c5789e4d4..daf87556f0 100644
--- a/docker/services/database/mysql.yaml
+++ b/docker/services/database/mysql.yaml
@@ -231,8 +231,9 @@ outputs:
             state: directory
             setype: "{{ item.setype }}"
           with_items:
-            - {'path':/var/log/containers/mysql, 'setype': 'svirt_sandbox_file_t'}
+            - {'path': /var/log/containers/mysql, 'setype': 'svirt_sandbox_file_t'}
             - {'path': /var/lib/mysql, 'setype': 'svirt_sandbox_file_t'}
+            - {'path': /var/log/mariadb, 'setype': 'svirt_sandbox_file_t'}
         - name: mysql logs readme
           copy:
             dest: /var/log/mariadb/readme.txt
diff --git a/docker/services/database/redis.yaml b/docker/services/database/redis.yaml
index ca427caffe..e98a531913 100644
--- a/docker/services/database/redis.yaml
+++ b/docker/services/database/redis.yaml
@@ -158,6 +158,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/redis, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/run/redis, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/redis, 'setype': svirt_sandbox_file_t }
         - name: redis logs readme
           copy:
             dest: /var/log/redis/readme.txt
diff --git a/docker/services/designate-api.yaml b/docker/services/designate-api.yaml
index bc4519d1b0..59bc7bdef3 100644
--- a/docker/services/designate-api.yaml
+++ b/docker/services/designate-api.yaml
@@ -139,11 +139,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/designate
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/designate, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/designate, 'setype': svirt_sandbox_file_t }
         - name: designate logs readme
           copy:
             dest: /var/log/designate/readme.txt
diff --git a/docker/services/designate-central.yaml b/docker/services/designate-central.yaml
index 441ac64875..3c6aa418ad 100644
--- a/docker/services/designate-central.yaml
+++ b/docker/services/designate-central.yaml
@@ -157,11 +157,14 @@ outputs:
                   - /var/log/containers/designate:/var/log/designate:z
             command: "/usr/bin/bootstrap_host_exec designate_central su designate -s /bin/bash -c '/bin/designate-manage pool update'"
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/designate
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/designate, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/designate, 'setype': svirt_sandbox_file_t }
         - name: designate logs readme
           copy:
             dest: /var/log/designate/readme.txt
diff --git a/docker/services/designate-mdns.yaml b/docker/services/designate-mdns.yaml
index b24f93a9b2..c3df49e57f 100644
--- a/docker/services/designate-mdns.yaml
+++ b/docker/services/designate-mdns.yaml
@@ -119,11 +119,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/designate
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/designate, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/designate, 'setype': svirt_sandbox_file_t }
         - name: designate logs readme
           copy:
             dest: /var/log/designate/readme.txt
diff --git a/docker/services/designate-producer.yaml b/docker/services/designate-producer.yaml
index 64fa986232..5bb7c72a2d 100644
--- a/docker/services/designate-producer.yaml
+++ b/docker/services/designate-producer.yaml
@@ -120,11 +120,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/designate
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/designate, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/designate, 'setype': svirt_sandbox_file_t }
         - name: designate logs readme
           copy:
             dest: /var/log/designate/readme.txt
diff --git a/docker/services/designate-sink.yaml b/docker/services/designate-sink.yaml
index 4418084c50..331d6fb072 100644
--- a/docker/services/designate-sink.yaml
+++ b/docker/services/designate-sink.yaml
@@ -120,11 +120,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/designate
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/designate, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/designate, 'setype': svirt_sandbox_file_t }
         - name: designate logs readme
           copy:
             dest: /var/log/designate/readme.txt
diff --git a/docker/services/designate-worker.yaml b/docker/services/designate-worker.yaml
index decc86a205..35a0bf524e 100644
--- a/docker/services/designate-worker.yaml
+++ b/docker/services/designate-worker.yaml
@@ -161,11 +161,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/designate
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/designate, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/designate, 'setype': svirt_sandbox_file_t }
         - name: designate logs readme
           copy:
             dest: /var/log/designate/readme.txt
diff --git a/docker/services/ec2-api.yaml b/docker/services/ec2-api.yaml
index a29fb4d131..69860a800b 100644
--- a/docker/services/ec2-api.yaml
+++ b/docker/services/ec2-api.yaml
@@ -205,6 +205,8 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/ec2_api, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/ec2_api_metadata, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ec2_api, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/ec2_api_metadata, 'setype': svirt_sandbox_file_t }            
         - name: ec2_api logs readme
           copy:
             dest: /var/log/{{ item }}/readme.txt
diff --git a/docker/services/fluentd.yaml b/docker/services/fluentd.yaml
index de85758932..4f58bcb3df 100644
--- a/docker/services/fluentd.yaml
+++ b/docker/services/fluentd.yaml
@@ -107,11 +107,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory for fluentd
+        - name: create persistent directories
           file:
-            path: /var/log/containers/fluentd
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/fluentd, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/fluentd, 'setype': svirt_sandbox_file_t }
         - name: fluentd logs readme
           copy:
             dest: /var/log/fluentd/readme.txt
diff --git a/docker/services/gnocchi-api.yaml b/docker/services/gnocchi-api.yaml
index 3ee462e0ab..0003d156ba 100644
--- a/docker/services/gnocchi-api.yaml
+++ b/docker/services/gnocchi-api.yaml
@@ -236,6 +236,7 @@ outputs:
             - { 'path': /var/log/containers/gnocchi, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/gnocchi-api, 'setype': svirt_sandbox_file_t }
             - { 'path': {get_param: GnocchiFileBasePath}, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/gnocchi, 'setype': svirt_sandbox_file_t }
         - name: gnocchi logs readme
           copy:
             dest: /var/log/gnocchi/readme.txt
diff --git a/docker/services/gnocchi-metricd.yaml b/docker/services/gnocchi-metricd.yaml
index 566a468be4..7f71c8cb4d 100644
--- a/docker/services/gnocchi-metricd.yaml
+++ b/docker/services/gnocchi-metricd.yaml
@@ -137,11 +137,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/gnocchi
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/gnocchi, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/gnocchi, 'setype': svirt_sandbox_file_t }
         - name: gnocchi logs readme
           copy:
             dest: /var/log/gnocchi/readme.txt
diff --git a/docker/services/gnocchi-statsd.yaml b/docker/services/gnocchi-statsd.yaml
index b211a6c8d3..77d70b3768 100644
--- a/docker/services/gnocchi-statsd.yaml
+++ b/docker/services/gnocchi-statsd.yaml
@@ -137,11 +137,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/gnocchi
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/gnocchi, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/gnocchi, 'setype': svirt_sandbox_file_t }
         - name: gnocchi logs readme
           copy:
             dest: /var/log/gnocchi/readme.txt
diff --git a/docker/services/haproxy.yaml b/docker/services/haproxy.yaml
index 7ab895be60..7e0b8cc7f4 100644
--- a/docker/services/haproxy.yaml
+++ b/docker/services/haproxy.yaml
@@ -326,6 +326,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/haproxy, 'setype': var_log_t }
             - { 'path': /var/lib/haproxy, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/haproxy, 'setype': svirt_sandbox_file_t }
         - name: haproxy logs readme
           copy:
             dest: /var/log/haproxy/readme.txt
diff --git a/docker/services/horizon.yaml b/docker/services/horizon.yaml
index 98d032802e..9041d3547f 100644
--- a/docker/services/horizon.yaml
+++ b/docker/services/horizon.yaml
@@ -167,7 +167,7 @@ outputs:
               - ENABLE_ZAQAR=no
               - ENABLE_ZUN=no
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory
@@ -176,6 +176,7 @@ outputs:
             - { 'path': /var/log/containers/horizon, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/horizon, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/www, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/horizon, 'setype': svirt_sandbox_file_t }
         - name: horizon logs readme
           copy:
             dest: /var/log/horizon/readme.txt
diff --git a/docker/services/logging/files/barbican-api.yaml b/docker/services/logging/files/barbican-api.yaml
index eafbc3bb75..8828a0a9dc 100644
--- a/docker/services/logging/files/barbican-api.yaml
+++ b/docker/services/logging/files/barbican-api.yaml
@@ -32,7 +32,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -40,6 +40,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/barbican, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/barbican-api, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/barbican, 'setype': svirt_sandbox_file_t }
       - name: barbican logs readme
         copy:
           dest: /var/log/barbican/readme.txt
diff --git a/docker/services/logging/files/heat-api-cfn.yaml b/docker/services/logging/files/heat-api-cfn.yaml
index a0c1c68a04..2793a44d89 100644
--- a/docker/services/logging/files/heat-api-cfn.yaml
+++ b/docker/services/logging/files/heat-api-cfn.yaml
@@ -19,7 +19,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -27,6 +27,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/heat, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/heat-api-cfn, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/heat, 'setype': svirt_sandbox_file_t }
       - name: heat logs readme
         copy:
           dest: /var/log/heat/readme.txt
diff --git a/docker/services/logging/files/heat-api.yaml b/docker/services/logging/files/heat-api.yaml
index 0950c0a544..06b9f88c84 100644
--- a/docker/services/logging/files/heat-api.yaml
+++ b/docker/services/logging/files/heat-api.yaml
@@ -19,7 +19,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -27,6 +27,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/heat, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/heat-api, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/heat, 'setype': svirt_sandbox_file_t }
       - name: heat logs readme
         copy:
           dest: /var/log/heat/readme.txt
diff --git a/docker/services/logging/files/heat-engine.yaml b/docker/services/logging/files/heat-engine.yaml
index 1d3f8431cd..d19a25ed3b 100644
--- a/docker/services/logging/files/heat-engine.yaml
+++ b/docker/services/logging/files/heat-engine.yaml
@@ -33,11 +33,14 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
-          path: /var/log/containers/heat
+          path: "{{ item.path }}"
           state: directory
-          setype: svirt_sandbox_file_t
+          setype: "{{ item.setype }}"
+        with_items:
+          - { 'path': /var/log/containers/heat, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/heat, 'setype': svirt_sandbox_file_t }
       - name: heat logs readme
         copy:
           dest: /var/log/heat/readme.txt
diff --git a/docker/services/logging/files/keystone.yaml b/docker/services/logging/files/keystone.yaml
index 44c9b3ae0e..fa484d920e 100644
--- a/docker/services/logging/files/keystone.yaml
+++ b/docker/services/logging/files/keystone.yaml
@@ -33,7 +33,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -41,6 +41,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/keystone, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/keystone, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/keystone, 'setype': svirt_sandbox_file_t }
       - name: keystone logs readme
         copy:
           dest: /var/log/keystone/readme.txt
diff --git a/docker/services/logging/files/neutron-api.yaml b/docker/services/logging/files/neutron-api.yaml
index f1613e3e0e..85a29cf7d3 100644
--- a/docker/services/logging/files/neutron-api.yaml
+++ b/docker/services/logging/files/neutron-api.yaml
@@ -41,7 +41,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -49,6 +49,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/neutron, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/neutron-api, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/neutron, 'setype': svirt_sandbox_file_t }
       - name: neutron logs readme
         copy:
           dest: /var/log/neutron/readme.txt
diff --git a/docker/services/logging/files/neutron-common.yaml b/docker/services/logging/files/neutron-common.yaml
index 82a094d56e..e27180bbd5 100644
--- a/docker/services/logging/files/neutron-common.yaml
+++ b/docker/services/logging/files/neutron-common.yaml
@@ -30,13 +30,14 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
           setype: "{{ item.setype }}"
         with_items:
           - { 'path': /var/log/containers/neutron, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/neutron, 'setype': svirt_sandbox_file_t }
       - name: neutron logs readme
         copy:
           dest: /var/log/neutron/readme.txt
diff --git a/docker/services/logging/files/nova-api.yaml b/docker/services/logging/files/nova-api.yaml
index 3a3e0b36a8..a48113a788 100644
--- a/docker/services/logging/files/nova-api.yaml
+++ b/docker/services/logging/files/nova-api.yaml
@@ -31,7 +31,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           setype: "{{ item.setype }}"
@@ -39,6 +39,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/nova, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/nova-api, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/nova, 'setype': svirt_sandbox_file_t }
       - name: nova logs readme
         copy:
           dest: /var/log/nova/readme.txt
diff --git a/docker/services/logging/files/nova-common.yaml b/docker/services/logging/files/nova-common.yaml
index 3f39f1da9c..a3cf9456d8 100644
--- a/docker/services/logging/files/nova-common.yaml
+++ b/docker/services/logging/files/nova-common.yaml
@@ -51,11 +51,14 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
-          path: /var/log/containers/nova
+          path: "{{ item.path }}"
+          setype: "{{ item.setype }}"
           state: directory
-          setype: svirt_sandbox_file_t
+        with_items:
+          - { 'path': /var/log/containers/nova, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/nova, 'setype': svirt_sandbox_file_t }
       - name: nova logs readme
         copy:
           dest: /var/log/nova/readme.txt
diff --git a/docker/services/logging/files/nova-metadata.yaml b/docker/services/logging/files/nova-metadata.yaml
index 4ddc995038..096fab0417 100644
--- a/docker/services/logging/files/nova-metadata.yaml
+++ b/docker/services/logging/files/nova-metadata.yaml
@@ -30,7 +30,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -38,6 +38,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/nova, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/nova-metadata, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/nova, 'setype': svirt_sandbox_file_t }
       - name: nova logs readme
         copy:
           dest: /var/log/nova/readme.txt
diff --git a/docker/services/logging/files/nova-placement.yaml b/docker/services/logging/files/nova-placement.yaml
index da8913bf7f..b79f1ef188 100644
--- a/docker/services/logging/files/nova-placement.yaml
+++ b/docker/services/logging/files/nova-placement.yaml
@@ -30,7 +30,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -38,6 +38,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/nova, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/nova-placement, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/nova, 'setype': svirt_sandbox_file_t }
       - name: nova logs readme
         copy:
           dest: /var/log/nova/readme.txt
diff --git a/docker/services/logging/files/opendaylight-api.yaml b/docker/services/logging/files/opendaylight-api.yaml
index 25b6cb2221..7641e38990 100644
--- a/docker/services/logging/files/opendaylight-api.yaml
+++ b/docker/services/logging/files/opendaylight-api.yaml
@@ -17,7 +17,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
diff --git a/docker/services/logging/files/panko-api.yaml b/docker/services/logging/files/panko-api.yaml
index e73835d1b4..3b9a992bd8 100644
--- a/docker/services/logging/files/panko-api.yaml
+++ b/docker/services/logging/files/panko-api.yaml
@@ -32,7 +32,7 @@ outputs:
   host_prep_tasks:
     description: Extra ansible tasks needed for logging to files in the host.
     value:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -40,6 +40,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/panko, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/log/containers/httpd/panko-api, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/panko, 'setype': svirt_sandbox_file_t }
       - name: panko logs readme
         copy:
           dest: /var/log/panko/readme.txt
diff --git a/docker/services/manila-api.yaml b/docker/services/manila-api.yaml
index 617d6efb1c..56572e932d 100644
--- a/docker/services/manila-api.yaml
+++ b/docker/services/manila-api.yaml
@@ -122,7 +122,7 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: Create persistent manila logs directory
+        - name: Create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory
@@ -130,6 +130,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/manila, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/manila-api, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/manila, 'setype': svirt_sandbox_file_t }
         - name: manila logs readme
           copy:
             dest: /var/log/manila/readme.txt
diff --git a/docker/services/manila-scheduler.yaml b/docker/services/manila-scheduler.yaml
index 8d6a534293..c4fcd54ba7 100644
--- a/docker/services/manila-scheduler.yaml
+++ b/docker/services/manila-scheduler.yaml
@@ -107,11 +107,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: Create persistent manila logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/manila
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/manila, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/manila, 'setype': svirt_sandbox_file_t }
         - name: manila logs readme
           copy:
             dest: /var/log/manila/readme.txt
diff --git a/docker/services/manila-share.yaml b/docker/services/manila-share.yaml
index ac5d65af59..34c2fa84e2 100644
--- a/docker/services/manila-share.yaml
+++ b/docker/services/manila-share.yaml
@@ -128,6 +128,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/manila, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/manila, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/manila, 'setype': svirt_sandbox_file_t }
         - name: manila logs readme
           copy:
             dest: /var/log/manila/readme.txt
diff --git a/docker/services/messaging/notify-rabbitmq.yaml b/docker/services/messaging/notify-rabbitmq.yaml
index b16535767e..fd82035b79 100644
--- a/docker/services/messaging/notify-rabbitmq.yaml
+++ b/docker/services/messaging/notify-rabbitmq.yaml
@@ -217,6 +217,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/rabbitmq, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/rabbitmq, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/rabbitmq, 'setype': svirt_sandbox_file_t }
         - name: rabbitmq logs readme
           copy:
             dest: /var/log/rabbitmq/readme.txt
diff --git a/docker/services/messaging/rpc-rabbitmq.yaml b/docker/services/messaging/rpc-rabbitmq.yaml
index 512dca088c..a5ec8898dd 100644
--- a/docker/services/messaging/rpc-rabbitmq.yaml
+++ b/docker/services/messaging/rpc-rabbitmq.yaml
@@ -217,6 +217,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/rabbitmq, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/rabbitmq, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/rabbitmq, 'setype': svirt_sandbox_file_t }
         - name: rabbitmq logs readme
           copy:
             dest: /var/log/rabbitmq/readme.txt
diff --git a/docker/services/metrics/collectd.yaml b/docker/services/metrics/collectd.yaml
index 504de8038b..ea8242f0ce 100644
--- a/docker/services/metrics/collectd.yaml
+++ b/docker/services/metrics/collectd.yaml
@@ -114,11 +114,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/collectd
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/collectd, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/collectd, 'setype': svirt_sandbox_file_t }
         - name: collectd logs readme
           copy:
             dest: /var/log/collectd/readme.txt
diff --git a/docker/services/mistral-api.yaml b/docker/services/mistral-api.yaml
index 9b86913c90..b0a79c0942 100644
--- a/docker/services/mistral-api.yaml
+++ b/docker/services/mistral-api.yaml
@@ -151,11 +151,14 @@ outputs:
             # the Mistral API image so that we get tripleo* actions
             command: "/usr/bin/bootstrap_host_exec mistral_api su mistral -s /bin/bash -c 'mistral-db-manage --config-file /etc/mistral/mistral.conf populate'"
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/mistral
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/mistral, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/mistral, 'setype': svirt_sandbox_file_t }
         - name: mistral logs readme
           copy:
             dest: /var/log/mistral/readme.txt
diff --git a/docker/services/mistral-engine.yaml b/docker/services/mistral-engine.yaml
index c3968cc5a0..8ba4fde2cf 100644
--- a/docker/services/mistral-engine.yaml
+++ b/docker/services/mistral-engine.yaml
@@ -121,11 +121,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/mistral
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/mistral, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/mistral, 'setype': svirt_sandbox_file_t }
         - name: mistral logs readme
           copy:
             dest: /var/log/mistral/readme.txt
diff --git a/docker/services/mistral-event-engine.yaml b/docker/services/mistral-event-engine.yaml
index 01a92f5a31..0e0e0b3eb7 100644
--- a/docker/services/mistral-event-engine.yaml
+++ b/docker/services/mistral-event-engine.yaml
@@ -121,11 +121,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/mistral
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/mistral, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/mistral, 'setype': svirt_sandbox_file_t }
         - name: mistral logs readme
           copy:
             dest: /var/log/mistral/readme.txt
diff --git a/docker/services/mistral-executor.yaml b/docker/services/mistral-executor.yaml
index 6fac92908e..dd22ef8bff 100644
--- a/docker/services/mistral-executor.yaml
+++ b/docker/services/mistral-executor.yaml
@@ -176,7 +176,7 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent data directory
+        - name: create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory
@@ -184,6 +184,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/mistral, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/mistral, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/mistral, 'setype': svirt_sandbox_file_t }
         - name: mistral logs readme
           copy:
             dest: /var/log/mistral/readme.txt
diff --git a/docker/services/nova-ironic.yaml b/docker/services/nova-ironic.yaml
index 2f56dcadb5..e85e5aeb8f 100644
--- a/docker/services/nova-ironic.yaml
+++ b/docker/services/nova-ironic.yaml
@@ -155,6 +155,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/nova, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/nova, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/nova, 'setype': svirt_sandbox_file_t }
         - name: nova logs readme
           copy:
             dest: /var/log/nova/readme.txt
diff --git a/docker/services/novajoin.yaml b/docker/services/novajoin.yaml
index 6787d60ae1..0dcb93fd92 100644
--- a/docker/services/novajoin.yaml
+++ b/docker/services/novajoin.yaml
@@ -219,6 +219,7 @@ outputs:
             setype: "{{ item.setype }}"
           with_items:
             - { 'path': /var/log/containers/novajoin, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/novajoin, 'setype': svirt_sandbox_file_t }
         - name: novajoin logs readme
           copy:
             dest: /var/log/novajoin/readme.txt
diff --git a/docker/services/octavia-api.yaml b/docker/services/octavia-api.yaml
index 10ff7fb2ba..f0dfbfd311 100644
--- a/docker/services/octavia-api.yaml
+++ b/docker/services/octavia-api.yaml
@@ -207,7 +207,7 @@ outputs:
                       - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
                 - {}
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory
@@ -215,6 +215,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/octavia, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/httpd/octavia-api, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/octavia, 'setype': svirt_sandbox_file_t }
         - name: octavia logs readme
           copy:
             dest: /var/log/octavia/readme.txt
diff --git a/docker/services/octavia-health-manager.yaml b/docker/services/octavia-health-manager.yaml
index f29223245f..8bed55a7e2 100644
--- a/docker/services/octavia-health-manager.yaml
+++ b/docker/services/octavia-health-manager.yaml
@@ -133,11 +133,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/octavia
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/octavia, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/octavia, 'setype': svirt_sandbox_file_t }
         - name: octavia logs readme
           copy:
             dest: /var/log/octavia/readme.txt
diff --git a/docker/services/octavia-housekeeping.yaml b/docker/services/octavia-housekeeping.yaml
index d555766a49..4188d6d7d5 100644
--- a/docker/services/octavia-housekeeping.yaml
+++ b/docker/services/octavia-housekeeping.yaml
@@ -129,11 +129,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/octavia
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/octavia, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/octavia, 'setype': svirt_sandbox_file_t }
         - name: octavia logs readme
           copy:
             dest: /var/log/octavia/readme.txt
diff --git a/docker/services/octavia-worker.yaml b/docker/services/octavia-worker.yaml
index 36d9773ecc..332573de4f 100644
--- a/docker/services/octavia-worker.yaml
+++ b/docker/services/octavia-worker.yaml
@@ -141,11 +141,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/octavia
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/octavia, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/octavia, 'setype': svirt_sandbox_file_t }
         - name: octavia logs readme
           copy:
             dest: /var/log/octavia/readme.txt
diff --git a/docker/services/ovn-controller.yaml b/docker/services/ovn-controller.yaml
index b78194c8ce..2add986fbd 100644
--- a/docker/services/ovn-controller.yaml
+++ b/docker/services/ovn-controller.yaml
@@ -126,11 +126,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/openvswitch
+            path: "{{ item.path }}"
             state: directory
-            setype: svirt_sandbox_file_t
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/openvswitch, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/openvswitch, 'setype': svirt_sandbox_file_t }
         - name: openvswitch logs readme
           copy:
             dest: /var/log/openvswitch/readme.txt
diff --git a/docker/services/ovn-dbs.yaml b/docker/services/ovn-dbs.yaml
index 80a69f2f81..061c1f1249 100644
--- a/docker/services/ovn-dbs.yaml
+++ b/docker/services/ovn-dbs.yaml
@@ -198,6 +198,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/openvswitch, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/openvswitch/ovn, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/openvswitch, 'setype': svirt_sandbox_file_t }
         - name: openvswitch logs readme
           copy:
             dest: /var/log/openvswitch/readme.txt
diff --git a/docker/services/pacemaker/database/mysql.yaml b/docker/services/pacemaker/database/mysql.yaml
index 031d5c37ae..1ae4b88509 100644
--- a/docker/services/pacemaker/database/mysql.yaml
+++ b/docker/services/pacemaker/database/mysql.yaml
@@ -294,8 +294,9 @@ outputs:
             state: directory
             setype: "{{ item.setype }}"
           with_items:
-            - {'path':/var/log/containers/mysql, 'setype': 'svirt_sandbox_file_t'}
+            - {'path': /var/log/containers/mysql, 'setype': 'svirt_sandbox_file_t'}
             - {'path': /var/lib/mysql, 'setype': 'svirt_sandbox_file_t'}
+            - {'path': /var/log/mariadb, 'setype': 'svirt_sandbox_file_t'}
         - name: mysql logs readme
           copy:
             dest: /var/log/mariadb/readme.txt
diff --git a/docker/services/pacemaker/database/redis.yaml b/docker/services/pacemaker/database/redis.yaml
index afebc26214..4acc4045f2 100644
--- a/docker/services/pacemaker/database/redis.yaml
+++ b/docker/services/pacemaker/database/redis.yaml
@@ -277,6 +277,7 @@ outputs:
             - { 'path': /var/lib/redis, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/redis, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/run/redis, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/redis, 'setype': svirt_sandbox_file_t }
         - name: redis logs readme
           copy:
             dest: /var/log/redis/readme.txt
diff --git a/docker/services/pacemaker/haproxy.yaml b/docker/services/pacemaker/haproxy.yaml
index d1e29b2d60..43723b9b2e 100644
--- a/docker/services/pacemaker/haproxy.yaml
+++ b/docker/services/pacemaker/haproxy.yaml
@@ -324,6 +324,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/haproxy, 'setype': var_log_t }
             - { 'path': /var/lib/haproxy, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/haproxy, 'setype': svirt_sandbox_file_t }
         - name: haproxy logs readme
           copy:
             dest: /var/log/haproxy/readme.txt
diff --git a/docker/services/pacemaker/manila-share.yaml b/docker/services/pacemaker/manila-share.yaml
index 38ed645f78..bf7f9ecb9e 100644
--- a/docker/services/pacemaker/manila-share.yaml
+++ b/docker/services/pacemaker/manila-share.yaml
@@ -201,6 +201,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/manila, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/manila, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/manila, 'setype': svirt_sandbox_file_t }
         - name: manila logs readme
           copy:
             dest: /var/log/manila/readme.txt
diff --git a/docker/services/pacemaker/notify-rabbitmq.yaml b/docker/services/pacemaker/notify-rabbitmq.yaml
index 4df6373877..4e0e5f6926 100644
--- a/docker/services/pacemaker/notify-rabbitmq.yaml
+++ b/docker/services/pacemaker/notify-rabbitmq.yaml
@@ -244,6 +244,7 @@ outputs:
           with_items:
             - { 'path': /var/lib/rabbitmq, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/rabbitmq, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/rabbitmq, 'setype': svirt_sandbox_file_t }
         - name: rabbitmq logs readme
           copy:
             dest: /var/log/rabbitmq/readme.txt
diff --git a/docker/services/pacemaker/ovn-dbs.yaml b/docker/services/pacemaker/ovn-dbs.yaml
index a62e8b75ba..254e1b9a39 100644
--- a/docker/services/pacemaker/ovn-dbs.yaml
+++ b/docker/services/pacemaker/ovn-dbs.yaml
@@ -187,6 +187,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/openvswitch, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/openvswitch/ovn, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/openvswitch, 'setype': svirt_sandbox_file_t }
         - name: openvswitch logs readme
           copy:
             dest: /var/log/openvswitch/readme.txt
diff --git a/docker/services/pacemaker/rabbitmq.yaml b/docker/services/pacemaker/rabbitmq.yaml
index c27783be26..03c9588e6c 100644
--- a/docker/services/pacemaker/rabbitmq.yaml
+++ b/docker/services/pacemaker/rabbitmq.yaml
@@ -243,6 +243,7 @@ outputs:
           with_items:
             - { 'path': /var/lib/rabbitmq, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/rabbitmq, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/rabbitmq, 'setype': svirt_sandbox_file_t }
         - name: rabbitmq logs readme
           copy:
             dest: /var/log/rabbitmq/readme.txt
diff --git a/docker/services/pacemaker/rpc-rabbitmq.yaml b/docker/services/pacemaker/rpc-rabbitmq.yaml
index e597fa7b21..317588543e 100644
--- a/docker/services/pacemaker/rpc-rabbitmq.yaml
+++ b/docker/services/pacemaker/rpc-rabbitmq.yaml
@@ -246,6 +246,7 @@ outputs:
           with_items:
             - { 'path': /var/lib/rabbitmq, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/log/containers/rabbitmq, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/rabbitmq, 'setype': svirt_sandbox_file_t }
         - name: rabbitmq logs readme
           copy:
             dest: /var/log/rabbitmq/readme.txt
diff --git a/docker/services/qdrouterd.yaml b/docker/services/qdrouterd.yaml
index 7546f149f2..bac1ae81e9 100644
--- a/docker/services/qdrouterd.yaml
+++ b/docker/services/qdrouterd.yaml
@@ -107,7 +107,7 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-      - name: create persistent logs directory
+      - name: create persistent directories
         file:
           path: "{{ item.path }}"
           state: directory
@@ -115,6 +115,7 @@ outputs:
         with_items:
           - { 'path': /var/log/containers/qdrouterd, 'setype': svirt_sandbox_file_t }
           - { 'path': /var/lib/qdrouterd, 'setype': svirt_sandbox_file_t }
+          - { 'path': /var/log/qdrouterd, 'setype': svirt_sandbox_file_t }
       - name: qrouterd logs readme
         copy:
           dest: /var/log/qrouterd/readme.txt
diff --git a/docker/services/rabbitmq.yaml b/docker/services/rabbitmq.yaml
index 38b9513948..3f27a0299b 100644
--- a/docker/services/rabbitmq.yaml
+++ b/docker/services/rabbitmq.yaml
@@ -216,6 +216,7 @@ outputs:
           with_items:
             - { 'path': /var/log/containers/rabbitmq, 'setype': svirt_sandbox_file_t }
             - { 'path': /var/lib/rabbitmq, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/rabbitmq, 'setype': svirt_sandbox_file_t }
         - name: rabbitmq logs readme
           copy:
             dest: /var/log/rabbitmq/readme.txt
diff --git a/docker/services/sensu-client.yaml b/docker/services/sensu-client.yaml
index 36a099752f..735c70d396 100644
--- a/docker/services/sensu-client.yaml
+++ b/docker/services/sensu-client.yaml
@@ -163,10 +163,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/sensu
+            path: "{{ item.path }}"
             state: directory
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/containers/sensu, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/sensu, 'setype': svirt_sandbox_file_t }
         - name: sensu logs readme
           copy:
             dest: /var/log/sensu/readme.txt
diff --git a/docker/services/tacker.yaml b/docker/services/tacker.yaml
index 9291d6ac09..6f3887cda0 100644
--- a/docker/services/tacker.yaml
+++ b/docker/services/tacker.yaml
@@ -131,10 +131,14 @@ outputs:
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
-            path: /var/log/containers/tacker
+            path: "{{ item.path }}"
             state: directory
+            setype: "{{ item.setype }}"
+          with_items:
+            - { 'path': /var/log/tacker, 'setype': svirt_sandbox_file_t }
+            - { 'path': /var/log/containers/tacker, 'setype': svirt_sandbox_file_t }
         - name: tacker logs readme
           copy:
             dest: /var/log/tacker/readme.txt
diff --git a/docker/services/tempest.yaml b/docker/services/tempest.yaml
index 3902a3ef44..b5b316262d 100644
--- a/docker/services/tempest.yaml
+++ b/docker/services/tempest.yaml
@@ -56,7 +56,7 @@ outputs:
               - /var/lib/tempestdata:/var/lib/tempest:z
             command: ['/bin/bash', '-c', 'chown -R tempest:tempest /var/log/tempest /var/lib/tempest']
       host_prep_tasks:
-        - name: create persistent logs directory
+        - name: create persistent directories
           file:
             path: "{{ item.path }}"
             state: directory