Create a Support Package
This guide explains how to generate a support package for troubleshooting error scenarios.
This documentation applies to NGINX Instance Manager 2.0.0 and later.
Overview
Use the support package script to collect information about your system for troubleshooting and debugging issues.
The script collects system and service information and then packages the data into a tar archive, which you can share with NGINX Customer Support.
Usage
The NGINX Instance Manager installer copies the support-package.sh
script to the following location: /etc/nms/scripts/support-package.sh
.
To create a support package:
-
Run the support package script. The script requires root privileges to run.
sudo /etc/nms/scripts/support-package.sh
The support package is saved in the same location from where the script was run (if no
-t
argument is passed).(Optional) If you use a different NGINX Instance Manager config file than the default
/etc/nms/nms.conf
file, run the support package script with the-c
flag and specify the path to your config file:sudo /etc/nms/scripts/support-package.sh -c /your/config.conf
-
To extract the package, use the
tar
command:tar -xvf support-pkg-<timestamp>.tar.gz
Note:
The supported shell isbash
.
Arguments
The following table lists the arguments you can use with the support package script.
Short | Long | Description | Example | Default |
---|---|---|---|---|
-c |
--nms_config_path |
The path to the NGINX Instance Manager config file. | -c /etc/nms/nms.conf |
/etc/nms/nms.conf |
-h |
--help |
Prints information about the script arguments to stdout. | --help |
N/A |
-m |
--manager_log_path |
The directory where the NGINX Instance Manager log file is located. | -m /var/log/nms |
/var/log/nms |
-n |
--nginx_log_path |
The directory where the NGINX log files are located. | -n /var/log/nginx |
/var/log/nginx |
-o |
--ouput_dir |
The output directory where the tar archive is saved. | -o ~/output |
$(pwd) |
-t |
--target_host |
The NGINX Instance Manager address (host:port). | -t 127.0.0.1:443 |
127.0.0.1:443 |
Package Contents
The support package includes several directories containing information about the system, service, and database state.
nginx-logs
The access and error logs of the instances that NGINX Instance Manager monitors.
The access logs display the HTTP traffic for NGINX Instance Manager that’s routed by the NGINX instance. The error log contains NGINX errors that occurred during runtime.
nms-logs
The logs of the NGINX Instance Manager processes.
You can pipe the logs to grep
to view entries belonging to only one of the three nms
processes. For example, to view nms-core
logs, run the following command:
cat nms.log | grep 'COR'
The following table shows the nms
processes and pattern to grep
on:
Process name | Pattern |
---|---|
nms-core | ‘COR’ |
nms-dpm | ‘DPM’ |
nms-ingestion | ‘ING’ |
service-information
Information about the NGINX Instance Manager and NGINX services running on the host. For each nms
process and the nginx
instance, the script collects:
journalctl
(10000 most recent rows)systemctl status
system-information
The status and state information of the host running NGINX Instance Manager, including the following:
- System metrics (memory usage, CPU usage, etc.)
- File permissions of the NGINX Instance Manager
- Firewall or SELinux state
- Network interfaces
- Network information (hostname, iptables)
- Environment variables
- Disk usage of select directories
- Operating system version
- Installed NGINX Instance Manager version
- NGINX Instance Manager license
dqlite
The support package script uses the -c
flag ( or --nms_config_path
) to get the NGINX Instance Manager configuration. If the configuration file is specified, the script uses the default value /etc/nms/nms.conf
.
Note:
If the NGINX Instance Manager configuration file does not specify addresses for thecore
anddpm
databases, the default values are assumed:127.0.0.1:7891
and127.0.0.1:7890
.
The support package script uses a small Go executable file called dqlite_dump
(located in /etc/nms/scripts/
) to connect to the databases and generate data dumps.
The collected data is saved to the dqlite/core
and dqlite/dpm
directories.
timeseries
This folder contains status information, dumps, and statistics for the nms
ClickHouse database. In particular, for metrics and events.