<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Statistics and monitoring on</title><link>https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/statistics/</link><description>Recent content in Statistics and monitoring on</description><generator>Hugo</generator><language>en</language><atom:link href="https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/statistics/index.xml" rel="self" type="application/rss+xml"/><item><title>Envoy statistics with StatsD</title><link>https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/statistics/envoy-statsd/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/statistics/envoy-statsd/</guid><description>&lt;blockquote>
&lt;p>For an overview of other options for gathering statistics on
Emissary, see the &lt;a href="https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/">Statistics and Monitoring&lt;/a> overview.&lt;/p>
&lt;/blockquote>
&lt;p>At the core of Emissary is &lt;a href="https://www.envoyproxy.io">Envoy Proxy&lt;/a>, which has built-in
support for exporting a multitude of statistics about its own
operations to StatsD (or to the modified DogStatsD used by Datadog).&lt;/p>
&lt;p>If enabled, then Emissary has Envoy expose this information via the
&lt;a href="https://github.com/etsy/statsd">StatsD&lt;/a> protocol.
To enable this, you will simply need to set the environment
variable &lt;code>STATSD_ENABLED=true&lt;/code> in Emissary&amp;rsquo;s deployment YAML:&lt;/p></description></item><item><title>The metrics endpoint</title><link>https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/statistics/8877-metrics/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/statistics/8877-metrics/</guid><description>&lt;blockquote>
&lt;p>For an overview of other options for gathering statistics on
Emissary, see the &lt;a href="https://emissary-ingress.website.cncfstack.com/docs/4.1/topics/running/">Statistics and Monitoring&lt;/a> overview.&lt;/p>
&lt;/blockquote>
&lt;p>Each Emissary pod exposes statistics and metrics for that pod at
&lt;code>http://{POD}:8877/metrics&lt;/code>. The response is in the text-based
Prometheus &lt;a href="https://prometheus.io/docs/instrumenting/exposition_formats/">exposition format&lt;/a>.&lt;/p>
&lt;h2 id="understanding-the-statistics">Understanding the statistics&lt;/h2>
&lt;p>The Prometheus exposition format includes special &amp;ldquo;HELP&amp;rdquo; lines that
make the file self-documenting as to what specific statistics mean.&lt;/p>
&lt;!--

 TODO(lukeshu): Go in to more detail about Envoy's statistics; the
 discoverability of them in Envoy's docs is really bad. The best
 thing to grep for in envoy.git is:

 git grep -E ', *(Gauge|Counter|Histogram) *,' docs

-->
&lt;ul>
&lt;li>&lt;code>envoy_*&lt;/code>: See the &lt;a href="https://www.envoyproxy.io/docs/envoy/v1.23.0/operations/admin.html#get--stats-prometheus">Envoy documentation&lt;/a>.&lt;/li>
&lt;li>&lt;code>ambassador_*&lt;/code>:
&lt;ul>
&lt;li>&lt;code>ambassador_edge_stack_*&lt;/code> (not present in Emissary):
&lt;ul>
&lt;li>&lt;code>ambassador_edge_stack_go_*&lt;/code>: See [&lt;code>promethus.NewGoCollector()&lt;/code>][].&lt;/li>
&lt;li>&lt;code>ambassador_edge_stack_promhttp_*&lt;/code> See &lt;a href="https://godoc.org/github.com/prometheus/client_golang/prometheus/promhttp#Handler">&lt;code>promhttp.Handler()&lt;/code>&lt;/a>.&lt;/li>
&lt;li>&lt;code>ambassador_edge_stack_process_*&lt;/code>: See [&lt;code>promethus.NewProcessCollector()&lt;/code>][]..&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;code>ambassador_*_time_seconds&lt;/code> (for &lt;code>*&lt;/code> = one of &lt;code>aconf&lt;/code>, &lt;code>diagnostics&lt;/code>, &lt;code>econf&lt;/code>, &lt;code>fetcher&lt;/code>, &lt;code>ir&lt;/code>, or &lt;code>reconfiguration&lt;/code>):
Gauges of how long the various core operations take in the diagd
process.&lt;/li>
&lt;li>&lt;code>ambassador_diagnostics_(errors|notices)&lt;/code>: The number of
diagnostics errors and notices that would be shown in the
diagnostics UI or the Edge Policy Console.&lt;/li>
&lt;li>&lt;code>ambassador_diagnostics_info&lt;/code>: &lt;a href="https://github.com/prometheus/client_python#info">Info&lt;/a>
about the Emissary install; all information is presented in
labels; the value of the Gauge is always &amp;ldquo;1&amp;rdquo;.&lt;/li>
&lt;li>&lt;code>ambassador_process_*&lt;/code>: See &lt;a href="https://github.com/prometheus/client_python#process-collector">&lt;code>prometheus_client.ProcessCollector&lt;/code>&lt;/a>.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ul>
&lt;h2 id="polling-the-8877metrics-endpoint-with-prometheus">Polling the &lt;code>:8877/metrics&lt;/code> endpoint with Prometheus&lt;/h2>
&lt;p>To scrape metrics directly, follow the instructions for &lt;a href="../../../../howtos/prometheus">Monitoring
with Prometheus and Grafana&lt;/a>.&lt;/p></description></item></channel></rss>