Merge "Fix missing min_avail_mem in memory governor"
diff --git a/doc/source/admin/monitoring.rst b/doc/source/admin/monitoring.rst
index 6dbdb31..0fdb3b2 100644
--- a/doc/source/admin/monitoring.rst
+++ b/doc/source/admin/monitoring.rst
@@ -146,6 +146,12 @@
The one-minute load average of this executor, multiplied by 100.
+ .. stat:: pct_available_ram
+ :type: gauge
+
+ The available RAM (including buffers and cache) on this
+ executor, as a percentage multiplied by 100.
+
.. stat:: zuul.nodepool
Holds metrics related to Zuul requests from Nodepool.
diff --git a/zuul/executor/server.py b/zuul/executor/server.py
index 985ca04..52e54bb 100644
--- a/zuul/executor/server.py
+++ b/zuul/executor/server.py
@@ -1800,6 +1800,7 @@
if self.statsd:
base_key = 'zuul.executor.%s' % self.hostname
self.statsd.gauge(base_key + '.load_average', 0)
+ self.statsd.gauge(base_key + '.pct_available_ram', 0)
self.statsd.gauge(base_key + '.running_builds', 0)
self.log.debug("Stopped")
@@ -1981,6 +1982,8 @@
base_key = 'zuul.executor.%s' % self.hostname
self.statsd.gauge(base_key + '.load_average',
int(load_avg * 100))
+ self.statsd.gauge(base_key + '.pct_available_ram',
+ int(avail_mem_pct * 100))
self.statsd.gauge(base_key + '.running_builds',
len(self.job_workers))