Salesforce

WorldServer - How to run debug.jsp on a WorldServer page and find useful information

« Go Back

Information

 
TitleWorldServer - How to run debug.jsp on a WorldServer page and find useful information
URL Name000004821
SummaryThe debugger enables you to detect and diagnose errors in your WorldServer application. You need to modify the WorldServer URL as explained in this article
Scope/EnvironmentWorldServer
Question
Could you please indicate how can we set the debug.jsp page in WorldServer?
Answer
The debugger enables you to detect and diagnose errors in your WorldServer application. To do so, you need to modify the WorldServer URL to match these URL examples: 

http://[server]:[port]/ws-legacy/debug.jsp?secret=[Database User ID] 

So assuming the Database Username/user ID is: test123, the URL would be (as an example): 

https://myworldserver/ws-legacy/debug.jsp?secret=test123 

NOTE: The Database User ID is case-sensitive.

You can find the DB username to be used in the debug.jsp url in the WorldServer ws_startup.log. Open it and find a line like this:

[2020-04-29 16:46:49,904] WARN main com.idiominc.ws.startup: DB User: blabla

So assuming the DB user is blabla and the WorldServer URL is http://myworldserver/ws-legacy/login, this would be your debug.jsp URL:

http://mytestserver:8080/ws-legacy/debug.jsp?secret=blabla

Note:
starting from version 11.8.x, you need to first log in to WorldServer (Legacy URL) with your user credentials. Once you are logged in, enter the debug_jsp token to load the page. If you are not logged in, you will get the error:

You do not have permission to access this page.

Find out more about this error in this article.

Once you have successfully run debug.jsp, a page with a lot of useful information will display. The information output starts with the server and allocated Java memory information. Example:

General Information:

General Information:
Operating System:Windows Server 2019 (10.0)
WorldServer Instance ID:-1876014236
Total Memory:12288M
Used Memory:8355M
Available Memory:3933M
JDK:17.0.6 (Eclipse Adoptium)
 

Note: Total Memory is the Java Heap Memory Size allocated to Tomcat, not the total memory on the server. In the example above, it is 32 GB.

Database Information
 

URL:jdbc:idiom:sqlserver://testtest.sql.test.test-group.com;DatabaseName=Testdbname
DB User:blabla
Server:Microsoft SQL Server 2019 - 15.0.4198.2
Driver:SQLServer 5.1.4.000242 (F000381.U000186)

Database connection pool information:

Maximum Connection:100
Available Connection:95
Active Connections:18
Temporary Connections:0
Connection cache size:32
Statement cache size:1290
Max statement cache size per connection:50
Database connection leak idle time (seconds):1800

Followed by Stack Dump, giving information about engines (i.e Workflow daemons, notification daemon, background daemon etc.).

Tip: The number of instances of WFE, STATENG, BGE (Background Daemons) or Notification engine entries corresponds respectively to the number of workflow daemons, stats engines (responsible for assignments), notification daemons and background daemons configured in Worldserver. 

For example: if you search for WFE in the page (Ctrl+F+WFE) and you find 4 results corresponding each to a thread, you will know that your environment is set up to run 4 Workflow engines.
The same applies to searching for BGE (Background engines), STATENG and Notification engine Daemon

Examples:
 
[1858943295] Thread[BGE daemon 1 (6ecd393f) on host "Sxxx068",4,main]
  java.lang.Thread.sleep(Native Method)
  com.idiominc.ws.process.engine.ProcessEngineDaemon.run(ProcessEngineDaemon.java:1026)
 
[491324729] Thread[Notification Engine Daemon  (1d490539),4,main]
  java.lang.Thread.sleep(Native Method)
  com.idiominc.ws.notification.NotificationEngineDaemon.run(NotificationEngineDaemon.java:166)
 
[1290806595] Thread[WFE daemon 10 (4cf02543) on host "SNxxx68",4,main]
  java.lang.Thread.sleep(Native Method)
  com.idiominc.ws.process.engine.ProcessEngineDaemon.run(ProcessEngineDaemon.java:1026)

 
Reference
Attachment 1 
Attachment 2 
Attachment 3 
Attachment 4 
Attachment 5 

Powered by