Skip to main content

Understanding the Debugger Console tool

Learn how to debug your Chameleon Experiences from your browser.

Tiago Mota avatar
Written by Tiago Mota
Updated over a week ago

The Chameleon Debugger is a browser console tool that helps you debug your Chameleon Experiences when they're not displaying as expected. This tool provides detailed information about why Experiences might not show up on your website or application.

The Debugger tool shows you specific information including:

  • Whether the user is in the target audience for that Experience

  • If the Experience is being rate-limited

  • Current display status and conditions

  • Segment and step information for troubleshooting

You can use this tool to quickly track and solve issues, helping you fast-track your Experiences to success ⚑️.


Availability & Usage

πŸ” Available for all plans

πŸ“ For accurate display info on Tours, Tooltips, Embeddables, Microsurveys, Launchers

βš™οΈ Use from your browser console


How to access the Debugger

You can access the Chameleon Debugger through your browser's developer console using several methods.

Standard Browser Console Access

To open the console in most browsers, follow these steps:

  1. Right-click on your application page in the browser

  2. Select "Inspect" from the context menu

  3. Click on the "Console" tab in the developer tools

🍎 For Chrome on Mac users: Use the keyboard shortcut cmd+opt+J

πŸͺŸ For Chrome on Windows users: Use the keyboard shortcut ctrl+shift+J

Using the Chameleon Chrome Extension

If you're not familiar with the console, you can use the Chameleon Chrome Extension for easier access:

  1. Click the Chameleon Chrome Extension in your browser toolbar

  2. Copy the Debugger command provided by the extension

  3. Use the shortcut to open the console (or follow the manual steps above)

  4. Paste the command into the console and press "Enter"

After running the command, you'll see a list of Chameleon Experiences that are live, and you can search for a specific Experience to check why it may not be displaying.


Available Debugger Commands

The Debugger tool provides two main commands that work at different stages of Chameleon loading completion.

  • chmln.Snippet.debug() - Checks if the Chameleon snippet is correctly installed

  • chmln.debug() - Tests Chameleon Experience status after installation is confirmed

Check if Chameleon is Installed Properly

Use the chmln.Snippet.debug() command to test if Chameleon has been installed correctly and that the snippet is working properly.

When you run chmln.Snippet.debug(), look for positive confirmation messages such as:

  • "Chameleon loaded, User profile loaded"

  • Other successful installation indicators

If this debug message returns a positive result, you can then proceed to use chmln.debug() to test your Chameleon Experience status.

Check the status of all published Experiences

When you run chmln.debug(), you will see a list of all the Experiences that have been published in your account.

Click the arrow > next to an Experience to see details on its display state, what segment is used for the Target Audience, and which step it's on.

β„Ή You can also see the Variant label and ID (if the Tour or Banner is part of an A/B test) or any excluded Segments from the audience.

Debugging a specific Experience

You can debug a specific Experience, by including its ID in your debug call. Such as chmln.debug("60cb861eb6ef93001b8d731e").

You can grab the Experience ID directly from the console from the drop-down menu of the Experiences listed in the console.

Or you may find the Experience ID in the Chameleon Dashboard. When you open an Experience's page you will see its ID from the URL, for example, app.chameleon.io/tours/629f1bdd19fc2d00136ca576.

Why doesn't my Experience show up on the list?

The Debugger displays only published Experiences, so missing Experiences typically indicate publishing status issues.

Troubleshooting Missing Experiences

If you don't see an Experience listed, follow these steps:

  1. Open the Experience in the Dashboard to get the Experience ID

  2. Run the command for that specific Experience using chmln.debug("EXPERIENCE_ID")

  3. Check the publishing status - Most likely, the Experience isn't published!

While you're in the dashboard, you can also see the state of your Experience. If you do not see the green "Live" badge next to the title, this also tells you that it isn't published and shown live to other users.


How to Interpret Debugger Results

Now that you've gotten the results of your Experience, here's more information about what each message means. If you expect an Experience to display but it isn't, this will help you figure out how to resolve that.

Error phrase

Explanation

How to resolve

Chameleon not loaded

Chameleon has not been installed or initialized correctly.

Review Chameleon's install documents and ensure both the Chameleon snippet and identify commands are installed correctly.

User profile not loaded

No user has been identified to Chameleon, or the user profile has failed to load.

Review Chameleon's install documents and ensure the identify command is installed correctly.

Chameleon is disabled

Chameleon's elusive setting has been enabled on the Chameleon Snippet.

Check to make sure the elusive setting is enabled for the expected users.

Domain disabled

The current domain has been disabled.

Enable the domain on the domains page.

Chameleon Cleared

Chameleon was initialized, and then chmln.clear() was run, which cleared it from the page.

Talk to your development team to make sure that chmln.clear() is run in your app at the appropriate time.

Something unique went wrong

Something that's not obvious went wrong.

Contact Chameleon Support for more help.

More Messages

The errors below are self-explanatory and usually very easy to resolve when seen. But we are here to help out if you have any questions. We will also update this article with additional context.

  • Current user UID "[uid]" is within the Target Audience, Experience can be displayed to you when all conditions are met and no other Experience is showing.

  • Current user UID "{uid}" is not within the Target Audience, Experience will not be displayed to you.

  • Current user UID "[uid]" started this Experience but is no longer within the Target Audience. After it is exited or completed it will not show again.

  • Control group test being run on this Experience, Current user UID "[uid]" is not in the test group and will not see the Experience.

  • Control group test being run on this Experience, Current user UID "{uid}" is in the test group and can see the Experience when other conditions are met.

  • Current user UID "{uid}" is within the Target Audience, but Control group test being run on this Experience, Current user UID "{uid}" is not in the test group and will not see the Experience.

  • Current user UID "{uid}" is within the Target Audience, Experience can be displayed to you when all conditions are met and no other Experience is showing.

  • Current user UID "{uid}" is in the test group and can see the Experience when other conditions are met.

  • Current user UID "{uid}" is not within the Target Audience, Experience will not be displayed to you.

  • Experience would be able to display here, but is rate limited. (See your Rate Limiting page in the Dashboard, and learn more here).

  • Completed Survey, but finishing extra comments or thank-you.

  • Experience was recently triggered by an action on a previous Experience, short-link URL, or a call from the API.

  • Experience can be manually started by an action on an Experience, short-link URL, or a call from the API.

  • Experience has been Completed.

  • Experience has been Exited.

  • Experience is not displayed but will reappear based on next recurrence setting.

  • Experience has been Exited and will reappear after snooze time period ends.

  • Experience queued to be shown after other Experience(s) finish.

  • Experience\'s URL Rules do not apply to the URL of the current page.

  • Experience\'s selected anchor element is not on the current page.

  • Experience\'s trigger element/icon is either not on the current page or is on the page but has not been interacted with yet.

  • Experience has a Timed Delay set, and that time has not expired yet.

  • Experience requires a selected element to be present on the page, still checking for the element.

  • Experience required a selected element to be present, the time has expired and element was not on the page.

  • Experience requires a selected element to be absent from the page, timer still counting down before checking.

  • Experience requires a selected element to be absent from the page, the time has expired and element was still on the page.

  • [Experience] Title: "[name]" is being displayed on the page.

  • There is no published (aka live) Experience with ID '[uid']. Open the Experience from the Chameleon Dashboard, confirm the ID at the end of the URL, and also that the Experience is live.

  • If you're seeing a Launcher and the status is blank, the Tours inside may be unpublished.

  • Now displaying, no other Experiences can Display.

ℹ️ Note you'll also see if your Experiences are not displaying because of a Smart delay (because the user has interacted with another Chameleon Experience before on the same session, or because of the built-in 60-sec delay) or if it's waiting on the Timed delay to end (and another Experience is displayed instead).

πŸ“© If you need any further help feel free to contact us with questions.

Did this answer your question?