Asset Viewer (AMS) hints and tricks.

Document ID : KB000025852
Last Modified Date : 14/02/2018
Show Technical Document Details

Summary

This article contains both troubleshooting steps as well as information on how to customize the Common Asset Viewer interface.

Environment

Common Asset Viewer for UAPM 11.3.4

Instructions

Customizing product header and footer

By default, AMS will display the standard CA product header and footer as depicted below in this screen shot:

Figure 1

The product header consists of the CA logo and the product name: Unicenter? Common Asset View. The product footer consists of the CA copyright notice at the bottom.

The product header may be modified by modifying the following files::

  • <TOMCAT>/webapps/AMS/pages/product_header.jsp

  • <TOMCAT>/webapps/AMS/classes/resources/application.properties. This file stores localized messages used by the product header. The following messages pertain specifically to the product header:

    welcome.brand_name=Unicenter 
    welcome.product_name=Common Asset View 

The product footer may be modified by modifying the following files:

  • <TOMCAT>/webapps/AMS/pages/product_footer.jsp

  • <TOMCAT>/webapps/AMS/classes/resources/application.properties.

 

Troubleshooting AMS

Currently AMS gets installed via 3 different host applications, UAPM, USD and DSM.

It is not uncommon for a machine to have multiple copies of AMS running, each on a different port (relative to the host applications configuration).

The three default installation directories are;

USD (ServiceDesk) 
C:\Program Files\CA\Service Desk\bopcfg\www\CATALINA_BASE\webapps\AMS\webapps\AMS 
UAPM (Asset Portfolio Management) 
C:\Program Files\CA\SharedComponents\APM Common Services\AMS\webapps\AMS 
DSM 
C:\Program Files\CA\DSM\Web Console\webapps\AMS 

It is also not uncommon for each version of AMS to be different. The version is stored in a file called version.rel;

Example.

product_name=Unicenter AMS
version_number=11.x
build_number=1.63

The build number will increment with newer versions.

Each of the above host applications will deliver their own instance of AMS containing the same files, although the versions of the files will be different.

Maintenance is managed by the EZFIX Application and currently each testfix/published fix will contain a cumulative of all maintenance to date.

The EZFIX file will contain three JCL Files, one for each host application.
Extraction of T5D6029 (AMS Testfix).

To install on a USRD installation
T5D6029_USRD_WIN_R11_0.jcl

To install on a DSM installation
T5D6029_TNGAMO_WIN_R11_0.jcl

To install on a UAPM installation
T5D6029_ARGIS_WIN_R11.jcl

Capturing logs;

AMS uses a mechanism for logging from a 3 rd party logging product LOG4J. This is an application we distribute from the Apache Software Foundation. It is already included with the AMS installation.

By default the logging is set to capture only warning messages. Warning messages can be minimal and not really have much in detail for troubleshooting an AMS connection or database problem.

One of the first things we need to do is change the log level from WARN to DEBUG.

This is done by modifying the log4j.properties file which is found in the ams\web-inf\classes directory.

Remember if you are using USRD it will be;

C:\Program Files\CA\Service Desk\bopcfg\www\CATALINA_BASE\webapps\AMS\webapps\AMS\web-inf\classes

UAPM (Asset Portfolio Management)
C:\Program Files\CA\SharedComponents\APM Common Services\AMS\webapps\AMS\web-inf\classes

AND

DSM
C:\Program Files\CA\DSM\Web Console\webapps\AMS\web-inf\classes

Edit the file with any text editor and change the first uncommented line (comments are preceded with a # pound/hash symbol).

Example:

#---------------------------------------------------------------------- 
# $Id: log4j.properties,v 1.1.1.1 2006/02/16 20:48:22 johro03 Exp $ 
# Created: 03/12/04 
#---------------------------------------------------------------------- 
# This property indicates the logging level that AMS will use and where the 
# logs are output. The first value is the logging level. The possible values, 
# in order of priority, are: OFF, FATAL, ERROR, WARN, INFO, DEBUG or ALL.  If, 
# for instance, WARN is specified in the first value, then all logs that have 
# the category WARN, ERROR, or FATAL will be recorded. The next values are the 
# output of the logs. Possible values are stdout and stdjlog. Both values maybe 
# specified, as in: 
#                      log4j.rootCategory=INFO, stdout, stdjlog 
# If stdout is specified, then the recorded logs are printed in the Tomcat 
# console. If stdjlog is specified, then all recorded logs are sent to the file 
# that is specified in the 'log4j.appender.stdjlog.File' property. 
log4j.rootCategory=WARN, stdjlog   <- Line to Modify 

The above line is the first uncommented line. You will change the word WARN to DEBUG.

log4j.rootCategory=WARN, stdjlog
to
log4j.rootCategory=DEBUG, stdjlog

Save the file and recycle the tomcat service (or reboot).

For USRD

The tomcat service can be restarted by entering the following from a command prompt;

STOP TOMCAT
C:\> pdm_tomcat_nxd -c stop

START TOMCAT
C:\> pdm_tomcat_nxd -c start

For UAPM

Launch the Services panel from Windows (usually found in Start ? Administrative Tools ? Services) or select Start ? Run ? services.msc

Recycle the UAPM Tomcat Service

For DSM

The tomcat service can be restarted by entering the following from a command prompt;

STOP TOMCAT
C:\> caf stop tomcat

START TOMCAT
C:\> caf start tomcat

This will now enable the new configuration for logging.

The recommendation would be to reproduce the problem and the failure will be logged.

LOG FILES

The log files are contained in the following folder;

If you are using USRD it will be;
C:\Program Files\CA\Service Desk\bopcfg\www\CATALINA_BASE\webapps\AMS\webapps\AMS\log

UAPM (Asset Portfolio Management)
C:\Program Files\CA\SharedComponents\APM Common Services\AMS\webapps\AMS\log

AND

DSM
C:\Program Files\CA\DSM\Web Console\webapps\AMS\log

Common Error Messages

*** URL with no SQL JDBC ***

This error messages usually indicates that it can't locate the SQL JDBC driver. Currently this driver is not distributed by CA and requires the customer to download the driver.

These drivers can be found on Microsoft's web site. A search " SQL SERVER 2000 JDBC " or " SQL SERVER 2005 JDBC " will usually bring the driver's host page for download.

A quick way to resolve the problem is to copy the driver(s) to the \webapps\AMS\WEB-INF\LIB folder.

SQL Server 2005
sqljdbc.jar

SQL Server 2000
msbase.jar
mssqlserver.jar
msutil.jar

Once the drivers have been copied please recycle the Tomcat service (see recycling the Tomcat Service section in logging)

    Error:  com.microsoft.sqlserver.jdbc.SQLServerDriver

This problem is most likely due to one of two problems. Either SQL Server does not have TCP/IP connections enabled or we might be in an environment with multiple MDBs (enterprise and domain).

When AMS is launched from its host application it makes several queries to database connections. One of the fist things it does is to see if there are multiple databases to connect to. It checks the ca_n_tier table. This is a DSM created table which will provide the connection information and UUID for the domain and enterprise MDBs. Because AMS only provides details in the AMS.PROPERTIES file (server name, username, password, instance, etc) for the initial MDB the Asset Viewer needs to get the latest details from the ca_n_tier table. The details in this table should be correct and contain the server host, port number if not default the instance (if not the default) and the correct password and usernames.

More problems are found where the customer moved their MDB from a default port/instance combination and did not update this table.

Error:  Cannot open database "mdb" requested by the login. The login failed.

The database login/password is incorrect in the AMS.PROPERTIES file.

UAPM or ServiceDesk link is not going to the correct server.

If you are viewing AMS and clicking either the Launch Unicenter Asset Portfolio Management or Launch Service Desk and it is failing check one of two places for the problem.

By default AMS.PROPERTIES does not have values to connect to either one of these servers by that link. If AMS determines multiple CA products which integrate with AMS are running on the same MDB (by viewing the ca_application_registration table) it will generate a link on the Asset Viewer screen to launch one of the hosting applications.

This data (URL to the host) can be found in two locations; First AMS checks the AMS.PROPERTIES file for

appreg.2003.product_specific_data=http://URL:8080/CAisd/pdmweb.exe
appreg.2003.product_name=Unicenter Service Desk

appreg.2002.product_specific_data=http://URL:80/APM/
appreg.2002.product_name=Unicenter Asset Portfolio Management

If the entries do not exist AMS will search for the applications URL in ca_application_registration. Once it gets the information it will write the contents to the AMS.PROPERTIES file for future use.

If you change the machine name or host URL, please make the appropriate changes to the AMS.PROPETIES file and the ca_application_registration.

Localization:

Currently AMS is localized in 8 different languages.

The translated strings are stored in files application_??.properties, where ?? is the language identifier for localization.

de - German
us - US English
fr - French
ja - Japanese
zh - Chinese
gb - English GB
es - Spanish
it - Italian
pt - Portugese

AMS uses the locale that is specified by the Java virtual machine that is installed on machine that is hosting AMS. By default, this is the operating system locale. All of the hard-coded text (i.e. text that does not represent data from the CA-MDB) is read from the file: <TOMCAT>/webapps/AMS/classes/resources/application.properties.

After installing the product how can I modify the AMS.PROPERTIES file?

You can of course manually edit the file in a text editor. However, if you want to change the password, your only option if using a text editor is to have the password as clear text.

If you would like to change the values and/or have the password encrypted use the syntax at the top of the AMS.PROPERTIES file as a template.

Here is an example;

C :\Program Files\CA\SharedComponents\APM Common Services\AMS\webapps\AMS> "C:\Program Files\CA\SharedComponents\JRE\1.4.2_13\bin\java" -classpath WEB-INF/lib/sqljdbc.jar;WEB-INF/lib/log4j-1.2.8.jar;WEB-INF/classes;WEB-INF/com/ca/unicenter/uams/config com.ca.unicenter.uams.config.AMSConfig host=uni6505l2167.ipv6.ca.com dbtype=sql2005 port=1433 databaseName=mdb loginid=ca_itrm password=NOT_changedR11

Database Connections

The properties of the database connection that AMS used to retrieve data is stored in the file: <TOMCAT>/webapps/AMS/WEB-INF/classes /AMS.properties. During the AMS installation, this file will be configured to use the CA-MDB database that was selected. Unless the database properties (e.g. authentication, host name, engine) of the CA-MDB is modified after the AMS installation, the AMS will not require modifications to the AMS.properties file. If the CA-MDB database properties are changed after the AMS is installed, then this file may need to be modified depending of the database property that is changed. For example, if the password used to connect to the CA-MDB is modified, then this file must be modified. Tomcat should be restarted after any modification to the AM.properties file.

Below is a list of properties in the AMS.properties file.

db.maxConnPoolSize

Default property value: 5

Explanation: To improve performace, AMS will pool database connections. this property specifies how many database connection AMS will pool.

db.idleConnTimeOut

Default property value: 60

Explanation: When AMS issues a request to the database, it will timeout after a number of seconds if it does not receive a response. This proerty specifies the number of seconds that AMS will wait for a response from the database after issuing a request.

dbtype

Explanation: This property indicates which set of database-engine specific properties AMS will use. For example, if dbtype=ingres, then AMS will use the properties that start with "ingres." to determine how to connect to the database via the Ingres JDBC driver. Other possible values are "sqlserver" (to connect to the CA-MDB on a Microsoft SQL Server instance via the SQL Server JDBC driver) and "sqlserver_odbc" (to connect to the CA-MDB on a Microsoft SQL Server 2000 instance via the SQL Server JDBC-ODBC bridge driver).

ingres.loginid

Explanation: The user ID on the target DBMS server machine. This user should have explicit SELECT grants on the following tables used by AMS or should be in a group that has explicit grants on these tables:

  arg_action 
  arg_actiondf 
  arg_actionlk 
  arg_assetver 
  arg_costdet 
  arg_drpdnlst 
  arg_itemver 
  arg_legaldef 
  arg_legaldoc 
  arg_legasset 
  arg_linkdef 
  arg_paydet 
  arg_strlst 
  ca_application_registration 
  ca_asset 
  ca_asset_source 
  ca_asset_type 
  ca_capacity_unit
  ca_company 
  ca_contact 
  ca_discovered_hardware 
  ca_discovered_hardware_ext 
  ca_discovered_software 
  ca_logical_asset 
  ca_model_def 
  ca_organization 
  ca_owned_resource 
  ca_resource_class 
  ca_resource_cost_center 
  ca_resource_family 
  ca_resource_gl_code 
  ca_resource_operating_system 
  ca_resource_status 
  ca_software_def 
  inv_generalinventory_item 
  inv_generalinventory_tree 
  inv_item_name_id 
  inv_tree_name_id 
  invgene 

ingres.password

Explanation: The user's operating system password

ingres.password.encryption

Default property value: 0

Explanation: This property indicates whether or not the property "ingres.password" is encrypted. If the value of the property is "1", then the property "ingres.password" is considered to be encrypted and it will be unencrypted before it is used to connect to the CA-MDB.

ingres.host

Explanation: The name of the Ingres virtual node that hosts the CA-MDB.

ingres.dbclass

Default property value: ca.ingres.jdbc.IngresDriver

Explanation: The name of the Ingres JDBC driver class in the AMS classpath.

ingres.databaseName

Explanation: The name of the database that the CA-MDB has been installed on.

ingres.ID

Explanation: The JDBC port code of the local Ingres Net client

ingres.dburl

Default property value: jdbc\:ingres\://

Explanation: The prefix of the URL that is used to connect to to the instance of Ingres that is hosting the CA-MDB.

sqlserver.loginid

Explanation: The ID used to connect to the CA-MDB on an instance of Microsoft SQL Server

sqlserver.password

Explanation: The password used with the property "sqlserver.loginid" to connect to the CA-MDB.

sqlserver.password.encryption

Default property value: 1

Explanation: This property indicates whether or not the property "ingres.password" is encrypted. If the value of the property is "1", then the property "sqlserver.password" is considered to be encrypted and it will be unencrypted before it is used to connect to the CA-MDB.

sqlserver.host

Explanation: The host name or network address of the machine that is running the SQL Server instance which is hosting the CA-MDB.

sqlserver.dbclass

Default property value: com.microsoft.jdbc.sqlserver.SQLServerDriver Explanation: The name of the SQL Server JDBC class in the AMS classpath.

sqlserver.databaseName

Explanation: The name of the database that the CA-MDB has been installed on.

sqlserver.port

Default property value: 1433

Explanation: The IP port number that the SQL Server instance is running on.

sqlserver.dburl

Default property value: jdbc\:microsoft\:sqlserver\://

Explanation: The prefix of the URL that is used to connect to to the instance of SQL Server that is hosting the CA-MDB.

sqlserver_odbc.loginid

Explanation: The ID used to connect to the CA-MDB on an instance of Microsoft SQL Server

sqlserver_odbc.password

Explanation: The password used with the property "sqlserver.loginid" to connect to the CA-MDB.

sqlserver_odbc.dataSourceName

Explanation: The name of the ODBC data source that connects to the CA-MDB

sqlserver_odbc.password.encryption

Default property value: 1

Explanation: This property indicates whether or not the property "ingres.password" is encrypted. If the value of the property is "1", then the property "sqlserver.password" is considered to be encrypted and it will be unencrypted before it is used to connect to the CA-MDB.

sqlserver_odbc.host

Explanation: The host name or network address of the machine that is running the SQL Server instance which is hosting the CA-MDB.

sqlserver_odbc.dbclass

Default property value: com.microsoft.jdbc.sqlserver.SQLServerDriver Explanation: The name of the SQL Server JDBC-ODBC bridge class in the AMS classpath.

sqlserver_odbc.databaseName

Explanation: The name of the database that the CA-MDB has been installed on.

sqlserver_odbc.dburl

Default property value: jdbc\:microsoft\:sqlserver\://

Explanation: The prefix of the URL that is used to connect to to the instance of SQL Server that is hosting the CA-MDB.