1
0
Fork 0
mirror of https://github.com/munin-monitoring/contrib.git synced 2025-07-22 02:51:03 +00:00

disk/stratis: add support for stratis v3.4 output

This commit is contained in:
Kim B. Heino 2023-02-24 15:03:37 +02:00 committed by Kenyon Ralph
parent cfea1e2332
commit 26bcef2f21

View file

@ -84,13 +84,21 @@ def find_pools():
files = [] files = []
dflist = run_binary(['df']).splitlines() dflist = run_binary(['df']).splitlines()
used_offset = 0
for line in run_binary(['stratis', 'filesystem']).splitlines(): for line in run_binary(['stratis', 'filesystem']).splitlines():
if line.startswith('Pool Name ') or '-snap-' in line: if line.startswith('Pool Name ') and used_offset == 0:
used_offset = 2 # Stratis v2
continue
if line.startswith('Pool ') and used_offset == 0:
used_offset = 5 # Stratis v3
continue
if '-snap-' in line:
continue continue
tokens = line.split() tokens = line.split()
df_used = used = parse_unit(tokens[2], tokens[3]) df_used = used = parse_unit(tokens[used_offset],
tokens[used_offset + 1])
for dfline in dflist: for dfline in dflist:
if tokens[9] not in dfline: # match by uuid if tokens[-1] not in dfline: # match by uuid
continue continue
df_used = int(dfline.split()[2]) * 1024 df_used = int(dfline.split()[2]) * 1024
files.append((tokens[0], tokens[1], used, df_used)) files.append((tokens[0], tokens[1], used, df_used))