Troubleshooting

Log settings

Following trace settings should be applied in order to trace down server-side errors:

*=info:
com.ibm.ess.ic.dptk.ui.api.*=fine:
com.ibm.ess.ic.dptk.scheduling.jobs.*=fine

Known issues

Problem: Data Privacy Toolkit scheduled jobs are running multiple times or commonly known as duplicate EJB timer issue.

Reason: The old scheduled jobs ( EJB timers ) are not being deleted when new ones are created.

Solution: We need to cancel/delete the existing EJB timers set for Data Privacy Toolkit. Once the EJB timers related to Data Privacy Toolkit are deleted restart the server where Data Privacy Toolkit is installed. Please follow the below steps for deleting existing EJB timers set for Data Privacy Toolkit

Step 1: Enter the WebSphere administrative console (e.g.: https://your.dmgr.host:9043/ibm/console) and navigate to Servers > Server Types > WebSphere application servers and find the server on which Data Privacy Toolkit is installed. For example DPTKCluster_server1 in our case.

Select DPTK servers

Step 2: Open a terminal and connect to the server where Data Privacy Toolkit is deployed. Change directory to AppSrv01/bin

ssh <youruser>@target-machine
cd /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin

Connect to DPTK servers

Step 3: Find all the scheduled jobs ( EJB timers ) for the server where Data Privacy Toolkit is deployed by running the below command. Replace the DPTKCluster_server1 with your server name where Data Privacy Toolkit is deployed. Try the same command with sudo if Permission denied.

For linux based systems

./findEJBTimers.sh DPTKCluster_server1 -all

For windows based systems

./findEJBTimers.bat DPTKCluster_server1 -all

This will prompt for username & password. Use same login details used to login to WebSphere administrative console. After successful authentication it will display the EJB timers set for the server where Data Privacy Toolkit is deployed.

Note: If Data Privacy Toolkit is the only thing installed on that particular server (DPTKCluster_server1) then all the listed scheduled jobs ( EJB timers ) belong to Data Privacy Toolkit otherwise there might be additional scheduled jobs ( EJB timers ) present from different application installed on the same server.

scheduled jobs for DPTK servers

Step 4: If Data Privacy Toolkit is the only thing installed on that particular server we can delete all it’s scheduled jobs ( EJB timers ) at once by running the following command. Replace the DPTKCluster_server1 with your server name where Data Privacy Toolkit is deployed.

For linux based systems

./cancelEJBTimer.sh DPTKCluster_server1 -all

For windows based systems

./cancelEJBTimer.bat DPTKCluster_server1 -all

If there are other application/applications deployed along with Data Privacy Toolkit then it would be best to remove the Data Privacy Toolkit’s scheduled jobs ( EJB timers ) individually. For this we can use the below command for each of the Data Privacy Toolkit’s scheduled jobs ( EJB timers ). Replace the TIMER_ID with id obtained in step 3 ( TIMER_ID is 602 in my example case ).

For linux based systems

./cancelEJBTimer.sh DPTKCluster_server1 -timer TIMER_ID

For windows based systems

./cancelEJBTimer.bat DPTKCluster_server1 -timer TIMER_ID

Step 5: List all the scheduled jobs ( EJB timers ) once again as shown in step 3. The deleted timers should be missing from the list.

Step 6: Enter the WebSphere administrative console (e.g.: https://your.dmgr.host:9043/ibm/console) and navigate to Servers > Server Types > WebSphere application servers and find the server on which Data Privacy Toolkit is installed. For example DPTKCluster_server1 in our case. Select the checkbox on the left and click restart button on top to restart the server.

restart DPTK servers

Step 7: Once the server is back online, list all it’s scheduled jobs ( EJB timers ) as shown in step 3. This should create the scheduled jobs ( EJB timers ) for Data Privacy Toolkit without any duplicates.