summaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'manifests')
-rw-r--r--manifests/config.pp1
-rw-r--r--manifests/imfile.pp4
-rw-r--r--manifests/init.pp12
-rw-r--r--manifests/modload.pp15
-rw-r--r--manifests/params.pp34
-rw-r--r--manifests/snippet.pp3
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
#