How to Troubleshoot

When you are stuck at an impasse - or finding that something in Slate is not working as you intended - it is important to follow a process to help you uncover a path forward. The below process is our recommendation for how to approach a situation in Slate where you're stuck or unsure. Often, "troubleshooting" implies that there is a problem that you are aiming to solve. While there could be a problem that you run into, it may also be a behavior that you are unfamiliar with. The goal of following this process is to help you get to an answer by unearthing more details about the situation you are experiencing, better understand Slate, and test potential solutions.  You may find a solution as you navigate this process, or you may use the details you uncover to provide better intel to others who are helping you troubleshoot.

Step 1: Describe the problem/behavior

    • Where does this occur within Slate?

Typically, this is where you first notice the behavior. 

      • Are there any external integrations that need to be considered?
    • What are the symptoms?

      Investigate both the end user experience and the administrative set up. Determine symptoms from both angles.
          • What do you expect to happen that is not happening?

          • Are there any errors messages or logs displayed?

    • Who is experiencing the behavior?

      Use the Query tool to see patterns among particular records by reviewing exported data. You can even create queries from forms or events. If the behavior is user-based, impersonate other users. 
      • Is this affecting users of Slate or objects (ex. forms, fields, etc.) within Slate?

      • Does this affect one user/record or many? What patterns do you notice based on who is affected?

    • When does it occur?

      Review a record's Timeline (especially the Audit Log), the Job Activity Monitor, Error Log, and Access Log to see timestamps. Provision a Timewarp to determine if the behavior existed at or before a particular time.

      • When did the behavior start?

      • Is it only at specific times?

      • How frequently does it occur? Is there a notable pattern?

      • Develop a timeline of events leading up to this. Does a sequence of events need to happen for the problem to occur?

      • Under which conditions does the problem occur?

      • Do any other objects fail at the same time? Are there successive failures?

    • Can the behavior be reproduced?

      Create test objects (records, events, etc.) to replicate this problem. If you cannot replicate the issue and it only happens to one person or object, consider manually correcting the problem until a pattern is discovered.

Step 2: Experiment and eliminate non-issues to isolate your testing parameters

Using the deductions you've made from the questions above, try to remove as many elements as possible to identify the potential problem and what may be causing it. To help you eliminate non-issues, review configurations of objects to ensure they are configured according to best practices in the Knowledge Base.  

Step 3: Determine the most probable cause

Even if you don't know why, do your best to develop a hypothesis as to what is creating this behavior. A good place to start is with the most obvious cause, such as objects not configured according to best practices in the Knowledge Base.

Step 4: Create a plan of action and potential solution

Determine an initial testing approach using a potential solution

  • Consider testing in the Test environment vs. testing in Production

    • Consider the repercussions of where you're testing (could testing impact live records?)

    • Is this able to be tested in a controlled environment within Production?

    • Does the Test environment allow you to perform all necessary functions to test this solution?

Step 5: Test the solution

Consider: Check the Knowledge Base within the area you are testing (ex. Troubleshooting Rules or Troubleshooting the Person Record) to see if there is documentation with testing suggestions.

  • Did that resolve the behavior? If not, did it provide any additional insight to help your next attempt at finding a solution?

Step 6: Document the result, adjust your solution as needed and test again 

Ensure you document the results to help you improve future troubleshooting.  

Was this article helpful?
1 out of 1 found this helpful