{%- if relay.get('enabled') %}
+{%- if relay.telemetry.get('enabled') %}
+[telemetry]
+bind-addr = "{{ relay.telemetry.bind.get('address', '') }}:{{ relay.telemetry.bind.port }}"
+{%- endif %}
+
{%- for name, listen in relay.listen.iteritems()|sort %}
{%- if listen.get('enabled', True) and listen.get('type', 'http') in ('http', 'udp') %}
{%- set listen_type = listen.get('type', 'http') %}
[[{{ listen_type }}]]
name = "{{ name }}"
-bind-addr = "{{ listen.bind.get('address', '0.0.0.0') }}:{{ listen.bind.port }}"
+bind-addr = "{{ listen.bind.get('address', '') }}:{{ listen.bind.port }}"
{%- if listen_type == 'http' and listen.default_retention_policy is defined %}
default-retention-policy = "{{ listen.default_retention_policy }}"
{%- endif %}
'pkgs': ['influxdb-relay'],
'service': 'influxdb-relay',
'listen': {},
+ 'telemetry': {},
},
}, merge=salt['pillar.get']('influxdb:relay')) %}
{%- if pillar.influxdb.server is defined %}
-{%- from "influxdb/map.jinja" import server, monitoring with context %}
+{%- from "influxdb/map.jinja" import server, relay, monitoring with context %}
-{%- if server.get('enabled', False) %}
+{%- if server.get('enabled', False) or relay.get('enabled') %}
server:
alert:
{%- if server.get('http', {}).get('enabled', False) %}
summary: 'Influxdb too many dropped writes'
description: '{{ printf `%.1f` $value }}% of written points have been dropped on {{ $labels.host }} (threshold={%- endraw %}{{ influx_http_points_written_dropped_threshold }}).'
{%- endif %}
+
+{%- if relay.get('enabled') and relay.telemetry.get('enabled') %}
+
+{%- set addresses = [] %}
+{%- if relay.telemetry.get('bind', {}).address is defined and not relay.telemetry.bind.address.startswith('127') and relay.telemetry.bind.address != '0.0.0.0' %}
+{%- do addresses.append(relay.telemetry.bind.address) %}
+{%- endif %}
+{%- for address in grains['fqdn_ip4'] %}
+{%- if not address.startswith('127') %}
+{%- do addresses.append(address) %}
+{%- endif %}
+{%- endfor %}
+
+ target:
+ static:
+ influxdb_relay:
+ enabled: true
+ endpoint:
+ - address: {{ addresses[0] }}
+ port: {{ relay.telemetry.bind.port }}
+
+{%- endif %}
+
{%- endif %}
{%- endif %}