Lines Matching +full:num +full:- +full:cols
2 # SPDX-License-Identifier: CDDL-1.0
5 # is available through the dbufs kstat and may be post-processed as
16 # or https://opensource.org/licenses/CDDL-1.0.
65 cols = {
67 "pool": [15, -1, "pool name"],
68 "objset": [6, -1, "dataset identification number"],
69 "object": [10, -1, "object number"],
70 "level": [5, -1, "indirection level of buffer"],
71 "blkid": [8, -1, "block number of buffer"],
75 "meta": [4, -1, "is this buffer metadata?"],
76 "state": [5, -1, "state of buffer (read, cached, etc)"],
78 "dbc": [3, -1, "in dbuf cache"],
79 "list": [4, -1, "which ARC list contains this buffer"],
80 "atype": [7, -1, "ARC header type (data or metadata)"],
81 "flags": [9, -1, "ARC read flags"],
82 "count": [5, -1, "ARC data count"],
84 "access": [10, -1, "time this ARC buffer was last accessed"],
90 "l2_dattr": [8, -1, "L2ARC disk address/offset"],
92 "l2_comp": [21, -1, "L2ARC compression algorithm for buffer"],
94 "dtype": [27, -1, "dnode type"],
95 "btype": [27, -1, "bonus buffer type"],
99 "lvls": [6, -1, "number of indirection levels"],
113 cmd = ("Usage: dbufstat [-bdhnrtvx] [-i file] [-f fields] [-o file] "
114 "[-s string] [-F filter]\n")
120 # Requires py-sysctl on FreeBSD
126 return "-"
153 sys.stderr.write("Field definitions incompatible with '-b' option:\n")
156 sys.stderr.write("Field definitions incompatible with '-d' option:\n")
159 sys.stderr.write("Field definitions incompatible with '-t' option:\n")
163 for key in sorted(cols.keys()):
164 sys.stderr.write("%11s : %s\n" % (key, cols[key][2]))
172 sys.stderr.write("\t -b : Print table of information for each dbuf\n")
173 sys.stderr.write("\t -d : Print table of information for each dnode\n")
174 sys.stderr.write("\t -h : Print this help message\n")
175 sys.stderr.write("\t -n : Exclude header from output\n")
176 sys.stderr.write("\t -r : Print raw values\n")
177 sys.stderr.write("\t -t : Print table of information for each dnode type"
179 sys.stderr.write("\t -v : List all possible field headers and definitions"
181 sys.stderr.write("\t -x : Print extended stats\n")
182 sys.stderr.write("\t -i : Redirect input from the specified file\n")
183 sys.stderr.write("\t -f : Specify specific fields to print (see -v)\n")
184 sys.stderr.write("\t -o : Redirect output to the specified file\n")
185 sys.stderr.write("\t -s : Override default field separator with custom "
187 sys.stderr.write("\t -F : Filter output by value or regex\n")
189 sys.stderr.write("\tdbufstat -d -o /tmp/d.log\n")
190 sys.stderr.write("\tdbufstat -t -s \",\" -o /tmp/t.log\n")
191 sys.stderr.write("\tdbufstat -v\n")
192 sys.stderr.write("\tdbufstat -d -f pool,object,objset,dsize,cached\n")
193 sys.stderr.write("\tdbufstat -bx -F dbc=1,objset=54,pool=testpool\n")
199 def prettynum(sz, scale, num=0):
206 if raw or scale == -1:
207 return "%*s" % (sz, num)
210 elif 0 < num < 1:
211 num = 0
213 while num > scale and index < 5:
214 save = num
215 num = num / scale
219 return "%*d" % (sz, num)
222 return "%*.1f%s" % (sz - 1, num, suffix[index])
224 return "%*d%s" % (sz - 1, num, suffix[index])
234 prettynum(cols[col][0], cols[col][1], v[col]), sep))
247 sys.stdout.write("%*s%s" % (cols[col][0], col, sep))
341 # If "-rr" option is used, don't convert to string representation
365 # If "-rr" option is used, don't convert to string representation
424 if blkid == -1:
426 elif blkid == -2:
447 val = prettynum(cols[key][0], cols[key][1], vals[key]).strip()
564 if opt in ('-b', '--buffers'):
566 if opt in ('-d', '--dnodes'):
568 if opt in ('-f', '--columns'):
570 if opt in ('-h', '--help'):
572 if opt in ('-i', '--infile'):
574 if opt in ('-o', '--outfile'):
576 if opt in ('-r', '--raw'):
578 if opt in ('-s', '--separator'):
580 if opt in ('-t', '--types'):
582 if opt in ('-v', '--verbose'):
584 if opt in ('-x', '--extended'):
586 if opt in ('-n', '--noheader'):
588 if opt in ('-F', '--filter'):
598 if f[0] not in cols:
640 if ele not in cols:
648 sys.stderr.write("Invalid column definition! -- %s\n" % invalid)
652 sys.stderr.write("Incompatible field specified! -- %s\n" %
668 if ifile != "-":