Blog Post

Tech Talk
3 MIN READ

LM Synthetics

Cameron_Compton's avatar
Cameron_Compton
Icon for LM Champion rankLM Champion
2 years ago


What is Synthetic Monitoring?

  • Synthetic Monitoring is an active approach to testing a website or web service by simulating visitor requests to test for availability, performance, and function.

  • Synthetic monitoring uses emulation or scripted recordings of user interaction or transactions to create automated tests. These tests simulate a critical end user pathway or interaction on a website or web application.

  • The results of these tests give early insight into the quality of the end user experience by reporting metrics on availability and latency, and identifying potential issues.

  • LM Synthetics monitoring leverages Selenium—a trusted open-source browser automation and scripting tool to send Synthetics data to LogicMonitor.

LM Synthetics

LogicMonitor uses the following Selenium tools for the Synthetics monitoring solution:

  • Selenium GRID—Proxy server that allows tests to be executed on a device

  • Selenium IDE Chrome Extension—Browser recording tool that allows you to create and run the synthetics checks

The following diagram illustrates how LogicMonitor leverages Selenium to collect Synthetics data:

U4gU92Rhnj5OqwCmvmU-yGig0Tkc93AzcgQXsuG4RHxNCGz0NQnkrQsl4PyN5ajd2BexnJIoY6al6grpwuOPgwWWZWcpuaVkf0Og_VT4VhYqxs-IVEHAfnyBRjSBNN2fV14uzgFDsT35OQmv22ZK5A

  • Allows you to find out as soon as possible if any site/web service is having any issues

  • Allows you to identify and solve problems quickly to prevent widespread performance issues.

  • Allows for more uptime and proper working of your website

  • Important factors for a website are page loading speed, performance and uptime.

  • Gives you the ability to track metrics over time, viewing trends for further analysis

Ping Checks

  • Simple test to see if a website is up and running

  • Alerts can be triggered based on if 1 or many locations are not able to ping the site insuring alerts are generated accurately.

  • The checks can be triggered to run up to every 1 minute

Website Checks

  • Standard Web Check

    • Displayed as “web checks” in LM interface

    • Performed by one or more geographically dispersed checkpoint locations

    • These locations are hosted by LM and external to your network

    • Overall purpose is to verify that your website is functioning appropriately for users outside of your network and to adequately reflect these user’ experiences.

  • Internal Web Check

    • Performed by one or more collectors internal to your network

    • Purpose is to verify that websites and cloud services (internal or external to your network) are functioning appropriately for users within your private network

Selenium Checks

  • Selenium synthetic checks are automated tests that use the Selenium web testing framework to simulate user interactions with a website or web application. These checks can be used to verify the functionality and performance of a website, such as checking that links are working properly, forms are submitting correctly, and pages are loading quickly. The tests can be run on a regular basis to ensure that the website is functioning as expected and to catch any issues early on.

  • They can measure how long it takes to complete a specific workflow/task, such as logins, page loading, verifying specific text, validating users can input data.

  • Selenium is the capstone item, they can check all end user access. This then segways into “we know there is a problem, now where is the problem”- enter APM/Logs. Ex. We get an alert that the login failed, now we would use other tools to figure out why/where. With the metrics, you will be able to tell exactly which check failed in the workflow process

Selenium Synthetics Dashboard
A5O_zLb2rDEWHnZKyWD2wKZyialh1L1Ag6jfB3OqSHVT48zniyJIBoaUl4ru49GxMvf-y8oRXu9ai4lkntjkDKQ52hDPXidHm1hcngCuZTrE2VWalIYV2fuHKTUXgBVCoiIV6N0kici5F9Mi6tDxEQ
 

Adding Synthetics Website TestgqXV3_UuTyh-I66mBfZchJKxsFB1iVAKa1RT3kbIPefqWcHxm6T2ujzO-Jl-OnSvKkheWNalfMCOCfPMJ0tcOR3m3XlDDgmZBEK22tAvoHyjCtOvmF3svdEy0D7l1d8GdRgojQY9EGywdtNC_R7z4w

Common Use Cases

  1. MSP’s- tons of customers with different portals and keeping track with what's going on with all of those. They are meeting their SLA’s for uptime.

  2. If a customer has any kind of website they want to ensure is accessible all the time.

    1. Internal would be M365, or proprietary tool they built themselves.

    2. External- e-commerce website- clicking on promo link, check out sequence. You can also see trends over time and you can see busy parts of the day where a load balancer might be beneficial.

  3. Dev-ops might be interested in this and how it correlates with traces or push metrics we are sending. They can use synthetics as a “piece of the puzzle” to better understand the whole picture.

  4. The app teams may want to verify the login process of the application is functioning correctly

Resources

© 2022 LogicMonitor Confidential and proprietary

Published 2 years ago
Version 1.0
  • Our experience with this as a Hosting MSP:

    We tried getting this working for us, but Windows RDP and Citrix are more complex as implemented at most Hosting MSPs, even if pushed through RemoteApp, at some point, the connection leaves the browser and hits the respective windows client.

    We’re going to be doing some experiments with using HTML5 workflows, but that isn’t widespread for us yet.  Up to that point, our Synthetic Monitoring is pretty slick.  There’s a need for some AD work to make sure the user being used by the monitoring matches a normal user from the environment to get a real test.

    Ultimately, we’re having to use a collection of other datapoints to verify and get 95%+ confidence that the environments are available and working as expected, but that last 5% would be really nice to have working.  Then we just need to deploy a hundred+ monitoring accounts to be able to verify each of our clients’ domains is fully available.

    This works great for fully web hosted offerings.