diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/config.pp | 1 | ||||
-rw-r--r-- | manifests/imfile.pp | 4 | ||||
-rw-r--r-- | manifests/init.pp | 12 | ||||
-rw-r--r-- | manifests/modload.pp | 15 | ||||
-rw-r--r-- | manifests/params.pp | 34 | ||||
-rw-r--r-- | manifests/snippet.pp | 3 |
6 files changed, 56 insertions, 13 deletions
diff --git a/manifests/config.pp b/manifests/config.pp index dbb37cc..813e784 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -43,6 +43,7 @@ class rsyslog::config { ensure => directory, owner => 'root', group => $rsyslog::run_group, + seltype => 'syslogd_var_lib_t', require => Class['rsyslog::install'], notify => Class['rsyslog::service'], } diff --git a/manifests/imfile.pp b/manifests/imfile.pp index 28665f8..bd0afa3 100644 --- a/manifests/imfile.pp +++ b/manifests/imfile.pp @@ -29,10 +29,12 @@ define rsyslog::imfile( $polling_interval = 10, $file_severity = 'notice', $run_file_monitor = true, - $persist_state_interval = 0 + $persist_state_interval = 0, ) { + include rsyslog + $extra_modules = $rsyslog::extra_modules file { "${rsyslog::rsyslog_d}${name}.conf": ensure => file, diff --git a/manifests/init.pp b/manifests/init.pp index 6cd0da8..76d6102 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -1,6 +1,7 @@ # == Class: rsyslog # -# Meta class to install rsyslog with a basic configuration. You probably want rsyslog::client or rsyslog::server +# Meta class to install rsyslog with a basic configuration. +# You probably want rsyslog::client or rsyslog::server # # === Parameters # @@ -38,9 +39,16 @@ class rsyslog ( $server_conf = $rsyslog::params::server_conf, $ssl = $rsyslog::params::ssl, $modules = $rsyslog::params::modules, - $preserve_fqdn = $rsyslog::params::preserve_fqdn + $preserve_fqdn = $rsyslog::params::preserve_fqdn, + $max_message_size = $rsyslog::params::max_message_size, + $extra_modules = $rsyslog::params::extra_modules ) inherits rsyslog::params { class { 'rsyslog::install': } class { 'rsyslog::config': } + + if $extra_modules != [] { + class { 'rsyslog::modload': } + } + class { 'rsyslog::service': } } diff --git a/manifests/modload.pp b/manifests/modload.pp new file mode 100644 index 0000000..7a838af --- /dev/null +++ b/manifests/modload.pp @@ -0,0 +1,15 @@ +# == Class: rsyslog::modload +# + +class rsyslog::modload ( + $modload_filename = '10-modload.conf', +) { + file { "${rsyslog::rsyslog_d}${modload_filename}": + ensure => file, + owner => 'root', + group => $rsyslog::run_group, + content => template('rsyslog/modload.erb'), + require => Class['rsyslog::install'], + notify => Class['rsyslog::service'], + } +} diff --git a/manifests/params.pp b/manifests/params.pp index b0014d2..0519037 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -1,6 +1,7 @@ # == Class: rsyslog::params # -# This defines default configuration values for rsyslog. You don't want to use it directly. +# This defines default configuration values for rsyslog. +# You don't want to use it directly. # # === Parameters # @@ -12,6 +13,8 @@ # class rsyslog::params { + $max_message_size = '2k' + case $::osfamily { debian: { $rsyslog_package_name = 'rsyslog' @@ -45,6 +48,8 @@ class rsyslog::params { $preserve_fqdn = false $service_hasrestart = true $service_hasstatus = true + $extra_modules = [] + } redhat: { if $::operatingsystem == 'Amazon' { @@ -120,12 +125,14 @@ class rsyslog::params { $preserve_fqdn = false $service_hasrestart = true $service_hasstatus = true + $extra_modules = [] } - sles: { + suse: { $rsyslog_package_name = 'rsyslog' - $relp_package_name = 'rsyslog-module-relp' - $mysql_package_name = 'rsyslog-module-mysql' - $pgsql_package_name = 'rsyslog-module-pgsql' + $relp_package_name = false + $mysql_package_name = false + $pgsql_package_name = false + $gnutls_package_name = false $package_status = 'latest' $rsyslog_d = '/etc/rsyslog.d/' $rsyslog_conf = '/etc/rsyslog.conf' @@ -134,14 +141,20 @@ class rsyslog::params { $run_group = 'root' $log_user = 'root' $log_group = 'root' - $log_style = 'sles' + $log_style = 'debian' $perm_file = '0600' $perm_dir = '0750' $spool_dir = '/var/spool/rsyslog/' $service_name = 'syslog' - $client_conf = "${rsyslog_d}client.conf" - $server_conf = "${rsyslog_d}server.conf" - } + $client_conf = 'client' + $server_conf = 'server' + $modules = [ + '$ModLoad imuxsock # provides support for local system logging', + '$ModLoad imklog # provides kernel logging support (previously done by rklogd)', + '#$ModLoad immark # provides --MARK-- message capability', + ] + $extra_modules = [] + } freebsd: { $rsyslog_package_name = 'sysutils/rsyslog5' $relp_package_name = 'sysutils/rsyslog5-relp' @@ -174,6 +187,7 @@ class rsyslog::params { $preserve_fqdn = false $service_hasrestart = true $service_hasstatus = true + $extra_modules = [] } default: { @@ -210,6 +224,8 @@ class rsyslog::params { $preserve_fqdn = false $service_hasrestart = true $service_hasstatus = true + $extra_modules = [] + } default: { fail("The ${module_name} module is not supported on ${::osfamily}/${::operatingsystem}.") diff --git a/manifests/snippet.pp b/manifests/snippet.pp index 9edf179..f638396 100644 --- a/manifests/snippet.pp +++ b/manifests/snippet.pp @@ -1,6 +1,7 @@ # == Define: rsyslog::snippet # -# This class allows for you to create a rsyslog configuration file with whatever content you pass in. +# This class allows for you to create a rsyslog configuration file with +# whatever content you pass in. # # === Parameters # |