DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
Building Scalable Real-Time Apps with AstraDB and Vaadin
Register Now

Trending

  • Automating the Migration From JS to TS for the ZK Framework
  • Revolutionizing Algorithmic Trading: The Power of Reinforcement Learning
  • Reactive Programming
  • 5 Key Concepts for MQTT Broker in Sparkplug Specification

Trending

  • Automating the Migration From JS to TS for the ZK Framework
  • Revolutionizing Algorithmic Trading: The Power of Reinforcement Learning
  • Reactive Programming
  • 5 Key Concepts for MQTT Broker in Sparkplug Specification
  1. DZone
  2. Software Design and Architecture
  3. Integration
  4. What to Look for in a Synthetic Monitoring Provider

What to Look for in a Synthetic Monitoring Provider

Every synthetic monitoring provider should offer these features in order to enable complex SaaS and web application monitoring.

Alec Pinkham user avatar by
Alec Pinkham
·
May. 10, 17 · Opinion
Like (1)
Save
Tweet
Share
2.84K Views

Join the DZone community and get the full member experience.

Join For Free

Synthetic monitoring uses scripting to simulate what actual users are experiencing in a SaaS or web application. IT often doesn’t have to interact with SaaS or web apps, especially if they’re only used by certain users or departments. Synthetic monitoring helps IT to understand baseline performance over time, then see deviations from it when users complain.

Synthetic monitoring can take various forms, but there are some essential features to look for in a provider or solution.

Must-Have Features for Synthetic Monitoring

Every synthetic monitoring provider should offer these features to enable complex SaaS and web app monitoring.

Milestones for Complex Scripts

The evolution of SaaS and web apps means that instead of multiple pages of data in one app, many are now just a single page that dynamically loads data as the user requests it. This largely mimics a desktop experience without the burden of a thick client. The issue is that synthetic scripts are dependent on page loads to display the timing information. Milestones are a solution AppNeta has come up with that hides in the comments of Selenium (for portability purposes) and allows users to determine when actions are complete. This allows timing information to be shown for any sequence of actions without page loads, which increases the value of synthetics in the single-page app world.

Assert/Verify Functions

Users will note when something on a page doesn’t load correctly. Synthetic scripting historically hasn’t tracked this consistently, nor have users taken advantage of this to the extent that they should. Using the Assert function within Selenium, synthetic scripts will cancel the operation if an element is not present. For critical components of a dashboard, this can lead to early detection of app failures. The Verify feature similarly detects whether or not an element has loaded, but instead of canceling the rest of the script it will log the error and continue. This can be helpful to note failures that may be less critical but are important for troubleshooting purposes.

Screenshots on Error

Any deployment of synthetics should have the ability to capture a screenshot when an error occurs. This is essential when troubleshooting, as it allows IT Ops teams to see exactly what the user sees during the failure. This can not only help contextualize an error to the visual representation of that error, but aids in matching user complaints with synthetic testing results.

Points of Presence

While originally reserved for SaaS providers monitoring from different global locations, this has become more important in our increasingly distributed corporate world. Not every employee is under one roof, so the significance of monitoring from an actual user to their location (or one nearby) can not only provide more accurate data but allow IT to troubleshoot remote issues faster.

Global Presence Points

Most synthetic providers today claim a global presence, but that model serves SaaS providers better than their consumers. Unless you are a multinational corporation with 100 offices, you are rarely using a global map to monitor performance. A few global points of presence, however, can give you an idea of how users in locations near yours are experiencing your SaaS or web apps.

Custom Points of Presence

If you are a multinational corporation or a company with offices in remote locations where you care about ensuring a good end-user experience (read: the CEO’s home office), then you’ll want to set up custom devices or virtual agents to monitor performance from specific end-user locations back to your SaaS apps or data center. The benefit here is that when that CEO calls to complain, you’re not relying on a monitor that is at best 30 miles away and likely on a different carrier for the last mile. You’ll have actual data from their location over the same ISPs and you’ll see it trended over time so you can pinpoint when issues began.

Keep all these features in mind when you’re evaluating synthetic monitoring providers. In our widely distributed world of cloud and SaaS applications, synthetics can save you a ton of time on troubleshooting.

Synthetic monitoring app SaaS

Published at DZone with permission of Alec Pinkham, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Trending

  • Automating the Migration From JS to TS for the ZK Framework
  • Revolutionizing Algorithmic Trading: The Power of Reinforcement Learning
  • Reactive Programming
  • 5 Key Concepts for MQTT Broker in Sparkplug Specification

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com

Let's be friends: