otelcol
otelcol::config
: == Class: otelcol::config Templated generation of otelcol.confotelcol::install
: == Class: otelcol::install Conditionally handle repos or package paths and install the necessary otelcol package.
otelcol::service
: Manages the Otelcol service
otelcol::exporter
: Define a OpenTelemetry Collector exporterotelcol::extension
: Add an extension to the OpenTelemetry Collector configurationotelcol::pipeline
: Add a pipeline to the OpenTelemetry Collector configurationotelcol::processor
: Add a processor to the OpenTelemetry Collector configurationotelcol::receiver
: Add a receiver to the OpenTelemetry Collector configuration
otelcol::component
: Define a component for the OpenTelemetry Collector Configuration
Otelcol::Component::Name
: Type for name of Otel Collector Ressources
The otelcol class.
The following parameters are available in the otelcol
class:
package_name
package_ensure
service_name
service_configcheck
environment_file
run_options
config_file
config_file_owner
config_file_group
config_file_mode
configs
receivers
processors
exporters
pipelines
extensions
log_options
metrics_level
metrics_address_host
metrics_address_port
service_ensure
service_enable
manage_service
manage_archive
localpath_archive
archive_version
archive_location
Data type: String
Name of the package used
Default value: 'otelcol'
Data type: Enum['present','absent','installed','latest']
Ensure for the package
Default value: 'installed'
Data type: String
Name of the service used
Default value: $package_name
Data type: Boolean
Check config before service reloads
Default value: true
Data type: String
path of the environment file used for service
Default value: "/etc/${package_name}/${package_name}.conf"
Data type: Optional[String]
additional options for service
Default value: undef
Data type: String
path to config file
Default value: "/etc/${package_name}/config.yaml"
Data type: String
owner of config_file
Default value: 'root'
Data type: String
group of config_file
Default value: 'root'
Data type: Stdlib::Filemode
mode of config_file
Default value: '0644'
Data type: Array[String]
additional config files or resources to add. Since this can be environment variables, http urls or files you are required to ensure the existence of a file!
Default value: []
Data type: Hash[String, Hash]
Hash for receivers config
Default value: {}
Data type: Hash[String, Hash]
Hash for processors config
Default value: {}
Data type: Hash[String, Hash]
Hash for exporters config
Default value: {}
Data type: Hash[String, Hash]
Hash for pipelines config
Default value: {}
Data type: Hash[String, Hash]
Hash for extensions config
Default value: {}
Data type: Variant[Hash,String[1]]
Hash for log_options config
Default value: {}
Data type: Enum['none','basic','normal','detailed']
Level for metrics config
Default value: 'basic'
Data type: Optional[Stdlib::Host]
Host metrics are listening to
Default value: undef
Data type: Stdlib::Port
Port metrics are listening to
Default value: 8888
Data type: Stdlib::Ensure::Service
Ensure for service
Default value: 'running'
Data type: Boolean
Enable the service on boot
Default value: true
Data type: Boolean
If service is managed by module
Default value: true
Data type: Boolean
If archive should be managed by module of will be provided by packagemanager
Default value: false
Data type: String[1]
Path where archive will be stored if managed
Default value: '/tmp'
Data type: String[1]
Version of otelcol that will be used, param is not used if archive_location is set
Default value: '0.89.0'
Data type: String[1]
Path to archive without filetype extension
Default value: "https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v${archive_version}/${package_name}_${archive_version}_linux_amd64"
== Class: otelcol::config
Templated generation of otelcol.conf
== Class: otelcol::install
Conditionally handle repos or package paths and install the necessary otelcol package.
Create a OpenTelemetry Collector exporter in the configuration file.
otelcol::exporter { 'namevar': }
otelcol::exporter { 'prometheus':
pipelines => ['metrics'],
}
The following parameters are available in the otelcol::exporter
defined type:
The name of the exporter.
Data type: Hash
The configuration of the exporter.
Default value: {}
Data type: Integer[0,999]
The order of the exporter.
Default value: 0
Data type: Array[String[1]]
The pipelines to attach the exporter to.
Default value: []
Add an extension to the OpenTelemetry Collector configuration
otelcol::extension { 'namevar': }
The following parameters are available in the otelcol::extension
defined type:
The name of the extension
Data type: Hash
The configuration for the extension
Default value: {}
Data type: Integer[0,999]
The order in which the extension should be loaded
Default value: 0
Used for explicitly configuring a pipeline in the OpenTelemetry Collector. This is useful for configuring a pipeline that is not automatically configured by its Components.
otelcol::pipeline { 'namevar': }
The following parameters are available in the otelcol::pipeline
defined type:
The name of the pipeline to configure.
Data type: Hash
The configuration for the pipeline.
Default value: {}
Data type: Integer[0,999]
The order in which the pipeline should be configured.
Default value: 0
Add a processor to the OpenTelemetry Collector configuration
otelcol::processor { 'namevar': }
otelcol::processor { 'batch':
pipelines => ['metrics'],
}
The following parameters are available in the otelcol::processor
defined type:
The name of the processor
Data type: Hash
The configuration of the processor
Default value: {}
Data type: Integer[0,999]
The order of the processor
Default value: 0
Data type: Array[String[1]]
The pipelines to attach the processor to
Default value: []
Add a receiver to the OpenTelemetry Collector configuration
otelcol::receiver { 'namevar': }
otelcol::receiver { 'otlp':
pipelines => ['metrics'],
}
The following parameters are available in the otelcol::receiver
defined type:
The name of the receiver
Data type: Hash
The configuration of the receiver
Default value: {}
Data type: Integer[0,999]
The order of the receiver
Default value: 0
Data type: Array[String[1]]
The pipelines the receiver is part of
Default value: []
Type for name of Otel Collector Ressources
Alias of Pattern[/\A[a-z0-9_-]+(\/[a-z0-9]+)?\z/]