Troubleshooting Best Practices

Troubleshooting Best Practices

Steps to Follow When Website is Down

  1. Is this in a test environment? Confirm PD is unaffected.
  2. Try connecting to the Application Server. Any issues?
  3. Look at the Enterprise Server Service in Windows Services on Application Server. Is it running? If not, start it. If yes, try restarting it. If it cannot be restarted, kill the task in the Windows Task Manager and start the service from the Windows Services.
  4. Are things going real slow on the Application Server? Look in the task manager. Is there any batch job/BSFN server/Solr taking up a lot of cpu? Try killing it after identifying what it is. Right click and go to file location to identify what the service is.
  5. Try connecting to the Web Server. Any issues?
  6. Make sure the Application Pool is on in IIS on the Web Server.
  7. Try connecting to the Database Server. Any issues? You would get errors in EASYProcess too when trying to open processes/webparts if the issue was an inability to connect to the Database Server. This could because of network issues resulting in trouble connecting to the database or the database could be down altogether.
  8. Are JDE Business Functions (BSFN) timing out?
  1. Is there a BSFN on the page you are trying to load? If the page is running a BSFN, it might cause the page load to timeout and show the error your seeing.
  2. If not, are many BSFN requests being made and those other user’s BSFN requests are timing out? Many BSFN requests made that all are reaching the max timeout would overload the Enterprise Server Service and could cause it to stop.
  3. Test the JDE BSFN connection in the configuration JDEBSFN, confirm output is Good. BSFNs usually have long timeouts.
  1. Go to Application Logs (if you had a process/webpart logs open previously by "view logs" button on work with processes/webpart, close that first or this page will be filtered to show only that webpart/process). Look through and find any logs with a large duration or any red lines for errors that aren't usually there.
  2. Try setting logs to Debug. Look in Toolset log folder (C:\EASYProcess\[Environment]\Toolset\LogFiles) for the logs. Look for the the last process/service called. Could be an accidental infinite loop. EASYProcess logs only show after the process finishes, here you can see it when it is first called and see if there is no end.

Available Logs for Troubleshooting

  1. EASYProcess Application Logs (in EASYProcess)
  1. FATAL - Fatal logs are reported by internal use processes or subsystems. These are failures which cause application failures.
  2. ERROR - Unexpected results in a service or webpart. Error is related to a piece of the Application
  3. INFO - Info logs will show output XML for the services that ran. This will show what logic is being used. If the issue is related to incorrect logic, these logs will help.
  1. EASYProcess Toolset Folder Log Files (C:\EASYProcess\[Environment]\Toolset\LogFiles)
  1. DEBUG - Shows begin and end times of processes. Can be used to find processes that do not end (infinite loops).
  2. TRACE - Shows all input and output XML
  1. Web Server Logs (C:\Windows\Temp\EASYProcess_Workfolder)
  2. IIS Logs
  3. Windows Event Viewer

Updates Aren't Showing in EASYProcess Logs

  1. Restart the Enterprise Server Service
  2. If its a Process, close the service, reopen. Did the changes revert?
  3. Save & build the canvas. Rebuild if its a webpart.
  4. Close and reopen entire Process/Web Part. Did the changes revert?
  5. Close & reopen EASYProcess (open too long?)
  6. If its a Process, are you sure you're making changes to the right service?
  1. Try moving it, is there another copy beneath it? In older versions of EASYProcess, overlapping services will look no different. In newer versions of EASYProcess, entirely overlapping services will appear red.
  2. Is there another service with same name elsewhere that is actually running?
  3. Is there another service with the same name elsewhere that is overriding the logs so it looks like yours isn't running?
  1. Are you in a for-each loop?
  1. Service level XSLT for-each accidentally?
  2. Need to add '/' before WorkData to accurately reference nodes?
  1. Try creating a new service? Maybe this one is corrupt?
  1. Are there too many of a node in the service (two "Results - (Right Click To Add New)" and its using the wrong one?)
  1. Maybe your logic is off, causing unexpected values? Create a test evaluate and print variations of what you are expecting to follow the trail of logic.
  2. Are they CSS changes? refresh page with ctrl+F5 to clear cache
  3. Are they javascript changes? Change javascript version in default website properties under profile and config

Troubleshoot JDE Business Function (BSFN)

  • Use EASYProcess RunSQL Tool
  • BSFNs look at specific records in JDE in order to do what is required. If you are getting an error that a record doesn’t exist, the parameters you are giving are essentially being used by JDE in a SQL WHERE clause and that query against the JDE database is returning no results. Confirm the parameters are correct for your use.
  • Write the query you expect the BSFN to use with the parameters you are sending, try to find the record you are looking for.
  • Re-retrieve the BSFN XML from the CallBSFN service.
  • Numeric parameters will have a 0 by default. This may fix issues with sending a blank for a numeric field.
  • If you did not create this BSFN call, the BSFN you are working on may be missing some parameters that are useful or required for your case. If we do not send a parameter, it is considered to be sent as blank.
  • If you did not create this BSFN call, the BSFN you are working on may have parameters that someone else added, but aren’t actually accepted as input. It will be helpful what the BSFN is actually using from what you send.
  • Confirm that all required parameters are being sent
  • Confirm the parameters map to the expected columns
  • Read about what each parameter does, possibly find parameters that sound related to what you are doing.
  • Look at the BSFN Source code
  • Find the file location for the BSFN source code.
  • Using the BSFN documentation (, take the object name from the top of the web page from the website and search for that file in the JDESource folder. The object name will be something like: B83000AB.
  • The file with the same name should have the c code for the function.