<p>Is there a standard way to monitor the traffic of K8 Ingress. We were trying to extract metrics like</p>

<ul>
<li>Requests per second </li>
<li>HTTP errors</li>
<li>Response time</li>
<li>etc...</li>
</ul>

<p><strong>Specific Environment</strong></p>

<ul>
<li>AWS EKS</li>
<li>Nginx ingress</li>
<li>AWS Elastic search service [Store and search metrics]</li>
<li>Kibana and Easy Alert [Dashboard and alerting]</li>
</ul>

<p><strong>Solutions tried</strong></p>

<ul>
<li>Service mesh like Istio ( Do not want the heaviness of Istio. Service to service traffic is very less. )</li>
<li>Custom nginx solution (<a href="https://sysdig.com/blog/monitor-nginx-kubernetes/" rel="nofollow noreferrer">https://sysdig.com/blog/monitor-nginx-kubernetes/</a>)</li>
</ul>

<p>Looking for something generic to K8 . Any hints ?</p>

arunvg
<p>The <a href="https://github.com/kubernetes/ingress-nginx" rel="nofollow noreferrer">ingress-nginx</a> project has a <a href="https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/monitoring.md" rel="nofollow noreferrer">monitoring guide</a> that describes how to send basic statistics to Prometheus, which can then be viewed in Grafana. If you cluster already has these tools installed, then it is just a matter of configuring prometheus to scrape nginx ingress controller pods.</p>
