6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'manifests/internal/logstash.pp', line 6
class cflogsink::internal::logstash (
Array[ String[1] ] $plugins = [],
) {
include cfdb::elasticsearch
ensure_resource( 'package', 'logstash' )
file { '/etc/systemd/system/logstash.service':
ensure => link,
target => '/dev/null',
}
-> service { 'logstash':
ensure => stopped,
enable => mask,
require => Package['logstash'],
}
#---
$all_plugins = $plugins + [
#'logstash-input-syslog',
#'',
]
$plugin_installer = '/usr/share/logstash/bin/logstash-plugin-installer'
file { $plugin_installer:
mode => '0700',
content => file( 'cflogsink/logstash_plugin_installer.sh' ),
}
-> exec { 'Installing LogStash plugins':
command => "${plugin_installer} install ${all_plugins.join(' ')}",
unless => "${plugin_installer} check ${all_plugins.join(' ')}",
require => Package['logstash'],
}
}
|