Troubleshooting Designer Elements
  • 30 Mar 2021
  • 4 Minutes to read
  • Dark
    Light

Troubleshooting Designer Elements

  • Dark
    Light

Article Summary

Overview

The following article discusses the potential causes of performance issues with slow rendering on the end-user side.
Issues may include problems with the server, network connection, Database, Decisions logic, and more. Some issues may be isolated to the build on the back-end of Decisions, but a lot of issues can have outside factors. This article also offers some troubleshooting steps to help isolate the issue.


Causes For Performance Issues

Potential causes in Decisions

Data FlowsToo many Flows running on startup.
External ContentToo much external content being loaded in, such as Data populating a large list, redirect loops, and slow External Systems.
Visibility RulesConflicting Visibility Rules in a Form interrupts rendering.
Development IssuesErrors or mistakes in development could cause issues like unclosed loops.
Older Decisions VersionsPotential bugs in legacy versions of Decisions.
Running ProcessesOther running processes like Scheduled Jobs.
Improper DesignImproper Form/Flow design can be an incorrect use of Data Repeaters or incorrect logic in the Flow.
Static ContentToo much Static content.
Nested ContainersContainers nested too deeply.

Potential outside causes

Network IssuesNetwork issues at the server site.
Browser IssuesOut of memory, browser extension issues, etc.
SkypeIf Skype click-to-call is installed ( causes browser issues).
Cluster IssuesProblems with a Cluster or a Node within the Cluster.
DDoS AttackDistributed denial-of-service attacks (Network issues).
IIS IssuesProblems occurring with Internet Information Services.

Potential Database causes

StorageRunning out of space on the Database.
LogsDatabase Logs are full.
Long QueriesLong-running or complex queries can cause slowness trying to execute.
BottlenecksToo many interactions occurring with the Database at once.
VersionWrong version of Database software.
Network DatabaseIssues that could occur with a Database or could be from network issues of the Database.


Troubleshooting Performance Issues

It's important to note that the source of an issue may derive from a wide range of sources. 

The following sections highlight best practices when attempting to troubleshoot these issues.

When an issue occurs such as slow performance on a build that was assumed to be logical, isolating the issue becomes pivotal to deal with such a wide range of potential causes. The best practice offered by Decisions professionals is to cut any issue in half. Look for something in the entire configuration that can be changed to potentially eliminate an entire set of related issues.


The Basics

Step 1: Decisions Logic

The best first practice for troubleshooting performance is to open a Decisions Object with similar functionality to see if the issue occurs elsewhere. With this step, the Decisions Objects in question can be duplicated for testing purposes. If a Flow contains a Form in question, make a copy of the Flow, and change some configurations around in the Flow Designer to see if the performance issues resolved. Do the same with the Form if the Flow does not seem to be the problem. Check for proper configurations on complex Form Controls and make sure complex Form Controls aren't stacked in different Form tabs. Make sure Flow logic executes as expected in the Debugging window.

Step 2: Browser

Try running the Project from the Decisions environment in a private browser window, to eliminate possible browser issues causing slow Form performance. Alternatively, try different browsers if multiple are installed. 

Step 3: Machine

Try running the Project outside of the built-in firewall or on a different machine. This will help isolate whether or not the issue is between the environment or the server, to determine if it is the platform or an external issue. There are a lot of issues that could occur between the Client environment and the server such as latency issues, DNS records, encryption, and more. Eliminating the machine as a potential cause for the issue is half of the equation.

Step 4: Environments

Take a look at some quick snapshot observations of the different environments that help run Decisions. These environments would include the Database itself, various Service Managers, Client machines, and server performance. Evaluate each of these components in their respective environments to determine if any issues stand out that could be causing problems on the front-end Form execution.

Some of these environments may require a System Administrator to inspect.

Advanced Troubleshooting

Decisions Profiler

The Decisions Profiler is a built-in Decisions Tool that is located at System > Administration > System Tools > Profiler. This interface offers several different Reports and Dashboards that provide details on performance within the environment, including information on Database calls

The Profile View shows the type of occurrence that took place, the PROFILENAME which acts as a description, the COUNT of times this executed, how long it took WITHOUT CHILDREN, how long it took WITH CHILDREN, the OBJECTS CREATED, and the OBJECTS CREATED W/CHILDREN. 

The screenshot below demonstrates how to look into a Service where a Child Process is taking longer to perform. Each section is expanded to pinpoint which areas of the Service are producing what and how long it takes.

For more information on troubleshooting via the Profiler, see: Troubleshooting Using the Profile

Browser Developer Tools

Using the Developer Tools (if available) in the web browser where Decisions are running is an excellent source for troubleshooting issues. This window is a suite of helpful tools to help isolate issues with performance. Developer tools offer different tabbed sections that will help with finding where errors are coming from.

The Console tab allows the user to view logged messages based on the webpage and the actions completed on it. These messages may vary from warnings to informational logs, and the sections are generally broken down as shown in the screenshots below.

The Network tab allows the user to see how long it takes to connect Decisions depending on which element is being interacted with. This is a good tool to use to confirm whether or not an issue is based on the environment. This tool also shows the properties of an individual resource for more refined troubleshooting.


 If further support is needed with troubleshooting errors in the Decisions environment, please contact support@decisions.com


Was this article helpful?