File: Data-brief.html

package info (click to toggle)
collectl 3.7.4-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 1,624 kB
  • ctags: 119
  • sloc: perl: 14,928; sh: 429; makefile: 11
file content (372 lines) | stat: -rw-r--r-- 13,810 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
<html>
<head>
<link rel=stylesheet href="style.css" type="text/css">
<title>Brief Data</title>
</head>

<body>
<center><h1>Brief Data</h1></center>
<p>
This format does NOT include data for any individual devices such as cpu, disk, 
network, nfs, lustre, process, slabs or tcp.  If you do select any one of them
collectl will force --verbose format.

<h3>Buddy (Memory Fragmentation) Data, <i>collectl -sB</i></h3>
<p>
The smaller the value the more accuracy as follows:
<ul>
<li>0-9 are represented by the digits 0 through 9</li>
<li>10-99 by the letters a through i</li>
<li>100-999 by the letters j through r</li>
<li>>1000 by powers of 10, using s through z</li>
</ul>

Remember, the whole purpose of monitoring fragments in brief mode is to identify trends,
particularly when there are a small number of them.

<div class=terminal><pre>
#<---Memory-->
#   Fragments
  smkj9576040
</pre></div>
<h3>CPU Data, <i>collectl -sc</i></h3>

<div class=terminal>
<pre>
#<--------CPU-------->
#cpu sys inter  ctxsw
</pre>
</div>

<table>
<tr valign=top>
<td><b>cpu</b></td>
<td>Percent of time the cpu was busy during the current interval averaged 
across all CPUs and is actually the total percentage of time the CPU in one of the following:
<i>system, user, nice, irq, soft-irq and steal</i>.  Note that this does NOT include time
spend in I/O wait.</td>
</tr>

<tr valign=top>
<td><b>sys</b></td>
<td>Percentage of time the cpu was executing in system mode during the current
interval.  This includes all those modes as above except <i>user</i> and <i>nice</i> to to 
determine the amount of time spent as a user you need to subtract these from the total cpu
field.</td>
</tr>

<tr>
<td><b>inter</b></td>
<td>Total number of interrupts/sec.</td>
</trtr>

<tr>
<td><b>ctxsw</b></td><td>Total number of context switches/sec.</td>
</tr>
</table>
<p>
<h3>Disk, <i>collectl -sd</i></h3>
<p>
If you specify filtering with <i>--dskfilt</i>, the disks that match the pattern(s)
will either be included or excluded from the the summary data.  However, the data will
<i>still</i> be collected so if recorded to a file can later be viewed.

<div class=terminal>
<pre>
#<---------------Disks---------------->
#KBRead  Reads  Size KBWrit Writes Size
</pre>
</div>

<table>
<tr><td><b>KBRead</b></td><td>KB read/sec</td></tr>
<tr><td><b>Reads</b></td><td>Number of reads/sec</td></tr>
<tr><td><b>Size</b></td><td>Average read size in KB.  This field only included 
if <i>--dskopts i</i> or <i>--iosize</i> specified</td></tr>
<tr><td><b>KBWrite<b></td><td>KB written/sec</td></tr>
<tr><td><b>Writes</b></td><td>Number of writes/sec</td></tr>
<tr><td><b>Size</b></td><td>Average write size in KB.  This field only included 
if <i>--dskopts i</i> or <i>--iosize</i> specified</td></tr>
</table>
<p>
<h3>Infiniband, <i>collectl -sx</i></h3>

<div class=terminal>
<pre>
#<---------------InfiniBand--------------->
#  KBIn  PktIn Size  KBOut PktOut Size Errs
</pre>
</div>

<table>
<tr><td><b>KBIn</b></td><td>KB received/sec.</td></tr>
<tr><td><b>PckIn</b></td><td>Packets received/sec.</td></tr>
<tr><td><b>Size</b></td><td>Average incoming packet size in KB.  This field is only
included if <i>--xopts i</i> or <i>--iosize</i> included</td></tr>
<tr><td><b>KBOut</b></td><td>KB sent/sec.</td></tr>
<tr><td><b>PktOut</b></td><td>Packets sent/sec.</td></tr>
<tr><td><b>Size</b></td><td>Average outgoing packet size in KB.  This field is only
included if <i>--xopts i</i> or <i>--iosize</i> included</td></tr>
<tr valign=top><td><b>Errs</b></td><td>Count of current errors.  Since these 
are typically infrequent, it is felt that reporting them as a rate would result 
in either not seeing them OR round-off hiding their values.</td></tr>
</table>

<p><h3>Inodes/Filesystem, <i>collectl -si</i></h3>

<div class=terminal>
<pre>
#<----Files--->
#Handle Inodes
   5100 116110
</pre></div>

<table>
<tr><td><b>Handles</b></td><td>Number of allocated file handles</td></tr>
<tr><td><b>Inodes</b></td><td>Number of inodes in use</td></tr>
</table>

<p><h3>Lustre</b></h3>
<p>
Lustre data actually falls into one of 3 categories - client, mds and oss.  Collectl
determines the type of system it is running on (a system can have multiple 
personalities) and reports on all it finds, unless specifically selected via -L.

<p><b>Lustre Client</b>, <i>collectl -sl</i>

<div class=terminal>
<pre>
#<-------------Lustre Client------------->
# KBRead  Reads Size  KBWrite Writes Size
</pre>
</div>

<table>
<tr><td><b>KBRead</b></td><td>KB/sec delivered to the client.</td></tr>
<tr><td valign=top><b>Reads</b></td><td>Reads/sec delivered to the client, 
<tr><td><b>Size</b></td><td>Average read size in KB.  This field only included 
if <i>--iosize</i> specified</td></tr>
not necessarily from the lustre storage servers.</td></tr>
<tr><td><b>KBWrite</b></td><td>KB Writes/sec delivered to the storage servers.</td></tr>
<tr><td><b>Writes</b></td><td>Writes/sec delivered to the storage servers.</td></tr>
<tr><td><b>Size</b></td><td>Average write size in KB.  This field only included 
if <i>--iosize</i> specified</td></tr>
</table>

<p>The following format of lustre client data is selected by including -OR and
adds readahead statistics to the previous six, noting the <i>Size</i> fields
are dependent on <i>--iosize</i> being specificed.

<div class=terminal>
<pre>
#<--------------------Lustre Client-------------------->
# KBRead  Reads Size  KBWrite Writes Size   Hits Misses
</pre>
</div>

<table>
<tr><td><b>KBRead</b></td><td>KB/sec delivered to the client.</td></tr>
<tr><td valign=top><b>Reads</b></td><td>Reads/sec delivered to the client, 
not necessarily from the lustre storage servers.</td></tr>
<tr><td><b>Size</b></td><td>Average read size in KB.</tr>
<tr><td><b>KBWrite</b></td><td>KB Writes/sec delivered to the storage servers.</td></tr>
<tr><td><b>Writes</b></td><td>Writes/sec delivered to the storage servers.</td></tr>
<tr><td><b>Size</b></td><td>Average write size in KB.</tr>
<tr><td><b>Hits</b></td><td>Number of reads/sec from the lustre prefetch cache.</td></tr>
<tr><td><b>Misses</b></td><td>Number of misses/sec from the prefetch cache which must then 
be satisfied by reading from the storage servers.</td></tr>
</table>
<p>
<b>Lustre MDS (Meta-Data Server)</b><br>
The first format is for lustre versions 1.6.5 and beyond while the second format is for
earlier releases

<p>
<div class=terminal>
<pre>
#<--------Lustre MDS-------->
#Gattr+ Sattr+   Sync  Unlnk
</pre>
</div>

<p>
<div class=terminal>
<pre>
#<--------Lustre MDS-------->
#Gattr+ Sattr+   Sync  Reint
</pre>
</div>

<table>
<tr valign=top><td><b>Gattr+</b></td><td>Total number of all getattr operations/sec.  See Getattr,
GttrLck and Gxattr in the <a href=Data-verbose.html>verbose</a> data section</td></tr>
<tr valign=top><td><b>Sattr+</b></td><td>Total number of all getattr operations/sec.  See Setattr
and Sxattr in the <a href=Data-verbose.html>verbose</a> data section</td></tr>
<tr><td><b>Sync</b></td><td>Number of syncs/sec</td></tr>
<tr><td><b>Unlnk</b></td><td>Number of file deletes/sec</td></tr>
<tr valign=top><td><b>Reint</b></td><td>Number of reints/sec which include unlinks and setattrs.
Since older version did not break out setattrs, they are not included in <i>Sattr+</i>.
</table>

<p><b>Lustre OSS (Object Storage Server)</b>, <i>collectl -sc</i>

<div class=terminal>
<pre>
#<--------------Lustre OST-------------->
# KBRead  Reads Size  KBWrit Writes Size
</pre>
</div>

<table>
<tr><td><b>KBRead</b></td><td>KB/sec read</td></tr>
<tr><td><b>Reads</b></td><td>Reads/sec</td></tr>
<tr><td><b>Size</b></td><td>Average read size in KB.  This field only included 
if <i>--iosize</i> specified</td></tr>
<tr><td><b>KBWrite</b></td><td>KB/sec written</td></tr>
<tr><td><b>Writes</b></td><td>Writes/sec</li>
<tr><td><b>Size</b></td><td>Average write size in KB.  This field only included 
if <i>--iosize</i> specified</td></tr>
</table>

<p><h3>Memory, <i>collectl -sm</i></h3>

<div class=terminal>
<pre>
#<-----------Memory---------->
#free buff cach inac slab  map
</pre>
</div>

<table>
<tr valign=top><td><b>free</b></td><td>Total free memory, which unfortunately is NOT the 
difference between total memory and the following amounts allocated to used memory.</td></tr>
<tr valign=top><td><b>buff</b></td><td>Memory used as system buffers.</td></tr>
<tr valign=top><td><b>cach</b></td><td>This is also commonly known as the file system buffer 
cache as buffered I/O uses this memory to cache the data.</td></tr>
<tr><td><b>inac</b></td><td>Inactive memory.</td></tr>
<tr><td><b>slab</b></td><td>Total memory allocated to slabs.</td></tr>
<tr><td><b>map</b></td><td>Total mapped memory, which include AnonPages.</td></tr>
</table>
<p>
<center><b><i>Note</i></b></center>
If you include <i>--memopts R</i>, these values wil be displayed as changes/sec between intervals
rather than absolute values.  This switch will also honor <i>-on</i> in that the values will not
be normalized to a rate but rather displayed as changes in size per interval.

<p><h3>Network, <i>collectl -sn</i></h3>
<p>
If you specify filtering with <i>--netfilt</i>, the names that match the pattern(s)
will either be included or excluded from the the summary data.  However, the data will
<i>still</i> be collected so if recorded to a file can later be viewed.
<p>
Also be sure to keep in mind that like all other data, network counters are always normalized
to /sec rates.  This means that something like errors, which themselves might be really
small, could be reported as 0 if less than 1/2 the sampling interval.  To see unnormalized
values use <i>-on</i>.

<div class=terminal>
<pre>
#<------------------Network------------------>
#  KBIn  PktIn Size  KBOut  PktOut Size Error
</pre>
</div>

<table>
<tr valign=top><td><b>KBIn</b></td><td>KB received/sec over all real network interfaces and therefore 
excludes 'lo' and 'sit'.</td></tr>
<tr><td><b>PktIn</b></td><td>Packets received/sec over all real network interfaces.</td></tr>
<tr><td><b>Size</b></td><td>Average incoming packet size in bytes.  This field is only included
if <i>--netopts i</i> or <i>--iosize</i> specified</td></tr>
<tr><td><b>KBOut</b></td><td>KB sent/sec over all real network interfaces.</td></tr>
<tr><td><b>PktOut</b></td><td>Packets sent/sec over all real network interfaces.</td></tr>
<tr><td><b>Size</b></td><td>Average outgoing packet size in bytes.  This field is only included
if <i>--netopts i</i> or <i>--iosize</i> specified</td></tr>
<tr valign=top><td><b>Error</b></td><td>Total incoming/outgoing errors/sec.  To see individual error counts, use <i>--verbose</i>.
This field is only included if <i>--netopts e</i> specified</td></tr>
</table>

<p><h3>NFS</b>, <i>collectl -sf</i></h3>

As of version 3.2.1 collectl now collects all types of nfs data, both clients and servers as well 
as versions 2, 3 and 4. In brief format it therefore reports summaried data across all nfs types
as shown below.  If <i>--nfsfilt</i> was included in the command to limit the types of data 
reported, those values will be included in the header line as a reminder as shown in the second 
form to the right, in which case only V3 server and V4 client data are being summarized.

<div class=terminal>
<pre>
#<------NFS Totals------>            #<------NFS [s3,c4]----->
# Reads Writes Meta Comm             # Reads Writes Meta Comm
</pre>
</div>

<table>
<tr><td><b>Reads</b></td><td>Total nfs reads/sec.</td></tr>
<tr><td><b>Writes</b></td><td>Total nfs writes/sec.</td></tr>
<tr valign=top><td><b>Meta</b></td><td>Total nfs meta data calls/sec, where meta data is considered to be
any of: <i>lookup, access, getattr, setattr, readdir</i> and <i>readdirplus</i>, noting that
not all types of nfs version report all as V3 clients/servers do.</td></tr>
<tr><td><b>Comm</b></td><td>Total nfs commits/sec.</td></tr>
</table>

<p><h3>Slabs, <i>collectl -sy</i></h3>

<div class=terminal>
<pre>
#<----slab---->
# Alloc   Bytes
</pre>
</div>

<table>
<tr><td><b>Alloc</b></td><td>Total Number of slabs allocated</td></tr>
<tr><td><b>Bytes</b></td><td>Total Number of bytes allocated as slabs</td></tr>
</table>

<p><h3>Sockets, <i>collectl -ss</i></h3>

<div class=terminal>
<pre>
#<------Sockets----->
#  Tcp  Udp  Raw Frag
</pre>
</div>

<table>
<tr><td><b>Tcp</b></td><td>Total TCP sockets currently in use.</td></tr>
<tr><td><b>Udp</b></td><td>Total UDP sockets currently in use.</td></tr>
<tr><td><b>Raw</b></td><td>Total RAW sockets currently in use.</td></tr>
<tr><td><b>Frag</b></td><td>Total number of IP fragments queues currently in use.</td></tr>
</table>

<p><h3>TCP, <i>collectl -st</i></h3>

The TCP data collected and actually depends on the value of <i>--tcpfilt</i>, which by default is
set to itcu, which stands for <i>IP, Tcp, Udp</i> and <i>ICMP</i>.  A 5th filter <i>T</i>
will result in <i>Tcp Extended</i> values being reported.

<div class=terminal>
<pre>
#<----------TCP---------->
#  IP  Tcp  Udp Icmp TcpX 
    0    0    0    0    0 
</pre>
</div>

<table>
<tr><td><b>IP</b>Summary of a number of IP errors from /prod/net/snmp:
    <i>InHdrErrors+InAddrErrors+InUnknownProtos+InDiscards+OutDiscards+ReasmFails+FragFails</i></td></tr>
<tr><td><b>Tcp</b>Summary of a number of Tcp errors from /prod/net/snmp:
    <i>AttemptFails+InErrs</i></td></tr>
<tr><td><b>Udp</b>Summary of a number of Udp errors, from /prod/net/snmp:
    <i>NoPorts+InErrors</i></td></tr>
<tr><td><b>Icmp</b>Summary of a number of Icmp errors, from /prod/net/snmp:
    <i>InErrors+InDestUnreachs+OutErrors</i></td></tr>
<tr><td><b>TcpX</b>Summary of a number of Txp Extended errors, from /prod/net/snmp:
    <i>TcpLoss+TCPFastRetrans</i></td></tr>
</table>

<table width=100%><tr><td align=right><i>updated September 29, 2011</i></td></tr></colgroup></table>

</body>
</html>