RMT Upgrade Health Check Scripts

Starting with the 2025.3.6 release, the RMT installer includes a pre-upgrade and a post-upgrade health check script to validate your Tableau Resource Monitoring Tool (RMT) environment before and after upgrading. These scripts identify pre-existing issues in your environment like misconfiguration, permission drift, disk space shortages, expired certificates, or service failures that were present before and can cause any upgrade failure.

The pre-upgrade and post-upgrade health check scripts can identify the following issues:

  • Database and Disk Readiness: Detects if a large database or excessive WAL files will cause the migration to hang or exhaust disk space.

  • Permission and Security Integrity: Identifies shifted file ownership or expired SSL certificates that would otherwise block services from restarting or agents from reconnecting.

  • Dependency Validation: Ensures required Windows components, like the Visual C++ 2022 Redistributable and OpenSSL 3.x, are present before PostgreSQL 15 is installed.

  • Version Logic Safety: Prevents "false downgrade" errors caused by version metadata regressions.

Pre-upgrade script

The pre-upgrade script runs automatically when you start an upgrade. It inspects your RMT Server or Agent host while the existing installation is still intact and generates a PASS / FAIL / WARN report.

For Linux, the pre-upgrade check runs automatically as part of:

sudo bash upgrade-rmt-master ...
sudo bash upgrade-rmt-agent ...

To skip the automatic check (not recommended):

sudo bash upgrade-rmt-master --skip-pre-upgrade-check ...

For Windows, the installer runs the pre-upgrade check automatically. During installation, you are also prompted with the option to skip the upgrade. However, that is not recommended.

Manual pre-upgrade check

You can run the script manually to preview any potential issues. To run it manually, use the following steps based on your operating system:

For Linux:

Run the commands as a root user. To include database checks, use the export command to securely pass your password.

sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-pre-upgrade-check.sh

To run with PostgreSQL checks enabled, use the following command:

export RMT_DB_PASSWORD="<tabrmtdb-password>"
sudo -E bash /opt/tableau/tabrmt/master/install-scripts/rmt-pre-upgrade-check.sh

To run with a specific component and output path, use the following command:

sudo bash rmt-pre-upgrade-check.sh --component master --output /tmp/rmt-report.txt

For Windows:

The pre-upgrade files for RMT Server are installed by default in the following location:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\pre-upgrade\rmt-pre-upgrade-check.ps1

The pre-upgrade files for Agent are installed by default in the following location:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\agent\scripts\pre-upgrade\rmt-pre-upgrade-check.ps1

To run the script manually, launch PowerShell as Administrator and run:

cd "C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\pre-upgrade"

.\rmt-pre-upgrade-check.ps1

To run with PostgreSQL checks enabled, use the following command:

$env:RMT_DB_PASSWORD = "<tabrmtdb-password>"
.\rmt-pre-upgrade-check.ps1

To run with a specific component and output path, use the following command:

.\rmt-pre-upgrade-check.ps1 -Component master -OutputPath C:\temp\rmt-report.txt

Additional options

Use the following options to customize the pre-upgrade check:

-Component

Specify RMT server or agent. The script auto-detects this if omitted

--db-password / -DbPassword

The internal RMT database admin password. Required for PostgreSQL checks.

--output / -OutputPath

Specify where to save the report. By default, it is saved to /tmp/ (Linux) or C:\temp\ (Windows).

--target-version / -TargetVersion

The RMT version you plan to install; enables version-specific checks.

--quiet / -Quiet

Filters output to show only FAIL and WARN results.

--verbose / -Verbose

Output displays detailed technical data for every check performed.

Script results and required actions

The following table explains the script result and the action:

Result Status Action
PASS EXIT CODE 0 No issues found. The upgrade proceeds.
WARN EXIT CODE 1 The upgrade proceeds, but you must review the report for non-critical risks.
FAIL EXIT CODE 2 Upgrade Aborted. You must resolve these issues before re-running the upgrade.

Post-upgrade script

The post-upgrade health check scripts run automatically at the end of every RMT installation and upgrade. It verifies that all services started correctly, infrastructure is healthy, and configuration is intact. The post-upgrade check does not block the installer. All identified failures are recorded in the final report.

Manual post-upgrade check

To run it manually, use the following steps based on your operating system:

For Linux:

Run the following commands as a root user or with sudo privileges:

  • For the RMT Server:

sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-post-upgrade-check --component master --mode upgrade
  • For Agent:

sudo bash /opt/tableau/tabrmt/agent/install-scripts/rmt-post-upgrade-check --component agent --mode upgrade

For Windows:

The post-upgrade files for RMT Server are installed by default in the following location:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\post-upgrade\rmt-post-upgrade-check.ps1

The post-upgrade files for Agent are installed by default in the following location:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\agent\scripts\post-upgrade\rmt-post-upgrade-check.ps1

To run the scripts manually, open PowerShell as an Administrator and navigate to your RMT installation directory before running the commands:

  • For RMT server:

.\rmt-post-upgrade-check.ps1 -Component master -Mode upgrade
  • For Agent:

.\rmt-post-upgrade-check.ps1 -Component agent -Mode upgrade

Additional options

You can use the following options to customize the script:

--component / -Component

Specify RMT server or agent. The script will try to auto-detect this, if omitted.

--db-password / -DbPassword

The password for the internal RMT database admin. This is required to enable PostgreSQL checks.

--output / -OutputPath

The path where the report file will be saved. Defaults to /tmp/ (Linux) or C:\temp\ (Windows).

--target-version / -TargetVersion

The specific RMT version you are upgrading to, used for version-specific checks.

--quiet / -Quiet

Reduces output to show only FAIL and WARN results.

--verbose / -VerboseOutput

Provides detailed technical output for every check performed.

Note: We recommend setting RMT_DB_PASSWORD as an environment variable rather than passing it on the command line, as command-line arguments are visible in the process list.

Script results and required actions

The following table explains the script result and the action:

Result Status Action
PASS EXIT CODE 0 System is healthy. No action required.
WARN EXIT CODE 1 Review the warnings; most resolve on their own (e.g., transient RabbitMQ startup lag).
FAIL EXIT CODE 2 One or more critical checks failed — investigate and re-mediate.

Reports

You can find the pre-upgrade reports here:

  • Linux: /tmp/rmt-precheck-<timestamp>.txt

  • Windows (Manual): C:\temp\rmt-precheck-<component>-<timestamp>.txt

You can find the post-upgrade reports here:

  • Linux: <log-dir>/rmt-postcheck-report.txt

  • Windows (Manual): C:\temp\rmt-postcheck-<component>-<timestamp>.txt

  • Windows (via Installer): When the installer runs the check, it uses fixed file names:

    • C:\temp\rmt-postcheck-master-report.txt

    • C:\temp\rmt-postcheck-agent-report.txt

    For information about pre-upgrade and post-upgrade checks in the report, see the Upgrade Reference section.

Sample report

Following is a sample pre-upgrade health check report:

==================================================================
RMT Pre-Upgrade Health Check Report
Script Version : 1.0.0
Generated : 2026-04-08 14:30:00
Component : master
Hostname : rmt-master-01.example.com
RMT Version : 2025.1.9
==================================================================
OVERALL STATUS : UPGRADE WITH CAUTION (2 warning(s) -- review before proceeding)
PASS: 44 FAIL: 0 WARN: 2 INFO: 10 SKIP: 3
==================================================================
WARNINGS -- Review Before Upgrading
==================================================================
[WARN] #21d Hangfire schema is 1.2 GB
Check 21g for delete_hash() volatility bug
[WARN] #24 1 queue(s) with >10000 messages (max: 15234)
Resolve backlogs before upgrading

 

 

 

 

Thanks for your feedback!Your feedback has been successfully submitted. Thank you!