Directory server data collection with SDS_support.sh

The SDS_support.sh script simplifies the collection of diagnostic data for IBM Security Directory Server. Use this script when working with IBM Support on problem determination for Directory Server issues.

Collecting the information to determine a problem, while troubleshooting Directory Server issues, can be a time-consuming process.To simplify and streamline data collection on UNIX and Linux systems, the SDS_support.sh script gathers the information commonly needed for diagnostics and support investigations, helping reduce the effort required to collect troubleshooting data.

Prerequisites

Ensure to run the script as the root user or as the LDAP instance owner. When run as the LDAP instance user, certain restricted data might not be collected.
Usage: ./SDS_support.sh [-h][-I <instance_name>|-a][-D <admin>][-w <passwd>][-r][-m][-db][-dbsnap]
                              [-d <alt_directory>][-K <kdbfile>][-P <passwd>][-nl][-v]
The script is located in /opt/ibmdir/ldap/V11.0.1/support - where, the value of the ibmdir variable is IBM on AIX systems, and ibm on Linux systems. For more information and new script updates, see SDS_support.sh .

Options

This script gathers information and data for troubleshooting LDAP server-related issues while the IBM Verify Directory Server runs.
Option Description
-a Collects information and data for all LDAP instances on the system. Overrides the -I option.
-d <alt_directory> Specifies an alternate directory for data collection. Default is /tmp.
-D <admin> Specifies the admin DN for the LDAP instance. Required when anonymous binds are disabled or when LDAP queries require an admin DN.
-db Collects additional DB2 database-specific configuration information.
-dbsnap Creates DB2 snap data for performance analysis. Extends script run time by 10 minutes.
-h Displays usage information.
-i Collects general Directory Server installation files from /var/idsldap.
-I <instance_name> Collects information and data for the specified LDAP instance only.
-K <file> Specifies the full path to the KDB file for the specified LDAP instance.
-m Runs the idsmonitor script one time. Not effective when used with the -a option.
-nl Excludes log files from data collection (no-logs mode).
-P <passwd> Specifies the KDB file password.
-r Collects additional replication-related information. Not effective when used with the -a option.
-v Displays script version information.
-w <passwd> Specifies the admin DN password.

Script output

While the script runs, status messages are displayed in standard output. When the script completes, it creates a compressed tar archive named SDS_Supportdata_<timestamp>.tar.gz. By default, this archive is saved to /tmp/SDS_support. You can specify an alternate parent directory using the -d option; the script creates the SDS_support subdirectory within that directory.

Upload the resulting archive to IBM Support for analysis.
Note: The -dbsnap option runs the DB2 snap process 10 times at 1-minute intervals by default. To change this behavior, set the DB2SNAP_INTERVAL and DB2SNAP_COUNT variables at the beginning of the script before running it.

Examples

Example 1: Collect data for a single LDAP instance
Collect general log and configuration data, along with system environment and version information, for the LDAP instance dsrdbm01:
./SDS_support.sh -I dsrdbm01
Example 2: Capture output to a file
To save the command-line output to a file while also displaying it in the terminal, run:
./SDS_support.sh -I dsrdbm01 2>&1 | tee SDS_support.out
Example 3: Collect data for all LDAP instances
Collect data for all LDAP instances on the system:
./SDS_support.sh -a
Example 4: Collect only installation log files
Collect only the Directory Server installation log files:
./SDS_support.sh -i
Example 5: Collect replication data and installation logs
Collect replication information for the LDAP instance dsrdbm02, along with Directory Server installation log files:
./SDS_support.sh -I dsrdbm02 -r -D cn=root -w secret -i
Note: If you omit -w <passwd>, the script prompts you for the admin DN password during execution.
Example 6: Collect data for an instance on a secure port with replication topology data
Collect general log and configuration data for the LDAP instance dsrdbm01, which is accessible only through the secure port, and include replication topology data:
./SDS_support.sh -I dsrdbm01 -r -D cn=root -w secret -K /home/dsrdbm01/client.kdb -P secret
Note: If you omit -P <passwd>, the script uses the stash file for client.kdb if one exists in the same directory, or prompts you for the KDB file password. The appropriate secure port number is determined automatically by the script.
Example 7: Exclude log files from data collection
If the LDAP instance logs directory contains a large number of log files that would unnecessarily increase the size of the output archive, exclude the log files from collection by using the -nl option. The support engineer can then request specific log files as needed for problem determination:
./SDS_support.sh -I dsrdbm01 -nl