Smarts NCM: How to read and understand the installation logs
search cancel

Smarts NCM: How to read and understand the installation logs

book

Article ID: 330958

calendar_today

Updated On:

Products

VMware Smart Assurance

Environment

VMware Smart Assurance - NCM

Resolution

To be able to read and understand installation logs



Installation logs in detail 

The installation logs are generated once the installer exits cleanly. If you break out of an installer by killing the process or pressing ctrl-break, it will not generate any logs. 

The <component>_install.log file contains a chronological list of events. If you encounter an install error, the best thing is to search this log for "ERROR". This is a good starting point. If you see errors concerning "Wine", ignore these as wine errors are not fatal. Typically, you will need more information then what is provided in the <component>_install.log log. 

The <component>_debug.log file contains an alphabetic list of variables stored in memory while the installer is running. All output within the installer is stored in variables, like APPSERVER_PRE_OUT, which is the application server's module pre-install standard output. The standard error output is stored in APPSERVER_PRE_ERR, and the exit code is stored in APPSERVER_PRE_EXIT for example. It's important to keep in mind that the debug log is not in chronological order. 

The best way to find errors in the debug log is to search for lines containing EXIT=(not zero), meaning that you are looking for the exit codes for the modules which are not zero (success). This is easy to do in Vi or Vim by searching for "EXIT=[^0]". It's also important to note the order that the modules get installed, since an earlier error can cause later errors. The first error is typically the one to go after. The order of the modules is: 

COMMON, CORE, DASLLANG, DATABASE, APPSERVER, SYSADMIN 



For each of those, you will have a _PRE (pre-install) and _POST (post-install) section. For each of those, you will have _OUT (stdout), _ERR (stderr), and _EXIT (exit code). The general flow for each module is:
  1. Run pre-install script
  2. Lay down files
  3. Set file permissions
  4. Run post-install script
Each module has its own perl script which handles the pre, post, preun, and postun operations. Those scripts are located in [Product Directory]/conf/setup. The script name corresponds to the module name (ex: AppServer.pl). 

Once you determine the module that threw the error, you can look through the stdout and stderr portions to determine the failure point in the module perl script. 
The upgrade logs are the same as the install logs.