Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 36 additions & 16 deletions manifests/integrations/disk.pp
Original file line number Diff line number Diff line change
Expand Up @@ -15,27 +15,41 @@
# The (optional) tag_by_filesystem parameter will instruct the check to
# tag all disks with their filesystem (for ex: filesystem:nfs)
# (values: yes, no)
# $filesystem_blacklist
# $filesystem_exclude
# The (optional) filesystems you wish to exclude, example: tmpfs, run,
# dev (string or array)
# $device_blacklist
# $device_exclude
# The (optional) devices you wish to exclude, example: /dev/sda (string or array)
# $mountpoint_blacklist
# $mountpoint_exclude
# The (optional) mountpoints you wish to exclude, example: /tmp,
# /mnt/somebody-elses-problem (string or array)
# $filesystem_whitelist
# $filesystem_include
# Specify (optional) filesystems, to only collect from them (string or array)
# $device_whitelist
# $device_include
# Specify (optional) devices, to only collect from them (string or array)
# $mountpoint_whitelist
# $mountpoint_include
# Specify (optional) mountpoints, to only collect from them (string or array)
# $excluded_filesystems (DEPRECATED in agent version>6.9, use $filesystem_blacklist instead)
# $filesystem_blacklist (DEPRECATED in agent version>7.24, use $filesystem_exclude instead)
# The (optional) filesystems you wish to exclude, example: tmpfs, run,
# dev (string or array)
# $device_blacklist (DEPRECATED in agent version>7.24, use $device_exclude instead)
# The (optional) devices you wish to exclude, example: /dev/sda (string or array)
# $mountpoint_blacklist (DEPRECATED in agent version>7.24, use $mountpoint_exclude instead)
# The (optional) mountpoints you wish to exclude, example: /tmp,
# /mnt/somebody-elses-problem (string or array)
# $filesystem_whitelist DEPRECATED in agent version>7.24, use $device_include instead)
# Specify (optional) filesystems, to only collect from them (string or array)
# $device_whitelist (DEPRECATED in agent version>7.24, use $device_include instead)
# Specify (optional) devices, to only collect from them (string or array)
# $mountpoint_whitelist (DEPRECATED in agent version>7.24, use $mountpoint_include instead)
# Specify (optional) mountpoints, to only collect from them (string or array)
# $excluded_filesystems (DEPRECATED in agent version>6.9, use $filesystem_exclude instead)
# The filesystems you wish to exclude, example: tmpfs, run (string or array)
# $excluded_disks (DEPRECATED in agent version>6.9, use $device_blacklist instead)
# $excluded_disks (DEPRECATED in agent version>6.9, use $device_exclude instead)
# The disks you (optional)
# $excluded_disk_re (DEPRECATED in agent version>6.9, use $device_blacklist instead)
# $excluded_disk_re (DEPRECATED in agent version>6.9, use $device_exclude instead)
# Regular expression (optional) to exclude disks, eg: /dev/sde.*
# $excluded_mountpoint_re (DEPRECATED in agent version>6.9, use $mountpoint_blacklist instead)
# $excluded_mountpoint_re (DEPRECATED in agent version>6.9, use $mountpoint_exclude instead)
# Regular expression (optional) to exclude , eg: /mnt/somebody-elses-problem.*

#
Expand All @@ -50,12 +64,18 @@
String $use_mount = 'no',
$all_partitions = undef,
$tag_by_filesystem = undef,
Optional[Array[String]] $filesystem_blacklist = undef,
Optional[Array[String]] $device_blacklist = undef,
Optional[Array[String]] $mountpoint_blacklist = undef,
Optional[Array[String]] $filesystem_whitelist = undef,
Optional[Array[String]] $device_whitelist = undef,
Optional[Array[String]] $mountpoint_whitelist = undef,
Optional[Array[String]] $filesystem_exclude = undef,
Optional[Array[String]] $device_exclude = undef,
Optional[Array[String]] $mountpoint_exclude = undef,
Optional[Array[String]] $filesystem_include = undef,
Optional[Array[String]] $device_include = undef,
Optional[Array[String]] $mountpoint_include = undef,
Optional[Array[String]] $filesystem_blacklist = undef, # deprecated in agent version >7.24
Optional[Array[String]] $device_blacklist = undef, # deprecated in agent version >7.24
Optional[Array[String]] $mountpoint_blacklist = undef, # deprecated in agent version >7.24
Optional[Array[String]] $filesystem_whitelist = undef, # deprecated in agent version >7.24
Optional[Array[String]] $device_whitelist = undef, # deprecated in agent version >7.24
Optional[Array[String]] $mountpoint_whitelist = undef, # deprecated in agent version >7.24
Optional[Variant[String, Array[String]]] $excluded_filesystems = undef, # deprecated in agent versions >6.9
Optional[Variant[String, Array[String]]] $excluded_disks = undef, # deprecated in agent versions >6.9
Optional[String] $excluded_disk_re = undef, # deprecated in agent versions >6.9
Expand Down
48 changes: 48 additions & 0 deletions spec/classes/datadog_agent_integrations_disk_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,54 @@

it { is_expected.to contain_file(conf_file).with_content(yaml_conf) }
end

context 'agent_version >= 7.24.0 disk configuration option' do
let(:params) do
{
use_mount: 'yes',
filesystem_exclude: ['tmpfs', 'dev'],
device_exclude: ['/dev/sda1'],
mountpoint_exclude: ['/mnt/foo'],
filesystem_include: ['ext4', 'hdfs', 'reiserfs'],
device_include: ['/dev/sdc1', '/dev/sdc2', '/dev/sdd2'],
mountpoint_include: ['/mnt/logs', '/mnt/builds'],
all_partitions: 'yes',
tag_by_filesystem: 'no',
}
end
let(:yaml_conf) do
<<-HEREDOC
### MANAGED BY PUPPET

init_config:

instances:
- use_mount: yes
file_system_exclude:
- tmpfs
- dev
device_exclude:
- /dev/sda1
mount_point_exclude:
- /mnt/foo
file_system_include:
- ext4
- hdfs
- reiserfs
device_include:
- /dev/sdc1
- /dev/sdc2
- /dev/sdd2
mount_point_include:
- /mnt/logs
- /mnt/builds
all_partitions: yes
tag_by_filesystem: no
HEREDOC
end

it { is_expected.to contain_file(conf_file).with_content(yaml_conf) }
end
end
end
end
36 changes: 36 additions & 0 deletions templates/agent-conf.d/disk.yaml.erb
Original file line number Diff line number Diff line change
Expand Up @@ -10,36 +10,72 @@ instances:
- <%= fs %>
<%- end -%>
<% end -%>
<% if @filesystem_exclude -%>
file_system_exclude:
<% (Array(@filesystem_exclude)).each do |fs| -%>
- <%= fs %>
<%- end -%>
<% end -%>
<% if @device_blacklist -%>
device_blacklist:
<% (Array(@device_blacklist)).each do |disk| -%>
- <%= disk %>
<% end -%>
<% end -%>
<% if @device_exclude -%>
device_exclude:
<% (Array(@device_exclude)).each do |disk| -%>
- <%= disk %>
<% end -%>
<% end -%>
<% if @mountpoint_blacklist -%>
mount_point_blacklist:
<% (Array(@mountpoint_blacklist)).each do |mount| -%>
- <%= mount %>
<% end -%>
<% end -%>
<% if @mountpoint_exclude -%>
mount_point_exclude:
<% (Array(@mountpoint_exclude)).each do |mount| -%>
- <%= mount %>
<% end -%>
<% end -%>
<% if @filesystem_whitelist -%>
file_system_whitelist:
<% (Array(@filesystem_whitelist)).each do |fs| -%>
- <%= fs %>
<%- end -%>
<% end -%>
<% if @filesystem_include -%>
file_system_include:
<% (Array(@filesystem_include)).each do |fs| -%>
- <%= fs %>
<%- end -%>
<% end -%>
<% if @device_whitelist -%>
device_whitelist:
<% (Array(@device_whitelist)).each do |disk| -%>
- <%= disk %>
<% end -%>
<% end -%>
<% if @device_include -%>
device_include:
<% (Array(@device_include)).each do |disk| -%>
- <%= disk %>
<% end -%>
<% end -%>
<% if @mountpoint_whitelist -%>
mount_point_whitelist:
<% (Array(@mountpoint_whitelist)).each do |mount| -%>
- <%= mount %>
<% end -%>
<% end -%>
<% if @mountpoint_include -%>
mount_point_include:
<% (Array(@mountpoint_include)).each do |mount| -%>
- <%= mount %>
<% end -%>
<% end -%>
<% if @excluded_filesystems -%>
excluded_filesystems:
<% (Array(@excluded_filesystems)).each do |fs| -%>
Expand Down