From 3967a2b0e7e61dfb6317296a4cf15d0fe91a1638 Mon Sep 17 00:00:00 2001 From: Noriko Hosoi Date: Thu, 15 Oct 2020 10:52:29 -0700 Subject: [PATCH 7/7] RHELPLAN-56807 - Logging - elasticsearch - need to adjust jinja2 boolean values to the rsyslog config values Resetting the values of the following params as rsyslog expects. dynSearchIndex, bulkmode, dynbulkid, allowUnsignedCerts, usehttps Adding test cases to tests_ovirt_elasticsearch_params.yml (cherry picked from commit c98aabd864f6d07c11d6db991bf0af0aaee7f123) --- .../rsyslog/templates/output_elasticsearch.j2 | 13 ++++----- tests/tests_ovirt_elasticsearch_params.yml | 29 +++++++++++++++++-- 2 files changed, 33 insertions(+), 9 deletions(-) diff --git a/roles/rsyslog/templates/output_elasticsearch.j2 b/roles/rsyslog/templates/output_elasticsearch.j2 index c4db10f..6c6255b 100644 --- a/roles/rsyslog/templates/output_elasticsearch.j2 +++ b/roles/rsyslog/templates/output_elasticsearch.j2 @@ -37,25 +37,24 @@ ruleset(name="{{ item.name }}") { serverport="{{ item.server_port | d(9200) | int }}" template="{{ item.template | d("es_template") }}" searchIndex="{{ item.searchIndex | d("index_template") }}" - dynSearchIndex="{{ item.dynSearchIndex | d("on") }}" + dynSearchIndex="{{ item.dynSearchIndex | d(true) | ternary('on', 'off') }}" searchType="{{ item.searchType | d("com.redhat.viaq.common") }}" - bulkmode="{{ item.bulkmode | d("on") }}" + bulkmode="{{ item.bulkmode | d(true) | ternary('on', 'off') }}" writeoperation="{{ item.writeoperation | d("create") }}" bulkid="{{ item.bulkid | d("id_template") }}" - dynbulkid="{{ item.dynbulkid | d('on') }}" - allowUnsignedCerts="{{ item.allowUnsignedCerts | d("off") }}" + dynbulkid="{{ item.dynbulkid | d(true) | ternary('on', 'off') }}" + allowUnsignedCerts="{{ item.allowUnsignedCerts | d(false) | ternary('on', 'off') }}" {% if item.retryfailures | d(true) %} -{% if item.retryruleset | d() | length > 0 %} retryfailures="on" +{% if item.retryruleset | d() | length > 0 %} retryruleset="{{ item.retryruleset }}" {% else %} - retryfailures="on" retryruleset="{{ item.name }}" {% endif %} {% else %} retryfailures="off" {% endif %} - usehttps="{{ item.usehttps | default("on") }}" + usehttps="{{ item.usehttps | d(true) | ternary('on', 'off') }}" {% if item.use_cert | default(true) %} tls.cacert="{{ item.ca_cert | default('/etc/rsyslog.d/es-ca.crt') }}" tls.mycert="{{ item.cert | default('/etc/rsyslog.d/es-cert.pem') }}" diff --git a/tests/tests_ovirt_elasticsearch_params.yml b/tests/tests_ovirt_elasticsearch_params.yml index 34d9e1d..4fefe59 100644 --- a/tests/tests_ovirt_elasticsearch_params.yml +++ b/tests/tests_ovirt_elasticsearch_params.yml @@ -34,6 +34,8 @@ __test_ovirt_engine_conf: /etc/rsyslog.d/90-input-ovirt-ovirt_engine_input.conf __test_ovirt_vdsm_conf: /etc/rsyslog.d/90-input-ovirt-ovirt_vdsm_input.conf __test_ovirt_bogus_conf: /etc/rsyslog.d/90-input-ovirt-ovirt_bogus_input.conf + __test_es_conf: /etc/rsyslog.d/31-output-elasticsearch-elasticsearch_output.conf + __test_es_ops_conf: /etc/rsyslog.d/31-output-elasticsearch-elasticsearch_output_ops.conf __test_collectd_name: ovirt_collectd_input __test_engine_name: ovirt_engine_input __test_vdsm_name: ovirt_vdsm_input @@ -56,7 +58,6 @@ server_port: 9200 index_prefix: project. input_type: ovirt - retryfailures: false ca_cert: "/etc/rsyslog.d/es-ca.crt" cert: "/etc/rsyslog.d/es-cert.pem" private_key: "/etc/rsyslog.d/es-key.pem" @@ -70,6 +71,11 @@ ca_cert: "/etc/rsyslog.d/es-ca.crt" cert: "/etc/rsyslog.d/es-cert.pem" private_key: "/etc/rsyslog.d/es-key.pem" + dynSearchIndex: false + bulkmode: false + dynbulkid: false + allowUnsignedCerts: true + usehttps: false logging_inputs: - name: basic_input type: basics @@ -164,4 +170,23 @@ - name: Check index_prefix is "{{ __test_logs_index }}" in "{{ __test_ovirt_vdsm_conf }}" command: /bin/grep 'set $.index_prefix = "{{ __test_logs_index }}"' {{ __test_ovirt_vdsm_conf }} - changed_when: false + + - name: Check default config params in "{{ __test_es_conf }}" + command: /bin/grep {{ item }} {{ __test_es_conf }} + loop: + - "dynSearchIndex=.on." + - "bulkmode=.on." + - "dynbulkid=.on." + - "allowUnsignedCerts=.off." + - "usehttps=.on." + - "retryfailures=.on." + + - name: Check modified config params in "{{ __test_es_ops_conf }}" + command: /bin/grep {{ item }} {{ __test_es_ops_conf }} + loop: + - "dynSearchIndex=.off." + - "bulkmode=.off." + - "dynbulkid=.off." + - "allowUnsignedCerts=.on." + - "usehttps=.off." + - "retryfailures=.off." -- 2.26.2