Ansible-Roles/roles/zabbix-agent2/templates/a2_plugin_mqtt.conf.j2
2026-05-08 22:12:36 +03:00

219 lines
8.8 KiB
Django/Jinja

### Option: Plugins.MQTT.Timeout
# The maximum time (in seconds) for connections, disconnections and subscribtions.
#
# Mandatory: no
# Range: 1-30
# Default: global timeout
{% if agent_param_plugins_mqtt_timeout is defined and agent_param_plugins_mqtt_timeout %}
Plugins.MQTT.Timeout={{ agent_param_plugins_mqtt_timeout }}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.Url
# Broker connection string. "*" should be replaced with a session name.
#
# Mandatory: no
# Range: Must matches the URL format.
# Default:
# Plugins.MQTT.Sessions.*.Url=
{% if agent_param_plugins_mqtt_sessions is defined and agent_param_plugins_mqtt_sessions is iterable and agent_param_plugins_mqtt_sessions is not string and agent_param_plugins_mqtt_sessions is not mapping %}
{% for session in agent_param_plugins_mqtt_sessions %}
{% if session["url"] is defined and session["url"] %}
Plugins.MQTT.Sessions.{{ session["name"] }}.Url={{ session["url"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.Topic
# Topic to subscribe. "*" should be replaced with a session name.
#
# Mandatory: no
# Range: Must matches the URL format.
# Default:
# Plugins.MQTT.Sessions.*.Topic=
{% if agent_param_plugins_mqtt_sessions is defined and agent_param_plugins_mqtt_sessions is iterable and agent_param_plugins_mqtt_sessions is not string and agent_param_plugins_mqtt_sessions is not mapping %}
{% for session in agent_param_plugins_mqtt_sessions %}
{% if session["topic"] is defined and session["topic"] %}
Plugins.MQTT.Sessions.{{ session["name"] }}.Topic={{ session["topic"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.User
# Username to be used for MQTT authentication. "*" should be replaced with a session name.
#
# Mandatory: no
# Default:
# Plugins.MQTT.Sessions.*.User=
{% if agent_param_plugins_mqtt_sessions is defined and agent_param_plugins_mqtt_sessions is iterable and agent_param_plugins_mqtt_sessions is not string and agent_param_plugins_mqtt_sessions is not mapping %}
{% for session in agent_param_plugins_mqtt_sessions %}
{% if session["user"] is defined and session["user"] %}
Plugins.MQTT.Sessions.{{ session["name"] }}.User={{ session["user"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.Password
# Password to be used for MQTT authentication. "*" should be replaced with a session name.
#
# Mandatory: no
# Default:
# Plugins.MQTT.Sessions.*.Password=
{% if agent_param_plugins_mqtt_sessions is defined and agent_param_plugins_mqtt_sessions is iterable and agent_param_plugins_mqtt_sessions is not string and agent_param_plugins_mqtt_sessions is not mapping %}
{% for session in agent_param_plugins_mqtt_sessions %}
{% if session["password"] is defined and session["password"] %}
Plugins.MQTT.Sessions.{{ session["name"] }}.Password={{ session["password"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.TLSCAFile
# Full pathname of a file containing the top-level CA(s) certificates for MQTT
# peer certificate verification.
#
# Mandatory: no
# Default:
# Plugins.MQTT.Sessions.*.TLSCAFile=
{% if agent_internal_plugins_mqtt_tls_file_list is defined and agent_internal_plugins_mqtt_tls_file_list is iterable and agent_internal_plugins_mqtt_tls_file_list is not string and agent_internal_plugins_mqtt_tls_file_list is not mapping %}
{% for tls_file in agent_internal_plugins_mqtt_tls_file_list %}
{% if tls_file["type"] == "ca" %}
Plugins.MQTT.Sessions.{{ tls_file["session_name"] }}.TLSCAFile={{ tls_file["target"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.TLSCertFile
# Full pathname of a file containing the MQTT certificate or certificate chain.
#
# Mandatory: no
# Default:
# Plugins.MQTT.Sessions.*.TLSCertFile=
{% if agent_internal_plugins_mqtt_tls_file_list is defined and agent_internal_plugins_mqtt_tls_file_list is iterable and agent_internal_plugins_mqtt_tls_file_list is not string and agent_internal_plugins_mqtt_tls_file_list is not mapping %}
{% for tls_file in agent_internal_plugins_mqtt_tls_file_list %}
{% if tls_file["type"] == "cert" %}
Plugins.MQTT.Sessions.{{ tls_file["session_name"] }}.TLSCertFile={{ tls_file["target"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Sessions.*.TLSKeyFile
# Full pathname of a file containing the mysql private key.
#
# Mandatory: no
# Default:
# Plugins.MQTT.Sessions.*.TLSKeyFile=
{% if agent_internal_plugins_mqtt_tls_file_list is defined and agent_internal_plugins_mqtt_tls_file_list is iterable and agent_internal_plugins_mqtt_tls_file_list is not string and agent_internal_plugins_mqtt_tls_file_list is not mapping %}
{% for tls_file in agent_internal_plugins_mqtt_tls_file_list %}
{% if tls_file["type"] == "key" %}
Plugins.MQTT.Sessions.{{ tls_file["session_name"] }}.TLSKeyFile={{ tls_file["target"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Default.Url
# Default MQTT broker connection string; used if no value is specified in an item key or named session.
# Supported since version 6.4.4.
#
# Mandatory: no
# Range: Must matches the URL format.
# Default:
# Plugins.MQTT.Default.Url=
{% if agent_param_plugins_mqtt_default is defined and agent_param_plugins_mqtt_default.url is defined and agent_param_plugins_mqtt_default.url %}
Plugins.MQTT.Default.Url={{ agent_param_plugins_mqtt_default.url }}
{% endif %}
### Option: Plugins.MQTT.Default.Topic
# Default topic for MQTT subscription; used if no value is specified in an item key or named session.
# Supported since version 6.4.4.
#
# Mandatory: no
# Range: Must matches the URL format.
# Default:
# Plugins.MQTT.Default.Topic=
{% if agent_param_plugins_mqtt_default is defined and agent_param_plugins_mqtt_default.topic is defined and agent_param_plugins_mqtt_default.topic %}
Plugins.MQTT.Default.Topic={{ agent_param_plugins_mqtt_default.topic }}
{% endif %}
### Option: Plugins.MQTT.Default.User
# Default username for connecting to MQTT; used if no value is specified in an item key or named session.
# Supported since version 6.4.4.
#
# Mandatory: no
# Default:
# Plugins.MQTT.Default.User=
{% if agent_param_plugins_mqtt_default is defined and agent_param_plugins_mqtt_default.user is defined and agent_param_plugins_mqtt_default.user %}
Plugins.MQTT.Default.User={{ agent_param_plugins_mqtt_default.user }}
{% endif %}
### Option: Plugins.MQTT.Default.Password
# Default password for connecting to MQTT; used if no value is specified in an item key or named session.
# Supported since version 6.4.4
#
# Mandatory: no
# Default:
# Plugins.MQTT.Default.Password=
{% if agent_param_plugins_mqtt_default is defined and agent_param_plugins_mqtt_default.password is defined and agent_param_plugins_mqtt_default.password %}
Plugins.MQTT.Default.Password={{ agent_param_plugins_mqtt_default.password }}
{% endif %}
### Option: Plugins.MQTT.Default.TLSCAFile
# Full pathname of a file containing the top-level CA(s) certificates for mysql
# peer certificate verification. Default value used if no other is specified.
# Supported since version 6.4.4
#
# Mandatory: no
# Default:
# Plugins.MQTT.Default.TLSCAFile=
{% if agent_internal_plugins_mqtt_default_tls_file_list is defined and agent_internal_plugins_mqtt_default_tls_file_list is iterable and agent_internal_plugins_mqtt_tls_file_list is not string and agent_internal_plugins_mqtt_tls_file_list is not mapping %}
{% for tls_file in agent_internal_plugins_mqtt_default_tls_file_list %}
{% if tls_file["type"] == "ca" %}
Plugins.MQTT.Default.TLSCAFile={{ tls_file["target"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Default.TLSCertFile
# Full pathname of a file containing the MQTT certificate or certificate chain.
# Default value used if no other is specified.
# Supported since version 6.4.4
#
# Mandatory: no
# Default:
# Plugins.MQTT.Default.TLSCertFile=
{% if agent_internal_plugins_MQTT_default_tls_file_list is defined and agent_internal_plugins_MQTT_default_tls_file_list is iterable and agent_internal_plugins_MQTT_tls_file_list is not string and agent_internal_plugins_MQTT_tls_file_list is not mapping %}
{% for tls_file in agent_internal_plugins_MQTT_default_tls_file_list %}
{% if tls_file["type"] == "cert" %}
Plugins.MQTT.Default.TLSCertFile={{ tls_file["target"] }}
{% endif %}
{% endfor %}
{% endif %}
### Option: Plugins.MQTT.Default.TLSKeyFile
# Full pathname of a file containing the MQTT private key. Default value used if no other is specified.
# Supported since version 6.4.4
#
# Mandatory: no
# Default:
# Plugins.MQTT.Default.TLSKeyFile=
{% if agent_internal_plugins_MQTT_default_tls_file_list is defined and agent_internal_plugins_MQTT_default_tls_file_list is iterable and agent_internal_plugins_MQTT_tls_file_list is not string and agent_internal_plugins_MQTT_tls_file_list is not mapping %}
{% for tls_file in agent_internal_plugins_MQTT_default_tls_file_list %}
{% if tls_file["type"] == "key" %}
Plugins.MQTT.Default.TLSKeyFile={{ tls_file["target"] }}
{% endif %}
{% endfor %}
{% endif %}