diff options
author | Lars Kellogg-Stedman <lars@redhat.com> | 2016-08-09 16:20:18 -0400 |
---|---|---|
committer | Emilien Macchi <emilien@redhat.com> | 2016-09-17 01:31:12 +0000 |
commit | 0d9298bb8fc9903ff42e3d2402cd44e765f4c822 (patch) | |
tree | 1e894c025c3357e625c09a2e70f770496da9f985 /puppet/services/services.yaml | |
parent | 3031decbe230b9068c6af87004894bca469b1e89 (diff) |
Add fluentd client service
This implements support for installing fluentd agents as a composable
service on the overcloud.
Depends-On: I2e1abe4d8c8359e56ff626255ee50c9cacca1940
Implements: tripleo-opstools-centralized-logging
Change-Id: I23b0e23881b742158fcfb6b8c145a3211d45086e
Diffstat (limited to 'puppet/services/services.yaml')
-rw-r--r-- | puppet/services/services.yaml | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/puppet/services/services.yaml b/puppet/services/services.yaml index b54a6d7a..c8d5642c 100644 --- a/puppet/services/services.yaml +++ b/puppet/services/services.yaml @@ -39,6 +39,9 @@ resources: EndpointMap: {get_param: EndpointMap} DefaultPasswords: {get_param: DefaultPasswords} + LoggingConfiguration: + type: OS::TripleO::LoggingConfiguration + outputs: role_data: description: Combined Role data for this set of services. @@ -53,6 +56,42 @@ outputs: yaql: expression: list($.data.subscriptions.where($ != null)) data: {subscriptions: {get_attr: [ServiceChain, role_data, monitoring_subscription]}} + logging_sources: + # Transform the individual logging_source configuration from + # each service in the chain into a global list, adding some + # default configuration at the same time. + yaql: + expression: > + let( + default_format => $.data.default_format, + pos_file_path => $.data.pos_file_path, + sources => $.data.sources.flatten() + ) -> + $sources.where($ != null).select({ + 'type' => 'tail', + 'tag' => $.tag, + 'path' => $.path, + 'format' => $.get('format', $default_format), + 'pos_file' => $.get('pos_file', $pos_file_path + '/' + $.tag + '.pos') + }) + data: + sources: + - {get_attr: [LoggingConfiguration, LoggingDefaultSources]} + - {get_attr: [ServiceChain, role_data, logging_source]} + - {get_attr: [LoggingConfiguration, LoggingExtraSources]} + default_format: {get_attr: [LoggingConfiguration, LoggingDefaultFormat]} + pos_file_path: {get_attr: [LoggingConfiguration, LoggingPosFilePath]} + logging_groups: + # Build a list of unique groups to which we should add the + # fluentd user. + yaql: + expression: > + set($.data.groups.flatten()).where($) + data: + groups: + - [{get_attr: [LoggingConfiguration, LoggingDefaultGroups]}] + - {get_attr: [ServiceChain, role_data, logging_groups]} + - [{get_attr: [LoggingConfiguration, LoggingExtraGroups]}] config_settings: {map_merge: {get_attr: [ServiceChain, role_data, config_settings]}} global_config_settings: map_merge: |