Selenium Web Checks
Last updated on 22 May, 2023You can manage Selenium Web Checks using LogicMonitor by recording a browser transaction and then uploading the Web check to LogicMonitor. LogicMonitor collects latency data from the Selenium Synthetics check (the length of time that it took for the test or user workflow specified in a .side
file to be completed). It also captures if the check or workflow resulted in an unexpected error, indicating a possible issue with the website.
After the data is ingested into LogicMonitor, you can use LM APM and LM Logs to view the data for potential user issues.
Authentication
You can add authentication to your Synthetics Web Checks with the following actions:
- Parameterizing the appropriate credentials inside the Selenium
.side
file
This can be accomplished after you record your browser transaction by modifying the.side
file with the appropriate authentication. - Specifying the credentials when uploading the Web check to LogicMonitor
You can specify the credentials in a step of the Synthetics Website Test wizard in your LogicMonitor portal
Note: In addition to authentication, you can specify a LogicMonitor property in the .side file. For example, ${synthetics.variable.variableName}.
Credentials consist of a username and password if you are using multi-factor authentication (MFA) token. LogicMonitor leverages the existing variable substitution in Selenium IDE to securely inject your authentication information.
Requirements
- To record a browser transaction, you need the Selenium IDE Chrome Extension.
- Manage permissions for all listed resources in Resource Tab.
- Access permission to the Synthetics Monitoring for adding the new synthetic web test.
- An active collector should be configured with the grid URL.
Recording a Browser Transaction
Follow the Getting Started instructions from Selenium to record a browser transaction.
Recommendation: You can add WAIT_FOR_ELEMENT_VISIBLE property in the .side file and set the value greater than zero to allow a waiting period for the elements to load. A timeout error displays, If the elements don’t load in the specified period
When complete, save your .side file in a location you can access for uploading to LogicMonitor.
Note: Selenium allows you to connect to a session using a VNC viewer to watch the browser as a test executes. You can connect VNC directly to the exposed node port using a VNC viewer (For example, VNC Connect).).
Selenium Grid 4 includes a NoVNC web viewer. Exposing port 7900 allows you to open the port in a browser and see the VNC viewer activity without installing a viewer. If you use the provided docker-compose file, you would use the following:
– Chrome: “http://:7900”
– Edge: “http://:7901”
– Firefox: “http://:7901”
See the following for additional tips:
Debugging.
You can also run “Poll now” on the Selenium Webcheck to see any error messages that may be encountered.
Adding Authentication to the Browser Recording
To add authentication, you must parameterize the credentials in the Selenium .side
file by replacing each instance of username, password, and token with the appropriate variable substitution.
Variables can be substituted in Selenium IDE text fields by surrounding a variable name with ${}
. For example, to substitute the value of the variable myVar
into the condition of an if
statement would look similar to the following:${myVar} === "a"
.
For more information, see Selenium’s Conditional Branching documentation.
LogicMonitor uses the following special variables to substitute your credentials username, password, and token respectively:
credential.username
credential.password
credential.token

Note: Each credential field (username, password, and token) are printed to the execution log using the echo command.
Recommendation: Specify multiple test user accounts to be added to a “pool” of users that the test pulls from. This ensures MFA can be tested properly and avoids situations where one specific test user is attempting to log in too many times from different locations.
Uploading Selenium Web Checks to LogicMonitor
Important:
- For Selenium Web Checks created with collectors before 33.401, you have to reconfigure the web checks.
- To use the functionality of creating steps, you must update the collector to version 33.401 or later.
- Add the Synthetics Website Test option from the Resources tab by navigating to Resources > Add > Synthetics Website Test.

- Follow the onscreen instructions to upload the .side file from the browser transaction recording.
Note:
You can upload a .side file containing a maximum of 10 tests.
The size of the uploaded .side file must be a maximum of 5MB. - On the Step Setup page, you can view the different tests, number of steps, and parsing information in the Tests table. You can split a single test into multiple steps by performing the following:
- Select a desired test from the Tests table.
The Step Setup tab displays all the test operations. - Toggle on the Split into Steps to create multiple steps.
Note: The first step is created by default at the top of all the commands. The first step cannot be deleted once saved. - Select
at your required level and enter the appropriate step name.
- Once you complete adding all your steps then select
.
Note: You can add a maximum of 10 steps.
- Select a desired test from the Tests table.
- On the Settings page, perform the following:
- Select your required polling interval. The default and recommended value is 10 minutes.
- Enter your collector name and select it.
- At the Permissions page, ensure you add the appropriate credentials for authentication.

Refer to the documentation for your specific MFA provider to obtain the appropriate MFA type, seed, and length for your test credentials.
Example of Synthetics Website Test
If you want to run a Synthetics Test on a website, which contains multiple operations, there is an option to create multiple steps to logically group all your website’s operation (Login, search, and checkout). On completing the Synthetics Web Test process, the information displays on the Resources page. Each step is treated as an individual device here. This helps you to easily navigate through all of your website’s operations.