Skip to content

Commit bf333d0

Browse files
committed
Initial (ironically linux only) module for stats from the zfs arc
1 parent d8f0e47 commit bf333d0

2 files changed

Lines changed: 612 additions & 0 deletions

File tree

zfs_arc/conf.d/zfs_arc.pyconf

Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
modules {
2+
module {
3+
name = "zfs_arc"
4+
language = "python"
5+
# Determines how to get stats
6+
# * linux: spl's kstat over /proc facility
7+
param os {
8+
value = "linux"
9+
}
10+
# This module calculates all metrics (including derived) rates at
11+
# onces and then serves them out of a cache. This determines the
12+
# minimum TTL.
13+
param min_poll_seconds {
14+
value = 5
15+
}
16+
# Where to log information from this module (syslog facility)
17+
param syslog_facility {
18+
value = "user"
19+
}
20+
# log level, WARNING is not expected to produce any output
21+
param log_level {
22+
value = "WARNING"
23+
}
24+
# Ideally some sort of unsigned integer would be used for
25+
# measurements of bytes of memory. gmond/modpython on a
26+
# particular architecture does not necessarily support 64bit (let
27+
# along zfs's 128bit) integers. If true this flag reports all
28+
# metrics as doubles.
29+
param force_double {
30+
value = True
31+
}
32+
}
33+
}
34+
35+
collection_group {
36+
collect_every = 30
37+
time_threshold = 60
38+
39+
metric {
40+
name = "zfs_arc_hits"
41+
title = "ARC reads per second"
42+
}
43+
metric {
44+
name = "zfs_arc_miss"
45+
title = "ARC misses per second"
46+
}
47+
metric {
48+
name = "zfs_arc_read"
49+
title = "Total ARC accesses per second"
50+
}
51+
metric {
52+
name = "zfs_arc_hit_percent"
53+
title = "ARC Hit percentage"
54+
}
55+
metric {
56+
name = "zfs_arc_miss_percent"
57+
title = "ARC miss percentage"
58+
}
59+
metric {
60+
name = "zfs_arc_dhit"
61+
title = "Demand Data hits per second"
62+
}
63+
metric {
64+
name = "zfs_arc_dmis"
65+
title = "Demand Data misses per second"
66+
}
67+
metric {
68+
name = "zfs_arc_dh_percent"
69+
title = "Demand Data hit percentage"
70+
}
71+
metric {
72+
name = "zfs_arc_dm_percent"
73+
title = "Demand Data miss percentage"
74+
}
75+
metric {
76+
name = "zfs_arc_phit"
77+
title = "Prefetch hits per second"
78+
}
79+
metric {
80+
name = "zfs_arc_pmis"
81+
title = "Prefetch misses per second"
82+
}
83+
metric {
84+
name = "zfs_arc_ph_percent"
85+
title = "Prefetch hits percentage"
86+
}
87+
metric {
88+
name = "zfs_arc_pm_percent"
89+
title = "Prefetch miss percentage"
90+
}
91+
metric {
92+
name = "zfs_arc_mhit"
93+
title = "Metadata hits per second"
94+
}
95+
metric {
96+
name = "zfs_arc_mmis"
97+
title = "Metadata misses per second"
98+
}
99+
metric {
100+
name = "zfs_arc_mread"
101+
title = "Metadata accesses per second"
102+
}
103+
metric {
104+
name = "zfs_arc_mh_percent"
105+
title = "Metadata hit percentage"
106+
}
107+
metric {
108+
name = "zfs_arc_mm_percent"
109+
title = "Metadata miss percentage"
110+
}
111+
metric {
112+
name = "zfs_arc_size"
113+
title = "ARC Size"
114+
}
115+
metric {
116+
name = "zfs_arc_c"
117+
title = "ARC Target Size"
118+
}
119+
metric {
120+
name = "zfs_arc_mfu"
121+
title = "MFU List hits per second"
122+
}
123+
metric {
124+
name = "zfs_arc_mru"
125+
title = "MRU List hits per second"
126+
}
127+
metric {
128+
name = "zfs_arc_mfug"
129+
title = "MFU Ghost List hits per second"
130+
}
131+
metric {
132+
name = "zfs_arc_mrug"
133+
title = "MRU Ghost List hits per second"
134+
}
135+
metric {
136+
name = "zfs_arc_eskip"
137+
title = "evict_skip per second"
138+
}
139+
metric {
140+
name = "zfs_arc_mtxmis"
141+
title = "mutex_miss per second"
142+
}
143+
metric {
144+
name = "zfs_arc_rmis"
145+
title = "recycle_miss per second"
146+
}
147+
metric {
148+
name = "zfs_arc_dread"
149+
title = "Demand data accesses per second"
150+
}
151+
metric {
152+
name = "zfs_arc_pread"
153+
title = "Prefetch accesses per second"
154+
}
155+
metric {
156+
name = "zfs_arc_l2hits"
157+
title = "L2ARC hits per second"
158+
}
159+
metric {
160+
name = "zfs_arc_l2miss"
161+
title = "L2ARC misses per second"
162+
}
163+
metric {
164+
name = "zfs_arc_l2read"
165+
title = "Total L2ARC accesses per second"
166+
}
167+
metric {
168+
name = "zfs_arc_l2hit_percent"
169+
title = "L2ARC access hit percentage"
170+
}
171+
metric {
172+
name = "zfs_arc_l2miss_percent"
173+
title = "L2ARC access miss percentage"
174+
}
175+
metric {
176+
name = "zfs_arc_l2asize"
177+
title = "Actual compressed size of the L2ARC"
178+
}
179+
metric {
180+
name = "zfs_arc_l2size"
181+
title = "Size of the L2ARC"
182+
}
183+
metric {
184+
name = "zfs_arc_l2bytes"
185+
title = "bytes read per second from the L2ARC"
186+
}
187+
}

0 commit comments

Comments
 (0)