<p>I'm new to monitoring the k8s cluster with prometheus, node exporter and so on.</p>
<p>I want to know that what the metrics exactly mean for though the name of metrics are self descriptive.</p>
<p>I already checked the github of node exporter, but I got not useful information.</p>
<p>Where can I get the descriptions of node exporter metrics?</p>
<p>Thanks</p>

<p>There is a short description along with each of the metrics. You can see them if you open node exporter in browser or just <code>curl http://my-node-exporter:9100/metrics</code>. You will see all the exported metrics and lines with <code># HELP</code> are the description ones:</p>
<pre><code># HELP node_cpu_seconds_total Seconds the cpus spent in each mode.
# TYPE node_cpu_seconds_total counter
node_cpu_seconds_total{cpu=&quot;0&quot;,mode=&quot;idle&quot;} 2.59840376e+07
</code></pre>
<p>Grafana can show this help message in the editor:
<a href="https://i.stack.imgur.com/5Ciz5.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/5Ciz5.png" alt="grafana" /></a>
Prometheus (with recent experimental editor) can show it too:
<a href="https://i.stack.imgur.com/CElLt.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/CElLt.png" alt="enter image description here" /></a>
And this works for all metrics, not just node exporter's. If you need more technical details about those values, I recommend searching for the information in Google and <code>man</code> pages (if you're on Linux). Node exporter takes most of the metrics from <code>/proc</code> almost as-is and it is not difficult to find the details. Take for example <code>node_memory_KReclaimable_bytes</code>. 'Bytes' suffix is obviously the unit, <code>node_memory</code> is just a namespace prefix, and <code>KReclaimable</code> is the actual metric name. Using <code>man -K KReclaimable</code> will bring you to the <a href="https://man7.org/linux/man-pages/man5/proc.5.html" rel="nofollow noreferrer">proc(5)</a> man page, where you can find that:</p>
<pre><code>           KReclaimable %lu (since Linux 4.20)
                 Kernel allocations that the kernel will attempt to
                 reclaim under memory pressure.  Includes
                 SReclaimable (below), and other direct allocations
                 with a shrinker.
</code></pre>
<p>Finally, if this intention to learn more about the metrics is inspired by the desire to configure alerts for your hardware, you can skip to the last part and grab some alerts shared by the community from here: <a href="https://awesome-prometheus-alerts.grep.to/rules#host-and-hardware" rel="nofollow noreferrer">https://awesome-prometheus-alerts.grep.to/rules#host-and-hardware</a></p>
