Apache Geode, also known as Pivotal GemFire, is a data management platform that provides real-time, consistent access to data-intensive applications throughout widely distributed cloud architectures. The Visual Statistics Display (VSD) is an utility that reads GemFire/Geofe statistics and produces graphical displays for further analysis.
A Geode/GemFire cluster can be composed of a few or a lot of members, each one having its own configuration files and also generating its own set of logs and statistics for troubleshooting and analysis. When dealing with large distributed systems running for a considerable period of time, however, the effort spent just by arranging the files required to analyze an incident can be extremely time consuming, and so does the general health assessment executed on each file to check whether the configuration is the same for all members, whether there are JVM pauses making members unresponsive, whether the memory is correctly sized to a fixed value for each heap space; the list goes on and on...
A big percentage of these repetitive tasks could (and should) be automated, improving the productivity of the analysis itself, and also reducing the amount of human mistakes inherent to executing the same thing over and over again. The goal of this project is to start building such a tool.
All platforms require a Java installation with JDK 1.8 or more recent version. The JAVA_HOME environment variable can be set as below:
Platform | Command |
---|---|
Unix | export JAVA_HOME=/usr/java/jdk1.8.0_121 |
OSX | export JAVA_HOME=/usr/libexec/java_home -v 1.8 |
Windows | set JAVA_HOME="C:\Program Files\Java\jdk1.8.0_121" |
Clone the current repository in your local environment and, within the directory containing the source code, run gradle build:
$ ./gradlew build
Once the build completes, the project files will be installed at build/libs
. Verify the
installation by invoking the java -jar
command:
$ java -jar build/libs/geode-support-shell-X.Y.Z.jar
The output should be as follows, and the available commands can be executed from the shell prompt.
/$$$$$$ /$$ /$$$$$$ /$$
/$$__ $$ | $$ /$$__ $$ | $$
| $$ \__/ /$$$$$$ /$$$$$$ /$$$$$$$ /$$$$$$ | $$ \__/ /$$ /$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$
| $$ /$$$$ /$$__ $$ /$$__ $$ /$$__ $$ /$$__ $$ | $$$$$$ | $$ | $$ /$$__ $$ /$$__ $$ /$$__ $$ /$$__ $$|_ $$_/
| $$|_ $$| $$$$$$$$| $$ \ $$| $$ | $$| $$$$$$$$ \____ $$| $$ | $$| $$ \ $$| $$ \ $$| $$ \ $$| $$ \__/ | $$
| $$ \ $$| $$_____/| $$ | $$| $$ | $$| $$_____/ /$$ \ $$| $$ | $$| $$ | $$| $$ | $$| $$ | $$| $$ | $$ /$$
| $$$$$$/| $$$$$$$| $$$$$$/| $$$$$$$| $$$$$$$ | $$$$$$/| $$$$$$/| $$$$$$$/| $$$$$$$/| $$$$$$/| $$ | $$$$/
\______/ \_______/ \______/ \_______/ \_______/ \______/ \______/ | $$____/ | $$____/ \______/ |__/ \___/
| $$ | $$
| $$ | $$
|__/ |__/
geode-support-shell>
The application is built on top of Spring-Boot, so all configuration properties can be easily changed during startup using the following syntax:
$ java -jar geode-support-shell-X.Y.Z.jar --property.name=property.value
Below is a list of the configurable properties.
Property | Default Value | Description |
---|---|---|
logging.file | geode-support-shell.log | Location of the file where logs will be written to. |
app.vsd.home | --- | Path to the folder where the Visual Statistics Display Tool (VSD) is installed. |
app.history.file | .geode-support-shell.history | Location of the file where the history of commands executed will be saved. |
All commands included are self descriptive, more information about specific commands can be
obtained with the assistance of the help
command. The list below contains a detailed description
about each command, its arguments and what it should be used for.
Displays all available commands. When using with a command name as an argument, displays help for the specified command and its arguments.
$ geode-support-shell>help clear
NAME
clear - Clear the shell screen.
SYNOPSYS
clear
Name | Description |
---|---|
--C, --command | Optional. The command to obtain help for. |
Starts the Visual Statistics Display Tool (VSD) and loads the specified statistics (decompress them if needed) into the tool for further analysis. The VSD tool is an external library which does not get shipped with this project and, as such, it should be installed on the local system before running this command, otherwise it will fail stating that the tool can not be found.
There are three different ways that can be used to configure the folder where VSD is installed:
- Using the
--vsdHome
command argument. - Setting the system property
app.vsd.home
when starting the application. - Setting the environment variable
VSD_HOME
before starting the application.
The result includes a message stating whether VSD process could be launched or not, along with an additional error table, depending on whether the decompression of the compressed statistics files fails or succeeds.
$ tree
.
βββ samples
βββ corrupted
βΒ Β βββ unparseableFile.gfs
βΒ Β βββ unparseableFile.gz
βββ uncorrupted
βββ cluster1-locator.gz
βββ cluster1-server1.gfs
βββ cluster1-server2.gfs
βββ cluster2-locator.gz
βββ cluster2-server1.gfs
βββ cluster2-server2.gfs
βββ sampleClient.gfs
$ geode-support-shell>start vsd --path ./samples --vsdHome /Applications/GemFire/vsd --decompressionFolder ./decompressed --timeZone "America/Buenos_Aires"
βββββββββββββββββββββββββββββββ¦βββββββββββββββββββ
βFile Name βError Description β
β ββββββββββββββββββββββββββββββ¬βββββββββββββββββββ£
β/corrupted/unparseableFile.gzβNot in GZIP formatβ
βββββββββββββββββββββββββββββββ©βββββββββββββββββββ
Visual Statistics Display Tool (VSD) successfully started.
$ tree
.
βββ decompressed
βΒ Β βββ cluster1-locator.gfs
βΒ Β βββ cluster2-locator.gfs
βββ samples
βββ corrupted
βΒ Β βββ unparseableFile.gfs
βΒ Β βββ unparseableFile.gz
βββ uncorrupted
βββ cluster1-locator.gz
βββ cluster1-server1.gfs
βββ cluster1-server2.gfs
βββ cluster2-locator.gz
βββ cluster2-server1.gfs
βββ cluster2-server2.gfs
βββ sampleClient.gfs
Name | Description |
---|---|
--path | Optional. Path to directory to scan for statistics files. |
--vsdHome | Optional. Path to the Visual Statistics Display Tool (VSD) Installation Directory. |
--decompressionFolder | Optional. Path to the folder where decompressed files should be located. If none is specified, compressed files are left alone and won't be loaded into VSD. |
--timeZone | Optional. Time Zone to set as system environment variable. This will be used by the Visual Statistics Display Tool (VSD) when showing data. If not set, none is used. |
Keep in mind that only log files using the default log format shipped with GemFire/Geode are
currently supported by the tool, namely the Apache Log4j 2
pattern [%level{lowerCase=true} %date{yyyy/MM/dd HH:mm:ss.SSS z} <%thread> tid=%hexTid] %message%n%throwable%n
.
Displays general information about the log file specified, or about the full set of log files
contained within the directory specified, and exports the information to the desired format.
When a folder is specified as the --path
argument, the command will recursively iterate and parse
all files matching the extension .log
. The command aims to provide an overview of the log files,
allowing the user to quickly asses the version and time frame covered.
The result includes one or two tables, depending on whether the parsing of the different log
files fails or succeeds, and a message indicating whether the export was successful or not. The
parsing results can be exported to a file through the --export
parameter, the output format is
chosen based on the file extension (only txt
, csv
and tsv
are currently supported).
The Results table includes a list of the log files for which the parsing succeeded, along with the
File Name (relative to the original path), Product Version, Operating System installed on the
host where the member was running, the original Time Zone on which the file was created and the
interval of time covered by the log file (Start Time and Finish Time). It is worth noting that
GemFire/Geode does not add the metadata header when rolling log files, so some values (Product Version,
Operating System and Time Zone) might be empty if the metadata was not found or if the
intervalOnly
parameter is set as true
. Also, depending on whether the Time Zone was found and
whether a specific Time Zone was specified as a parameter, the command will present Start Time
and Finish Time according to the following rules:
- If the
--timeZone
parameter is specified, then both values will be shown using the Time Zone specified as the filter. - If the
--timeZone
parameter is not specified and the Time Zone is found within the metadata, then both values will be shown using the original Time Zone from the log file. - If the
--timeZone
parameter is not specified and the Time Zone is not found within the metadata (orintervalOnly=true
), then both values will be shown using the default Time Zone from the system.
The Errors table includes a list of the log files for which the parsing failed, along with the File Name (relative to the original path) and the Error Description.
$ geode-support-shell>show logs metadata --path ./samples
ββββββββββββββββββββββββββ¦ββββββββββββββββ¦βββββββββββββββββββββββββββββββββββββββ¦βββββββββββββββββββββ¦ββββββββββββββββββββββββ¦ββββββββββββββββββββββββ
βFile Name βProduct VersionβOperating System βTime Zone βStart Time βFinish Time β
β βββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββ¬ββββββββββββββββββββββββ¬ββββββββββββββββββββββββ£
β/parseable/member_8X.logβ8.2.0 βx86_64 Mac OS X 10.13.6 βEurope/Dublin βAug 24, 2018 3:52:44 PMβAug 24, 2018 4:07:57 PMβ
β βββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββ¬ββββββββββββββββββββββββ¬ββββββββββββββββββββββββ£
β/parseable/member_9X.logβ9.4.0 βamd64 Linux 3.10.0-862.11.6.el7.x86_64βAmerica/Buenos_AiresβApr 17, 2018 5:19:48 AMβApr 17, 2018 5:20:45 AMβ
β βββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββ¬ββββββββββββββββββββββββ¬ββββββββββββββββββββββββ£
β/parseable/noHeader.log β β β βSep 06, 2018 2:03:20 AMβSep 06, 2018 4:12:14 AMβ
ββββββββββββββββββββββββββ©ββββββββββββββββ©βββββββββββββββββββββββββββββββββββββββ©βββββββββββββββββββββ©ββββββββββββββββββββββββ©ββββββββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦βββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββ£
β/unparseable/unknownFormat.logβLog format not recognized.β
ββββββββββββββββββββββββββββββββ©βββββββββββββββββββββββββββ
$ geode-support-shell>show logs metadata --path ./samples --timeZone "America/Chicago" --intervalOnly true --export /temp/output.txt
ββββββββββββββββββββββββββ¦ββββββββββββββββ¦βββββββββββββββββ¦ββββββββββ¦ββββββββββββββββββββββββββββ¦βββββββββββββββββββββββββββββ
βFile Name βProduct VersionβOperating SystemβTime ZoneβStart Time[America/Chicago]βFinish Time[America/Chicago]β
β βββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββ¬ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ£
β/parseable/member_8X.logβ β β βAug 24, 2018 9:52:44 AM βAug 24, 2018 10:07:57 AM β
β βββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββ¬ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ£
β/parseable/member_9X.logβ β β βApr 17, 2018 3:19:48 AM βApr 17, 2018 3:20:45 AM β
β βββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββ¬ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ£
β/parseable/noHeader.log β β β βSep 05, 2018 8:03:20 PM βSep 05, 2018 10:12:14 PM β
ββββββββββββββββββββββββββ©ββββββββββββββββ©βββββββββββββββββ©ββββββββββ©ββββββββββββββββββββββββββββ©βββββββββββββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦βββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββ£
β/unparseable/unknownFormat.logβLog format not recognized.β
ββββββββββββββββββββββββββββββββ©βββββββββββββββββββββββββββ
Data successfully exported to /temp/output.txt.
Name | Description |
---|---|
--path | Mandatory. Path to the log file, or directory to scan for log files. |
--intervalOnly | Optional. Whether to parse the full metadata (default, slower) or only the time covered by the log file (extremely faster). |
--timeZone | Optional. Time Zone Id to use when showing results. If not set, the default from the local system will be used (or the one from the log file, if found and '--intervalOnly' is set as 'false'). |
--export | Optional. Path to file where command results should be written to (the extension sets the output format: txt , csv , tsv ). |
Scans the log files contained within the sourceFolder
, and copies them to different
directories depending on whether they match (matchingFolder
) the time frame specified as the
filter or not (nonMatchingFolder
). The command aims to quickly setup an organized folder structure
where files covering a time frame of interest are grouped together, allowing the user to start the
proper analysis on a valid set instead of manually checking and moving the files one by one.
The result includes one or two tables, depending on whether the parsing of the different log files fails or succeeds.
The Results table includes a list of the log files for which the parsing succeeded, along
with the File Name (relative to the original path), and the flag Matches, which states whether
the file matches the specified time frame or not. Considering that the Time Zone for each file might
or might not be found (metadata header not included in rolled logs), the time period specified as the
filter is compared against the time interval covered by the log file using the Time Zone specified
through the parameter --timeZone
or, if not set, the default system Time Zone; either way, no
manual conversion should be done by the user.
The Errors table includes a list of the log files for which there was an error, either parsing the file or copying it to the corresponding folder, along with the File Name (relative to the original path) and the Error Description.
$ tree
.
βββ samples
βββ parseable
βΒ Β βββ member_8X.log
βΒ Β βββ member_9X.log
βΒ Β βββ noHeader.log
βββ unparseable
βββ unknownFormat.log
$ geode-support-shell>filter logs by date-time --sourceFolder ./samples --matchingFolder ./relevant --nonMatchingFolder ./irrelevant --year 2018 --month 04 --day 17
ββββββββββββββββββββββββββ¦ββββββββ
βFile Name βMatchesβ
β βββββββββββββββββββββββββ¬ββββββββ£
β/parseable/member_8X.logβfalse β
β βββββββββββββββββββββββββ¬ββββββββ£
β/parseable/member_9X.logβtrue β
β βββββββββββββββββββββββββ¬ββββββββ£
β/parseable/noHeader.log βfalse β
ββββββββββββββββββββββββββ©ββββββββ
ββββββββββββββββββββββββββββββββ¦βββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββ£
β/unparseable/unknownFormat.logβLog format not recognized.β
ββββββββββββββββββββββββββββββββ©βββββββββββββββββββββββββββ
$ tree
.
βββ irrelevant
βΒ Β βββ member_8X.log
βΒ Β βββ noHeader.log
βββ relevant
βΒ Β βββ member_9X.log
βββ samples
βββ parseable
βΒ Β βββ member_8X.log
βΒ Β βββ member_9X.log
βΒ Β βββ noHeader.log
βββ unparseable
βββ unknownFormat.log
$ geode-support-shell>filter logs by date-time --sourceFolder ./samples --matchingFolder ./relevant --nonMatchingFolder ./irrelevant --year 2018 --month 09 --day 05 --hour 21 --minute 30 --second 00 --timeZone "America/Chicago"
ββββββββββββββββββββββββββ¦ββββββββ
βFile Name βMatchesβ
β βββββββββββββββββββββββββ¬ββββββββ£
β/parseable/member_8X.logβfalse β
β βββββββββββββββββββββββββ¬ββββββββ£
β/parseable/member_9X.logβfalse β
β βββββββββββββββββββββββββ¬ββββββββ£
β/parseable/noHeader.log βtrue β
ββββββββββββββββββββββββββ©ββββββββ
ββββββββββββββββββββββββββββββββ¦βββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββ£
β/unparseable/unknownFormat.logβLog format not recognized.β
ββββββββββββββββββββββββββββββββ©βββββββββββββββββββββββββββ
$ tree
.
βββ irrelevant
βΒ Β βββ member_8X.log
βΒ Β βββ member_9X.log
βββ relevant
βΒ Β βββ noHeader.log
βββ samples
βββ parseable
βΒ Β βββ member_8X.log
βΒ Β βββ member_9X.log
βΒ Β βββ noHeader.log
βββ unparseable
βββ unknownFormat.log
Name | Description |
---|---|
--year | Mandatory. Year [2010 - ...] to look for within the log samples. |
--month | Mandatory. Month of Year [1 - 12] to look for within the log samples. |
--day | Mandatory. Day of Month [1 - 31] to look for within the log samples. |
--hour | Optional. Hour of day [00 - 23] to look for within the log samples. |
--minute | Optional. Minute of Hour [00 - 59] to look for within the log samples. |
--second | Optional. Second of minute [00 - 59] to look for within the log samples. |
--sourceFolder | Mandatory. Directory to scan for logs. |
--matchingFolder | Mandatory. Directory where matching files should be copied to. |
--nonMatchingFolder | Mandatory. Directory where non matching files should be copied to. |
--timeZone | Optional. Time Zone Id to use when filtering. If not set, the system Time Zone will be used. |
Displays general information about the statistics file specified, or about the full set of statistics
files contained within the directory specified. When a folder is specified as the --path
argument,
the command will recursively iterate and parse all files matching the extension .gfs
or .gz
. The
command aims to provide an overview of the statistics files, allowing the user to quickly asses the
version and time frame covered by the sampling.
The result includes one or two tables, depending on whether the parsing of the different statistics
files fails or succeeds, and a message indicating whether the export was successful or not. The
parsing results can be exported to a file through the --export
parameter, the output format is
chosen based on the file extension (only txt
, csv
and tsv
are currently supported).
The Results table includes a list of the statistics files for which the parsing succeeded, along
with the File Name (relative to the original path), the Product Version on which the member that
created the statistics file was running, the underlying Operating System installed on the host where the
member that created the statistics file was running, the original Time Zone on which the file was
created and the interval of time covered by the statistics file (Start Time and Finish Time).
It's worth noting that both the Start Time and Finish Time are shown using the original Time
Zone from the statistics file, unless a different Time Zone has been specified when executing the
command, in which case both timestamps are converted to the specified Time Zone. It should also be
mentioned that the Finish Time, unlike the Start Time which is written in the file by the
GemFire/Geode member directly, it's measured by retrieving the last available sample for a well
known and always existing statistic (VMStats.cpus
).
The Errors table includes a list of the statistics files for which the parsing failed, along with the File Name (relative to the original path) and the Error Description.
$ geode-support-shell>show statistics metadata --path ./samples
βββββββββββββββββββββββββββββββββββ¦ββββββββββββββββ¦βββββββββββββββββ¦ββββββββββββββββ¦ββββββββββββββββββββββββ¦βββββββββββββββββββββββββ
βFile Name βProduct VersionβOperating SystemβTime Zone βStart Time βFinish Time β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/cluster1-locator.gz βGemFire 9.3.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 2:06:09 PMβMar 22, 2018 3:17:05 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/cluster1-server1.gfsβGemFire 9.3.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 2:06:22 PMβMar 22, 2018 3:17:06 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/cluster1-server2.gfsβGemFire 9.3.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 2:06:22 PMβMar 22, 2018 3:17:05 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/cluster2-locator.gz βGemFire 8.2.8 βMac OS X 10.13.3βAmerica/ChicagoβMar 22, 2018 9:06:24 AMβMar 22, 2018 10:17:04 AMβ
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/cluster2-server1.gfsβGemFire 8.2.8 βMac OS X 10.13.3βAmerica/ChicagoβMar 22, 2018 9:06:33 AMβMar 22, 2018 10:17:03 AMβ
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/cluster2-server2.gfsβGemFire 8.2.8 βMac OS X 10.13.3βAmerica/ChicagoβMar 22, 2018 9:06:33 AMβMar 22, 2018 10:17:04 AMβ
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬ββββββββββββββββββββββββ¬βββββββββββββββββββββββββ£
β/uncorrupted/sampleClient.gfs βGemFire 9.1.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 2:06:51 PMβMar 22, 2018 3:07:08 PM β
βββββββββββββββββββββββββββββββββββ©ββββββββββββββββ©βββββββββββββββββ©ββββββββββββββββ©ββββββββββββββββββββββββ©βββββββββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
$ geode-support-shell>show statistics metadata --path ./samples --timeZone "America/Buenos_Aires" --export /temp/output.csv
βββββββββββββββββββββββββββββββββββ¦ββββββββββββββββ¦βββββββββββββββββ¦ββββββββββββββββ¦βββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββββ
βFile Name βProduct VersionβOperating SystemβTime Zone βStart Time[America/Buenos_Aires]βFinish Time[America/Buenos_Aires]β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/cluster1-locator.gz βGemFire 9.3.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 11:06:09 AM βMar 22, 2018 12:17:05 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/cluster1-server1.gfsβGemFire 9.3.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 11:06:22 AM βMar 22, 2018 12:17:06 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/cluster1-server2.gfsβGemFire 9.3.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 11:06:22 AM βMar 22, 2018 12:17:05 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/cluster2-locator.gz βGemFire 8.2.8 βMac OS X 10.13.3βAmerica/ChicagoβMar 22, 2018 11:06:24 AM βMar 22, 2018 12:17:04 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/cluster2-server1.gfsβGemFire 8.2.8 βMac OS X 10.13.3βAmerica/ChicagoβMar 22, 2018 11:06:33 AM βMar 22, 2018 12:17:03 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/cluster2-server2.gfsβGemFire 8.2.8 βMac OS X 10.13.3βAmerica/ChicagoβMar 22, 2018 11:06:33 AM βMar 22, 2018 12:17:04 PM β
β ββββββββββββββββββββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββ£
β/uncorrupted/sampleClient.gfs βGemFire 9.1.0 βMac OS X 10.13.3βEurope/Dublin βMar 22, 2018 11:06:51 AM βMar 22, 2018 12:07:08 PM β
βββββββββββββββββββββββββββββββββββ©ββββββββββββββββ©βββββββββββββββββ©ββββββββββββββββ©βββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
Data successfully exported to /temp/output.csv.
Name | Description |
---|---|
--path | Mandatory. Path to statistics file, or directory to scan for statistics files. |
--timeZone | Optional. Time Zone Id to use when showing results. If not set, the default from the statistics file will be used. Useful when analyzing files written in different time zones (clusters replicating data over the WAN, as an example). |
--export | Optional. Path to file where command results should be written to (the extension sets the output format: txt , csv , tsv ). |
Scans the statistics files contained within the sourceFolder
, and copies them to different
directories depending on whether they match (matchingFolder
) the time frame specified as the
filter or not (nonMatchingFolder
). The command aims to quickly setup an organized folder structure
where files covering a time frame of interest are grouped together, allowing the user to start the
proper analysis on a valid set instead of manually checking and moving the files one by one.
The result includes one or two tables, depending on whether the parsing of the different statistics files fails or succeeds.
The Results table includes a list of the statistics files for which the parsing succeeded, along with the File Name (relative to the original path), and the flag Matches, which states whether the file matches the specified time frame or not. In general the analysis is executed on different members that belong to the same distributed system, so it's expected for all of them to be on the same Time Zone. As such, the time frame specified as the filter is compared against the time interval covered by the statistics file using the same Time Zone as the one of the statistics file itself; in short: the user must set the the filter without doing any manual conversion between Time Zones. If, on the other hand, the files cover members from different Time Zones (different clusters replicated through WAN probably), the user can specify a unique Time Zone to use, in which case all timestamps from the statistics files will be converted prior to executing the comparision.
The Errors table includes a list of the statistics files for which there was an error, either parsing the file or copying it to the corresponding folder, along with the File Name (relative to the original path) and the Error Description.
$ tree
.
βββ samples
βββ corrupted
βΒ Β βββ unparseableFile.gfs
βΒ Β βββ unparseableFile.gz
βββ uncorrupted
βββ cluster1-locator.gz
βββ cluster1-server1.gfs
βββ cluster1-server2.gfs
βββ cluster2-locator.gz
βββ cluster2-server1.gfs
βββ cluster2-server2.gfs
βββ sampleClient.gfs
$ geode-support-shell>filter statistics by date-time --sourceFolder ./samples --matchingFolder ./relevant --nonMatchingFolder ./irrelevant --year 2018 --month 3 --day 22 --hour 15
βββββββββββββββββββββββββββββββββββ¦ββββββββ
βFile Name βMatchesβ
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster1-locator.gz βtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster1-server1.gfsβtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster1-server2.gfsβtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster2-locator.gz βfalse β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster2-server1.gfsβfalse β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster2-server2.gfsβfalse β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/sampleClient.gfs βtrue β
βββββββββββββββββββββββββββββββββββ©ββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
$ tree
.
βββ irrelevant
βΒ Β βββ cluster2-locator.gz
βΒ Β βββ cluster2-server1.gfs
βΒ Β βββ cluster2-server2.gfs
βββ relevant
βΒ Β βββ cluster1-locator.gz
βΒ Β βββ cluster1-server1.gfs
βΒ Β βββ cluster1-server2.gfs
βΒ Β βββ sampleClient.gfs
βββ samples
βββ corrupted
βΒ Β βββ unparseableFile.gfs
βΒ Β βββ unparseableFile.gz
βββ uncorrupted
βββ cluster1-locator.gz
βββ cluster1-server1.gfs
βββ cluster1-server2.gfs
βββ cluster2-locator.gz
βββ cluster2-server1.gfs
βββ cluster2-server2.gfs
βββ sampleClient.gfs
$ geode-support-shell>filter statistics by date-time --sourceFolder ./samples --matchingFolder ./relevant --nonMatchingFolder ./irrelevant --year 2018 --month 3 --day 22 --hour 11 --minute 30 --timeZone "America/Buenos_Aires"
βββββββββββββββββββββββββββββββββββ¦ββββββββ
βFile Name βMatchesβ
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster1-locator.gz βtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster1-server1.gfsβtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster1-server2.gfsβtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster2-locator.gz βtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster2-server1.gfsβtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/cluster2-server2.gfsβtrue β
β ββββββββββββββββββββββββββββββββββ¬ββββββββ£
β/uncorrupted/sampleClient.gfs βtrue β
βββββββββββββββββββββββββββββββββββ©ββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
$ tree
.
βββ relevant
βΒ Β βββ cluster1-locator.gz
βΒ Β βββ cluster1-server1.gfs
βΒ Β βββ cluster1-server2.gfs
βΒ Β βββ cluster2-locator.gz
βΒ Β βββ cluster2-server1.gfs
βΒ Β βββ cluster2-server2.gfs
βΒ Β βββ sampleClient.gfs
βββ samples
βββ corrupted
βΒ Β βββ unparseableFile.gfs
βΒ Β βββ unparseableFile.gz
βββ uncorrupted
βββ cluster1-locator.gz
βββ cluster1-server1.gfs
βββ cluster1-server2.gfs
βββ cluster2-locator.gz
βββ cluster2-server1.gfs
βββ cluster2-server2.gfs
βββ sampleClient.gfs
Name | Description |
---|---|
--year | Mandatory. Year [2010 - ...] to look for within the statistics samples. |
--month | Mandatory. Month of Year [1 - 12] to look for within the statistics samples. |
--day | Mandatory. Day of Month [1 - 31] to look for within the statistics samples. |
--hour | Optional. Hour of day [00 - 23] to look for within the statistics samples. |
--minute | Optional. Minute of Hour [00 - 59] to look for within the statistics samples. |
--second | Optional. Second of minute [00 - 59] to look for within the statistics samples. |
--sourceFolder | Mandatory. Directory to scan for statistics. |
--matchingFolder | Mandatory. Directory where matching files should be copied to. |
--nonMatchingFolder | Mandatory. Directory where non matching files should be copied to. |
--timeZone | Optional. Time Zone Id to use when filtering. If not set, the Time Zone from the statistics file will be used. Useful when filtering a set of statistics files from different time zones. |
Displays the summary statistical values for a particular Geode/GemFire statistic, or a set of statistics that matches a filter.
The result includes one or two tables, depending on whether the parsing of the different statistics
files fails or succeeds, and a message indicating whether the export was successful or not. The
parsing results can be exported to a file through the --export
parameter, the output format is
chosen based on the file extension (only txt
, csv
and tsv
are currently supported).
The Results table includes a list of statistics for which the filter matched, grouped by Statistic
or Sampling
, along with the maximum, minimum, average, standard deviation and last sample values for each match. The groupBy
parameter specifies how the results will be shown; Statistic
is preferred when searching and comparing a particular statistic over a set of files, and Sampling
is better when searching and comparing several statistics per file.
The Errors table includes a list of the statistics files for which the parsing failed, along with the File Name (relative to the original path) and the Error Description.
# Search strictly for StatSampler.jvmPauses, include those results for which all values are 0 and group results by statistic id. Export result table to /tmp/jvmPauses.tsv
$ geode-support-shell>show statistics summary --path ./samples --statistic jvmPauses --category StatSampler --groupBy Statistic --showEmptyStatistics true --export /tmp/jvmPauses.tsv
ββββββββββββββββββββββββββββββββββββββ¦ββββββββ¦ββββββββ¦ββββββββ¦βββββββββββ¦βββββββββββββββββββ
βStatSampler[statSampler].jvmPauses βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-locator.gz β0.00 β0.00 β0.00 β0.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server1.gfsβ0.00 β0.00 β0.00 β0.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server2.gfsβ0.00 β0.00 β0.00 β0.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster2-locator.gz β0.00 β0.00 β0.00 β0.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster2-server1.gfsβ0.00 β0.00 β0.00 β0.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster2-server2.gfsβ0.00 β2.00 β1.96 β2.00 β0.25 β
β βββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/sampleClient.gfs β0.00 β0.00 β0.00 β0.00 β0.00 β
ββββββββββββββββββββββββββββββββββββββ©ββββββββ©ββββββββ©ββββββββ©βββββββββββ©βββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
Data successfully exported to /tmp/jvmPauses.tsv.
# Search for all statistics with name ending in "InProgress", ignore those for which all values are zero and group results by sampling file.
$ geode-support-shell>show statistics summary --path ./samples --statistic .*InProgress
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¦ββββββββ¦ββββββββ¦ββββββββ¦βββββββββββ¦βββββββββββββββββββ
β/uncorrupted/cluster1-server1.gfs βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-gatewayEventIdIndexMetaData].getInitialImagesInProgressβ0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDistributionStats[distributionStats].initialImageRequestsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDistributionStats[distributionStats].replyWaitsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster1-server2.gfs βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDLockStats[dlockStats].grantWaitsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDistributionStats[distributionStats].replyWaitsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].putLocalInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].sendReplicationInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster2-locator.gz βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββLocatorStats[192.168.1.7-0.0.0.0/0.0.0.0:12334].requestsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster2-server1.gfs βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDistributionStats[distributionStats].replyWaitsInProgress β0.00 β2.00 β0.00 β0.00 β0.08 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].putLocalInProgress β0.00 β2.00 β0.00 β0.00 β0.08 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].sendReplicationInProgress β0.00 β2.00 β0.00 β0.00 β0.08 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster2-server2.gfs βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDistributionStats[distributionStats].replyWaitsInProgress β0.00 β3.00 β0.00 β0.00 β0.06 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββDistributionStats[distributionStats].syncSocketWritesInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].putLocalInProgress β0.00 β2.00 β0.00 β0.00 β0.05 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].putRemoteInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPartitionedRegionStats[/test].sendReplicationInProgress β0.00 β2.00 β0.00 β0.00 β0.04 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/sampleClient.gfs βMinimumβMaximumβAverageβLast ValueβStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββClientSendStats[ClientSendStats-default-192.168.1.7:10102].putSendsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββClientStats[ClientStats-default-192.168.1.7:10101].putsInProgress β0.00 β1.00 β0.00 β0.00 β0.03 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββClientStats[ClientStats-default-192.168.1.7:10102].putsInProgress β0.00 β1.00 β0.00 β0.00 β0.03 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPoolStats[default->[any servers]].clientOpSendsInProgress β0.00 β1.00 β0.00 β0.00 β0.02 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬ββββββββ¬ββββββββ¬βββββββββββ¬βββββββββββββββββββ£
ββββPoolStats[default->[any servers]].clientOpsInProgress β0.00 β1.00 β0.00 β0.00 β0.04 β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©ββββββββ©ββββββββ©ββββββββ©βββββββββββ©βββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
# Search for all statistics related to "queue" and "Gateway", ignore those for which all values are zero and group results by statistic id.
$ geode-support-shell>show statistics summary --path ./samples --statistic .*queue.* --category .*Gateway.* --groupBy Statistic
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¦ββββββββ¦βββββββββββββ¦βββββββββββββ¦βββββββββββββ¦βββββββββββββββββββ
βGatewayReceiverStatistics[192.168.1.7-0.0.0.0/0.0.0.0:5292].loadPerQueueβMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server1.gfs β1.00 β1.00 β1.00 β1.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
βGatewayReceiverStatistics[192.168.1.7-0.0.0.0/0.0.0.0:5325].loadPerQueueβMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster2-server1.gfs β1.00 β1.00 β1.00 β1.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
βGatewayReceiverStatistics[192.168.1.7-0.0.0.0/0.0.0.0:5386].loadPerQueueβMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster2-server2.gfs β1.00 β1.00 β1.00 β1.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
βGatewayReceiverStatistics[192.168.1.7-0.0.0.0/0.0.0.0:5421].loadPerQueueβMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server2.gfs β1.00 β1.00 β1.00 β1.00 β0.00 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
βGatewaySenderStatistics[gatewaySenderStats-DC1].eventQueueSize βMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server1.gfs β0.00 β3.00 β0.01 β0.00 β0.12 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server2.gfs β0.00 β2.00 β0.01 β0.00 β0.10 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
βGatewaySenderStatistics[gatewaySenderStats-DC1].eventQueueTime βMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server1.gfs β0.00 β351933542.00β231829429.62β351933542.00β100677918.94 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server2.gfs β0.00 β352327561.00β233665534.64β352327561.00β100317771.41 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
βGatewaySenderStatistics[gatewaySenderStats-DC1].eventsQueued βMinimumβMaximum βAverage βLast Value βStandard Deviationβ
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server1.gfs β0.00 β3601.00 β2041.80 β3600.00 β1157.73 β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββ¬βββββββββββββββββββ£
ββββ/uncorrupted/cluster1-server2.gfs β0.00 β3601.00 β2041.38 β3600.00 β1157.60 β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©ββββββββ©βββββββββββββ©βββββββββββββ©βββββββββββββ©βββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
# Search for all performance statistics related to the "test" region only, ignore those for which all values are zero and group results by statistic id.
$ geode-support-shell>show statistics summary --path ./samples --category CachePerfStats --instance .*test.* --groupBy Sampling
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¦βββββββββββββ¦ββββββββββββββ¦ββββββββββββββ¦ββββββββββββββ¦βββββββββββββββββββ
β/uncorrupted/cluster1-server1.gfs βMinimum βMaximum βAverage βLast Value βStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].clears β0.00 β11.00 β0.00 β11.00 β0.17 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].creates β0.00 β3601.00 β2042.28 β3600.00 β1157.44 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].entries β0.00 β3601.00 β2041.44 β0.00 β1157.62 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImageTime β0.00 β11936199.00 β11844628.65 β11936199.00 β1011466.20 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImagesCompletedβ0.00 β6.00 β5.95 β6.00 β0.51 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updateTime β0.00 β520300430.00 β345902693.90 β520300430.00 β148080792.49 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updates β0.00 β1963.00 β1113.30 β1963.00 β631.40 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster1-server2.gfs βMinimum βMaximum βAverage βLast Value βStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].creates β0.00 β3601.00 β2041.38 β3600.00 β1157.60 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].entries β0.00 β3601.00 β2041.38 β3600.00 β1157.60 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImageTime β0.00 β15237682.00 β15125405.95 β15237682.00 β1266489.88 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImagesCompletedβ0.00 β5.00 β4.96 β5.00 β0.42 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updateTime β0.00 β444789899.00 β297925067.90 β444789899.00 β125330375.89 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updates β0.00 β1637.00 β928.15 β1637.00 β526.22 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster2-server1.gfs βMinimum βMaximum βAverage βLast Value βStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].creates β0.00 β3600.00 β2045.87 β3600.00 β1154.36 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].entries β0.00 β3600.00 β2045.88 β3600.00 β1154.36 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImageTime β0.00 β13817717.00 β13748761.84 β13817717.00 β926883.83 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImagesCompletedβ0.00 β5.00 β4.97 β5.00 β0.34 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updateTime β0.00 β273142260.00 β182043962.39 β273142260.00 β78846116.91 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updates β0.00 β1637.00 β930.90 β1637.00 β524.58 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/cluster2-server2.gfs βMinimum βMaximum βAverage βLast Value βStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].creates β0.00 β3600.00 β2051.18 β3600.00 β1151.58 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].entries β0.00 β3600.00 β2051.18 β3600.00 β1151.58 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImageTime β0.00 β12443364.00 β12376580.15 β12443364.00 β875315.74 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].getInitialImagesCompletedβ0.00 β6.00 β5.97 β6.00 β0.42 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updateTime β0.00 β305507895.00 β203256255.08 β305507895.00 β88798186.95 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-partition-test].updates β0.00 β1963.00 β1117.83 β1963.00 β628.26 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
β/uncorrupted/sampleClient.gfs βMinimum βMaximum βAverage βLast Value βStandard Deviationβ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-test].creates β1.00 β3600.00 β1800.34 β3600.00 β1039.31 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-test].metaDataRefreshCount β0.00 β1.00 β1.00 β1.00 β0.06 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-test].putTime β126051209.00β7450594711.00β4429521895.50β7450594711.00β1933210695.43 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-test].puts β1.00 β3600.00 β1800.34 β3600.00 β1039.31 β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββββββββββ£
ββββCachePerfStats[RegionStats-test].regions β1.00 β1.00 β1.00 β1.00 β0.00 β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©βββββββββββββ©ββββββββββββββ©ββββββββββββββ©ββββββββββββββ©βββββββββββββββββββ
ββββββββββββββββββββββββββββββββ¦ββββββββββββββββββββββββββββββββ
βFile Name βError Description β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gfsβUnexpected token byte value: 67β
β βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ£
β/corrupted/unparseableFile.gz βNot in GZIP format β
ββββββββββββββββββββββββββββββββ©ββββββββββββββββββββββββββββββββ
Name | Description |
---|---|
path | Mandatory. Path to statistics file, or directory to scan for statistics files. |
groupBy | Optional. Whether to group results by Sampling (default) or Statistic . |
filter | Optional. Filter to use when showing results (None by default, per Sample or per Second ). |
showEmptyStatistics | Optional. Whether to include statistics for which all sample values are 0. (false by default) |
category | Optional. Category of the statistic to search for (VMStats, IndexStats, etc.). Can be a regular expression. |
instance | Optional. Instance of the statistic to search for (region name, function name, etc.). Can be a regular expression. |
statistic | Optional. Name of the statistic to search for (replyWaitsInProgress, delayDuration, etc.). Can be a regular expression. |
--export | Optional. Path to file where command results should be written to (the extension sets the output format: txt , csv , tsv ). |