HTTP Stats Plugin
This plugin implements an HTTP interface to all Traffic Server statistics. The metrics returned are in a JSON format by default. You can also configure the output to be CSV as well.
Since this is a remap plugin, you can chain other plugins to affect the output (eg compressing the output via the Compress Plugin.
Enabling HTTP Stats
To use this plugin, add a mapping to the remap.config
file:
map /_stats http://localhost @plugin=http_stats.so
After starting Traffic Server, the JSON metrics are now available at the URL:
http://host:port/_stats
where host and port is the hostname/IP and port number of Traffic Server.
This will expose the stats to anyone who could access the Traffic Server instance. It’s recommended you use one of the ACL features in Traffic Server. For example:
map /_stats \
http://127.0.0.1 \
@plugin=http_stats.so \
@src_ip=127.0.0.1 @src_ip=::1 \
@src_ip=10.0.0.0-10.255.255.255 \
@action=allow
Plugin Options
- --integer-counters
This option causes the plugin to emit floating point and integral metric values as JSON numbers, rather then JSON strings. This can cause interoperability problems since integer metrics have a 64-bit unsigned range.
- --wrap-counters
This option wraps 64-bit unsigned values to the 64-bit signed range. This aids interoperability with Java, since prior to the Java SE 8 release, Java did not have a 64-bit unsigned type.
- --csv
By default, http_stats.so will output all the stats in JSON format. Specify this option on the remap command-line to enable this.
- --max-age=<int>
If set, this will result in a Last-Modified
header and a Cache-Control
header of max-age=<int>