1NFSTEST_FILE(1) nfstest_file 1.2 NFSTEST_FILE(1)
2
3
4
6 nfstest_file - Find all packets for a specific file
7
9 nfstest_file [options] -p <filepath> <trace1.cap> [<trace2.cap> ...]
10
12 Display all NFS packets for the specified path. It takes a relative
13 path, where it searches for each of the directory entries given in the
14 path until it gets the file handle for the directory where the file is
15 located. Once the directory file handle is found, a LOOKUP or OPEN/CRE‐
16 ATE is searched for the given file name. If the file lookup or creation
17 is found, all file handles and state ids associated with that file are
18 searched and all packets found, including their respective replies are
19 displayed.
20
21 There are three levels of verbosity in which they are specified using a
22 bitmap, where the most significant bit gives a more verbose output.
23 Verbose level 1 is used as a default where each packet is displayed
24 condensed to one line using the last layer of the packet as the main
25 output.
26
27 The packet trace files are processed either serially or in parallel.
28 The packets are displayed using their timestamps so they are always
29 displayed in the correct order even if the files given are out of or‐
30 der. If the packet traces were captured one after the other the pack‐
31 ets are displayed serially, first the packets of the first file accord‐
32 ing to their timestamps, then the second and so forth. If the packet
33 traces were captured at the same time on multiple clients the packets
34 are displayed in parallel, packets are interleaved from all the files
35 when displayed again according to their timestamps.
36
37 Note: A packet call can be displayed out of order if the call is not
38 matched by any of the file handles, state ids or names but its reply is
39 matched so its corresponding call is displayed right before the reply.
40
41
42
44 --version
45 show program's version number and exit
46
47 -h, --help
48 show this help message and exit
49
50 -p PATH, --path=PATH
51 Path relative to the mount point, the path can be specified by
52 its file handle 'FH:0xc3f001b4'. Also the relative path could
53 start with a directory file handle 'DH:0x0c35bb58/file_name'
54
55 --stid=STID
56 State id to include in the search
57
58 -v VERBOSE, --verbose=VERBOSE
59 Verbose level bitmask [default: 1]. bitmap 0x01: one line per
60 packet. bitmap 0x02: one line per layer. bitmap 0x04: real
61 verbose.
62
63 -s START, --start=START
64 Start index [default: 0]
65
66 -e END, --end=END
67 End index [default: 0]
68
69 -z TZ, --tz=TZ
70 Time zone to use to display timestamps
71
72 --progress=PROGRESS
73 Display progress bar [default: 1]
74
75
76 Packet display:
77 --frame=FRAME
78 Display record frame number [default: 0]
79
80 --index=INDEX
81 Display packet number [default: 1]
82
83 --crc16=CRC16
84 Display CRC16 encoded strings [default: True]
85
86 --crc32=CRC32
87 Display CRC32 encoded strings [default: True]
88
89 --strsize=STRSIZE
90 Truncate all strings to this size [default: 0]
91
92
93 Debug:
94 --enum-check=ENUM_CHECK
95 If set to True, enums are strictly enforced [default: False]
96
97 --enum-repr=ENUM_REPR
98 If set to True, enums are displayed as numbers [default: False]
99
100 --debug-level=DEBUG_LEVEL
101 Set debug level messages
102
104 # Find all packets for relative path: nfstest_file -p
105 data/name_d_1/name_d_2/name_f_13 nested_dir_v3.cap
106
107 # Find all packets for relative path, starting with a directory file
108 handle: nfstest_file -p DH:0x34ac5f28/name_d_1/name_d_2/name_f_13
109 nested_dir_v3.cap
110
111 # Find all packets for file, starting with a directory file handle: nf‐
112 stest_file -p DH:0x0c35bb58/name_f_13 nested_dir_v3.cap
113
114 # Find all packets for file handle nfstest_file -p FH:0xc3f001b4
115 /tmp/trace.cap
116
117 # Find all packets for file, including all operations for the given
118 state id nfstest_file -p f00000001 --stid 0x0fd4 /tmp/trace.cap
119
120 # Display all packets for file (one line per layer) nfstest_file -p
121 f00000001 -v 2 /tmp/trace.cap
122
123 # Display all packets for file
124 # (real verbose, all items in each layer are displayed) nfstest_file -p
125 f00000001 -v 4 /tmp/trace.cap
126
127 # Display all packets for file (display both verbose level 1 and 2) nf‐
128 stest_file -p f00000001 -v 3 /tmp/trace.cap
129
130 # Display packets for file between packets 100 through 199
131 $ nfstest_file -p f00000001 -s 100 -e 200 /tmp/trace.cap
132
133 # Display all packets truncating all strings to 100 bytes
134 # This is useful when some packets are very large and there
135 # is no need to display all the data
136 $ nfstest_file -p f00000001 --strsize 100 -v 2 /tmp/trace.cap
137
138 # Display packets using India time zone
139 $ nfstest_file -p f00000001 --tz "UTC-5:30" /tmp/trace.cap
140 $ nfstest_file -p f00000001 --tz "Asia/Kolkata" /tmp/trace.cap
141
142 # Display all packets for file found in all trace files given
143 # The packets are displayed in order using their timestamps
144 $ nfstest_file -p f00000001 trace1.cap trace2.cap trace3.cap
145
147 formatstr(3), nfstest_alloc(1), nfstest_cache(1), nfstest_delega‐
148 tion(1), nfstest_dio(1), nfstest_fcmp(1), nfstest_interop(1), nf‐
149 stest_io(1), nfstest_lock(1), nfstest_pkt(1), nfstest_pnfs(1), nf‐
150 stest_posix(1), nfstest_rdma(1), nfstest_sparse(1), nfstest_ssc(1), nf‐
151 stest_xattr(1), nfstest_xid(1), packet.nfs.nfs3_const(3),
152 packet.nfs.nfs4_const(3), packet.pktt(3), packet.record(3),
153 packet.utils(3)
154
155
157 No known bugs.
158
160 Jorge Mora (mora@netapp.com)
161
162
163
164NFStest 3.2 21 March 2023 NFSTEST_FILE(1)