56 lines
2.4 KiB
ObjectPascal
56 lines
2.4 KiB
ObjectPascal
## confdroid_alloy::params.pp
|
|
# Module name: confdroid_alloy
|
|
# Author: 12ww1160 (12ww1160@confdroid.com)
|
|
# @param [String] ay_reqpackages which packages to install
|
|
# @param [String] ay_pkg_ensure 'latest' or 'present'
|
|
# @param [String] ay_loki_url the url where alloy will send logs to.
|
|
# @param [String] ay_loki_username the username to logon to loki
|
|
# @param [String] ay_loki_userpass the password to logon to loki
|
|
# @param [Boolean] ay_manage_loki whether to manage log forwarding to loki
|
|
# @param [Boolean] ay_manage_prom whether to manage metric forwarding
|
|
# @param [String] ay_prom_url the url where alloy will send metrics
|
|
# @param [Array] ay_log_targets the logging targets
|
|
# @param [Boolean] ay_prom_honor_timestamps whether to honor
|
|
# timestamps in prometheus metrics
|
|
# @param [Boolean] ay_prom_track_timestamps_staleness whether to track timestamps
|
|
# staleness in prometheus metrics
|
|
# @param [String] ay_prom_max_shards the maximum number of shards to use for prometheus metrics
|
|
# @param [String] ay_prom_max_samples_per_send the maximum number of samples to send
|
|
# @param [String] ay_prom_batch_send_deadline the maximum time to wait before sending
|
|
# @summary Class contains all parameters for the confdroid_alloy module.
|
|
##############################################################################
|
|
class confdroid_alloy::params (
|
|
|
|
String $ay_reqpackages = 'alloy',
|
|
String $ay_pkg_ensure = 'latest',
|
|
|
|
# loki
|
|
Boolean $ay_manage_loki = true,
|
|
String $ay_loki_url = 'https://loki.example.net/loki/api/v1/push',
|
|
String $ay_loki_username = 'loki_user',
|
|
String $ay_loki_userpass = 'loki_pass',
|
|
Array $ay_log_targets = ['/var/log/messages','/var/log/secure',],
|
|
|
|
# prometheus
|
|
Boolean $ay_manage_prom = true,
|
|
String $ay_prom_url = 'https://prometheus.example.net/api/v1/write',
|
|
Boolean $ay_prom_honor_timestamps = true,
|
|
Boolean $ay_prom_track_timestamps_staleness = true,
|
|
String $ay_prom_max_shards = '10',
|
|
String $ay_prom_max_samples_per_send = '2000',
|
|
String $ay_prom_batch_send_deadline = '5s',
|
|
|
|
) {
|
|
# service
|
|
$ay_service = 'alloy'
|
|
|
|
# dirs
|
|
$ay_main_dir = '/etc/alloy'
|
|
|
|
# files
|
|
$ay_main_file = "${ay_main_dir}/config.alloy"
|
|
|
|
# includes must be last
|
|
include confdroid_alloy::main::config
|
|
}
|