Whamcloud - gitweb
LU-1023 utils: Time counting fix for obdfilter-survey
[fs/lustre-release.git] / lustre-iokit / stats-collect / README
1 Overview
2 --------
3 These scripts will be used to collect application profiling info from
4 lustre clients and servers.  It will be run on a single (control)
5 node, and collect all the profile info and create a tarball on the
6 control node.
7
8 lstat.sh  : script for single node, will be run on each profile node.
9 gather_stats_everywhere.sh : collect stats script.
10 config.sh : customized configuration description
11
12 Requirements
13 -------
14 1) Lustre is installed and setup on your cluster.
15 2) ssh/scp to these nodes works without requiring a password.
16
17 Configuration
18 ------
19 Configuration is very simple for this script - all of the profiling
20 config VARs are in config.sh
21
22 XXXX_INTERVAL: the profiling interval
23 where value of interval means:
24    0 - gather stats at start and stop only
25    N - gather stats every N seconds
26 if XXX_INTERVAL isn't specified, XXX stats won't be collected
27 XXX can be: VMSTAT, SERVICE, BRW, SDIO, MBALLOC, IO, JBD, CLIENT 
28
29
30 Running
31 --------
32 The gather_stats_everywhere.sh should be run in three phases:
33    
34    a)sh gather_stats_everywhere.sh config.sh start 
35      It will start stats collection on each node specified in config.sh
36    
37    b)sh gather_stats_everywhere.sh config.sh stop <log_name.tgz>
38      It will stop collect stats on each node. If <log_name.tgz> is provided,
39      it will create a profile tarball /tmp/<log_name.tgz>
40    
41    c)sh gather_stats_everywhere.sh config.sh analyse log_tarball.tgz csv
42      It will analyse the log_tarball and create a csv tarball for this
43      profiling tarball. 
44
45
46 Example
47 -------
48 When you want collect your profile info, you should
49    1) start the collect profile daemon on each node.
50         sh gather_stats_everywhere.sh config.sh start 
51
52    2) run your test.
53
54    3) stop the collect profile daemon on each node, cleanup the tmp
55       file and create a profiling tarball.
56         sh gather_stats_everywhere.sh config.sh stop log_tarball.tgz
57
58    4) create a csv file according to the profile.
59         sh gather_stats_everywhere.sh config.sh analyse log_tarball.tgz csv
60      
61
62 TBD
63 ------
64 Add liblustre profiling support and add more options for analyse.  
65
66
67
68    
69
70