The v1 configuration/API is now considered legacy. It will be deprecated in a future Envoy release
and eventually removed completely. If you are new to Envoy please consider starting with the
v2 configuration/API.

The Envoy configuration format is written in JSON and is validated against a JSON schema. The
schema can be found in source/common/json/config_schemas.cc. The main configuration for the
server is contained within the listeners and cluster manager sections. The other top level elements
specify miscellaneous configuration.

YAML support is also provided as a syntactic convenience for hand-written configurations. Envoy will
internally convert YAML to JSON if a file path ends with .yaml. In the rest of the configuration
documentation, we refer exclusively to JSON. Envoy expects unambiguous YAML scalars, so if a cluster
name (which should be a string) is called true, it should be written in the configuration YAML as
“true”. The same applies to integer and floating point values (e.g. 1 vs. 1.0 vs. “1.0”).

(optional, string) The UDP address of a running statsd compliant listener. If specified,
statistics will be flushed to this address. IPv4 addresses should
have format host:port (ex: 127.0.0.1:855). IPv6 addresses should have URL format [host]:port
(ex: [::1]:855).

statsd_tcp_cluster_name

(optional, string) The name of a cluster manager cluster that is running a TCP statsd compliant
listener. If specified, Envoy will connect to this cluster to flush statistics.

stats_flush_interval_ms

(optional, integer) The time in milliseconds between flushes to configured stats sinks. For
performance reasons Envoy latches counters and only flushes counters and gauges at a periodic
interval. If not specified the default is 5000ms (5 seconds).

watchdog_miss_timeout_ms

(optional, integer) The time in milliseconds after which Envoy counts a nonresponsive thread in the
“server.watchdog_miss” statistic. If not specified the default is 200ms.

watchdog_megamiss_timeout_ms

(optional, integer) The time in milliseconds after which Envoy counts a nonresponsive thread in the
“server.watchdog_mega_miss” statistic. If not specified the default is 1000ms.

watchdog_kill_timeout_ms

(optional, integer) If a watched thread has been nonresponsive for this many milliseconds assume
a programming error and kill the entire Envoy process. Set to 0 to disable kill behavior. If not
specified the default is 0 (disabled).

watchdog_multikill_timeout_ms

(optional, integer) If at least two watched threads have been nonresponsive for at least this many
milliseconds assume a true deadlock and kill the entire Envoy process. Set to 0 to disable this
behavior. If not specified the default is 0 (disabled).