summaryrefslogtreecommitdiff
path: root/f3s/prometheus/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'f3s/prometheus/manifests')
-rw-r--r--f3s/prometheus/manifests/freebsd-recording-rules.yaml15
1 files changed, 12 insertions, 3 deletions
diff --git a/f3s/prometheus/manifests/freebsd-recording-rules.yaml b/f3s/prometheus/manifests/freebsd-recording-rules.yaml
index 501a54c..e543787 100644
--- a/f3s/prometheus/manifests/freebsd-recording-rules.yaml
+++ b/f3s/prometheus/manifests/freebsd-recording-rules.yaml
@@ -18,10 +18,19 @@ spec:
labels:
os: freebsd
- # Synthetic MemAvailable for FreeBSD
- # Available = free + inactive + cache (approximation)
+ # Synthetic MemAvailable for FreeBSD. Laundry pages are reclaimable
+ # after writeback, as is the portion of ZFS ARC above its minimum.
- record: node_memory_MemAvailable_bytes
- expr: node_memory_free_bytes{os="freebsd"} + node_memory_inactive_bytes{os="freebsd"} + node_memory_cache_bytes{os="freebsd"}
+ expr: |
+ node_memory_free_bytes{os="freebsd"}
+ + node_memory_inactive_bytes{os="freebsd"}
+ + node_memory_cache_bytes{os="freebsd"}
+ + node_memory_laundry_bytes{os="freebsd"}
+ + clamp_min(
+ node_zfs_arcstats_size_bytes{os="freebsd"}
+ - node_zfs_arcstats_c_min_bytes{os="freebsd"},
+ 0
+ )
labels:
os: freebsd