.TH gfs2_lockcapture 8
.SH NAME
gfs2_lockcapture \- capture locking information from GFS2 file systems and DLM.
.SH SYNOPSIS
.B gfs2_lockcapture \fR[-dqyP] [-o \fIoutput directory]\fR [-r \fInumber of runs]\fR [-s \fIseconds to sleep]\fR [-n \fIname of GFS2 file system]\fP
.PP
.B gfs2_lockcapture \fR[-dqyi]
.SH DESCRIPTION
\fIgfs2_lockcapture\fR is used to capture the GFS2 lockdump data and
corresponding DLM data for GFS2 file systems. The number of captures and their
frequency can be configured. By default all of the mounted GFS2 file systems
will have their data collected unless GFS2 file systems are specified.
.PP
Please note that sysrq -t (thread) and -m (memory) dumps and the pid
directories in /proc are collected unless they are disabled with the -P option.
.SH OPTIONS
.TP
\fB-h, --help\fP
Prints out a short usage message and exits.
.TP
\fB-d, --debug\fP
Enables debug logging.
.TP
\fB-q, --quiet\fP
Disables logging to console.
.TP
\fB-y, --no_ask\fP
Disables all questions and assumes yes.
.TP
\fB-i, --info\fP
Prints information about the mounted GFS2 file systems.
.TP
\fB-P, --disable_process_gather\fP
The gathering of process information will be disabled.
.TP
\fB-o \fI<output directory>, \fB--path_to_output_dir\fR=\fI<output directory>\fP
The directory where all the collect data will be stored.
.TP
\fB-r \fI<number of runs>, \fB--num_of_runs\fR=\fI<number of runs>\fP
The number of runs capturing the lockdump data. The default is 3 runs.
.TP
\fB-s \fI<seconds to sleep>, \fB--seconds_sleep\fR=\fI<seconds to sleep>\fP
The number of seconds to sleep between runs of capturing the lockdump data. The default is 120 seconds.
.TP
\fB-n \fI<name of GFS2 filesystem>, \fB--fs_name\fR=\fI<name of GFS2 filesystem>\fP
The name of the GFS2 filesystem(s) that will have their lockdump data captured. By default, all mounted GFS2 file systems will have their data captured.
.
.SH NOTES
The output of the following commands will be captured:
.IP \(bu 2
uname -a
.IP \(bu 2
uptime
.IP \(bu 2
ps h -AL -o "tid,s,cmd"
.IP \(bu 2
df -h
.IP \(bu 2
lsof
.IP \(bu 2
mount -l
.IP \(bu 2
dlm_tool ls
.IP \(bu 2
dlm_tool lockdebug -v -s -w <lockspace name>
.IP \(bu 2
echo "t" > /proc/sysrq-trigger (If /proc/1/stack does not exist)
.IP \(bu 2
echo "m" > /proc/sysrq-trigger (If /proc/1/stack does not exist)
.SH AUTHOR
.nf
Shane Bradley <sbradley@fedoraproject.org>
.fi
.SH FILES
.I /proc/mounts
.br
.I /proc/slabinfo
.br
.I /sys/kernel/config/dlm/cluster/lkbtbl_size
.br
.I /sys/kernel/config/dlm/cluster/dirtbl_size
.br
.I /sys/kernel/config/dlm/cluster/rsbtbl_size
.br
.I /sys/kernel/debug/gfs2/
.br
.I /sys/kernel/debug/dlm/
.br
.I /proc/<int>/
(If /proc/1/stack does exists)
.br
.I /var/log/messages
.br
.I /var/log/cluster/
.br
.SH SEE ALSO