OLD | NEW |
(Empty) | |
| 1 # == Type: adblockplus::log::tracker |
| 2 # |
| 3 # Establish monitoring for a single log-file source on the current node, |
| 4 # connected to the adblockplus::log::forwarder output, if any. |
| 5 # |
| 6 # === Parameters: |
| 7 # |
| 8 # [*ensure*] |
| 9 # Whether the tracker is supposed to be 'present' or 'absent', defaults |
| 10 # to $adblockplus::log::ensure. |
| 11 # |
| 12 # [*format*] |
| 13 # Either the name of a pre-configured format specific to the (Fluentd) |
| 14 # system setup or a regular expression with named groups for extracting |
| 15 # the log event's properties. |
| 16 # |
| 17 # [*name*] |
| 18 # Translates literally into a tag attached to the tracked log event. |
| 19 # |
| 20 # [*path*] |
| 21 # The full path to the log file being tracked, required to be unique. |
| 22 # |
| 23 # === Examples: |
| 24 # |
| 25 # adblockplus::log::tracker {'example1': |
| 26 # format => 'nginx', |
| 27 # name => 'foobar.access', |
| 28 # path => '/var/log/nginx/access.log', |
| 29 # } |
| 30 # |
| 31 # adblockplus::log::tracker {'example2': |
| 32 # path => '/var/log/nginx/error.log', |
| 33 # name => 'foobar.error', |
| 34 # format => '/^(?<message>.+)$/', |
| 35 # } |
| 36 # |
| 37 # adblockplus::log::tracker {'/var/log/other.log': |
| 38 # ensure => 'absent', |
| 39 # } |
| 40 # |
| 41 define adblockplus::log::tracker ( |
| 42 $ensure = undef, |
| 43 $format = '/^(?<message>.*)$/', |
| 44 $path = $title, |
| 45 ) { |
| 46 |
| 47 include adblockplus::log::forwarder |
| 48 include stdlib |
| 49 |
| 50 # Used as $title for all resource definitions contained herein |
| 51 $namevar = "adblockplus::log::tracker#$title" |
| 52 |
| 53 # See modules/fluent/manifests/config.pp |
| 54 fluent::config {$namevar: |
| 55 content => template('adblockplus/log/fluentd/tracker.conf.erb'), |
| 56 ensure => pick($ensure, $adblockplus::log::ensure), |
| 57 name => sprintf('20-adblockplus-log-tracker-%s', md5($path)), |
| 58 } |
| 59 } |
OLD | NEW |