BMC Smart Utilities (Communities supported)

Version 20
    Share This:

    BMC Smart Utilities

     

     

    Contents

     

     

    Introduction.

    Installation and configuration for the utility

     

    1.     Server group ranking chart

    2.     Live Server Group board information.

    3.     Share application properties report

    4.     Compare AR Configuration from all Servers in the server group & generate HTML.

    5.     Compare multiple AR Configuration files in a given location.

    6.     Generate AR Schema Names report

     

    Introduction

     

    This package is a collection of unsupported utilities that can help you save time and speed up troubleshooting efforts by quickly analyzing data and metadata on your servers and presenting useful information in an easy to read HTML format.

     

    Use Case:  For example, you have 20 servers in the sever group and some users are facing a delay in approval requests. To troubleshoot, you want to focus on the servers that owns the approval process based on ranking or fail-over basis and start investigation. You can run the Server Group ranking utility to find out the ranking information. But if the server ranked as 1 may be down and other server in the server group may own approval process. To find dynamic server group ranking info, you can execute “Live Server group board Information” utility that will show which server currently owns the Approval process. You can start troubleshooting from that server first and extend investigation to other servers.

    Download from the following location:

     

            Dropbox - SmartUtilities.zip - Simplify your life

     

    Extract the zip file and setup environment

     

     

    For installation of the utility, download the SmartUtility.zip and extract to a directory. This will extract the directory named “SmartUtility” that contains all the required files to run the utility. Here is the list of files and directories, and their use.

    1. ARConfigurationInAllServers.jar: Utility jar to compare configuration from all the servers in a server group and generate an html report.
    2. ARConfigurationInAllServersWithGivenCfgFiles.jar: Utility jar to compare configuration from all the servers in a server group, using the ar.cfg / ar.conf files of the servers and generate an html report.
    3. SchemaNames.jar: Utility jar to generate an html report on schema IDs and the respective schema names in an AR System Server.
    4. ServerGroupBoardInfo.jar: Utility jar to extract information from the servgrp_board table and generate an html report.
    5. ServerGroupRanking.jar: Utility jar to extract information from “AR System Server Group Operation Ranking” form and generate an html report.
    6. ShareApplicationProperties.jar: Utility jar to extract information from “SHARE:Application_Properties” and generate an html report.
    7. Script.bat: Scripts to run all utilities at once from a command prompt (Edit the script to update User name, password, server name and port).

    Report: This is the output directory for all html reports

    cfg: This is the directory where ARConfigurationInAllServers.jar utility generates AR System Server configuration files based on the configuration read from a Server.

    cfg5: This is the directory where you need to store ar.cfg / ar.conf files from all the Servers, which you want to compare. This is required for the ARConfigurationInAllServersWithGivenCfgFiles.jar utility.

    css: This directory contains style sheets required for generating html reports. Note: Do not touch these files.

     

    You can either run all the utilities at once using the scripts provided, or you can run each utility individually. For running all the utilities at once, you can use following scripts

    For Windows:

                SmartUtility.bat

    For Unix:

                SmartUtility.sh

    The scripts when run with the command line argument as “-?” or “-help”, or simply without any arguments, shows the usage. Explanation of the command line arguments is as follows:

     

    "Usage: SmartUtility.bat -e <executionDB> -s <arServerName> -p <arPort> -u <arUserName> -w <arPassword>"

    Where:

    executionDB: Valid values are SOURCE and DEST

    arServerName: Hostname or IP address of AR System Server

    arPort: AR System Server port

    arUserName: Admin user ID for AR System Server

    arPassword: Admin password for AR System Server

     

     

     

    1. Server group ranking chart

     

    This utility generates a Server Group ranking report in a well formatted tabular format to understand your environment and take additional steps to fix any discrepancies.

    To generate the report, execute the following command (Windows):

     

    To execute for Source database connection:

     

    java -jar -DexecutionDB=SOURCE -DreportLocation="Report\ServerGroupRank_Source.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -Ddebug="FALSE" -DarPort=<arPort> -DarServerName=<arServerName> ServerGroupRanking.jar

     

    To execute for Destination database connection:

     

    java -jar -DexecutionDB=DEST -DreportLocation="Report\ServerGroupRank_dest.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -Ddebug="FALSE" -DarPort=<arPort> -DarServerName=<arServerName> ServerGroupRanking.jar

     

    HTML Report is generated in “Report” directory. Sample Report as shown below:

     

     

     

    Not Defined: This means there is no entry in Server Group ranking form for the respective server and process.

    Not Ranked: This means there is an entry in Server Group Ranking form for the respective server and process but rank is set to empty or null

    2.    Live Server Group board information

     

    This Utility reads information from Server Group board table and would reflect live information of processes currently owned by respective servers.

    To generate the report, execute the following at command prompt (Windows).

     

    To execute for Source DB connection:

     

    java -jar -DexecutionDB=SOURCE -DreportLocation="Report\ServerGroupBoard_source.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -Ddebug="FALSE" -DarPort=<arPort> -DarServerName=<arServerName> -Ddebug="FALSE" ServerGroupBoardInfo.jar

     

    To execute for Destination DB connection:

     

    java -jar -DexecutionDB=DEST -DreportLocation="Report\ServerGroupBoard_dest.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -Ddebug="FALSE" -DarPort=<arPort> -DarServerName=<arServerName> -Ddebug="FALSE" ServerGroupBoardInfo.jar

     

     

    HTML Report is generated in “Report” directory. The report is generated as shown below:

     

     

    From the above report, CMDB and Business Rules Engine running on the server that is ranked 3. This means server ranked 1 and 2 might not be available or down for some reason. Once server 1 or server 2 come online then rank failover to other servers. If you run the report again then it would reflect the latest information.

    3.   Share application properties report

     

     

    This Utility read share application properties from the server and display the report in HTML format, will highlight color yellow that may need attention.

    To generate the report, execute the following at command prompt (Windows).

     

    To execute for Source database connection:

     

    java -jar -DexecutionDB=SOURCE -DreportLocation="Report\ShareAppProperties_source.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -DarPort=<arPort> -DarServerName=<arServerName> -Ddebug="FALSE" ShareApplicationProperties.jar

     

    To execute for Destination database connection:

     

    java -jar -DexecutionDB=DEST -DreportLocation="Report\ShareAppProperties_dest.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -DarPort=<arPort> -DarServerName=<arServerName> -Ddebug="FALSE" ShareApplicationProperties.jar

     

    HTML Report is generated in “Report” directory. The report is generated as shown below:

     

     

    The entries highlighted in color yellow may need attention.

     

     

    4.    Compare AR Configuration from all Servers in the server group & generate HTML

     

    This utility queries Server group board information stored in DB, and generates HTML report showing setting name, value for each server by reading values using API calls. The report highlights if there is any deviation of the configuration settings from BMC recommended values (stored in Configuration.xml).

     

    To execute the utility in standalone mode, run the following commands (Windows):

     

    To execute for Source database connection:

     

    java -jar -DexecutionDB=SOURCE -DreportLocation="Report\ARConfigreport_source.html" -DcfgLocation="cfg" -DcsvLocation="csv" -DxmlLocation="Configuration.xml" -Ddebug=%DEBUG% -DconnType="DB" -DarUserName=<arUserName> -DarPassword=<arPassword> -DarPort=<arPort> -DarServerName=<arServerName> ARConfigurationInAllServers.jar

     

    To execute for Destination database connection:

     

    java -jar -DexecutionDB=DEST -DreportLocation="Report\ARConfigreport_dest.html" -DcfgLocation="cfg" -DcsvLocation="csv" -DxmlLocation="Configuration.xml" -Ddebug=%DEBUG% -DconnType="DB" -DarUserName=<arUserName> -DarPassword=<arPassword> -DarPort=<arPort> -DarServerName=<arServerName> ARConfigurationInAllServers.jar

     

     

    Execution logic:

    Step1- While executing jar we select which Database to execute on; source or “DEST”(Destination).

    Step2- From dbinfo.xml it reads all the DB credentials. (Source or “DEST” (Destination).)

    Step-3 Recommended setting names and their values to be given in Configuration.xml.

    Step-4 It reads the serverName, serverPort from servgrp_board.

    Step-5 Connect to all servers one by one with servername and port query to the servers for all recommended setting values as well as fixed setting values compare and prepare report.

     

     

    HTML Report is generated in “Report” directory. The output is as shown in the screenshot:

     

     

    5.   Compare multiple AR Configuration files in a given location

     

    This utility helps with collecting and comparing data from multiple ar.cfg files and generate compare report in HTML format. This helps with analyzing the environment and compare the configuration of different servers in a server group to find out if there are any discrepancies.

     

    You can collect ar.cfg files from the servers and paste to \cfg folder before running the utility. There is no limit of files. You can compare 10 or 20 or 30 or even more at the same time.

     

    To execute the utility, run the following command (Windows):

     

    java -jar -DreportLocation="Report\ARconfigforgivenfile.html" -DcsvLocation="csv" -DcfgLocation="cfg5" -DarPort=<arPort> -DarServerName=<arServerName> ARConfigurationInAllServersWithGivenCfgFiles.jar

     

    HTML Report is generated in “Report” directory. The report is generated as shown below:

     

     

     

    6.   Generate Schema Names Report:

     

    This utility queries AR Schema information stored in DB, and generates HTML report showing Schema ID, Schema Name, Customization Type. This helps Support to quickly relate the schema IDs from the logs with form names. If this report is provided along with the API/SQL logs, one can easily identify the forms involved in the logs, based on the table names.

     

    To execute the utility run following commands (Windows):

     

    To execute for Source database connection:

     

    java -jar -DexecutionDB=SOURCE -DreportLocation="Report\SchemaNames_source.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -Ddebug="FALSE" -DarPort=<arPort> -DarServerName=<arServerName> SchemaNames.jar

     

    To execute for Destination database connection:

     

    java -jar -DexecutionDB=DEST -DreportLocation="Report\SchemaNames_dest.html" -DarUserName=<arUserName> -DarPassword=<arPassword> -Ddebug="FALSE" -DarPort=<arPort> -DarServerName=<arServerName> SchemaNames.jar

     

    HTML Report is generated in “Report” directory. The html report looks like the following: