Forge Home

telegraf

Configuration and management of InfluxData's Telegraf metrics collection agent

318,140 downloads

3,710 latest version

4.7 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 5.4.0 (latest)
  • 5.3.0
  • 5.2.0
  • 5.1.0
  • 5.0.0
  • 4.3.1
  • 4.3.0
  • 4.2.0
  • 4.1.0
  • 4.0.0
  • 3.1.0
  • 3.0.0
  • 2.1.0
released Feb 28th 2024
This version is compatible with:
  • Puppet Enterprise 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x
  • Puppet >= 7.0.0 < 9.0.0
  • , , , , , , , , , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'puppet-telegraf', '5.4.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add puppet-telegraf
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install puppet-telegraf --version 5.4.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

puppet/telegraf — version 5.4.0 Feb 28th 2024

Reference

Table of Contents

Classes

  • telegraf: A Puppet module for installing InfluxData's Telegraf
  • telegraf::config: == Class: telegraf::config Templated generation of telegraf.conf
  • telegraf::install: == Class: telegraf::install Conditionally handle InfluxData's official repos and install the necessary Telegraf package.
  • telegraf::params: == Class: telegraf::params A set of default parameters for Telegraf's configuration.
  • telegraf::service: == Class: telegraf::service Optionally manage the Telegraf service.

Defined types

Classes

telegraf

A Puppet module for installing InfluxData's Telegraf

Parameters

The following parameters are available in the telegraf class:

package_name

Data type: String

Package name

Default value: $telegraf::params::package_name

ensure

Data type: String

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

Default value: $telegraf::params::ensure

config_file

Data type: String

Path to the configuration file

Default value: $telegraf::params::config_file

logfile

Data type: String

Path to the log file

Default value: $telegraf::params::logfile

logfile_rotation_interval

Data type: String

The logfile will be rotated after the time interval specified, e.g. "1d". 0 = off. Default = "0h"

Default value: $telegraf::params::logfile_rotation_interval

logfile_rotation_max_size

Data type: String

The logfile will be rotated when it becomes larger than the specified size, e.g. "10MB". 0 = off. Default = "0MB"

Default value: $telegraf::params::logfile_rotation_max_size

logfile_rotation_max_archives

Data type: Integer

Maximum number of rotated archives to keep, older logs are deleted. If set to -1, no archives are removed. Default = 5

Default value: $telegraf::params::logfile_rotation_max_archives

config_file_owner

Data type: String

User to own the telegraf config file

Default value: $telegraf::params::config_file_owner

config_file_group

Data type: String

Group to own the telegraf config file

Default value: $telegraf::params::config_file_group

config_file_mode

Data type: Optional[Stdlib::Filemode]

File mode for the telegraf config file

Default value: $telegraf::params::config_file_mode

config_folder

Data type: String

Path of additional telegraf config folder

Default value: $telegraf::params::config_folder

config_folder_mode

Data type: Optional[Stdlib::Filemode]

File mode for the telegraf config folder

Default value: $telegraf::params::config_folder_mode

hostname

Data type: String

Override default hostname used to identify this agent

Default value: $telegraf::params::hostname

omit_hostname

Data type: Boolean

Do not set the "host" tag in the telegraf agent

Default value: $telegraf::params::omit_hostname

interval

Data type: String

Default data collection interval for all inputs

Default value: $telegraf::params::interval

round_interval

Data type: Boolean

Rounds collection interval to 'interval'

Default value: $telegraf::params::round_interval

metric_batch_size

Data type: Integer

The maximum batch size to allow to accumulate before sending a flush to the configured outputs

Default value: $telegraf::params::metric_batch_size

metric_buffer_limit

Data type: Integer

The absolute maximum number of metrics that will accumulate before metrics are dropped

Default value: $telegraf::params::metric_buffer_limit

collection_jitter

Data type: String

Sleep for a random time within jitter before collecting

Default value: $telegraf::params::collection_jitter

flush_interval

Data type: String

Default flushing interval for all outputs

Default value: $telegraf::params::flush_interval

flush_jitter

Data type: String

Jitter the flush interval by an amount

Default value: $telegraf::params::flush_jitter

debug

Data type: Boolean

Run telegraf in debug mode

Default value: $telegraf::params::debug

quiet

Data type: Boolean

Run telegraf in quiet mode

Default value: $telegraf::params::quiet

outputs

Data type: Hash

Specify output plugins and their options

Default value: $telegraf::params::outputs

inputs

Data type: Hash

Specify input plugins and their options

Default value: $telegraf::params::inputs

global_tags

Data type: Hash

Global tags as a key-value pair

Default value: $telegraf::params::global_tags

processors

Data type: Hash

Specify processors and their configuration

Default value: {}

manage_service

Data type: Boolean

Whether to manage the telegraf service or not

Default value: $telegraf::params::manage_service

manage_repo

Data type: Boolean

Whether or not to manage InfluxData's repo

Default value: $telegraf::params::manage_repo

manage_archive

Data type: Boolean

Whether or not to manage InfluxData's tar archive

Default value: $telegraf::params::manage_archive

manage_user

Data type: Boolean

Whether or not to manage the 'telegraf' user when installing from archive

Default value: $telegraf::params::manage_user

repo_location

Data type: Optional[String]

Alternate repo location. E.g. an interal mirror

Default value: $telegraf::params::repo_location

archive_location

Data type: Optional[String]

Alternate archive location. E.g. an interal mirror

Default value: $telegraf::params::archive_location

archive_version

Data type: Optional[String[1]]

Specify a telegraf archive version. E.g. 1.17.2

Default value: $telegraf::params::archive_version

archive_install_dir

Data type: Optional[String]

Location to extract archive to must be an absolute path

Default value: $telegraf::params::archive_install_dir

install_options

Data type: Array

Additional options to pass when installing package

Default value: $telegraf::params::install_options

purge_config_fragments

Data type: Boolean

Whether unmanaged configuration fragments should be removed

Default value: $telegraf::params::purge_config_fragments

repo_type

Data type: String

Which repo (stable, unstable, nightly) to use

Default value: $telegraf::params::repo_type

windows_package_url

Data type: String

URL for windows telegraf chocolatey repo

Default value: $telegraf::params::windows_package_url

precision

Data type: String

Default value: $telegraf::params::precision

service_enable

Data type: Boolean

enable state for the telegraf service

Default value: $telegraf::params::service_enable

service_ensure

Data type: String

ensure state for the telegraf service

Default value: $telegraf::params::service_ensure

telegraf::config

== Class: telegraf::config

Templated generation of telegraf.conf

telegraf::install

== Class: telegraf::install

Conditionally handle InfluxData's official repos and install the necessary Telegraf package.

telegraf::params

== Class: telegraf::params

A set of default parameters for Telegraf's configuration.

telegraf::service

== Class: telegraf::service

Optionally manage the Telegraf service.

Defined types

telegraf::aggregator

A Puppet wrapper for discrete Telegraf aggregator files

Parameters

The following parameters are available in the telegraf::aggregator defined type:

options

Data type: Optional[Array]

Plugin options for use in the aggregator template

Default value: undef

plugin_type

Data type: String

Define the telegraf plugin type to use

Default value: $name

ensure

Data type: Enum['present', 'absent']

Set if the ensure params of the config file. If telegraf::ensure is absent the value is automatically absent

Default value: 'present'

telegraf::input

A Puppet wrapper for discrete Telegraf input files

Parameters

The following parameters are available in the telegraf::input defined type:

options

Data type: Array

Plugin options for use in the input template.

Default value: []

plugin_type

Data type: String

Define the telegraf plugin type to use (default is $name)

Default value: $name

ensure

Data type: Enum['present', 'absent']

Set if the ensure params of the config file. If telegraf::ensure is absent the value is automatically absent

Default value: 'present'

telegraf::output

A Puppet wrapper for discrete Telegraf output files

Parameters

The following parameters are available in the telegraf::output defined type:

options

Data type: Optional[Array]

Plugin options for use in the output template.

Default value: undef

plugin_type

Data type: String

Define the telegraf plugin type to use (default is $name)

Default value: $name

ensure

Data type: Enum['present', 'absent']

Set if the ensure params of the config file. If telegraf::ensure is absent the value is automatically absent

Default value: 'present'

telegraf::processor

A Puppet wrapper for discrete Telegraf processor files

Parameters

The following parameters are available in the telegraf::processor defined type:

options

Data type: Optional[Array]

Plugin options for use in the processor template

Default value: undef

plugin_type

Data type: String

Define the telegraf plugin type to use

Default value: $name

ensure

Data type: Enum['present', 'absent']

Set if the ensure params of the config file. If telegraf::ensure is absent the value is automatically absent

Default value: 'present'