OX System Report deprecated
Generate comprehensive diagnostic reports for OX App Suite Middleware in Kubernetes.
This document describes how to use the oxsr
tool to generate a system report (oxsysreport
) from one or more running OX App Suite Middleware pods in a Kubernetes cluster. The report can include a range of report modules such as heap dumps, thread dumps, logs, config files, and system-level metrics.
Prerequisites
- An active shell to a running Toolkit Container within the cluster. See Starting.
- Kubernetes access with the correct context and namespace.
- Sufficient permissions to inspect pods and containers in the target namespace.
Commands
To generate a system report for one or more Middleware pods, use the oxsr report
command.
You can use the Tab key to autocomplete pod names when entering commands for speed and accuracy. For more information use oxsr completion <SHELL> --help
. Available shells are bash, fish, powershell and zsh.
Create a Report
To create a basic report for a specific pod:
oxsr report <POD>
You can also specify multiple pods at once:
oxsr report <POD1> <POD2> <POD3>
Important Make sure to add report modules or the --all flag.
Report for All Pods
To generate reports for all pods of the deployment (based on the default label app=core-mw
):
oxsr report --all-pods
Optionally, you can adjust the label used for pod selection:
oxsr report --all-pods --label app=my-custom-label
This functions only in combination with --all-pods
and if label differs from default label.
Include Report Modules
To enrich your system report with more detailed information, you can enable report module flags or combinations of those:
Include a Heap Dump
oxsr report --heapdump <POD>
This will trigger a heap dump in the target container.
Include a Thread Dump
oxsr report --threaddump <POD>
This will trigger multiple thread dumps in the target container.
Include Logs
oxsr report --logs <POD>
This flag adds relevant container logs to the report archive. Note
: This command requires the stern binary to be available in the system's PATH on the executing host machine.
Include Config Files
oxsr report --config <POD>
This includes the current set of configuration files relevant to the middleware application.
Include Auxiliary Linux Command Line Tools (System Level)
oxsr report --aux <POD>
This includes a set of auxiliary Linux command line tools for additional (system level) diagnosis.
Run All Report Modules
You can combine all report modules in one command:
oxsr report --all <POD>
The --all
flag overrides all other report module flags [--heapdump
, --threaddump
, --config
, --logs
, --aux
].
Adjusting Context and Target
You may need to set additional parameters for your Kubernetes context or container:
Flag | Description |
---|---|
--kubeconfig | Path to a specific kubeconfig file. |
--kubecontext | Use a different Kubernetes context. |
--namespace / -n | The target namespace. |
--label / -l | A Label to filter pods (default app=core-mw ). Only required in combination with --all-pods and if label differs from default label. |
--target / -t | The name of the container to operate on (default: core-mw ). |
Example:
oxsr report --namespace mail --target core-mw --heapdump pod-xyz
Verbose Output
Enable verbose output for detailed runtime information and debugging:
oxsr report -v <POD>
Output
The generated report is typically an archived file (e.g., report_<timestamp>.tar.gz
) placed in the working directory of the Toolkit Container (or the location from where the report is being executed). This file contains:
- A summary text file which is called
summary-<Report ID>.txt
- Outputs from report modules: heapdump, threaddump, logs, configs or auxiliary tools (as per flags)
To transfer the resulting report archive (if located inside the toolkit) to your local machine, use this command from your local shell:
kubectl cp -n <NAMESPACE> <TOOLKIT_POD>:<FILENAME> --retries 20 <OUTPUT_FILEPATH>
Further Information
Refer to the tool help via:
oxsr report --help