---
# Default logging provider is Rsyslog
logging_provider: rsyslog

# Unless logging_enabled is set to true, logging role is no-op
logging_enabled: true

# List of output roles
logging_outputs: []

# List of input roles
logging_inputs: []

# List of flows defining the input and the output relationships
logging_flows: []

# `logging_purge_confs` is set to `true`, remove files in rsyslog.d which do
# not belong to any rpm packages. That includes config files generated by the
# previous logging role run.  This will also remove and install the rsyslog
# package in order to revert to the system default /etc/rsyslog.conf if you
# do not provide any logging_inputs
logging_purge_confs: false

# Variable to specify the directory to put the local output files to store logs.
logging_system_log_dir: /var/log

# If set to `true`, the full FQDN will be used in log entries.
# Default and recommended is to use the short hostname.
logging_preserve_fqdn: false

# Performance optimization parameters for the server.
# Input thread count listening on the udp port.
logging_udp_threads: 1

# Input thread count listening on the tcp port.
logging_tcp_threads: 1

# Every value times, get the system time. Effective for udp.
logging_udp_system_time_requery: 2

# Specifies the maximum number of udp messages.
logging_udp_batch_size: 32

# Queue configuration for the files outputs for the server
logging_server_queue_type: LinkedList
logging_server_queue_size: 50000
logging_server_threads: "{{ logging_udp_threads |
  int + logging_tcp_threads | int }}"

# Mark message periodically by immark, if set to true.
logging_mark: false

# Interval for logging_mark in seconds.
logging_mark_interval: 3600

# When the provider is rsyslog, allows to specify maximum supported message size
# both for sending and receiving. Must be greater than 1024. Default to 8192.
logging_max_message_size: 8192

# list of pki files dict
# either of {ca_cert_src,cert_src,private_key_src} or {ca_cert,cert,private_key}
# or both sets should be configured.
# logging_pki_files:
#   - ca_cert_src:     location of the ca_cert on the control host.
#                      If given, it's copied to the managed host.
#     cert_src:        location of the cert on the control host.
#                      If given, it's copied to the managed host.
#     private_key_src: location of the key on the control host.
#                      If given, it's copied to the managed host.
#     ca_cert:     path to be deployed on the managed host;
#                  the path is also used in the rsyslog config.
#                  default to /etc/pki/tls/certs/<ca_cert_src basename>
#     cert:        ditto
#                  default to /etc/pki/tls/certs/<cert_src basename>
#     private_key: ditto
#                  default to /etc/pki/tls/private/<private_key_src basename>
logging_pki_files: []

# logging_domain
#
# The default DNS domain used to accept remote incoming logs from remote hosts.
logging_domain: '{{ ansible_domain if ansible_domain else ansible_hostname }}'

# logging_elasticsearch_password
#
# Password to pass to the elasticsearch output
logging_elasticsearch_password: ""

# Output file format
# Allowed values: "traditional", "syslog", or "modern"; default to "modern"
logging_files_template_format: ""

# Output forward format
# Allowed values: "traditional", "syslog",  or "modern"; default to "modern"
logging_forwards_template_format: ""

# If set to `true` and ports are found in the logging role parameters,
# configure the firewall for the ports using the firewall role.
logging_manage_firewall: false

# If set to `true` and ports are found in the logging role parameters,
# configure the selinux for the ports using the selinux role.
logging_manage_selinux: false

# A list of custom config files to copy to the default logging
# configuration directory
logging_custom_config_files: []

# If you want the role to generate the certificates in the logging
# configuration, specify the arguments to pass to the certificate
# system role. Here's an example.
# logging_certificates:
#   - name: logging_cert
#     dns: ['localhost', 'www.example.com']
#     ca: self-sign
logging_certificates: []

# ansible_facts required by the role
__logging_required_facts:
  - distribution
  - distribution_major_version
  - distribution_version
  - os_family
  - default_ipv4  # requires the iproute package for the ip command

# the subsets of ansible_facts that need to be gathered in case any of the
# facts in required_facts is missing; see the documentation of
# the 'gather_subset' parameter of the 'setup' module
__logging_required_facts_subsets: "{{ ['!all', '!min'] +
  __logging_required_facts }}"
