The debugger enables you to detect and diagnose errors in your
SDL 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] https://myws/ws-legacy/debug.jsp?secret=[Database User ID] Note: in a WorldServer 11 environment, the url needs to be the
ws-legacy one. In a WorldServer 10.4.x environment, it can be the 'ws' one
http://[server]:[port]/ws-legacy/debug.jsp?secret=[Database User ID] NOTE:
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: blablaSo assuming the DB user is blabla and the WorldServer URL is
http://mytestserver:8080/ws-legacy/login, this would be your debug.jsp URL:
http://mytestserver:8080/ws-legacy/debug.jsp?secret=blablaOnce you have successfully run debug.jsp, a page with a lot of information will display. The information output starts with server and allocated
Java memory information. Example:
General Information:General Information:
Operating System: | Windows Server 2016 (10.0) |
WorldServer Instance ID: | 948172211 |
Total Memory: | 14336M |
Used Memory: | 2362M |
Available Memory: | 11974M |
JDK: | 1.8.0_211 (Oracle Corporation) |
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 14 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,
state 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)