Puppet Class: telegraf

Inherits:
telegraf::params
Inherited by:
telegraf::config
Defined in:
manifests/init.pp

Overview

Class: telegraf

A Puppet module for installing InfluxData’s Telegraf

Parameters

package_name

String. Package name.

ensure

String. State of the telegraf package. You can also specify a particular version to install.

config_file

String. Path to the configuration file.

logfile

String. Path to the log file.

config_file_owner

String. User to own the telegraf config file.

config_file_group

String. Group to own the telegraf config file.

config_file_mode

String. File mode for the telegraf config file.

config_folder

String. Path of additional telegraf config folder.

config_folder_mode

String. File mode for the telegraf config folder.

hostname

String. Override default hostname used to identify this agent.

omit_hostname

Boolean. Do not set the “host” tag in the telegraf agent.

interval

String. Default data collection interval for all inputs.

round_interval

Boolean. Rounds collection interval to ‘interval’

metric_batch_size

Integer. The maximum batch size to allow to

accumulate before sending a flush to the configured outputs
metric_buffer_limit

Integer. The absolute maximum number of

metrics that will accumulate before metrics are dropped.
collection_jitter

String. Sleep for a random time within jitter before collecting.

flush_interval

String. Default flushing interval for all outputs.

flush_jitter

String. Jitter the flush interval by an amount.

debug

Boolean. Run telegraf in debug mode.

quiet

Boolean. Run telegraf in quiet mode.

outputs

Hash. Specify output plugins and their options.

inputs

Hash. Specify input plugins and their options.

global_tags

Hash. Global tags as a key-value pair.

manage_service

Boolean. Whether to manage the telegraf service or not.

manage_repo

Boolean. Whether or not to manage InfluxData’s repo.

manage_archive

Boolean. Whether or not to manage InfluxData’s tar archive.

repo_location

String. Alternate repo location. E.g. an interal mirror.

archive_location

String. Alternate archive location. E.g. an interal mirror.

archive_install_dir

String. Location to extract archive to must be an absolute path

install_options

String or Array. Additional options to pass when installing package

purge_config_fragments

Boolean. Whether unmanaged configuration fragments should be removed.

repo_type

String. Which repo (stable, unstable, nightly) to use

windows_package_url

String. URL for windows telegraf chocolatey repo

Parameters:

  • package_name (String) (defaults to: $telegraf::params::package_name)
  • ensure (String) (defaults to: $telegraf::params::ensure)
  • config_file (String) (defaults to: $telegraf::params::config_file)
  • config_file_owner (String) (defaults to: $telegraf::params::config_file_owner)
  • config_file_group (String) (defaults to: $telegraf::params::config_file_group)
  • config_file_mode (Stdlib::Filemode) (defaults to: $telegraf::params::config_file_mode)
  • config_folder (String) (defaults to: $telegraf::params::config_folder)
  • config_folder_mode (Stdlib::Filemode) (defaults to: $telegraf::params::config_folder_mode)
  • hostname (String) (defaults to: $telegraf::params::hostname)
  • omit_hostname (Boolean) (defaults to: $telegraf::params::omit_hostname)
  • interval (String) (defaults to: $telegraf::params::interval)
  • round_interval (Boolean) (defaults to: $telegraf::params::round_interval)
  • metric_batch_size (Integer) (defaults to: $telegraf::params::metric_batch_size)
  • metric_buffer_limit (Integer) (defaults to: $telegraf::params::metric_buffer_limit)
  • collection_jitter (String) (defaults to: $telegraf::params::collection_jitter)
  • flush_interval (String) (defaults to: $telegraf::params::flush_interval)
  • flush_jitter (String) (defaults to: $telegraf::params::flush_jitter)
  • precision (String) (defaults to: $telegraf::params::precision)
  • logfile (String) (defaults to: $telegraf::params::logfile)
  • debug (Boolean) (defaults to: $telegraf::params::debug)
  • quiet (Boolean) (defaults to: $telegraf::params::quiet)
  • inputs (Hash) (defaults to: $telegraf::params::inputs)
  • outputs (Hash) (defaults to: $telegraf::params::outputs)
  • global_tags (Hash) (defaults to: $telegraf::params::global_tags)
  • manage_service (Boolean) (defaults to: $telegraf::params::manage_service)
  • manage_repo (Boolean) (defaults to: $telegraf::params::manage_repo)
  • manage_archive (Boolean) (defaults to: $telegraf::params::manage_archive)
  • repo_location (Optional[String]) (defaults to: $telegraf::params::repo_location)
  • archive_location (Optional[String]) (defaults to: $telegraf::params::archive_location)
  • archive_install_dir (Optional[String]) (defaults to: $telegraf::params::archive_install_dir)
  • purge_config_fragments (Boolean) (defaults to: $telegraf::params::purge_config_fragments)
  • repo_type (String) (defaults to: $telegraf::params::repo_type)
  • windows_package_url (String) (defaults to: $telegraf::params::windows_package_url)
  • service_enable (Boolean) (defaults to: $telegraf::params::service_enable)
  • service_ensure (String) (defaults to: $telegraf::params::service_ensure)
  • install_options (Array) (defaults to: $telegraf::params::install_options)


107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
# File 'manifests/init.pp', line 107

class telegraf (
  String  $package_name                 = $telegraf::params::package_name,
  String  $ensure                       = $telegraf::params::ensure,
  String  $config_file                  = $telegraf::params::config_file,
  String  $config_file_owner            = $telegraf::params::config_file_owner,
  String  $config_file_group            = $telegraf::params::config_file_group,
  Stdlib::Filemode $config_file_mode    = $telegraf::params::config_file_mode,
  String  $config_folder                = $telegraf::params::config_folder,
  Stdlib::Filemode $config_folder_mode  = $telegraf::params::config_folder_mode,
  String  $hostname                     = $telegraf::params::hostname,
  Boolean $omit_hostname                = $telegraf::params::omit_hostname,
  String  $interval                     = $telegraf::params::interval,
  Boolean $round_interval               = $telegraf::params::round_interval,
  Integer $metric_batch_size            = $telegraf::params::metric_batch_size,
  Integer $metric_buffer_limit          = $telegraf::params::metric_buffer_limit,
  String  $collection_jitter            = $telegraf::params::collection_jitter,
  String  $flush_interval               = $telegraf::params::flush_interval,
  String  $flush_jitter                 = $telegraf::params::flush_jitter,
  String  $precision                    = $telegraf::params::precision,
  String  $logfile                      = $telegraf::params::logfile,
  Boolean $debug                        = $telegraf::params::debug,
  Boolean $quiet                        = $telegraf::params::quiet,
  Hash    $inputs                       = $telegraf::params::inputs,
  Hash    $outputs                      = $telegraf::params::outputs,
  Hash    $global_tags                  = $telegraf::params::global_tags,
  Boolean $manage_service               = $telegraf::params::manage_service,
  Boolean $manage_repo                  = $telegraf::params::manage_repo,
  Boolean $manage_archive               = $telegraf::params::manage_archive,
  Optional[String] $repo_location       = $telegraf::params::repo_location,
  Optional[String] $archive_location    = $telegraf::params::archive_location,
  Optional[String] $archive_install_dir = $telegraf::params::archive_install_dir,
  Boolean $purge_config_fragments       = $telegraf::params::purge_config_fragments,
  String  $repo_type                    = $telegraf::params::repo_type,
  String  $windows_package_url          = $telegraf::params::windows_package_url,
  Boolean $service_enable               = $telegraf::params::service_enable,
  String  $service_ensure               = $telegraf::params::service_ensure,
  Array   $install_options              = $telegraf::params::install_options,
) inherits telegraf::params {
  $service_hasstatus = $telegraf::params::service_hasstatus
  $service_restart   = $telegraf::params::service_restart

  contain telegraf::install
  contain telegraf::config
  contain telegraf::service

  Class['telegraf::install'] -> Class['telegraf::config'] ~> Class['telegraf::service']
  Class['telegraf::install'] ~> Class['telegraf::service']
}