Professional Documents
Culture Documents
Web Admin Calypso v14
Web Admin Calypso v14
Webadmin Guide
Document History
Revision date
15 August 2013
Edition
First edition
Comments
Release 14.0
Contents
Contents
Document History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
14.0.0 30 August 2013 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1
WebAdmin Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.2
Convention for Specifying WebAdmin Menu Items. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
Page 3
1.10.3
1.10.4
Contents
Database Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.1
3.2
3.3
Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.2
4.3
Environment Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Troubleshooting Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.1
Java Tuning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.2
5.3
Trade Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.4
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Contacting Calypso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Americas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Europe, Middle East, Africa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Asia Pacific . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Page 4
Tables
Tables
Table 1-1:
Table 1-2:
Table 1-3:
Table 1-4:
Table 1-5:
Table 1-6:
Table 1-7:
Table 1-8:
Table 1-9:
Table 1-10:
Table 1-11:
Table 1-12:
Table 1-13:
Table 1-14:
Table 1-15:
Table 1-16:
Table 1-17:
Table 1-18:
Table 1-19:
Table 1-20:
Table 1-21:
Table 1-22:
Table 1-23:
Table 2-1:
Table 2-2:
Table 2-3:
Table 2-4:
Table 2-5:
Table 2-6:
Table 4-1:
Page 5
Figures
Figures
Figure 1-1:
Figure 1-2:
Figure 1-3:
Figure 1-4:
Figure 1-5:
Figure 1-6:
Figure 1-7:
Figure 1-8:
Figure 1-9:
Figure 1-10:
Figure 1-11:
Figure 1-12:
Figure 1-13:
Figure 1-14:
Figure 1-15:
Figure 1-16:
Figure 1-17:
Figure 1-18:
Figure 1-19:
Figure 1-20:
Figure 3-1:
Figure 3-2:
Figure 4-1:
Figure 4-2:
Page 6
Changes
Changes
The Maintenance and Tuning Guide features Change Bars (see left margin) to draw attention to new and changed material in the guide.
Page 7
1.1
WebAdmin Overview
1.1.1
Introduction
The Calypso WebAdmin web application is displayed in a web browser and
is available for each deployed war file (dataserver.). By default, the Data
Server WebAdmin is available at http://localhost:8080/dataserver.
The port number for other WebAdmin pages is offset by 100 (default). For
example, the Engine Server is: http://localhost:8180/engineserver.
Port offsets are specified in:
$CALYPSO_HOME\tools\local-jboss-deployer\config\serverDeploymentConfig.properties
1.1.2
1.2
1.2.1
Note:
Page 8
1.2.2
Check the indicators described below and attempt to remedy the anomalies using the available tools.
In general, first diagnose the client application using the tools provided in
the client, to determine if the anomaly originates from the client. More
tools are available in the WebAdmin to diagnose client applications, in
particular with respect to database usage.
If the anomaly comes from a client application, you can stop that client
from the WebAdmin, if needed.
If the anomaly does not come from the client application, you should
then diagnose the servers and the engines using WebAdmin.
Diagnosing Applications
The tools for diagnosing applications allow detecting operational anomalies
in the following areas:
Client Performance
Memory
Risk Infrastructure
Database
Data Server Performance
1.2.2.1
Client Performance
Tips for maximizing the performance of client applications:
When loading trades, use trade filters with books specified as part of the
selection criteria. Trades are cached by book in the Data Server and
loading by book will cache the trades. This will result in much faster
retrieval if someone else has already loaded the trade, or the next time
you need the trade.
Main Entry > Processing > Task Station > Configure > Load Trades,
Load Messages, Load Transfers options Turn these options off
(unchecked) to load only tasks in the Task Station. To load a trade, a
message or a transfer, double-click a task, and the corresponding trade,
message, or transfer will be loaded individually.
Back Office Task Report > Tools > Load Trades/Load Messages/Load
Transfers options Same as above.
For custom applications:
Use the local caches BOCache and LocalCache for retrieving
static data, instead of accessing the Data Server directly.
Whenever possible, use bulk loading instead of loading items
one at a time.
Consider implementing your own externalization instead of using
Javas default serialization.
Refer to the Calypso Developers Guide for details.
Page 9
1.2.2.2
Memory Usage
You can check the memory using the following tools:
Check the Data Server memory See Information in Table 1-1, Web
Admin Server Menu Items, on page 14 for details.
Use the Watcher to monitor specific indicators and send emails when a
certain threshold is reached. Refer to the Watcher topic in Calypsos
Documentation Portal for details.
To free the memory, you can:
Call Garbage Collection multiple times Refer to Garbage Collection
(Main Entry > Utilities > Maintenance > Cache/Memory > Garbage
Collection) in the Documentation Portal.
Check and release unused database connections see Section
1.4.3.2, SQL Statements, on page 26 for details. Call Garbage Collection after this operation.
Clear the caches, and lower the cache limits See Section 1.3.2, Metrics > Caches, on page 17 for details.
Check SQL Statements for long and costly requests. You can then diagnose the source of the anomaly using SQL Monitoring (see Section
1.4.3.2, SQL Statements, on page 26). Based on the anomaly, you may
need to release the connection.
Allocate more memory to the application. The allocated memory for a
given application is specified at startup.
1.2.2.3
Risk Infrastructure
The Risk Server WebAdmin provides monitoring capabilities for the Calculation Server, Presentation Server, and Market Data Server.
Select a Server to view (listed in a drop down on either tab). Once you
have selected a server, the controls on the tab operate against that
server.
View the Log (click Show Log)
Clear the Log (click Restart Log)
Configure the Log (click Cfg Log)
View the name and count of objects in the cache (click Cache)
Perform Garbage Collection (click GC)
View the clients connected to the server
Refresh the Connected Clients list (click Clients Refresh)
Launch the Profiler application for the server (click Profiler)
View the list of tasks for the server
Refresh the Tasks list for the server (click Tasks Refresh)
Additionally, on the Calculation Server tab, you can choose to include the
cancelled/terminated tasks for a preceding length of time.
Page 10
1.2.2.4
Database Performance
Check SQL Statements to identify queries that take too long to execute. You
can monitor the SQL queries to diagnose the source of the anomaly using
WebAdmin > * >Profiler > SQL (see Section 1.4.3.2, SQL Statements, on
page 26 for details). It can indicate that an index is missing in the database
schema, that a query is improperly configured, or that you should archive
unused data from the database tables. If none of those conditions apply, it
can indicate a defective application, in which case you must kill the corresponding process.
1.2.2.5
Data Server properties may be set from the User Env and System Env windows. See
Section 9.2.7, Environment Properties, on page 58 in the Calypso Installation and
Upgrade Guide for details. You can view Calypso Environment Properties using
WebAdmin > * > Server > Environment Properties.
AUDIT_PRICER_CONFIG True or False. True to enable Pricer Config Audit. Setting this to False will result in no audit of Pricer Config modifications, and will speed up Pricer Config saving. Default is true.
COMPRESS_FLOWS_IN_MEMORY True or False. True to save
customized cashflows for Swap, Cap, Floor and Swaption in a compressed form in memory until they are used. Should be used in conjunction with SAVE_FLOWS_AS_BLOB. Default is true.
COMPRESS_RMI_PACKETS True of False. True to compress RMI
packets sent and received, or False otherwise. Default is False.
DS_EVENT_BUFFER_POOL_MAX_SIZE Maximum number of
events handled by a given PSConnection. When the maximum is
reached, another PSConnection is started. This number will vary from
installation to installation, and some adjustment will be necessary as the
system is deployed. The initial value should be 10,000.
This feature prevents the Data Server from blocking the Event Server.
Events are not published to the Event Server by waiting for a handshake.
Instead, a pool is set up to store the events, and a separate thread is
used to process the events.
Page 11
This feature is also available at the command line using the eventbuffersize <size> option.
Page 12
Event Server properties may be set in User Env and System Env. See Section 9.2.7,
Environment Properties, on page 58 in the Calypso Installation and Upgrade Guide for
details.
A number of engine parameters allow improving the performance of the
engines. Refer to the Engine Thread topic in the Documentation Portal.
The following setting will improve the performance of the task engine:
Kickoff/Cutoff Configuration It is important to carefully consider your
Scan Frequency setting and set this to match your business requirements. A too frequent scan frequency will have an adverse impact upon
performance. Kickoff/Cutoff Configuration is set in the Main Entry > Configuration > Workflow menu.
Page 13
Please use IDs greater than 150. If an Engine ID is later used by Calypso in a subsequent
release, simply ensure that all events have been processed, and then change that your
Engine ID to the next available Engine ID.
Note:
1.3
1.3.1
Server Menu
The menu items common to the Server menu of all WebAdmin instances are
described below.
Menu Items
Information
Description
Displays server information, such as, Current Server Time, Memory Statistics, Calypso System Settings, and the Active Data Servers list.
Server Information: Current Server Time The current date and time, including the
server Timezone setting.
Memory Statistics The Usage, Capacity, Initialized, Used, and Committed statistics for
Heap Memory and Non-Heap Memory. If the memory usage is too high, see Section
1.2.2.2, Memory Usage, on page 10 for information on freeing memory.
Calypso System Settings The current settings of Access Permissions and Authorizations. These setting are controlled via command-line arguments .
Active Data Servers The Name, Host Address, Start Date, and Read-Only (yes/no)
particulars of each Data Server that has connected to the current database.:
Page 14
Menu Items
Description
Environment Properties
System Properties
Page 15
Menu Items
Description
View JNDI
Messenger
Message Sent:
This server-based version of messenger provides the functionality of Main Entry > Help >
Instant Messenger. Refer to the Calypso Getting Started User Guide for details.
Page 16
1.3.2
1.3.2.1
Fields
Description
Cache Name
Hit Ratio
Percentage of cache requests that returned an object from the cache without having to access
the database.
Current Size
Max Size
The maximum number of objects held in cache since the last restart.
Client Limit
Client cache limit. Modify as applicable. A value of zero means that no limit is enforced on that
cache.
Note that this setting has an impact on the amount of memory that is allocated to the client
applications at startup.
Server Limit
Server cache limit. Modify as applicable. A value of zero means that no limit will be enforced on
that cache.
Note that this setting has an impact on the amount of memory that is allocated to the Data
Server at startup.
Page 17
1.3.2.2
Click
Page 18
1.3.2.3
1.3.3
Click
to download a version of the Request Profile log to Excel or to
another spreadsheet configured to view Excel spreadsheets.
Click
Page 19
1.3.4
Logs
The WebAdmin > * > Logs screen is available for servers. Using the logs
screen, you can configure Server logging levels, restart, view, or download
logs, and download logs and diagnostic information.
Figure 1-5: WebAdmin Common Logs
Page 20
Fields
Categories
Description
Begin typing to select a Category from the dropdown selector. Additional selected items
are automatically separated by a comma. The default is ALL. If left blank, click
to use
the default:
You can exclude certain log categories when the log category is set to ALL by prefixing a
category with as shown in the example below:
Log Levels
Debug
Info
Warn
Error
Controls
Click to begin using the specified logging categories and levels in this session of the Data
Server.
Click Restart Log to archive the current logs and begin a new logs.
Click to download the selected logs and a text file containing diagnostic information for
your Calypso implementation. The name of the zip-compressed file that contains the log(s)
and diagnostic information file is:
calypso-server-logs-YYYY-MM-DD-HH-MM-SS.zip
Click to download a text file with Calypso Diagnostic Information. The file contains:
DataServer Options
Engine Parameters
Event Configuration
Calypso Environment Properties
JVM/Java/JBoss System Properties
Page 21
1.4
1.4.1
Menu Items
Login Attempts
Description
Opens the Login Attempt window which allows the admin to view, delete or archiving login
attempts, as shown below.
Enter a From date and a To date. You can also enter an SQL where clause on the
user_login_att table. Then click Load.
Note that the user_login_hist table gets filled from the user_login_att table
(which records user login attempts) when user_login_att is purged.
You can disable auditing of login attempts for all users by setting the environment property
DISABLE_LOGIN_AUDIT to True.
You can disable auditing for a list of users by setting the environment property
ACCOUNT_LOGINS_NOT_AUDITED to a list of comma separated list of user names that will
not be audited (only applies if DISABLE_LOGIN_AUDIT is set to False).
Calypso Technology, Inc. All Right Reserved. Confidential Material.
Page 22
Menu Items
Description
Restricted Mode
When the Data Server is operating in Restricted Mode, this item gives access to the Allow
Login function, whereby an Admin can allow specified users to login.
This option can only be chosen if the Data Server is launched in Restricted Mode.
Allow Login
Only applies when the Data Server is started in restricted mode. See Section 10.3, Data
Server Arguments, on page 63 for details.
Opens the Allow Login window as shown below.
1.4.2
You can select all non admin groups, or a subset of non admin groups. The corresponding non admin users will be displayed. You can select all non admin users or a subset of
non admin users.
Page 23
1.4.2.1
Task Statistics
WebAdmin > Dataserver > Metrics > Tasks provides the Task Statistics for
the Data Server:
Figure 1-6: WebAdmin Data Server Metrics: Task Statistics
The screen displays one Task and its associated statistics per row.
1.4.2.2
Pending Events
WebAdmin > Dataserver > Metrics > Pending Events displays the Pending
Events screen:
Figure 1-7: WebAdmin Data Server Metrics: Pending Events
Page 24
1.4.2.3
Publish Statistics
WebAdmin > Dataserver > Metrics > Publishing Statistics displays the Event
Publishing Statistics screen:
Figure 1-8: WebAdmin Data Server Metrics: Event Publishing Statistics
1.4.3
1.4.3.1
Clients
You can view all connected client applications from WebAdmin > Dataserver
> Monitoring > Clients:
Figure 1-9: WebAdmin Data Server Monitoring: Connected Clients
Note:
Note that SQL monitoring consumes considerable resources and should only be used to
diagnose database issues.
The screen displays one connected client application per row. From this
screen you can:
Click
to disconnect any particular client by clicking the stop button on
its row.
Click
to disconnect all connected clients.
Page 25
1.4.3.2
SQL Statements
You can view and monitor database connections and statistics from
WebAdmin > Dataserver > Monitoring > SQL Statements:.
Figure 1-10: Data Server WebAdmin Monitoring SQL Statements
You can view the database connections for all Hosts and Connections, a
specific Host or Connection, or a combination of the two.
You can also set the KEEP_CONNECTION_STACK_TRACE=Y environment property to trace the database connections by defaults.
Only SQL statements that take an extended time appear in this panel. If
a given SQL statement takes too long and impacts the performance of
the system, it can indicate an index missing in the database schema, an
improperly configured query, or database tables that should be archived
to remove unused data.
It can also indicate a defective application, in which case you need to kill
the corresponding process: select the connection that initiated the
request from the Connections field and click Release Connection to stop
it.
Page 26
2. Click
to display all connection data for the selected Host/Connection combination:
Figure 1-12: Data Server Webadmin Monitoring SQL Statements: Full Connection Data
Other Actions
1.5
Click
tor.
Click
to break the connection specified in the Connection selecto clear currently displayed connections from the screen.
1.5.1
or
to stop or start an
Page 27
1.5.2
1.6
1.6.1
Page 28
Item Name
Description
Client Port
Server Start Time
Official
Host
Port
The port.
Analysis
Analysis Type
Params
Trade Filter
Pricing Env
Val Date
Application Name
Subscribe Time
Page 29
1.6.2
The Official checkbox indicate if the Calculation server is the primary Calculation Server or an ad hoc server.
Table 1-6: Risk Server WebAdmin Monitoring > Calculation Server
Item Name
Description
Client Port
Server Start Time
Official
Host
Port
The port.
Application Name
Uptime (minutes)
Subscribe Time
Page 30
Columns Names
Description
Service ID
Start Time
Uptime (mins)
The total time this analysis has been up and running in minutes
Data Table
The name of the database table to which the results of analysis run are persisted to.
Iteration
Analysis
Analysis Type
Params
Trade Filter
The name of the trade filter that this analysis is run against.
Pricing Env
Val Date
Trade Freq
MDI Freq
Current Run
Current Run
Status
Market Data
Update
Initial Run
Local/Grid Trade
Local/Grid MDI & MDI
Ready
Trade Count
Start Time
Run Type
Status
Trade Count
Start Time
Start Time
Duration(s)
Trade Count
Page 31
Table 1-7: RiskServer Webadmin Monitoring > Calculation Server: Services Table (Continued)
Columns Names
Next Run
Last Run
Trade Update
Queue Size
Start Time
Market Data
Update
Queue Size
Start Time
Market Data
Catchup
Queue Size
Trade Update
Start Time
Duration(s)
Trade Count
Start Time
The time at which the last market data update took place.
Duration(s)
Trade Count
Start Time
Duration(s)
Trade Count
Market Data
Update
Market Data
Catchup
1.7
Description
1.7.1
Enhanced Logging
Calypso contains enhanced logging capabilities using the ASF's1 log4j logging library. Application logging, as well as Calypso's own monitoring logging
is provided.
Logging provides a substantial portion of the information required for system
analysis. Calypso's enhanced logging is very configurable and provides
many levels of detail for various functional categories. Enhanced logs are
stored in the same location as standard application logs.
Page 32
1.7.2
JMX Monitoring
Calypso supports the use of the Java Monitoring & Management Console
(JConsole). By default, JMX Monitoring is enabled for all applications.
Use the following command line to launch the pre-configured JConsole that
is included with JBoss. The invoking script file is pre-configured to attach to
the JBoss server:
$JBOSS_HOME/bin/jconsole
1. The Apache Software Foundation provides organizational, legal, and financial support
for a broad range of open source software projects. The Foundation provides an
established framework for intellectual property and financial contributions that simultaneously limits contributors potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprise-grade, freely
available software products that attract large communities of users.
http://www.apache.org/
Calypso Technology, Inc. All Right Reserved. Confidential Material.
Page 33
1.7.2.1
Using JConsole
Operation and analysis data from JConsole is beyond the scope of this document. Please refer to JConsole -> Help > Online Help to view JConsoles
documentation (maintained by Oracle) or visit:
http://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html.
Page 34
1.7.2.2
Page 35
The following images are example of the Monitoring window displaying information pertaining to the Calypso Task Engine:
Table 1-8: JConsole Overview Tab
Page 36
Page 37
Page 38
1.7.2.3
Metric Name
Description
Metric Name
Description
Cache Metrics
The following are exposed for each Cache within the Data Server:
List of Users logged on for the Corresponding Tenant that this DataServer
belongs to (Multi-Tenancy implementations), or simply a list of Users currently
logged on to the Data Server (traditional Calypso implementation).
Page 39
Exposed by Engines
Metric Name
Description
Engine Mode
Real-Time Indicates that events are being received via the bus.
Batched Load Indicates that the engine has switched to batch mode and
is currently loading missed events.
Batched Processing Indicates that the engine has switched to batch mode
and is catching up on event processing.
Thread Count
The count of events that the engine was not able to read/process.
The difference between the Unconsumed Events Count and Bad Events Count. If
this number is positive and not decreasing, the engine is not consuming events.
The number of times that events are loaded from the Database.
Start Time
MaxEventsInBatch
The maximum number of Events to fetch from the Database in a single request
when the engine is in batch mode.
MaxEventsInQueue
The maximum number queued Events held the engine before the engine
switches to batch mode.
OldestUnConsumedEventTimeStamp
1.7.2.4
-Dcom.calypso.management.jmxenabled=false
1.7.3
Page 40
1.7.3.1
LOG_MAXFILESIZE=nnn
The size of the file in bytes (10000000 is 10MB) before it is backed up/
rolled. Sizes below 10MB are not supported.`
LOG_MAXBACKUPINDEX=n
1.7.3.2
Note:
Command-line arguments override log settings in User Env and System Env.
To access the Log Properties Window, select Main Entry -> Utilities ->
Maintenance -> Configure Log:
Figure 1-19: Log Properties Dialog
Alternatively, open the Admin Monitor Window to the Apps tab, where you
can also modify Log Properties:
The Logging Levels are selected using the checkboxes (highlighted).
Whether you modify the Log Properties from the Admin Monitor Window or
from the Log Properties window, the process is identical.
1. Select the desired Log Levels.
Page 41
3. Select the desired Categories and shift them to the right-hand pane to
use or shift them back to the left hand pane to ignore.
4. Click OK to retain selected Categories, or click Cancel to abandon any
changes.
1.7.4
S.No
1.7.4.1
Information
Description
LOGLEVEL
DEBUG/INFO/WARN/ERROR/SYSTEM/FATAL
DATE
LOG CATEGORY
Logging category
THREAD
Executing Thread
HOST
CLIENT DESCRIPTION
MESSAGE
Page 42
For example, the rel100000 UserEnv application logs have the following filenames:
UserEnv_myenv_CLIENTREQUEST_100000.log
UserEnv_myenv_WORKFLOW_100000.log
UserEnv_myenv_TASKSTATION_100000.log
UserEnv_myenv_SQL_100000.log
UserEnv_myenv_SERVEREVENTS_100000.log
UserEnv_myenv_REQUEST_100000.log
UserEnv_myenv_ENGINE_100000.log
Once the specific logging category is enabled, the corresponding log files
can be found in the same location as the standard application logs. Note that
a specific application may might not have functions for any particular category and therefore that log would be empty.
1.7.5
Application Logs
1.7.5.1
Event Log
Event logs contain details on all events passing through the system. Each
event is a single entry having the following information:
S.No
Information
Description
EVENT ID
Event ID
EVENT DESC
Event Description
1.7.5.2
Request Logs
Request Logs can be toggled at runtime. When enabled, a single line for
each request is logged.
Page 43
S.No
Information
Description
REQUEST TIME
RESPONSE TIME
TOTAL MEMORY
WF TIME
REQUES TEVENTS
10
11
CLIENT HOST
12
CLIENT DESCRIPTION
13
REQUEST ID
14
SERVICE NAME
15
METHOD NAME
S.No
Information
Description
REQUEST TIME
RESPONSE TIME
Page 44
S.No
Information
Description
TOTAL MEMORY
METHOD NAME
1.7.5.3
SQL Log
The SQL Log records all SQL activity and may be controlled at anytime. This
log is controlled by a toggle and threshold on execute time. All values above
the execute threshold are logged. If the threshold is set to 0, all SQL statements are logged.
S.No
Information
Description
S.No
Information
Description
STARTTIME
EXECUTETIME
LOG CATEGORY
The time when the result set next was called before the
log statement(close of the resultset)
CLIENT HOST
CLIENT DESCRIPTION
REQUESTID
Unique request id(Unique for the time the servers session) that is generated for this request
SQL STATEMENT
Page 45
1.7.5.4
S.No
Information
Description
STARTTIME
RULEEXECUTIONTIME
WORKFLOWNAME
WORKFLOWRULECLASSNAME
WORKFLOWCLASSNAME
WORKFLOWID
Work Flow Id
LOGCATEGORY
1.7.5.5
Engine Log
The Engine Log provide event timing details for the engines.
Information
Description
STARTTIME
EXECUTIONTIME
EVENTID
EVENT DESCRIPTION
LOG CATEGORY
Page 46
1.7.6
S.No
Information
Description
Monitoring.TaskStation.Tab
1
START TIME
DURATION
ALLTRADETASKSIZE
ALLTRADETASKSIZE-PREVIOUSALLTRADETASKSIZE
ALLPAYMENTTASKSIZE
ALLPAYMENTTASKSIZE-PREVIOUSALLPAYMENTTASKSIZE
ALLMESSAGETASKSIZE
ALLMESSAGETASKSIZE-PREIOUSALLMESSAGETASKSIZE
ALLEXCEPTIONTASKSIZE
ALLEXCETIONTASKSIZE-PREVIOUSALLEXCEPTIONTASKSIZE
TABITEMNAME/TABEITEMEVENTCLASS
TABITEMTASKSIZE - PREVIOUSTABITEMTASKSIZE
ACCEPTED
TASK DESCRIPTION
Monitoring.TaskStation.Show
START TIME
DURATION
ALLTRADETASKSIZE
ALLPAYMENTTASKSIZE
ALLMESSAGETASKSIZE
ALLEXCEPTIONTASKSIZE
TABITEMNAME/TABEITEMEVENTCLASS
Monitoring.TaskStation.Event
START TIME
DURATION
CURRENTEVENTCOUNT
PENDINGEVENTCOUNT
EVENTID
EVENT DESCRIPTION
Calypso Technology, Inc. All Right Reserved. Confidential Material.
Page 47
S.No
Information
Description
Monitoring.TaskStation.Load.Task/Monitoring.TaskStation.Load.Trade
Monitoring.TaskStation.Load.Transfer/Monitoring.TaskStation.Load.Message
START TIME
DURATION
SIZE
Monitoring.TaskStation.Load
START TIME
DURATION
TASK ENDTIME-TASK STARTTIME
ALLTASKSSIZE
TRADE ENDTIME TRADE STARTTIME
ALL TRADE SIZE
TRASFER ENDTIME TRANSFER STARTTIME
ALL TRANSFER SIZE
MESSAGE ENDTIME MESSAGE STARTTIME
ALL MESSAGE SIZE
1.7.7
1.8
Page 48
1.9
Presentation Server
PresentationServer_ENV_NAME_EXECUTION_VERSION.log
Pricing Analysis
CompositeAnalysis
PricingAnalysis
Simulation
SimulationAnalysis
1.9.1
Logging
1.9.1.1
Calculation Server
Calculation Server Monitoring Logs have names in the form:
CalculationServer_ENV_NAME_EXECUTION_VERSION.log
calculators.
Calypso Technology, Inc. All Right Reserved. Confidential Material.
Page 49
Example
1281051325562|54313|INITIAL_RUN_COLD_START|2|-1|
-1|1|2|4407|0|156|5797|25110|16|141|1000|calc-server-1 1 1281051325421|Composite/
2601/default/pricing1/calc-server-1/null/1/-1/-1|[calypso_user/hninaunglt:1349/
PresentationServer]|8046256|6550944|29798400|Initialization Done
1.9.1.2
Other Logs
Main Entry
Calypso Workstation
1.9.1.3
Analysis-Specific Logs
Page 50
1.9.2
PROBLEM
The Middle Tier creates tables and views on the fly when attempting to save
analysis results. The table name is usually cs_xxx. When attempting to create a new table, a table or view having the same name exists and was not
cleaned up (i.e., deleted) during a prior run.
SOLUTION
The following solutions are listed in the order of their suitability. Note that
option three is offered as a last resort and should be used with extreme caution as changing table seeds may have have unforeseen consequences.
1. Drop and recreate your new Middle-Tier database and run executesql
again.
2. Clean up your Middle-Tier database. Delete all tables and views that are
cs_xxx or delete_xxx.
3. Run the following sql against the middle tier db:
update middletier_seed set last_id=yyyy where seed_name='TableSeed';"
yyyy must be a number that is greater than any table number in the
Middle Tier. For example, if your middle-tier database has a table named
cs_5000_xxxx, then, set yyyy=5001.
PREVENTION
Always manually unload an analyses before shutting down the Middle Tier.
PROBLEM
analyses-persistence.properties is required to launch the Middle Tier.
The file is not in your classpath and cannot be located.
SOLUTION
1. Place analyses-persistence.properties in
$CALYPSO_HOME/resources.
2. Ensure that $CALYPSO_HOME/resources is in the classpath before
launching the Calculation Server and Presentation Server.
Page 51
PREVENTION
Ensure that $CALYPSO_HOME/resources is in your classpath and that
analyses-persistence.properties is present.
PROBLEM
The Middle Tier requires its own dedicated database. This database cannot
be the same as the Core Calypso database. There are two possibel causes
for this error:
1. The Middle-Tier Database settings in your
calypso*.properties.ENV_name file are pointing to your Core Calypso
database.
2. When running ExecuteSQL on the Middle-Tier database,
SchemaBase.xml was used, rather than the required
MiddleTierSchemaBase.xml.
SOLUTION
1. Verifiy that the Middle-Tier Database settings in
calypsouser.properties.ENV_name and calypsosystem.properties.ENV_name (if it exists) match the parameters for your Middle-Tier
database.
2. Drop all tables in the Middle-Tier database, then run ExecuteSQL using
the -MiddleTier argument.
PREVENTION
For the MIddle-Tier Database, ensure that ExecuteSQL is run with the
-MiddleTier argument
Ensure that the Middle-Tier Database settings are correctly pointing to your
MIddle-Tier database.
Page 52
at com.calypso.tk.risk.analysis.AOBatchedPersistor.<init>(AOBatchedPersistor.java:66)
at com.calypso.tk.risk.AnalysisOutputPersistorFactory.getPersistor(
AnalysisOutputPersistorFactory.java:204)
at com.calypso.tk.risk.AnalysisOutputPersistorFactory.getPersistorInterface
(AnalysisOutputPersistorFactory.java:169)
at com.calypso.tk.risk.AnalysisOutputPersistorFactory.getPersistor
(AnalysisOutputPersistorFactory.java:67)
at com.calypso.tk.risk.DefaultAnalysisOutputTempDAL.initializeDataStore
(DefaultAnalysisOutputTempDAL.java:241)
at com.calypso.tk.risk.service.RiskOnDemandServiceWorkerImpl
$RiskOnDemandServiceWorkerCallBack.incrementalJobCompleted
(RiskOnDemandServiceWorkerImpl.java:1746)
at com.calypso.tk.distproc.AnalysisDispatcher.incrementalProcessJobOutput
(AnalysisDispatcher.java:445)
at com.calypso.tk.distproc.AnalysisDispatcher.taskFinished
(AnalysisDispatcher.java:394)
at com.calypso.tk.distproc.ScenarioAnalysisDispatcher.taskFinished
(ScenarioAnalysisDispatcher.java:1205)
at com.calypso.tk.distproc.DistAnalysis.jobFinished(DistAnalysis.java:463)
PROBLEM
There are three probably causes:
1. The $CALYPSO_HOME/resources directory is not in your classpath.
2. analyses-persistence.properties is not in $CALYPSO_HOME/resources
resources directory
3. Your copy of analyses-persistence.properties is outdated.
SOLUTION
1. Ensure that $CALYPSO_HOME/resources directory is in the classpath.
2. Ensure that $CALYPSO_HOME/resources is in the classpath before
launching the Calculation Server and Presentation Server.
3. Ensure that
$CALYPSO_HOME/resources/analyses-persistence.properties
is the version delivered with your release and not one copied from a previous release..
PREVENTION
Ensure that the $CALYPSO_HOME/resources directory is in the classpath
and that analyses-persistence.properties is present and current.
Page 53
PROBLEM
You have either specified the wrong calculation-server or presentationserver name, or one that does not exist.
SOLUTION
1. Specify the correct Calculation Server or Presentation Server name.
a. Verify the Calculation Server name:
Main Entry -> System -> Calculation Server ...
b. Verify the Presentation Server name:
Main Entry -> System -> Presentation Server ...
c. Ensure that the configuration name you specify is correct and that
they exist.
PREVENTION
Correctly specify your Calculation Server and Presentation Server names.
PROBLEM
Risk Infrastructure cannot connect to your database. There are two probably
causes:
1. The Middle Tier Database properties in
calypso*.properties.ENV_name are incorrect. For example, the database password is incorrect, etc.
2. The RDBMS is not online.
SOLUTION
1. Ensure that the Middle Tier Database properties in
calypsouser.properties.ENV_name and
calypsosystem.properties.ENV_name (if it exists) are correct.
2. Ensure that the RDBMS is online. Either restart the RDBMS or, if it is
hosted on a shared server, ask the DBA.
Page 54
PREVENTION
Verify that the Middle-Tier Database properites in
calypso*.properties.ENV_name are correctly and that your database is
online.
PROBLEM
You have either specified the wrong calculation-server or presentationserver name, or one that does not exist.
SOLUTION
1. Specify the correct Calculation Server or Presentation Server name.
a. Verify the Calculation Server name:
Main Entry -> System -> Calculation Server ...
b. Verify the Presentation Server name:
Main Entry -> System -> Presentation Server ...
c. Ensure that the configuration name you specify is correct and that
they exist.
PREVENTION
Correctly specify your Calculation Server and Presentation Server names.
PROBLEM
Risk Infrastructure cannot connect to your database. There are two probably
causes:
Page 55
SOLUTION
1. Ensure that the Middle Tier Database properties in
calypsouser.properties.ENV_name and
calypsosystem.properties.ENV_name (if it exists) are correct.
2. Ensure that the RDBMS is online. Either restart the RDBMS or, if it is
hosted on a shared server, ask the DBA.
PREVENTION
Verify that the Middle-Tier Database properites in
calypso*.properties.ENV_name are correctly and that your database is
online.
1.10.1
-resource is the URL location of the text file where users list the events to
monitor. Events are listed one per line.
Once the Event Monitor is launched, the corresponding log files can be
found in the same location as the standard application logs
1.10.2
Where:
LogEvent The type of Event. E.g., PSEventAdmin, PSEventLog,
PSEventFXRateReset , etc.
${envname} and ${version} correspond to the Calypso environment and Calypso
Version.
Page 56
1.10.3
1.10.4
1202470718147|1202470718147|102036033|PSEventTrade|VERIFIED_TRADE|VERIFIED_TRADE 6804857
BondTSY 4 2016/0D/07/09/2016/4%
1202470718152|1202470718147|-2195|PSEventTask|EventTask|EventTask Task 155746444 eventType:
VERIFIED_TRADE tradeId: 6804857 book: 801337 status: NEW owner: null time: 08/02/08
11:38:37.640 o'clock GMT priority : NORMAL Object Status : VERIFIED
1202470718365|1202470718365|102036034|PSEventCre|NOM_CLEAN|NOM_CLEANId: 25307762 TradeId:
6804857
Page 57
Login Attempts
Purge the login attempts on a regular basis using WebAdmin > Dataserver >
Server > Login Attempts. Refer to Login Attempts in Table 1-4 for details.
You can also use the PURGE Scheduled Task to purge login attempts, see
below.
Consumed Events
Purge the consumed events on a regular basis using Main Entry > Utilities >
Maintenance > Monitoring > Clean-up > Purge Consumed Events. Refer to
Clean-up in the Documentation Portal for details.
You can also use the PURGE Scheduled Task to purge consumed events,
see below.
Page 58
Page 59
Page 60
Report Name
AccountEnrichmentReport
AuditReport
BOCashPositionReport
BOSecurityPositionReport
BOTradeTransferReport
GenericCommentReport
MessageReport
PostingReport
SalesMarginReport
SpotRiskHedgeReport
Page 61
Report Name
TradeAuditReport
TradeReport
TransferReport
Page 62
Archive completed Tasks of type Select the type of completed tasks you want to archive (Message, Transfer, Trade, or
Exception).
List of Task-related event types Enter a comma-separated
list of task event-types for the selected type of task.
Task event types are defined in the eventType domain.
Trade related event types have the form <trade_status>_TRADE,
where <trade_status> comes from the tradeStatus domain.
Transfer related event types have the form
<transfer_status>_SEC_DELIVERY,
<transfer_status>_SEC_RECEIPT,
<transfer_status>_PAYMENT and <transfer_status>_RECEIPT,
where <transfer_status> comes from the transferStatus domain.
Message related event types have the form
<message_status>_<message_type>, where <message_status>
comes from the messageStatus domain and <message_type>
comes from the messageType domain.
Exception related event types have the form
EX_<exception_type>, where exception type comes from the
exceptionType domain.
Archive Transfers with status Select the transfer status you
want to archive.
Archive Messages with status Select the message status
you want to archive.
Archive Postings with status Select the posting status you
want to archive.
Archive CREs with status Select the CRE status you want to
archive.
Archive PL Positions WHERE Enter an SQL where clause
on the pl_position table to select PL Positions that you want to
archive.
Archive Advice Documents Select true to archive advice
documents for a given SQL where clause. Enter the where
clause on the advice_document table in the WHERE attribute.
Archive Open Quantities Select true to archive open quantities.
WHERE clause for Advice Docs Enter a valid WHERE clause
to select advice documents from the advice_document table.
Archive Quotes Leave blank, or select true or false.
Source Name for Archive Quotes Enter the quote source
name for real-time quotes.
Oldest (Entered Date) For Quote Enter the number of entered
days back from the valuation date for starting the archive
(optional - specifies the oldest date to archive).
Page 63
Page 64
Page 65
Page 66
Database Utilities
Database Utilities
3.1
3.2
3.3
3.3.1
Holiday Code
The program expects to have a text file with the following format; the values
are separated by tabulation:
CODE
CENTER
COUNTRY
CURRENCY
TYPE
ISOCOUNTRY
DEFINE1 (can be null)
Page 67
Database Utilities
This file is used to create and save the HolidayCode Calypso object. Note
that any missing currency will be automatically created by the import program.
Figure 3-1: Import Holidays Codes Panel
3.3.2
Holiday Dates
The program expects to have a text file with the following format; the values
are separated by tabulation:
DATE / CODE
Value: g, w or a number
This file is used for 2 purposes:
Determine the first and second non business days necessary to create
the HolidayCode Calypso object. This is done when finding the w
value. Note that if a HolidayCode has no entry in this file, we apply the
default week-end which is Saturday and Sunday.
Create the Holiday dates when finding a number.
Page 68
4
4.1
4.2
Page 69
Menu Items
About...
Description
Displays the Calypso Data Server name; Access Permissions, Authorizations, and Workflow status; JVM information; and host system information.
Click
to view the More Info window. Tabs on More info list version
information for Calypso applications and the Classpath:
Search Documentation
Page 70
Release Notes
Instant Message
Data Model
Class Library
Link to the Calypso support web site where you can access the Javadoc
class library for the latest Calypso version.
Domain Values
Opens the Documentation Portal to the page listing Domain Values available throughout the system.
Shortcuts
Day-Count Conventions
Opens the Documentation Portal to the Date Roll conventions page. Date
Rolls are used throughout the system to roll dates that fall on business
dates.
Rounding Methods
Opens the Documentation Portal to the page describing all Pricer Measures.
Page 71
4.3
Environment Properties
All environment properties are described on the Environment Properties
page. Click Help from the User Env or System Env applications to launch the
Web Help and then select Environment Properties from the General
Resources panel:
Page 72
Troubleshooting Tips
Troubleshooting Tips
5.1
Java Tuning
The Java arguments allow users to better tune their implementation. Java
arguments are applied within the $CALYPSO_HOME/start*server.bat/sh file.
If you need to use a Java arguments for only one engine within the Engine
Server, you must create a Custom Engine Server to run that server and
apply the Java argument in that servers start file. See Custom Engines in
the Calypso Installation and Upgrade Guide for details on creating a Custom
Engine Server.
Maximum and
Minimum Heap Size
These options specify the maximum and minimum Heap Sizes, respectively.
Typically, both settings are identical as there is little reason to allow the
memory to grow and shrink.
However, it may be useful if the DataServer is being sized for a possible
large usage and is expected to generally operate far below this setting. The
option can use m or g to represent megabytes and gigabytes, respectively.
For example, Xmx1024m and Xmx1g, both represent a one gigabyte heap
size.
Young Generation
Increase or decrease the Young Generation settings based on the observation of Garbage Collection frequency. The young generation should not be
grown to larger than 800Mb (i.e., -XX:MaxNewSize=800m).
Other Recommended
Settings:
XX:TargetSurvivorRatio=90
The default TargetSurvivorRatio of 50 is too small for Calypso, which causes
the tenuring threshold to drop, thereby causing memory to be promoted to
the older generation faster than necessary, which in turn causes more Garbage Collection activity in the old generation. Such Garbage Collections on
tDXX:SurvivorRatio=2
This increases the size of the survivor spaces so that Calypso can hold more
data over young generation Garbage Collections. The aim is to have prevent
temporary memory used during RMI calls from being promoted into the old
generation.
XX:MaxTenuringThreshold=31
Although this is the default, we have found that with some versions of the
Sun JVM, not using this flag leaves the threshold unset, which results in all
young generation Garbage Collections promoting into the old generation.
XX:+UseConcMarkSweepGC
Any reasonable size heap should be using concurrent mark and sweep as
the collector. By reasonable sized heap, this would be greater than 1Gb.
When switching from the ParallelGC collector you should increase the mem-
Page 73
Troubleshooting Tips
ory by 30% to allow for the operation of the Concurrent Mark and Sweep. In
general the old generation usage should be kept below 68% of the total old
generation otherwise the concurrent mark and sweep starts more aggressive collection. This threshold can be modified by -XX:CMSInitiatingOccupancyFraction=<percentage>. Newer JVMs seem to have the value
calculated by the JVM, rather than having a set value.
XX:+UseParNewGC
Use a parallel collector on the young generation. With the concurrent mark
and sweep in later JVMs this is on by default. But setting it causes no harm.
XX:-CMSParallelRemarkEnabled
Using this optional flag will reduce the performance of the Garbage Collection. Use this flag to possible solve unexplained hotspot errors during Garbage Collection activities.
verbose:gc
Gererate Garbage Collection information in the standard output of the JVM,
not that of the application; this will not go in the application's log file. This is
very useful for examining the JVM from a memory perspective. Also, see
-XX:+PrintGCDetails, -XX:+PrintGCTimeStamps, and
-XX:+UsePerfData
XX:+PrintGCDetails
Adds more information to the basic verbose gc data.
XX:+PrintGCTimeStamps
Includes timestamp information for the Garbage Collection. This flag should
always be on when verbose:gc is on.
XX:-OmitStackTraceInFastThrow
By default, the JVM will not put stack traces into exceptions. When analysis
is necessary, use this option to display stack traces.
XX:+UsePerfData
This setting is not necessary, but should be invoked when using VisualGC
for monitoring.
Dsun.rmi.dgc.client.gcInterval=3600000
Dsun.rmi.dgc.server.gcInterval=3600000
These options determine how often the RMI stubs should be Garbage Collected. Effectively, they should never be Garbage Collected as they are
always used.
5.2
Page 74
5.3
Troubleshooting Tips
Trade Status
This applies to installations that use the Calypso automatic trade workflow.
When you save a trade, the Data Server should automatically advance the
Trade Status to the next lifecycle stage as specified by you in the Task Workflow Configuration. Typically, your Workflow Configuration will be set up to
advance a newly entered trade to PENDING or VERIFIED status. If a trade
does not get the correct status, then the problem could be:
The Workflow System in the Data Server is not activated. You can
check this in Main Entry or in the Data Server. In Main Entry, go to the
Help menu and choose About. If the Workflow is running, the Workflow
checkbox will be checked. If it is not, open the Data Server window or the
Admin Monitor Window and check the Workflow checkbox.
Your Workflow Config is not configured to automatically advance your
trades to the status you want (for example from PENDING to VERIFIED). Also, be aware that the administrator may have purposely configured the system for manual (rather than automatic) advancement of
trades. If the system is set up for manual advancement, you must use
the Task Station window to advance each trade from PRICING to PENDING to VERIFIED.
The Task Engine did not receive the event or failed to process the trade.
Check the Task Engine window to make sure the tasks appear in its blotter. Also, check the log files for Main Entry, Data Server, Event Server,
and Task Engine.
5.4
Page 75
Troubleshooting Tips
1. In the tree browser on the left side of the window, double-click on the
Server node to display all its databases.
2. In the tree, double-click on your database to display its list of settings.
3. In the tree, click on the Users node to display the database's users.
4. Right-click on the desired user name, and select the Properties command.
5. In the Properties window, select the Commands panel.
6. In the Status column, check each cell.
7. Click OK.
5.4.1
Page 76
Troubleshooting Tips
Remember that the system requires only one Sybase user account: that of
the user who runs the Calypso Data Server. To verify Sybase user privileges
for Windows, the system administrator can run Sybase Central and follow
these steps:
1. Make sure the server is running.
2. In the tree browser on the left side of the window, double-click on the
Server node to display all its databases.
3. In the tree, double-click on your database to display its list of settings.
4. In the tree, click on the Users node to display the database's users.
5. Right-click on the desired user name, and select the Properties command.
6. In the Properties window, select the Object Permissions panel.
7. The table will contain a list of all the objects (tables and procedures)
related to the database. All of the checkboxes should be checked.
8. Click OK.
5.4.2
SQL Interpreter
Many tasks required to install and maintain Calypso require the use of an
SQL Interpreter. Sybase and Oracle each ship with a suitable application.
Third-party SQL interpreters can also be used.
Ensure that the ISQL or SQLPLUS program (or your preferred SQL interpreter) is in your path. For Sybase, ISQL is in the Sybase/bin directory. For
Oracle, SQLPLUS is in the Oracle/bin directory.
You can verify that an RDBMS-provided SQL application is in your path by
typing isql or sqlplus at the command line. If it is available, the application
should respond by prompting you for an SQL login and password.
Page 77
Page 78
Calypso Technology
Contacting Calypso
Contacting Calypso
Americas
SAN FRANCISCO
NEW YORK
99 Park Avenue,
Suite 930
New York, NY 10016
USA
SANTIAGO
Cerro Colorado 5240
Piso 10, Torre II
Chile
56-2-434-5300
sales_santiago@calypso.com
PARIS
T +33 1 44 50 13 99
F +33 1 44 50 12 84
sales_paris@calypso.com
FRANKFURT
JOHANNESBURG
Junghofstrasse 24
2nd floor
60313 Frankfurt Am Main
Germany
T +49 69 920389 0
F +49 69 920389 11
sales_frankfurt@calypso.com
Page 79
Calypso Technology
Contacting Calypso
COPENHAGEN
MOSCOW
Asia Pacific
TOKYO
SINGAPORE
SYDNEY
MUMBAI
CHENNAI
HONG KONG
Page 80