Merge "Add memcached input"
diff --git a/metadata/service/agent/input/http_listener.yml b/metadata/service/agent/input/http_listener.yml
new file mode 100644
index 0000000..a5ff0c6
--- /dev/null
+++ b/metadata/service/agent/input/http_listener.yml
@@ -0,0 +1,11 @@
+parameters:
+ telegraf:
+ agent:
+ input:
+ http_listener:
+ bind:
+ address: 127.0.0.1
+ port: 8186
+ read_timeout: 10s
+ write_timeout: 10s
+ tagexclude: ['hostname']
diff --git a/metadata/service/agent/remote.yml b/metadata/service/agent/remote/init.yml
similarity index 100%
rename from metadata/service/agent/remote.yml
rename to metadata/service/agent/remote/init.yml
diff --git a/metadata/service/agent/remote/input/http_listener.yml b/metadata/service/agent/remote/input/http_listener.yml
new file mode 100644
index 0000000..5413c4f
--- /dev/null
+++ b/metadata/service/agent/remote/input/http_listener.yml
@@ -0,0 +1,11 @@
+parameters:
+ telegraf:
+ remote_agent:
+ input:
+ http_listener:
+ bind:
+ address: 0.0.0.0
+ port: 8186
+ read_timeout: 10s
+ write_timeout: 10s
+ tagexclude: ['hostname']
diff --git a/telegraf/agent.sls b/telegraf/agent.sls
index 5f83274..3b677bc 100644
--- a/telegraf/agent.sls
+++ b/telegraf/agent.sls
@@ -34,10 +34,8 @@
- template: jinja
- require:
- pkg: telegraf_packages_agent
- {%- if not grains.get('noservices', False)%}
- watch_in:
- service: telegraf_service_agent
- {%- endif %}
- defaults:
name: {{ name }}
values: {{ values }}
@@ -58,10 +56,8 @@
- name: {{ agent.dir.config_d }}/input-{{ name }}.conf
- require:
- pkg: telegraf_packages_agent
- {%- if not grains.get('noservices', False)%}
- watch_in:
- service: telegraf_service_agent
- {%- endif %}
{%- endif %}
{%- endfor %}
@@ -78,25 +74,22 @@
- template: jinja
- require:
- pkg: telegraf_packages_agent
- {%- if not grains.get('noservices', False)%}
- watch_in:
- service: telegraf_service_agent
- {%- endif %}
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
-{%- if not grains.get('noservices', False)%}
-
telegraf_service_agent:
service.running:
- name: telegraf
- enable: True
+ {%- if grains.get('noservices') %}
+ - onlyif: /bin/false
+ {%- endif %}
- watch:
- file: telegraf_config_agent
{%- endif %}
-
-{%- endif %}
diff --git a/telegraf/files/input/http_listener.conf b/telegraf/files/input/http_listener.conf
new file mode 100644
index 0000000..41f106b
--- /dev/null
+++ b/telegraf/files/input/http_listener.conf
@@ -0,0 +1,6 @@
+[[inputs.http_listener]]
+ service_address = "{{ values.get('bind', {}).address|default('127.0.0.1') }}:{{ values.get('bind', {}).port|default('8186') }}"
+ read_timeout = "{{ values.get('read_timeout', '10s') }}"
+ write_timeout = "{{ values.get('write_timeout', '10s') }}"
+
+{%- include 'telegraf/files/input/_tags.conf' %}
diff --git a/telegraf/remote_agent.sls b/telegraf/remote_agent.sls
index 5442d53..ca83129 100644
--- a/telegraf/remote_agent.sls
+++ b/telegraf/remote_agent.sls
@@ -30,7 +30,7 @@
- context:
agent: {{ remote_agent }}
-{%- set remote_agent_inputs = {'input': {}} %}
+{%- set remote_agent_inputs = {'input': remote_agent.input} %}
{%- for node_name, node_grains in salt['mine.get']('*', 'grains.items').iteritems() %}
{%- set remote_agent_input = node_grains.get('telegraf', {}).get('remote_agent', {}).get('input', {}) %}
{%- if remote_agent_input %}