diff --git a/CHANGELOG.md b/CHANGELOG.md index 09a00f069..699d0f602 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ - [#976](https://github.com/influxdata/telegraf/pull/976): Reduce allocations in the UDP and statsd inputs. - [#979](https://github.com/influxdata/telegraf/pull/979): Reduce allocations in the TCP listener. - [#935](https://github.com/influxdata/telegraf/pull/935): AWS Cloudwatch input plugin. Thanks @joshhardy & @ljosa! +- [#943](https://github.com/influxdata/telegraf/pull/943): http_response input plugin. Thanks @Lswith! ### Bugfixes - [#968](https://github.com/influxdata/telegraf/issues/968): Processes plugin gets unknown state when spaces are in (command name) diff --git a/README.md b/README.md index caa562a6d..8621238dd 100644 --- a/README.md +++ b/README.md @@ -169,7 +169,8 @@ Currently implemented sources: * [elasticsearch](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/elasticsearch) * [exec](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/exec ) (generic executable plugin, support JSON, influx, graphite and nagios) * [haproxy](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/haproxy) -* [httpjson ](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/httpjson ) (generic JSON-emitting http service plugin) +* [http_response](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/http_response) +* [httpjson](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/httpjson) (generic JSON-emitting http service plugin) * [influxdb](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/influxdb) * [ipmi_sensor](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/ipmi_sensor) * [jolokia](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/jolokia) diff --git a/etc/telegraf.conf b/etc/telegraf.conf index 1b534d888..fa77a3a34 100644 --- a/etc/telegraf.conf +++ b/etc/telegraf.conf @@ -569,6 +569,25 @@ # ## servers = ["socket://run/haproxy/admin.sock"] +# # HTTP/HTTPS request given an address a method and a timeout +# [[inputs.http_response]] +# ## Server address (default http://localhost) +# address = "http://github.com" +# ## Set response_timeout (default 5 seconds) +# response_timeout = 5 +# ## HTTP Request Method +# method = "GET" +# ## Whether to follow redirects from the server (defaults to false) +# follow_redirects = true +# ## HTTP Request Headers (all values must be strings) +# # [inputs.http_response.headers] +# # Host = "github.com" +# ## Optional HTTP Request Body +# # body = ''' +# # {'fake':'data'} +# # ''' + + # # Read flattened metrics from one or more JSON HTTP endpoints # [[inputs.httpjson]] # ## NOTE This plugin only reads numerical measurements, strings and booleans diff --git a/plugins/inputs/http_response/http_response.go b/plugins/inputs/http_response/http_response.go index 73533fed4..69c8fcd06 100644 --- a/plugins/inputs/http_response/http_response.go +++ b/plugins/inputs/http_response/http_response.go @@ -34,15 +34,15 @@ var sampleConfig = ` response_timeout = 5 ## HTTP Request Method method = "GET" - ## HTTP Request Headers (all values must be strings) - [inputs.http_response.headers] - # Host = "github.com" ## Whether to follow redirects from the server (defaults to false) follow_redirects = true + ## HTTP Request Headers (all values must be strings) + # [inputs.http_response.headers] + # Host = "github.com" ## Optional HTTP Request Body - body = ''' - {'fake':'data'} - ''' + # body = ''' + # {'fake':'data'} + # ''' ` // SampleConfig returns the plugin SampleConfig