Defined Type: rsyslog::config

Defined in:
manifests/config.pp

Overview

Define: rsyslog::config

This defines places a config file in rsyslog.d

Parameters

source

Sets the value of source parameter for the rsyslog fragment

content

Sets the value of content parameter for the rsyslog fragment Note: This option is alternative to the source one

ensure

Define if the fragment should be present (default) or ‘absent’

order

Sets the order of the fragment inside /etc/rsyslogers or /etc/rsyslogers.d Default 20

Parameters:

  • ensure (Any) (defaults to: present)
  • content (Any) (defaults to: '')
  • template (Any) (defaults to: '')
  • options (Any) (defaults to: {})
  • source (Any) (defaults to: '')
  • order (Any) (defaults to: '20')


21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'manifests/config.pp', line 21

define rsyslog::config (
  $ensure   = present,
  $content  = '',
  $template = '',
  $options  = {},
  $source   = '',
  $order    = '20',
) {

  include rsyslog

  # rsyslog skipping file names that contain a "."
  $dname = regsubst($name, '\.', '-', 'G')

  $manage_source = $source ? {
    ''        => undef,
    default   => $source,
  }

  $manage_content = $template ? {
    ''        => $content ? {
      ''      => undef,
      default => $content,
    },
    default   => template($template),
  }

  file { "${rsyslog::config_dir}/${order}_${dname}.conf":
    ensure  => $ensure,
    mode    => $rsyslog::config_file_mode,
    owner   => $rsyslog::config_file_owner,
    group   => $rsyslog::config_file_group,
    content => $manage_content,
    source  => $manage_source,
    notify  => $rsyslog::manage_service_autorestart,
    require => Package[$rsyslog::package],
    replace => $rsyslog::manage_file_replace,
    audit   => $rsyslog::manage_audit,
  }

}