Skip to content
Patrick Hubbard edited this page Nov 3, 2015 · 7 revisions

WriteHttp plugin

The WriteHttp plugin is a write plugin that publishes metrics to the configured HTTP server using POST requests in JSON format. Metrics can be published to more than one HTTP server by setting multiple nodes.

Configuration

<WriteHttp>
  <Nodes>
    <Node Name="example-node-1" Url="http://mydevhost-1:9223/collectd" Timeout="10000" BatchSize="25" MaxIdleTime="600000">
      <Proxy Enable="false" Url="" />
    </Node>
    <Node Name="example-node-2" Url="http://mydevhost-2:9223/collectd" Timeout="10000" BatchSize="25" MaxIdleTime="600000">
      <Proxy Enable="true" Url="http://mydevproxy.abc.com:80" />
    </Node>
  </Nodes>
</WriteHttp>

Properties

Name Description
Name Name of the site that one is publishing to.
Url URL to which the metrics are published
Timeout The maximum time in milliseconds given for HTTP POST operations to complete. When this limit is reached, the POST operation will be aborted, and all the data in the current POST request will be lost.
BatchSize Number of metrics per HTTP POST request.
MaxIdleTime The maximum idle time in milliseconds for the TCP connection. If the TCP connection is idle for longer than this configured value, TCP connection will be closed.
Proxy Enable true to set HTTP proxy, false to not explicitly set HTTP proxy
Proxy Url If Proxy is enabled via above configuration, this Url will be set as HTTP proxy. This is only required if Proxy Enable is set to true.
UserName If included in the Node element along with a Password property, WriteHttp will issue BasicAuth header in the form "Authorization: Basic {Base64String encoded user:password}
Password Must be included in the Node element along with a UserName property to enable BasicAuth header (See UserName)
SafeCharsRegex Some endpoints won't accept URI-unfriendly plugin instance names from windows devices, for example brackets. When SafeCharsRegex is included in the Node element, it will remove all characters matching [^{value}] unless the ReplaceWith property is included
ReplaceWith When SafeCharsRegex and ReplaceWith are included in the Node element, it will replace characters matching [^{value}] with ReplaceWith (See SafeCharsRegex)