Ceilometer add ability to use global logging.conf

Add ability to use global logging.conf template which can be
used in all openstack components which support oslo.log

Change-Id: I1e46d8238305ac22921539268929b294b5a0c9ec
Related-Prod: PROD-21353
diff --git a/ceilometer/agent.sls b/ceilometer/agent.sls
index 679c632..3822928 100644
--- a/ceilometer/agent.sls
+++ b/ceilometer/agent.sls
@@ -40,7 +40,7 @@
 {{ service_name }}_logging_conf:
   file.managed:
     - name: /etc/ceilometer/logging/logging-{{ service_name }}.conf
-    - source: salt://ceilometer/files/logging.conf
+    - source: salt://oslo_templates/files/logging/_logging.conf
     - template: jinja
     - user: ceilometer
     - group: ceilometer
@@ -52,7 +52,7 @@
     - makedirs: True
     - defaults:
         service_name: {{ service_name }}
-        values: {{ agent }}
+        _data: {{ agent.logging }}
     - watch_in:
       - service: ceilometer_agent_services
 {% endfor %}
diff --git a/ceilometer/files/logging.conf b/ceilometer/files/logging.conf
deleted file mode 100644
index 3722aad..0000000
--- a/ceilometer/files/logging.conf
+++ /dev/null
@@ -1,62 +0,0 @@
-{%- set log_handlers = [] -%}
-{%- for log_handler_name, log_handler_attrs in values.logging.log_handlers.items() %}
-  {%- if log_handler_attrs.get('enabled', False) %}
-    {%- do log_handlers.append(log_handler_name) -%}
-  {%- endif %}
-{%- endfor %}
-[loggers]
-keys = root, ceilometer
-
-[handlers]
-keys = {{ log_handlers | join(", ") }}
-
-[formatters]
-keys = context, default{% if values.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}, fluentd{% endif %}
-
-[logger_root]
-level = {{ values.logging.get('loggers', {}).get('root', {}).get('level', 'WARNING') }}
-handlers = {{ log_handlers | join(", ") }}
-
-[logger_ceilometer]
-level = {{ values.logging.get('loggers', {}).get('ceilometer', {}).get('level', 'INFO') }}
-handlers = {{ log_handlers | join(", ") }}
-qualname = ceilometer
-propagate = 0
-
-{%- if values.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}
-[handler_fluentd]
-class = fluent.handler.FluentHandler
-args = ('openstack.{{ service_name | replace("-", ".", 1) }}', 'localhost', 24224)
-formatter = fluentd
-{%- endif %}
-
-{%- if values.logging.log_handlers.watchedfile.enabled %}
-[handler_watchedfile]
-class = handlers.WatchedFileHandler
-args = ('/var/log/ceilometer/{{ service_name }}.log',)
-formatter = context
-{%- endif %}
-
-{% if values.logging.log_handlers.get('ossyslog', {}).get('enabled', False) -%}
-{%- set ossyslog_args = values.logging.log_handlers.ossyslog.get('args', {}) -%}
-[handler_ossyslog]
-class = oslo_log.handlers.OSSysLogHandler
-# the OSSysLogHandler uses 'syslog' lib, where the LOG_* facilities are already *8
-# but in the context where the args are evaluated we have access only to Python's
-# handlers.SysLogHandler.LOG_* constants that _ARE_NOT_ multiplied by 8.
-# To not have a completely magic single int in the rendered template,
-# we multiply it here.
-args = ( 8 * handlers.SysLogHandler.{{ ossyslog_args.get('facility', 'LOG_USER') }}, )
-formatter = context
-{%- endif %}
-
-[formatter_context]
-class = oslo_log.formatters.ContextFormatter
-
-[formatter_default]
-format = %(message)s
-
-{%- if values.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}
-[formatter_fluentd]
-class = oslo_log.formatters.FluentFormatter
-{%- endif %}
diff --git a/ceilometer/map.jinja b/ceilometer/map.jinja
index 776aaf1..d749ccb 100644
--- a/ceilometer/map.jinja
+++ b/ceilometer/map.jinja
@@ -14,6 +14,7 @@
           'topics': 'notifications'
         },
         'logging': {
+          'app_name': 'ceilometer',
           'log_appender': false,
           'log_handlers': {
             'watchedfile': {
@@ -29,6 +30,7 @@
           'topics': 'notifications'
         },
         'logging': {
+          'app_name': 'ceilometer',
           'log_appender': false,
           'log_handlers': {
             'watchedfile': {
@@ -80,6 +82,7 @@
           'topics': 'notifications'
         },
         'logging': {
+          'app_name': 'ceilometer',
           'log_appender': false,
           'log_handlers': {
             'watchedfile': {
diff --git a/ceilometer/server.sls b/ceilometer/server.sls
index fbf50a5..071f642 100644
--- a/ceilometer/server.sls
+++ b/ceilometer/server.sls
@@ -38,7 +38,7 @@
 ceilometer_general_logging_conf:
   file.managed:
     - name: /etc/ceilometer/logging.conf
-    - source: salt://ceilometer/files/logging.conf
+    - source: salt://oslo_templates/files/logging/_logging.conf
     - template: jinja
     - user: ceilometer
     - group: ceilometer
@@ -49,7 +49,7 @@
 {%- endif %}
     - defaults:
         service_name: ceilometer
-        values: {{ server }}
+        _data: {{ server.logging }}
     - watch_in:
       - service: ceilometer_server_services
 {%- if server.version in  ['newton', 'ocata'] %}
@@ -70,7 +70,7 @@
 {{ service_name }}_logging_conf:
   file.managed:
     - name: /etc/ceilometer/logging/logging-{{ service_name }}.conf
-    - source: salt://ceilometer/files/logging.conf
+    - source: salt://oslo_templates/files/logging/_logging.conf
     - template: jinja
     - require:
       - pkg: ceilometer_server_packages
@@ -80,7 +80,7 @@
     - makedirs: True
     - defaults:
         service_name: {{ service_name }}
-        values: {{ server }}
+        _data: {{ server.logging }}
     - watch_in:
       - service: ceilometer_server_services
 {%- endfor %}