AppSuite:Oxsysreport
The '/opt/open-xchange/sbin/oxsysreport' tool is able to collect a lot of useful log and system information into a tar archive. This so called OX Support Tarball contains Apache and OX configurations, OX logs and system information. This and a qualified Error Report makes sure that our support department get all needed details for a fast qualified help in a incident scenario. We always recommend to encrypt your E-Mail with our Support Key when attaching this tarball.
Parameter Overview
Option | Default Values | Possible Values | Required Tools | |
--tempdir | /tmp | <directory> | ||
--logdir | ox_support_infos-<timestamp> | <folder name> | ||
--log-archive | /tmp/ox_support_infos-<timestamp>.tar | <path to tarball> | ||
--keep-tmp-files | false | true false | ||
--thread-dump | false | true false | ||
--heap-dump | false | true false | jmap, sudo (Only if not IBM Java) | |
--skip-compression | false | true false | ||
--exclude-old-logs | disabled | 0 ... n Days | ||
--exclude-ox-secrets | false | true false | ||
-h,--help | disabled |
Required Tools
We recommend to check if all required tools are installed before a incident happens. In case your are running IBM Java on e.g. SUSE Linux Enterprise, heap dumps will be created differently. Please note, we do not list package names which are usually get installed in a default installation.
Tool | Debian | SuSE | Redhead | CentOS | Univention |
bzip2 | bzip2 | ||||
jmap | sun-java<version>-jdk openjdk-<version>-jdk | N/A | java-<version>-openjdk-devel | java-<version>-openjdk-devel | openjdk-<version>-jdk |
sudo | sudo |
Features
Directory for Temporary Process Data (--tempdir)
Root Folder Name of the Support Tarbal (--logdir)
OX Support Tarball Name and Storage Location (--log-archive)
Keep Temporary Process Data (--keep-tmp-files)
Create Thread Dumps (--thread-dump)
This Option triggers via 'kill -3' the thread dump creation and logs the related top output into the '/commands/top -d 3 -bHn 5 (thread-dump)' file. The thread dump on none IBM Java Systems will are stored within the open-xchange-console.log, on IBM Java they will be stored separately inside the support tarball as '/tmp/javacore.<timestamp>.txt'.
Create Heap Dumps (--heap-dump)
First you will get an warning dialog with some system details and with the choice to proceed or to cancel. While creating Java heap dumps your JVM will be stopped and the OX Service is not functional. This step may take several minutes and it could happen that you need to restart the open-xchange service afterwards manually again. You also have to make sure that you have enough free disk space for processing the data in directories which are defined by '--tempdir' and '--log-archive'. Depending on your ox-scriptconf.sh '-Xmx' size of your groupware Java virtual machine and amount of logs, several gigabyte could be needed!
This Option triggers the creation of an heap dump which will be stored on none IBM Java Systems within '/commands/jmap -dump:file (heap-dump).bz2' and '/commands/jmap -histo (heap-dump)'. The two files beside without '(heap-dump)' marker contain the stdout/stderr of jmap by running this command. Please note, the '.bz2' suffix (and compression) will be vanished by '--skip-compression' option.
On IBM Java Systems the 'jmap' command is not available and 'kill -ABRT' will do the job instead. This will kill the JVM completely by writing the heap dump, afterwards the dump will be moved within the tarball and processed by the tool jextract. Depending on '--skip-compression' option jextract will compress it as zip or not. The heap dump will be located '/tmp/core.<timestamp>.dmp.zip' within the tarball. The stdout/stderr of jextract will be written to '/commands/jextract core.<timestamp>.dmp (heap-dump)'. On IBM Java the OX groupware service will be restarted by this script .
Skip Support Tarball Compression (--skip-compression)
If this option is set, no compression takes place. This option will effect the support tarball, as well as nested tarballs and possible heap dumps.
Drop Older OX Logfiles from Support Tarball (--exclude-old-logs)
This option drops all logs (except mandatory) which has a later modified time than the given argument. If logs are dropped they are listed within the overview file '/modified-and-excluded-files.txt' within the tarball.
Removes Confidential Details from OX Config Files (--exclude-ox-secrets)
This option removes all unexpected, as well as hole confidential known files from the '/opt/open-xchange/etc/' copy of the support tarball. Also confidential information like passwords and keys will be replaced by an white and blacklist heuristic with an <REMOVED BY OXSYSREPORT> marker. The replacement works only on OX properties files and the '/modified-and-excluded-files.txt' file will contain the details of affected files.