Enable logging to stdout/stderr in memcached

Even though https://bugs.launchpad.net/tripleo/+bug/1776889 got fixed,
memcached is still configured to log to a file due to the way
puppet-memcached works:
- It would omit logging to a file when the logfile parameter (which has
  a default value) is set to undef
- In puppet/hiera undeffing a parameter that has a default value does
  not work: https://tickets.puppetlabs.com/browse/PUP-5295

In fact even after the fixes from https://bugs.launchpad.net/tripleo/+bug/1776889 get included we still see the following:
[root@rhosp-ctr01 ~]# ps -ef | grep memcached
42457 44366 44342 0 10:06 ? 00:00:00 /bin/bash -c source /etc/sysconfig/memcached; /usr/bin/memcached -p ${PORT} -u ${USER} -m ${CACHESIZE} -c ${MAXCONN} $OPTIONS
42457 44385 44366 0 10:06 ? 00:00:08 /usr/bin/memcached -p 11211 -u memcached -m 16005 -c 8192 -v -l 192.168.18.11 -U 0 -t 8 >> /var/log/memcached.log 2>&1

This change depends on the following memcached PR:
https://github.com/saz/puppet-memcached/pull/99/files to work correctly.

With this patch memcached logs to stdout/err correctly:
[root@overcloud-controller-0 etc]# ps auxwfw |grep memcache
42457      37207  0.0  0.0  11680  1396 ?        Ss   19:23   0:00      |   \_ /bin/bash -c source /etc/sysconfig/memcached; /usr/bin/memcached -p ${PORT} -u ${USER} -m ${CACHESIZE} -c ${MAXCONN} $OPTIONS
42457      37224  0.0  0.0 293160  3724 ?        Sl   19:23   0:00      |       \_ /usr/bin/memcached -p 11211 -u memcached -m 5877 -c 8192 -v -l 172.16.2.14 -U 0 -X -t 2

Change-Id: I8cec029bd1f64ec1daa76a89e949e7d245580918
Closes-Bug: #1782223
This commit is contained in:
Michele Baldessari 2018-07-17 20:42:05 +02:00
parent d8b7b192ae
commit c93489cfbe

View File

@ -57,7 +57,10 @@ outputs:
description: Role data for the Memcached API role.
value:
service_name: {get_attr: [MemcachedBase, role_data, service_name]}
config_settings: {get_attr: [MemcachedBase, role_data, config_settings]}
config_settings:
map_merge:
- {get_attr: [MemcachedBase, role_data, config_settings]}
- memcached::logstdout: true
logging_source: {get_attr: [MemcachedBase, role_data, logging_source]}
logging_groups: {get_attr: [MemcachedBase, role_data, logging_groups]}
service_config_settings: {get_attr: [MemcachedBase, role_data, service_config_settings]}