Merge "Enable Telegraf support"
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
index f8eb577..b17f605 100644
--- a/metadata/service/support.yml
+++ b/metadata/service/support.yml
@@ -15,3 +15,5 @@
enabled: true
grafana:
enabled: true
+ telegraf:
+ enabled: true
diff --git a/rabbitmq/files/telegraf.conf b/rabbitmq/files/telegraf.conf
new file mode 100644
index 0000000..add724b
--- /dev/null
+++ b/rabbitmq/files/telegraf.conf
@@ -0,0 +1,11 @@
+[[inputs.rabbitmq]]
+ url = "{{ values.url }}"
+ username = "{{ values.username }}"
+ password = "{{ values.password }}"
+{%- if values.nodes is defined %}
+ nodes = {{ values.nodes|json }}
+{%- endif %}
+{%- if values.queues is defined %}
+ queues = {{ values.queues|json }}
+{%- endif %}
+{%- include 'telegraf/files/input/_tags.conf' %}
diff --git a/rabbitmq/meta/telegraf.yml b/rabbitmq/meta/telegraf.yml
new file mode 100644
index 0000000..329fdf2
--- /dev/null
+++ b/rabbitmq/meta/telegraf.yml
@@ -0,0 +1,17 @@
+{%- from "rabbitmq/map.jinja" import server with context %}
+{%- if server.get('enabled', False) %}
+agent:
+ input:
+ rabbitmq:
+ template: rabbitmq/files/telegraf.conf
+ url: "http://{{ server.management.bind.address }}:{{ server.management.bind.port }}"
+ username: {{ server.admin.name }}
+ password: >-
+ {{ server.admin.password }}
+ nodes: [ "rabbit@{{ grains.host }}" ]
+ tagexclude: [ "node", "url" ]
+ procstat:
+ process:
+ rabbitmq:
+ exe: beam.smp
+{%- endif %}