Show Table of Contents
19.8. Viewing complete volume state with statedump
The
statedump subcommand writes out details of the current state of a specified process, including internal variables and other information that is useful for troubleshooting.
The command is used as follows:
# gluster volume statedump VOLNAME [[nfs|quotad] [all|mem|iobuf|callpool|priv|fd|inode|history] | [client hostname:pid]]
19.8.1. Gathering information from the server
You can output all available state information, or limit statedump output to specific details, by using the statedump command with one of the following parameters.
- all
- Dumps all available state information.
- mem
- Dumps the memory usage and memory pool details of the bricks.
- iobuf
- Dumps iobuf details of the bricks.
- priv
- Dumps private information of loaded translators.
- callpool
- Dumps the pending calls of the volume.
- fd
- Dumps the open file descriptor tables of the volume.
- inode
- Dumps the inode tables of the volume.
- history
- Dumps the event history of the volume
For example, to write out all available information about the
data volume, run the following command on the server:
# gluster volume statedump data all
If you only want to see details about the event history, run the following:
# gluster volume statedump data history
The
nfs parameter is required to gather details about volumes shared via NFS. It can be combined with any of the above parameters to filter output.
# gluster volume statedump VOLNAME nfs all
The
quotad parameter is required to gather details about the quota daemon. The following command writes out the state of the quota daemon across all nodes.
# gluster volume statedump VOLNAME quotad
If you need to see the state of a different process, such as the self-heal daemon, you can do so by running the following command using the process identifier of that process.
# kill -SIGUSR1 pid
19.8.2. Gathering information from the client
To generate statedump for the processes, using libgfapi, below command can be executed from one of the nodes in the gluster cluster to which the libgfapi application is connected to:
# gluster volume statedump VOLNAME client hostname:pid
Important
If you are using either NFS Ganesha or Samba service and you need to see the state of its clients, ensure that you use localhost instead of hostname. For example:
# gluster volume statedump VOLNAME client localhost:pid
If you need to get the state of glusterfs fuse mount process, you can do so by running the following command using the process identifier of that process.
# kill -SIGUSR1 pid
Important
If you have a gfapi based application and you need to see the state of its clients, ensure that the user running the gfapi application is a member of the
gluster group. For example, if your gfapi application is run by user qemu, ensure that qemu is added to the gluster group by running the following command:
# usermod -a -G gluster qemu
19.8.3. Controlling statedump output location
Information is saved to the
/var/run/gluster directory by default. Output files are named according to the following conventions:
- For brick processes,
brick_path.brick_pid.dump - For volume processes and
killcommand results,glusterdump-glusterd_pid.dump.timestamp
To change where the output files of a particular volume are saved, use the
server.statedump-path parameter, like so:
# gluster volume set VOLNAME server.statedump-path PATH

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.