mfsstatsdump
Dump usage data from master stats file in csv or png format.
This page reproduces the manual page mfsstatsdump(8) as the product ships it: the text man mfsstatsdump prints on a machine where the packages are installed. It is not edited here, and where it disagrees with the rest of this documentation, the documentation is the side kept against the sources. What the subject is: Command line tools.
Synopsis
mfsstatsdump -f fields [-i stats_file] [-r range] [-s separator] [-p png_filename [-x chart_width] [-y chart_height]] [-hHd]
Description
mfsstatsdump dumps usage data from master stats file. These are the same data sets that are used to make GUI charts. Output can be either in text format (csv) or in graphical format (png). That means -p, -x and -y options are mutually exclusive with -h, -H and -d options.
MooseFS master server saves the stats file in the DATA_PATH directory - see mfsmaster.cfg(5)
OUTPUT
Text output - text (csv) file where first column is a timestamp (or date if -d option was specified), the following column are what was specified with the -f options, formatted according to used options (none, -s and -h or -H)
Graphical output - one png file with a chart is created for every field specified with the -f option, according to the naming scheme declared with the -p option. Size may be adjusted with -x and -y options.
Options
-
-f
field names separated by ',' (see FIELDS section); at least one field is mandatory; if an asterisk (*) is used, all fields are dumped -
-i
name of mfs binary stats file (default: default_data_path/stats.mfs) -
-r
range type: 0 - short range (minute) 1 - medium range (6 minutes) 2 - long range (30 minutes) 3 - very long range (day) -
-s
specify column separator (default: tabulator) -
-p
optional PNG filename (field name will be added before .png; YYYY -> YYYY_FIELD.png, YYYY.png -> YYYY_FIELD.png) -
-x
PNG chart width (default: 1600) -
-y
PNG chart height (should be divisible by 20 - if not then it will be adjusted; default:320) -
-h
"human-readable" numbers using base 2 prefixes (IEC 60027) -
-H
"human-readable" numbers using base 10 prefixes (SI) -
-d
show timestamps in YYYY-MM-DD HH:MM format
FIELDS
-
ucpu
User cpu usage -
scpu
System cpu usage -
cpu
Total cpu usage (in csv sum of scpu and ucpu, in png shows both in different colors) -
delete
Number of chunk deletions -
replicate
Number of chunk replications -
statfs
Number of statfs operations -
getattr
Number of getattr operations -
setattr
Number of setattr operations -
lookup
Number of lookup operations -
mkdir
Number of mkdir operations -
rmdir
Number of rmdir operations -
symlink
Number of symlink operations -
readlink
Number of readlink operations -
mknod
Number of mknod operations -
unlink
Number of unlink operations -
rename
Number of rename operations -
link
Number of link operations -
readdir
Number of readdir operations -
open
Number of open operations -
read
Number of read operations -
write
Number of write operations -
prcvd
Received packets -
psent
Sent packets -
brcvd
Received bytes -
bsent
Sent bytes -
memoryrss
Resident memory usage -
memoryvirt
Virtual memory usage -
mem
Total memory usage (in csv is the same as memoryvirt, in png shows both memoryrss and memoryvirt using two colors) -
usedspace
Used raw disk space -
totalspace
Total raw disk space -
space
Total raw disk space (in csv the same as totalspace, in png shows both usedspace and totalspace using two colors) -
readchunk
Number of chunk_read operations -
writechunk
Number of chunk_write operations -
create
Number of chunk creation attempts -
change
Number of chunk internal operation attempts -
delete_ok
Number of successful chunk deletions -
delete_err
Number of unsuccessful chunk deletions -
delete_stat
Sum of successful and unsuccessful chunk deletions (in png shows both delete_ok and delete_err using two colors) -
replicate_ok
Number of successful chunk replications -
replicate_err
Number of unsuccessful chunk replications -
replicate_stat
Sum of successful and unsuccessful chunk replications (in png shows both replicate_ok and replicate_err using two colors) -
create_ok
Number of successful chunk creations -
create_err
Number of unsuccessful chunk creations -
create_stat
Sum of successful and unsuccessful chunk creations (in png shows both create_ok and create_err using two colors) -
change_ok
Number of successful chunk internal operations -
change_err
Number of unsuccessful chunk internal operations -
change_stat
Sum of successful and unsuccessfulchunk internal operations (in png shows both change_ok and change_err using two colors) -
split_ok
Number of successful chunk split operations -
split_err
Number of unsuccessful chunk split operations -
split_stat
Sum of successful and unsuccessful chunk split operations (in png shows both split_ok and split_err using two colors) -
fileobjects
Number of file objects -
metaobjects
Number of non-file objects (directories,symlinks,etc.) -
objects
Number of all objects (in png shows both fileobjects and metaobjects using two colors) -
chunksec8
Total number of chunks stored in EC8 format -
chunksec4
Total number of chunks stored in EC4 format -
chunkscopy
Total number of chunks stored in COPY format -
chunks
Total number of chunks stored in any format (in png shows chunksec8, chunksec4 and chunkscopy using three colors) -
chregdanger
Number of endangered chunks (mark for removal excluded) -
chregunder
Number of undergoal chunks (mark for removal excluded) -
regunder
Number of endangered and undergoal chunks (mark for removal excluded, in png shows chregdanger and chregunder using two colors) -
challdanger
Number of endangered chunks (mark for removal included) -
challunder
Number of undergoal chunks (mark for removal included) -
allunder
Number of endangered and undergoal chunks (mark for removal included, in png shows challdanger and challunder using two colors) -
bytesread
Average number of bytes read per second by all clients -
byteswrite
Average number of bytes written per second by all clients -
fsync
Number of fsync operations -
lock
Number of lock operations -
snapshot
Number of snapshot operations -
truncate
Number of truncate operations -
getxattr
Number of getxattr operations -
setxattr
Number of setxattr operations -
getfacl
Number of getfacl operations -
setfacl
Number of setfacl operations -
fcreate
Number of file create operations -
meta
Number of extra metadata operations (sclass,trashretention,eattr etc.) -
delay
(pro only) Master max delay in seconds -
servers
Number of all registered chunk servers (both connected and disconnected) -
dservers
Number of all disconnected chunk servers -
mdservers
Number of disconnected chunk servers that are in maintenance mode -
cservers
Number of all registered chunk servers (in csv equals to servers, in png shows servers, dservers and mdservers using three different colors) -
udiff
Difference in space usage percent between the most and least used chunk server -
mountbytrcvd
Number of bytes of file data received by mounts from chunkservers -
mountbytsent
Number of bytes of file data sent by mounts to chunkservers
Notes
Data sets delete and delete_stat in a properly working system should be roughly the same, but not always identical (in their CSV form), this stems from the fact that the delete set is calculated using the number of requests sent by the master, and the delete_stat set is calculated using the number of replies received from chunk servers, so local fluctuations may be observed (i.e. one minute has more sent requests - higher value in the delete set and the next minute has more answers - higher value in delete_stat set). But if one were to calculate the sum of differences between the two sets over time, this sum should never grow over a certain number.
However, if there is some kind of problem (with network communication and/or chunk server process(es)) and some chunk delete requests are stalled/go missing, then delete values may be constantly higher than the delete_stat values and the sum of differences between the two sets will be steadily growing over time.
Same goes for replicate(_stat), create(_stat), change(_stat) and split(_stat) data sets.