Support Log Parsing & Analysis Engine
Overview
The Support Log Parsing tab lets administrators analyze AirGap for ObjectScale backup archives using the support analyzer. The analyzer reads a backup bundle, inspects its contents, and produces a structured HTML report summarizing the system state at the time of the backup. This feature is primarily intended for Superna support engineers and technical administrators who need to diagnose issues without direct access to the production system.
Prerequisites
The analyzer JAR must be installed before analysis can begin. If it is not installed, a banner is shown at the top of the tab. Use the Analyzer JAR section at the bottom of the page to upload the JAR.
How to Analyze a Backup File
- Select a backup file from the Select backup file dropdown. The list shows all
.tar.gzbackups stored in the./backups/directory on the server, with their file size and last-modified date, newest first. - Click Analyze. The system starts the support analyzer subprocess against the selected backup file.
- A progress bar appears showing the current completion percentage and a status message emitted by the analyzer. The page polls for updates every 5 seconds automatically — you do not need to refresh.
- When analysis completes, a green Analysis complete message appears and the new report is added to the Generated Reports table below.
- If analysis fails (non-zero exit code or timeout), the error message from the analyzer is shown in red. Only one analysis job can run at a time.
Timeout: The analyzer is forcibly stopped after 10 minutes if it has not finished. This prevents runaway processes on very large or corrupt bundles.
What the Report Contains
The generated HTML report covers nine sections:
- System Overview — console version, build number, license summary, and basic environment facts.
- Settings Summary — sanitized view of the settings file (secrets are always redacted).
- Device Configuration — registered ObjectScale devices.
- Storage Devices — ObjectScale device configurations.
- Job History — recent job runs, status, durations, and error counts.
- Alarm Events — active and recently cleared alarms at backup time.
- Agent Inventory — registered copy agents, their last heartbeat, and version.
- Database Health — PostgreSQL and ClickHouse connection details, row counts for key tables.
- Recommendations — flagged issues detected during analysis (see below).
Interpreting the Recommendations Section
The Recommendations section lists items that the analyzer flagged as potentially problematic. Each recommendation includes:
- Severity (Info / Warning / Critical)
- What was detected — a description of the finding
- Suggested action — a recommended next step
Common findings include stale offsets, agents that have not checked in recently, alarms that have been active for an unusually long time, and settings that deviate from best-practice defaults.
Not every finding requires action. Info-level items are informational. Warning and Critical items should be reviewed with the support team.
Generated Reports
The Generated Reports table shows all .html files previously produced by the analyzer, newest first. Each row shows the filename, file size, and the time it was generated. Click View to open the report in a new browser tab.
Reports are stored on the server at /data/support/reports/. They are not automatically deleted — remove old reports manually if disk space is a concern.
Analysis Engine
The Analysis Engine is a unified job-based pipeline that combines the support analyzer log parse and the DB Mount + Analysis steps into a single workflow. Both steps can be run independently or together.
Backup Source
- Upload backup file — select a
.tar.gzbackup from your local machine and upload it to the server. The file is saved in a job-specific directory under/data/support-reports/. - Local backup (server) — select from backup files already present in the server's
./backups/directory. No upload is needed; the file is read directly from disk.
Analysis Steps
| Checkbox | What it does |
|---|---|
| Log Parse | Runs the support analyzer JAR (argus-support-analyzer.jar) as a subprocess against the backup. Produces an HTML report in the same format as the standalone Log Parse section above. Requires the JAR to be installed. |
| DB Mount + Analysis | Extracts the database dump from the archive, restores it into a temporary PostgreSQL schema, and runs 13 predefined analysis queries. Produces a self-contained HTML report with one section per query. |
| Unmount DB schema on completion | Drops the temporary PostgreSQL schema (DROP SCHEMA … CASCADE) after the DB analysis report is generated. Enabled by default. Disable to keep the schema mounted for manual inspection. |
Running an Analysis
- Select a backup source (upload or local).
- Choose which analysis steps to run and whether to unmount the DB on completion.
- Click Run Analysis. A new job row appears in the Jobs table immediately.
- The job progresses through QUEUED > RUNNING > COMPLETE (or FAILED). The table auto-refreshes every 5 seconds while any job is active.
Jobs Table
| Column | Description |
|---|---|
| Filename | The backup archive that was analyzed. |
| Status | QUEUED (not yet started), RUNNING (in progress), COMPLETE, or FAILED. |
| Log Report | View button appears when the log parse report is ready. Opens the HTML report in a new tab. If the log parse step was skipped or failed, an amber Skipped badge appears instead — hover over it to see the reason (e.g. "Skipped: analyzer already running", "Skipped: JAR not found", or "Failed: Analyzer exited with code N: …"). |
| DB Report | View button appears when the DB analysis report is ready. Opens the HTML report in a new tab. |
| Age | Time elapsed since the job was submitted. |
| Delete | Deletes the job, its report files, and the mounted PG schema (if any). |
DB Analysis Report Sections
The DB analysis report contains 13 sections:
- Job Status Summary — counts and average durations by job status.
- Top Job Errors — most-frequent error messages grouped by error text and step.
- Step Failure Analysis — non-complete step statuses grouped by step name.
- Sync Window Status — incremental copy window counts, object counts, and copied/failed totals.
- Agent Performance — job counts, completion rate, and average duration per agent.
- Config Inventory — all CyberVault configurations: id, name, mode, enabled/disabled, source and target device IDs, schedule policy reference, and group association.
- Registered Agents — all registered copy agents with their display name, status, version, last-seen timestamp, and minutes since last seen.
- Active Alarms — all currently ACTIVE alarm events (up to 50), most recent first.
- Vault Health — each vault device with its type, credential status, and the most recent health snapshot from
vault_device_health(overall_health, alarm_count, critical_alarm_count, last health-check timestamp). Network airgap state is reported separately in QTP communications, not in this section. - Overdue Windows — for each enabled config, the most-recently-completed sync window (from the audit trail), the configured schedule policy name and interval in days, and the hours elapsed since the last completed window. Configs that have never completed a window appear at the top of the list so they're easy to spot — those are the ones most likely to be "overdue" in the operational sense.
- Device Registry — all entries in the device registry table, with category, name, soft-delete state (computed from whether the deleted_at timestamp is set), created and updated timestamps.
- QTP Failures — counts of FAILED QTP messages grouped by message type and direction.
- Step Duration Outliers — job steps whose duration exceeds the mean + 2 standard deviations for that step type.
Sections that reference a table not present in the backup version show a notice: "Table not available in this backup version" rather than an error.
Report Retention
The Report Retention field controls how many days job report directories are kept on the server. The nightly cleanup job (runs every 24 hours) deletes job directories older than this value and drops any associated PG schemas. Default is 30 days. Changes take effect at the next cleanup run.
Uploading a New Analyzer JAR
The Analyzer JAR section shows whether the JAR is currently installed and its version (read from META-INF/MANIFEST.MF inside the JAR).
To upload a new version:
- Click the file picker area and select
argus-support-analyzer.jar. - Click Install JAR.
- The server validates the file (must be a valid JAR, must contain
META-INF/MANIFEST.MF, must be ≤ 100 MB), then atomically replaces the existing JAR. - On success, the version badge updates to the new version.
The JAR is installed at /data/support/argus-support-analyzer.jar on the server's persistent volume (/data). It survives console restarts.
Security Note
The report sanitizes all secret fields — passwords, tokens, and API keys are always redacted and replaced with [REDACTED] before being written to the report. The raw backup archive is never transmitted outside the server; only the HTML report is returned to the browser.