Running ETL using an NSH script


You can run ETL from the command line by using the run_etl.nsh script.

When you run the run_etl.nsh script, it executes the scenarios in the specified property file and runs them in the background. By default, run_etl.nsh executes scenarios for all report data groups in parallel sequence (using the default RunETL.properties file) if the database resources allow. However, you can execute scenarios for individual report data groups. The script is located in the shared/bdi/bin directory.

The run_etl command has a property file argument that enables you to run an individual scenario that corresponds to one of the report data groups. Using the property file argument, you specify a property file that includes the appropriate individual scenario and any parent scenarios that are required to properly execute that scenario. The property files enable you to customize your reports data warehouse updates.

If you limit the number of scenarios that can run in parallel, using the -p property file argument, and the script must execute more scenarios than the limit, it executes scenarios sequentially in groups based on the limit.

Note

BMC recommends that you always run the run_etl command with the default RunETL.properties file to update the reports data warehouse and reports with data for all report data groups. If you run the command with an individual scenario property file, the reports data warehouse and reports contain the latest data only for the report data group that corresponds to the property file. The reports data warehouse and reports for all other reports groups contain older data.

For descriptions of the scenarios, their execution dependencies, and property files, see Understanding-data-transfer-scenarios.

You can run the run_etl command on a schedule by using platform-specific OS scheduling or you can run it on demand from the command line.

Note

You can only run one ETL instance at a time from a TrueSight Server Automation - Data Warehouse installation. If you attempt to execute more than one instance of the run_etl command at the same time, the most recently executed instance returns an error.

You can set up schedules to run the run_etl command by using your operating system scheduler (refer to your operating system documentation). You can also schedule ETL runs for multiple sites. For more information, see Scheduling-ETL-for-multiple-sites.

To execute scenarios using run_etl.nsh from the command line

Start the Network Shell and enter the following command:

./run_etl.nsh -s <siteID> -b [-d <logLevel>] [-f <propertyFile>]

In this command, the following argument is mandatory:

  • <siteID> is the site ID. This must be a valid site ID from the BL_SITE table. You can obtain the site ID by using the TrueSight Server Automation - Data Warehouse console. For more information, see the Configuration> Database Details page.

The following arguments are optional:

  •  b stops the Database Maintenance utility on the TrueSight Server Automation Application Server. For information about using this option, see Handshake between ETL and TrueSight Server Automation database.

    Note

    To use the b option, the TrueSight Server Automation database user must be assigned the DBMS_LOCK permission.

  • <logLevel> indicates the log (or debug) level, which can be a value of 1 to 5, with 1 indicating the lowest logging level (minimal logging) and 5 indicating the highest logging level (detailed logging).
    If you do not specify a level, the default level 3 is used.
  • <propertyFile> indicates the property file to run (for a list of the property files representing specific scenarios for report data groups see Property-files).
    If you do not specify a property file, the default RunETL.properties file is used. This file includes all scenarios.

If you do not specify a value, the default setting of 0 is used.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*